From 9c1e74fdfae5cb94882dde2333dfd09895d9b981 Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Sat, 27 Jan 2007 16:46:02 +0200 Subject: [PATCH] imported winuaesrc1400b3.zip --- bsdsocket.c | 9 +- cdtv.c | 131 +++- cfgfile.c | 9 +- filesys.c | 4 +- newcpu.c | 8 +- od-win32/blkdev_win32_ioctl.c | 51 +- od-win32/resources/RCa03440 | Bin 0 -> 149524 bytes od-win32/resources/amiga.png | Bin 0 -> 47245 bytes od-win32/resources/resource.hm | 11 - od-win32/resources/winuae.ico | Bin 10134 -> 69260 bytes od-win32/resources/winuae.rc | 101 +-- od-win32/win32.c | 67 +- od-win32/win32.h | 19 +- od-win32/win32gui.c | 645 +++++++++-------- od-win32/winuaechangelog.txt | 19 + sinctable.c | 1247 ++++++++++++++++---------------- 16 files changed, 1183 insertions(+), 1138 deletions(-) create mode 100755 od-win32/resources/RCa03440 create mode 100755 od-win32/resources/amiga.png diff --git a/bsdsocket.c b/bsdsocket.c index 9de1f19c..56740d7e 100755 --- a/bsdsocket.c +++ b/bsdsocket.c @@ -1487,14 +1487,15 @@ void bsdlib_install (void) uae_u32 func_place, data_place, init_place; int i; - if (!sockdata) + if (!sockdata) { sockdata = xcalloc (sizeof (struct sockd), 1); + for (i = 0; i < SOCKPOOLSIZE; i++) + sockdata->sockpoolids[i] = UNIQUE_ID; + } + if (!init_socket_layer ()) return; - for (i = 0; i < SOCKPOOLSIZE; i++) - sockdata->sockpoolids[i] = UNIQUE_ID; - resname = ds ("bsdsocket.library"); resid = ds ("UAE bsdsocket.library 4.1"); diff --git a/cdtv.c b/cdtv.c index 730641ef..8ce71f60 100755 --- a/cdtv.c +++ b/cdtv.c @@ -27,6 +27,13 @@ #include "zfile.h" #include "threaddep/thread.h" +#define AUDIO_STATUS_NOT_SUPPORTED 0x00 +#define AUDIO_STATUS_IN_PROGRESS 0x11 +#define AUDIO_STATUS_PAUSED 0x12 +#define AUDIO_STATUS_PLAY_COMPLETE 0x13 +#define AUDIO_STATUS_PLAY_ERROR 0x14 +#define AUDIO_STATUS_NO_STATUS 0x15 + static smp_comm_pipe requests; static volatile int thread_alive; @@ -35,8 +42,8 @@ static uae_u8 dmacmemory[100]; #define MAX_TOC_ENTRIES 103 static uae_u8 cdrom_toc[MAX_TOC_ENTRIES * 13]; -static uae_u32 last_cd_position; -static uae_u8 cdrom_qcode[16]; +static uae_u32 last_cd_position, play_start, play_end; +static uae_u8 cdrom_qcode[16], cd_audio_status; static int datatrack; static volatile int cdtv_command_len; @@ -46,9 +53,9 @@ static volatile uae_u16 dmac_dawr; static volatile uae_u32 dmac_acr, dmac_wtc; static volatile int dmac_dma; -static volatile int activate_stch, cdrom_command_done; +static volatile int activate_stch, cdrom_command_done, play_state, play_statewait; static volatile int cdrom_sector, cdrom_sectors, cdrom_length, cdrom_offset; -static volatile int cd_playing, cd_paused, cd_motor, cd_media, cd_error, cd_finished; +static volatile int cd_playing, cd_paused, cd_motor, cd_media, cd_error, cd_finished, cd_isready; static volatile int cdtv_hsync, dma_wait, dma_finished; @@ -114,18 +121,34 @@ static int get_qcode(void) if (!s) return 0; memcpy (cdrom_qcode, s, 16); + if (cd_playing && s[1] == 0x11) { + int end = msf2lsn((s[5 + 4] << 16) | (s[6 + 4] << 8) | (s[7 + 4])); + if (end >= play_end) { + sys_command_cd_pause (DF_IOCTL, unitnum, 1); + cd_audio_status = AUDIO_STATUS_PLAY_COMPLETE; + cd_playing = 0; + do_stch(); + } + } + s[1] = cd_audio_status; +#if 0 if (s[1] != subq0) { subq0 = s[1]; do_stch(); } +#endif return 1; } static void cdaudiostop(void) { + cd_finished = 0; + if (cd_playing) + cd_finished = 1; cd_playing = 0; cd_paused = 0; cd_motor = 0; + cd_audio_status = AUDIO_STATUS_NO_STATUS; if (unitnum < 0) return; sys_command_cd_pause (DF_IOCTL, unitnum, 0); @@ -135,7 +158,13 @@ static void cdaudiostop(void) static int pause_audio (int pause) { sys_command_cd_pause (DF_IOCTL, unitnum, pause); + if (!cd_playing) { + cd_paused = 0; + cd_audio_status = AUDIO_STATUS_NO_STATUS; + return 0; + } cd_paused = pause; + cd_audio_status = pause ? AUDIO_STATUS_PAUSED : AUDIO_STATUS_IN_PROGRESS; return 1; } @@ -147,6 +176,7 @@ static int read_sectors(int start, int length) cdrom_offset = start * 2048; cdrom_length = length * 2048; cd_motor = 1; + cd_audio_status = AUDIO_STATUS_NOT_SUPPORTED; if (cd_playing) cdaudiostop(); return 0; @@ -159,6 +189,18 @@ static int ismedia(void) return sys_command_ismedia (DF_IOCTL, unitnum); } +static void do_play(void) +{ + sleep_millis(100); + sys_command_cd_pause (DF_IOCTL, unitnum, 0); + cd_audio_status = AUDIO_STATUS_PLAY_ERROR; + if (sys_command_cd_play (DF_IOCTL, unitnum, lsn2msf(play_start), lsn2msf(play_end), 0)) { + cd_audio_status = AUDIO_STATUS_IN_PROGRESS; + cd_playing = 1; + } + do_stch(); +} + static int play_cdtrack (uae_u8 *p) { int track_start = p[1]; @@ -182,16 +224,15 @@ static int play_cdtrack (uae_u8 *p) end = (s[8] << 16) | (s[9] << 8) | s[10]; } } - sys_command_cd_pause (DF_IOCTL, unitnum, 0); - write_log("PLAY CD AUDIO from %d-%d (%06.6X to %06.6X)\n", - track_start, track_end, start, end); - if (sys_command_cd_play (DF_IOCTL, unitnum, start, end, 0)) { - cd_playing = 1; - cd_motor = 1; - } + play_end = msf2lsn(end); + play_start = msf2lsn(start); + write_log("PLAY CD AUDIO from %d-%d, %06.6X (%d) to %06.6X (%d)\n", + track_start, track_end, start, msf2lsn(start), end, msf2lsn(end)); + do_play(); return 0; } + static int play_cd(uae_u8 *p) { uae_u32 start, end; @@ -199,7 +240,16 @@ static int play_cd(uae_u8 *p) start = (p[1] << 16) | (p[2] << 8) | p[3]; end = (p[4] << 16) | (p[5] << 8) | p[6]; if (start == 0 && end == 0) { - cdaudiostop(); + cd_finished = 0; + if (cd_playing) + cd_finished = 1; + cd_playing = 0; + cd_paused = 0; + cd_motor = 0; + cd_audio_status = AUDIO_STATUS_PLAY_COMPLETE; + sys_command_cd_pause (DF_IOCTL, unitnum, 0); + sys_command_cd_stop (DF_IOCTL, unitnum); + cd_isready = 10; return 0; } if (end == 0x00ffffff) @@ -208,12 +258,11 @@ static int play_cd(uae_u8 *p) start = lsn2msf (start); end = lsn2msf (end); } - write_log("PLAY CD AUDIO from %06.6X to %06.6X\n", start, end); - sys_command_cd_pause (DF_IOCTL, unitnum, 0); - if (sys_command_cd_play (DF_IOCTL, unitnum, start, end, 0)) { - cd_playing = 1; - cd_motor = 1; - } + play_end = msf2lsn(end); + play_start = msf2lsn(start); + write_log("PLAY CD AUDIO from %06.6X (%d) to %06.6X (%d)\n", + start, msf2lsn(start), end, msf2lsn(end)); + do_play(); return 0; } @@ -224,7 +273,7 @@ static int cdrom_subq(uae_u8 *out, int msflsn) uae_u32 diskposlsn, diskposmsf; get_qcode(); - out[0] = s[1]; + out[0] = cd_audio_status; s += 4; out[1] = s[1]; out[2] = s[2]; @@ -285,7 +334,7 @@ static int read_toc(int track, int msflsn, uae_u8 *out) out[0] = 0; out[1] = s[1]; out[2] = s[3]; - out[3] = track == 0 ? buf[3] : 0; + out[3] = buf[3]; out[4] = 0; out[5] = (msflsn ? msf : lsn) >> 16; out[6] = (msflsn ? msf : lsn) >> 8; @@ -372,11 +421,13 @@ static void cdrom_command_thread(uae_u8 b) break; case 0x81: if (cdrom_command_cnt_in == 1) { - uae_u8 flag = 1 << 0; - if (cd_finished) - flag |= 1 << 3; + uae_u8 flag = 0; + if (!cd_isready) + flag |= 1 << 0; if (cd_playing) flag |= 1 << 2; + if (cd_finished) + flag |= 1 << 3; if (cd_error) flag |= 1 << 4; if (cd_motor) @@ -393,6 +444,7 @@ static void cdrom_command_thread(uae_u8 b) if (cd_error) cdrom_command_output[2] |= 1 << 4; cd_error = 0; + cd_isready = 0; cdrom_command_accepted(6, s, &cdrom_command_cnt_in); cd_finished = 1; } @@ -512,6 +564,9 @@ static void *dev_thread (void *p) case 0x103: // unpause sys_command_cd_pause (DF_IOCTL, unitnum, 0); break; + case 0x110: // do_play! + do_play(); + break; case 0xffff: thread_alive = -1; return NULL; @@ -672,7 +727,25 @@ void CDTV_hsync_handler(void) if (cdtv_hsync < 312 * 50 / 75 && cdtv_hsync >= 0) return; cdtv_hsync = 0; - +/* + if (play_state == 1) { + play_state = 2; + play_statewait = 20; + cd_playing = 0; + } else if (play_statewait > 0) { + play_statewait--; + } else if (play_state == 2) { + write_comm_pipe_u32 (&requests, 0x0110, 1); + cd_playing = 1; + do_stch(); + play_state = 0; + } +*/ + if (cd_isready > 0) { + cd_isready--; + if (!cd_isready) + do_stch(); + } if (cd_playing) gui_cd_led (1); if (cd_media && (tp_cr & 1)) { @@ -704,12 +777,16 @@ static void do_stch(void) void bleh(void) { - //do_stch(); + cd_playing = cd_finished = cd_motor = cd_media = 1; + cd_isready = 0; + cd_playing = 0; + do_stch(); } static void cdtv_reset (void) { write_log("CDTV: reset\n"); + cdaudiostop(); cd_playing = cd_paused = 0; cd_motor = 0; cd_media = 0; @@ -1023,12 +1100,12 @@ addrbank dmac_bank = { void cdtv_entergui (void) { - if (cd_playing) + if (cd_playing && !cd_paused) write_comm_pipe_u32 (&requests, 0x102, 1); } void cdtv_exitgui (void) { - if (cd_playing) + if (cd_playing && !cd_paused) write_comm_pipe_u32 (&requests, 0x103, 1); } diff --git a/cfgfile.c b/cfgfile.c index c5e22b02..fc7ca362 100755 --- a/cfgfile.c +++ b/cfgfile.c @@ -222,7 +222,7 @@ static void write_filesys_config (struct uae_prefs *p, const char *unexpanded, char *str; str = cfgfile_subst_path (default_path, unexpanded, uci->rootdir); - if (uci->volname != 0) { + if (uci->volname[0] != 0) { sprintf (tmp, "filesystem2=%s,%s:%s:%s,%d\n", uci->readonly ? "ro" : "rw", uci->devname ? uci->devname : "", uci->volname, str, uci->bootpri); zfile_fputs (f, tmp); @@ -1771,10 +1771,10 @@ static void parse_sound_spec (struct uae_prefs *p, char *spec) } p->produce_sound = atoi (x0); if (x1) { - p->sound_stereo_separation = 16; + p->sound_stereo_separation = 0; if (*x1 == 'S') { p->sound_stereo = 1; - p->sound_stereo_separation = 10; + p->sound_stereo_separation = 7; } else if (*x1 == 's') p->sound_stereo = 1; else @@ -2740,6 +2740,9 @@ static void buildin_default_prefs (struct uae_prefs *p) strcpy (p->cartfile, ""); p->prtname[0] = 0; p->sername[0] = 0; + + p->mountitems = 0; + target_default_options (p, 1); } diff --git a/filesys.c b/filesys.c index c941e6a8..cfd6cbdb 100755 --- a/filesys.c +++ b/filesys.c @@ -216,10 +216,10 @@ int get_filesys_unitconfig (struct uae_prefs *p, int index, struct mountedinfo * mi->ismounted = 1; } mi->size = ui->hf.size; - mi->nrcyls = (int)(ui->hf.secspertrack * ui->hf.surfaces ? (ui->hf.size / ui->hf.blocksize) / (ui->hf.secspertrack * ui->hf.surfaces) : 0); + mi->nrcyls = (int)(uci->sectors * uci->surfaces ? (ui->hf.size / uci->blocksize) / (uci->sectors * uci->surfaces) : 0); if (ui->volname) return FILESYS_VIRTUAL; - if (ui->hf.secspertrack == 0) { + if (uci->reserved == 0 && uci->sectors == 0 && uci->surfaces == 0) { if (ui->hf.flags & 1) return FILESYS_HARDDRIVE; return FILESYS_HARDFILE_RDB; diff --git a/newcpu.c b/newcpu.c index 829a5780..28f59a05 100755 --- a/newcpu.c +++ b/newcpu.c @@ -1792,7 +1792,7 @@ void doint (void) //static uae_u32 pcs[1000]; -#define DEBUG_CD32IO +//#define DEBUG_CD32IO #ifdef DEBUG_CD32IO static uae_u32 cd32nextpc, cd32request; @@ -1885,7 +1885,9 @@ static void m68k_run_1 (void) count_instr (opcode); - //out_cd32io(m68k_getpc(®s)); +#ifdef DEBUG_CD32IO + out_cd32io(m68k_getpc(®s)); +#endif #if 0 int pc = m68k_getpc(); @@ -2051,7 +2053,9 @@ static void m68k_run_2p (void) uae_u32 opcode; uae_u32 pc = m68k_getpc (r); +#ifdef DEBUG_CD32IO out_cd32io(m68k_getpc(®s)); +#endif do_cycles (cpu_cycles); diff --git a/od-win32/blkdev_win32_ioctl.c b/od-win32/blkdev_win32_ioctl.c index f47d1820..e601a14a 100755 --- a/od-win32/blkdev_win32_ioctl.c +++ b/od-win32/blkdev_win32_ioctl.c @@ -17,6 +17,7 @@ #include "blkdev.h" #include "scsidev.h" #include "gui.h" +#include "win32.h" #include #include @@ -40,7 +41,7 @@ struct dev_info_ioctl { #define IOCTL_DATA_BUFFER 4096 -static int MCICDA = 1; +static int MCICDA; static struct dev_info_ioctl ciw32[MAX_TOTAL_DEVICES]; @@ -62,7 +63,7 @@ static void mcierr(char *str, DWORD err) if (err == MMSYSERR_NOERROR) return; if (mciGetErrorString(err, es, sizeof es)) - write_log("MCIErr: %s: '%s'\n", str, es); + write_log("MCIErr: %s: %d = '%s'\n", str, err, es); } static int win32_error (int unitnum, const char *format,...) @@ -85,7 +86,7 @@ static int win32_error (int unitnum, const char *format,...) NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&lpMsgBuf, 0, NULL); if (log_scsi) - write_log ("IOCTL: unit=%d %s,%d: %s ", unitnum, buf, err, (char*)lpMsgBuf); + write_log ("IOCTL: unit=%d %s,%d: %s\n", unitnum, buf, err, (char*)lpMsgBuf); va_end(arglist); return err; } @@ -95,7 +96,11 @@ static int close_createfile(int unitnum) struct dev_info_ioctl *ciw = &ciw32[unitnum]; if (ciw->h != INVALID_HANDLE_VALUE) { + if (log_scsi) + write_log("IOCTL: IOCTL close\n"); CloseHandle(ciw->h); + if (log_scsi) + write_log("IOCTL: IOCTL close completed\n"); ciw->h = INVALID_HANDLE_VALUE; return 1; } @@ -109,8 +114,12 @@ static int close_mci(int unitnum) ciw->playend = -1; if (ciw->mciid) { + if (log_scsi) + write_log("IOCTL: MCI close\n"); mcierr("MCI_STOP", mciSendCommand(ciw->mciid, MCI_STOP, MCI_WAIT, (DWORD_PTR)&gp)); mcierr("MCI_CLOSE", mciSendCommand(ciw->mciid, MCI_CLOSE, MCI_WAIT, (DWORD_PTR)&gp)); + if (log_scsi) + write_log("IOCTL: MCI close completed\n"); ciw->mciid = 0; return 1; } @@ -121,34 +130,41 @@ static int open_createfile(int unitnum) { struct dev_info_ioctl *ciw = &ciw32[unitnum]; int closed = 0; - int cnt = 10; + int cnt = 50; DWORD flags; if (ciw->h != INVALID_HANDLE_VALUE) return 1; closed = close_mci(unitnum); + if (log_scsi) + write_log("IOCTL: opening IOCTL %s\n", ciw->devname); for (;;) { flags = GENERIC_READ; - ciw->h = CreateFile(ciw->devname, flags, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); + ciw->h = CreateFile(ciw->devname, flags, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (ciw->h == INVALID_HANDLE_VALUE) { - flags |= GENERIC_WRITE; ciw->h = CreateFile(ciw->devname, flags, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (ciw->h == INVALID_HANDLE_VALUE) { - DWORD err = GetLastError(); - if (err == ERROR_SHARING_VIOLATION) { - if (cnt > 0) { - Sleep(10); - continue; + flags |= GENERIC_WRITE; + ciw->h = CreateFile(ciw->devname, flags, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); + if (ciw->h == INVALID_HANDLE_VALUE) { + DWORD err = GetLastError(); + if (err == ERROR_SHARING_VIOLATION) { + if (closed && cnt > 0) { + cnt--; + Sleep(10); + continue; + } } - cnt--; + if (closed) + write_log("IOCTL: failed to re-open '%s', err=%d\n", ciw->devname, GetLastError()); + return 0; } - if (closed) - write_log("IOCTL: failed to re-open '%s', err=%d\n", ciw->devname, GetLastError()); - return 0; } } break; } + if (log_scsi) + write_log("IOCTL: IOCTL open completed\n"); return 1; } @@ -165,6 +181,8 @@ static int open_mci(int unitnum) return 1; ciw->playend = -1; closed = close_createfile(unitnum); + if (log_scsi) + write_log("IOCTL: MCI opening %c:\n", ciw->drvletter); memset (&mciOpen, 0, sizeof(mciOpen)); mciOpen.lpstrDeviceType = (LPSTR)MCI_DEVTYPE_CD_AUDIO; sprintf(elname,"%c:", ciw->drvletter); @@ -179,6 +197,8 @@ static int open_mci(int unitnum) mcierr("MCI_OPEN", err); return 0; } + if (log_scsi) + write_log("IOCTL: MCI open completed\n"); return 1; } @@ -683,6 +703,7 @@ static int open_bus (int flags) memset (&ciw32[i], 0, sizeof (struct dev_info_ioctl)); ciw32[i].h = INVALID_HANDLE_VALUE; } + MCICDA = 1;//os_vista ? 1 : 0; total_devices = 0; dwDriveMask = GetLogicalDrives(); if (log_scsi) diff --git a/od-win32/resources/RCa03440 b/od-win32/resources/RCa03440 new file mode 100755 index 0000000000000000000000000000000000000000..7864adba32aeff2804b6daca5914d03d54f8d2e4 GIT binary patch literal 149524 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 literal 0 HcmV?d00001 diff --git a/od-win32/resources/resource.hm b/od-win32/resources/resource.hm index 1af540e8..32269cfc 100755 --- a/od-win32/resources/resource.hm +++ b/od-win32/resources/resource.hm @@ -1,14 +1,3 @@ // Microsoft Visual C++ generated Help ID include file. // Used by winuae.rc // -#define HIDC_CREATELOGFILE 0x808d0402 // IDD_MISC1 [English (United States)] -#define HIDC_CS_AGNUSREV 0x809b06c8 // IDD_CHIPSET2 [English (United States)] -#define HIDC_CS_DENISEREV 0x809b06ca // IDD_CHIPSET2 [English (United States)] -#define HIDC_CS_FATGARYREV 0x809b06c1 // IDD_CHIPSET2 [English (United States)] -#define HIDC_CS_RAMSEYREV 0x809b06b3 // IDD_CHIPSET2 [English (United States)] -#define HIDC_CS_RTCADJUST 0x809b06c0 // IDD_CHIPSET2 [English (United States)] -#define HIDC_EDITDESCRIPTION 0x8087057e // IDD_LOADSAVE [English (United States)] -#define HIDC_EDITNAME 0x8087057d // IDD_LOADSAVE [English (United States)] -#define HIDC_EDITPATH 0x80870582 // IDD_LOADSAVE [English (United States)] -#define HIDC_MAPDRIVES 0x807105e3 // IDD_HARDDISK [English (United States)] -#define HIDC_MAPDRIVES_NET 0x807105e4 // IDD_HARDDISK [English (United States)] diff --git a/od-win32/resources/winuae.ico b/od-win32/resources/winuae.ico index ea35d3bc97962e65ce43b8976d8d96904a56700f..96e2693dae9c99345d5e430333efd4b7753edfdb 100755 GIT binary patch literal 69260 zcmeFZ1zeR)^Dw-03DO;h6hs9C>25(9q?A-by1NeDAV`R$ppw#{ln4R_64D(iDWTGF zzU$!aed`_10sz2Z-|$6L z0K~BXprrf_M*)Bh7XU)SZ#X-I6PyB&Jb>h}!6O0y`0t#9qYz#~=wuDtr*9)v@3U)R642Lll}0NjHlzqJPg zR_Fk*;GzI_s6D6|U~pmo;`a8RUl6O0t5nC zf->|6NkaboKbe@Ac+q%y|I!0YGbUzUUS8zu|CBH-kmSD#So}R5)55|6YUM8tL3GR$ z`k$U`VPS%4&ij`hLF^_L5FPOHmjBotWHToZK;v!rk&bM}!UBz#7q8(*I;JetjD-nA z2MrBBG=wQD53vJK)lmMEzztbsGXOxuAL*DkWWf!2lN0)n4Pna4qRYx7`vJB7qrmT7 z`%^W9hN}S-wrx;Ek0{u6LdHNe34B0aTlv=;T z;BWX$>o>R|^$j8r{~jXk3=GPWP)6F%lLXn!zfXaXQGse8yK(}cU#R%M%g$IZ{k(Hd zv_90E-x4NL=l-zeAT|6Wj%fiPYk>B<_P~U+w>hMvzpG+dNIL_O^6xl0gquLR6z?}3 zjwz20X-e(wMh{vq&<`ga0VKMGXw;{DzwB>m@ifCxy%^P|9z@9<54 z`-hkQ6@m0W2?!+!CH?pWoOHCG^al>4X@1gVNEP;@z^{~%>-EQU2yNp-Xcg}U1|T+} zJdY}Ym_ubiwDT|^LLB1}5uV`?gAA0Jp)JM;i4sB?8_EzfqFn-kcn;-R1_WXg+Rq#D zP)iEm1dfpcM2K$!5crmm>l`}5ot&w@uX7m6KlMBiTGUV-w75?I^a~aL2iG|!Gp_*D z{z7<1Qy!sP}{6XXXWAd;C(EgZN-rzqfeq_S>kx3~0kF|l5AQbq$S)5dygzshG zf$jNw`A-FCHjujOB=15Ba|6mVkfMCgi~wCE2oMA*Ns=z8{ymgu0s!K(1VHRTc{dv% z4o?Hbu^N=mK=No%PK0tKl)IpeILXL)CWJB!%HQWX5GwzD3WO#Vs(~i=1VFz~@qcZe zA!P%#1OTK|pe6vYvJgZLEvCCkJ#yy4u>jt;Sp#_WY~3vwBP0&?L-2ieP0kb zk>AD?C+!>j#(we(y)N{=ko|)4vw&|oL;`>d43G_kG6HEU!hg$c5S;xjBOnOnpZyE$ zZ!JT<$nOccH-6h6USe#(P52z}65{|aB7A_(`5Yi};{`>%Hc9|UVjfh1#Tka0@}WZ3C~b#yMwA|M^Jm) z4}?GP1^4dzg2xYh0E55I^wNWX?#eqruhj?WjotwknI6C>(+`-G`T&o@I{?$_ z2e51X;QaLga8YXzh+G{20@vOFI&(Y%&5Eorl0# zcZlW#)dh?|b36)!y+^?{`w3v?F$u`-1Ov*HU_hM~4oK4?0abb&Aj!B5sP5ecq*)n& zCMzABPYMEOvXcO1P9`9@UkIr4@&NgRQb7H%4A2%<0OF#jfU2Ys2p8r8=8{^VR{#gf zRTaRj@hR|aDF<}$K|mih2pE!v0A2bJpv@cwOku--J#-i_#tZ>Q_y~Z-jsTY1P(Ra$ z0qhRc?~G9(o-zqY9zO>p6|Vqw?_50!$e&CCn))%o zQrQNWs^0+4nr3q3^zHFZr886F*b_g@Rp)3dM&fSW2B;o*tkYfSv@8glvj7DJ1&tsu zX1H+SeDa;Nw5I@+S5!1C{F49^9t8z80CWrt7fe9<ys5A4`dfB@hK7c635ZZp(!h`mjTN=EodDF=*SD?woxnvjG*l>n zh=xW%Yj#p!TU%H60W8j+5v7OU`eVpO6B_Cq06m^9$)U#1FkJ z)S-^0Utotgt6N)Vz-o0zb@eatAGEYqS093x)veXfe@S4drK;)~0M%8`s-}NQpt-WD z^c~o#s>;tl`W1n_`}d1Ww!pj6()`k2;Rl0xd4+`ll$Ml~O#PBTQDI?j8Q3j^()ONi-A6pOG$zNax0OEHV1>MdzPENnX-{$}&09;Y-W31`8yoxaUlOplx3doe!}iwp&~ttvjoaDVTLIu|ZEx@P3+w>6Sz1{+ z0$>dZjQo;-rIn>sC>VntWB*J1|9@hF{7R&2i98GaYxv*zBoqMsHctP!_$2nXrG@^( z3j4uNbr-pC;-k8Y@Ib!lB|z*g23R5A)K7{H_{*FJo|3%4TaFJXLOv;}uM9Bqy8?n_ zSwV>W84#wz1|pSNK-3jB5F`irl5*!kj5-^L*W?5Vx-1|W@=248zWJnS=8*qs%?xf^ zL;mT_b0E%<4dmZo0|nM>AjkRwh%;6J(bqLVwu1~vFi{1?ZgL>sLjyeU)B&V{%78NP zG9ZL&0y4tPLQDbp+(`E`Th-3tYPG4~lNk=hU|v@Y=%a@KL)tK4xC{Affy00~5_(?z0ALLH=FhQ5j{wnd z$mhBP`FRNt?cN9=DSHm69zO%b6)ypK#cRl~dkYxyAipkm6fhJ*`SA##tm%b(yM91l z3%yt6D4?tP=Hs2O?f|f&VZioa6tI_!fpc|`zgPkJc2GSV7sF9oHh%r!e)S5^gQs7od=#V?}2~9d!SP?3zQpXfKt;8(5#vP zp7|dEU+XlGfwErbI52JP0v0dFf#Zpmv7C>z4B1nF{3IYcgK}_E&h#Ou7slBTpX>9d}jqrbN z@kBBIzvA@;@X#?hPn|u_^$)$FWxzatft&jxpUK}c(9_TYZr)4QHrI`B{S5;<1(hJc zzh-0sEX{8GwZ5E)j1@33@|&7J05`oO{=z^)KnOUfVUMl6e83|(yx>m^%&1spPRPui6 z*AGa|WpRC=bw%KS`R3TNdHXy0W%a5 z$^arF%0G~PF6zq5gA8Tm%%7?M^VrGp?1!Hp@0T`00uZym-7h`+-*Uh7?VKWs`onwv za8B`r;^?lT&>01ao%={~fdDz^+#?aGz1C&6Z40JY8I0GV}a|tpY zepjCrBpPyoJ5U__uI&YI*GvTD+&l}i?VxjvhYYxVQwJ3K=|S=An}8Iq0mveZ03j5g zCXKcQ6iL2-1v*z;jk^v?!gWEz9ecnc(F+)m=LzVnz@P!0ALM%hyTSlqRqO+ds(mNt zg^PNSoxTCpTlWJxPpHmf2s$SW0s&L#%mBrQFZhiBCF2pG;xi7^-6nvo&or>|n}y=R zQGgQ4qFKR!EHD2g?o0Bh3h+Iy0#5b!fmuThppP8_^qIqe4vOhA!iT}R5GbB|djxPM zj{%PCQ9x7P2E}i?0K=nEKnvM(ddOZQ?KyQl6pyX#0isVj07pJ#w@V>A4%IP2b*#0c zfU|BKa8*x$OHE_IF>o5(g5t0WErYz!1aPzpxrbFjGLjj zYsYio(me()x6c6WHmDAYtD3)p?EahgpguJU)MecTZPm#jE^84a<}8AQhmegfTm}hm z-hz~8DW05pIACG{ zR174lrw*+3?0&EKqoA%2^z{Bfe=prqxAD}|{~i6KprZmsq%Hoye=o@@0d2Y8u|EpN zGUh<>@*nu`B?T_`laJ>x zfpBG35aw|aWV?!joEv9AGW1z%SY{bX2@k(6!w6M1X-$NlPX49R+B7m^6&s4Bv5- z(^%MmiHqmLHv%s%z=29IG1i~V*hLmm=I;_Gkd2d*?I!}AF#Y)-3FpWJNq@uv1^Zc~ z6Z=OZ<|pC!0|Vd^kpSV3_}`Yl#f1OYzrTr8S5?5rrN)IC$G@y7tNHC?8|YskU_z8@ z&W|9o2LqR7rL;Zotu}d8+w1ClJj!q>t=SpB=d#vqM=Y(2f+kCpNQe}k=|BDJxF!xR8+ky(n;;L&~VpM{Pd~+Y?{#Qs(Tt36y$Kp_~>!Vamv@`85sgQB32(|$GJ+>akkxX6jzaFz+y&Ae zMMupm5!gaBtcFJ_?TP)$*T((bL~&O{xE+f>%zVghoJ>W$>p`UYBWgVC+0Ne|NpN9X zV7(AJaF!AKCjH_8fs|E0df>H>gpzkdxV%|{qv5DUGbU5HFLCat`1`&6df-3v#BlIp z!)KRI!^WS#w2T>V6&$>v*{yI|3#Z6zB$z8%k*i z*lx_G%G{m&f*de~O2oQ^Yk!Ty!Tr=_C8p%KMm^0593Cd7WKC{fZFGFx2k#3syd%a4 zYYIpUzG840UoY%6b~tWB*2cS* z+M{X(KjLNUnrfw<=ZleGw0^Fwc%oGYVm#@RE9=}pAMpiG%G+fL5oG`h$7I|7)YUgDltYs-VzNh zR?_*+J%4>}4?Z~-`IOff-r*vCpGF=cR=o^|K4%Gtt@chgf5LD&z&#h+Pga5-@-l)_ z(~h4J_EaMS4dt1W2RdOvGieuM=gU(c?g2Wkxbq^R_KAt+jvL7i)Vb0#$U0XTc_243QBD(W*tIoSPUJD^gC0vN# zHN>lVk1x(j-Pb7LZQ_kCLFQZB0=|if??Vz{O|6OaB9(97oe#s1S+^p>gUUKHO)?c@sA0d7(5LZ}6IZz- zsuFKh2&~+7Q3^hPAJuF(@0dv_m#mty**~pDi+*G3(`mow7zi8ulkqZLF9`VjTH$!F z@?e`Z%B|fAR!dYDD*`m`)=Fu=eA3yphCWt{5&5-A%Ud01QNHaNU0p`)1eIHOnYrt5 zQgi)EVbAet!$Iex?55?VaEarrhhgq9bR4^RIr#19{S^6}+FpsKL(Fqlgt8d<%?F$) zPO|~_2Y&MtOi{C27y2%4?p_z5Kd4#|b8uZCISME>w*qL>L=zhV0dC8!J5BR1?(?-$ zC|BM*hruET=jg|fCGKaFU1?~hkduxM3GtLXC9U0#VMv{Jzcgnax|*@Ps4V(uaxLb| z+iQDMJ`7_eDKZR*nau6xO|ljRZSGcH6S&R`l)NoCR}5LD$(N@xi5zL<`*LbL2~HvW zCPFjO5l@~AGTA-zW_Nk`RjgC=gAmu2swC!4*<@ zT-N7Ivt?b1rlf>;BW7>MPK$l*pU*mWF^q~2!{pwu>zS%MnpIvf-v8>6K_wT{%Ld17 zUM+7%b5k;}w@jm$2uz$SJhOwRSic1I{^daV#1g?A`VG~t>+(7g8k?Hs%~+f{M$^ap@Ol|@ zy?67PIRe$ediOTzAOrC!%V#QOj+v7B*|Rz!pXt4@@aqU@ceh+mCrsY|q(ZjT{s_Gw z>oJdZ@kb;0ynPy#mCg=^ac2tetLMu}>iW83hthN3wNqkW*CKXS&zuWY*7E|?$X zMFd?AycC-c^LlF)@m=yr*bvdF0rR5;crY&Gpa^OP*XY*B!{hC@3fadyhJ#fL@%}q^ zCYx7kbK$kBltT3yAH`hd2P7jdUQ?{e`H{u+}srt378w@ z+8r+GLypt=QJ1A`vF(nXmX$Xa2h>jJSt8EaxtBv;qO;g9?$Y7mmNEr$;nxMmQM2Go zS+a;QMdb(bZSAQkfqRwrWT?-_A1qb9rJVjy7TtYI=xgLomg`XgMT_>`+9G^`V}PQ= za(0N^TlkgeJbB+`S>h3t8AYaA{1Pb!@2724>vsnD+S3+YOq=!0*4p_U4|(5u&5rr` z-+1>V7;)!hFFGwIA<7T#MjLGxSrMMW@4um>-|In_f@<1NY!+x+PsIw4B_-<(h0!N! zv=2H8XliQ0&BRjhir{Q0r&93Zd_KPm@LP~!@E^6PIajuKt9~uE#iP%;r}@%g7(c5t zw(IqtN<${pZWgABHMU#k8~96)XEO7Ih&2O;I1I{9&FL_eNbz`7QhE7@3}T7TsdzE6eBAbky_2h(MlDz;{Z< zcw@$sX1QgWq7m((>dI)I`IflE*NV(|ug?y4I=*Y29w*)8$k!<%C6>^E6RX4#N2Vad62-IcamLqfI4Qv5^^@T4 zlPyVR>~kb1;kCiM?ltzRjLwSi>4)3>G`V(Goy^reUlrm^vT)`xFGqdF$nXHW?0wOR z4RNrzv!t(+uQ{SVfP0bQ7Tn2P=@dI?$AKiS`ZHYnK_fgO^;R-b_S?z5@~HCZ zTraN&C6{02)|kL+$oi^KUzaHy6sSh+h!ad*Yoqm|X)L`b!ewe;+xVIK23Zydof zbvoyFB`7-mHUr8{i(Oq6dfZ%!g>0<18*ibUqHX=iTbsE(674R&Pi6R)&i2KLwy0n0 zG1@Egd>=N6ev>~tsasKnsUvWQ?#MS%E;l_c0{5nP+W~zfkv#s3%*sV<)uy19CD{ww z_~Mm}lb`f_o>{MtZ;qTnIJ8|7a5@_2+ACnrZeC4(q=kx$4>O{PbBNh^%3PMu51W_H zef)s=LNBJMU_no^CQLrx&Iw0Pmo7XXADiw|%Rw2}ns2{Lz$T4;6>_Ky9k*7v1kI0< z0=|q`Tx>0Ejz-i?vU(O$r{NUbm|m%a6CZwGPH7)1KU)Ti4TVZW667N zxfZPbKUx+>)H&W0~$8_FSNVi zrzbu=t-H2sD4lP-jor(SPn~SLMWd|=i=}}J9ob%XN_hE*0O1)VPIBos8#7;dpDe8h zqZO=(Nn=BOWG{K4(Q2#t^zJK*nm5g!dtb*ScDtkfvb3&U4<6*OK#|aPbbEe_rFN^y zXpoRUi|INMemmgt%>2~J7{34h5sd=Mc|D>5jP!27kEUwAqj3u2A7rK%$MEq@X8613 zmJ#%24PT!}FA~_f#OpbP5Gtymhic-!;6GQ%Od2y)D!dS;=eDiMZd9~NQ6$U-uTF%) zT?y9o(yKn9oPP3^pvQaGrnYDytnO&j;hZ=k)F(`EvK+IRJZ}nzs1zaQq8-YoDJtlf zTJhEfjarUL(-?+cT_~Ub;ekHzsE$njAiPQ7@x-iiKKtnP^qc)}otpA!nr#fu-tUsh z&&gBTVD+H4lEH%kP2iV+WSd7!L~k5OZf=GKa&Y;0%L)X9^uLx-|)TK5p`UOccr8 zz#VmqE$sX6B4S}4RECc!f{4+nVjHeYY##C|AlBA0-qIb~P(g;tE+shi=+n+Mgs#JW zPi{|BEiW#EhV?>SXt}K_XB$l(JjL@jb{xEesitbQy<3u_dFd$5jxU7Xae`Eo3AYS` zc{uR~iRkcxd~{g&vY4c?!}05VVG)L{>gmzV@-zO28Q0sOT`<9x?ze@vxh!DhsFBW) zW#ud@%zu$@xzrEa3Y#X?Q9WNqnk`q+9h*uXBU;QXZ0phlCtpw+>6@-m9!c^QTagdd zb@V#}RYnauVgiRRY>X-oKi}~%ADAnhZ{2unf@4;hNPCsFLl~!?%r*r_|FT_hU9TY< zmyaSUNr8H|L>Hl!q+!81%W4myrO)Q{djrNTLPJi_0k-b)cJs~_m$2`if~radV;q@X zj_VU6)S~_vdBrQqW_m#b=wp|qHJpb{HL*z&7T-^3Rn8L^83hWv-hUZ6MB+ggFbN$D z7A8t>jUv{D#phv?`C zY5C2LRIv(;yKIbA9J6Tmu^lB5(1t%To-+_! zv$o6@6I+@(;4l8rWhw66(B$Ab%6V(!!OTin8nFV=Y5A9Qdh)?D1pFRdn%xR#P=*6< zu;y5eMG%t|)SFa1MNq5qN+1PpHl zqf)hEi;<6~w#<9HhOcg|`gFdaNIvqhXOK7N|LBpBILDm3?)}*|a*AaMU(*9sxmBKM zlu;JHof)SaB^{V|Ug=U^)P1HKyBcbbh^g_BSoCY4|Dx66p z#4l?}`^Y(?qo0=V;25lJ%QQit^7jB#kzjb&oEh$vZ#}|2z*=+Xg|C(Awzo^hBJYig%?6y$%r~8D9nS40cZ5; z;E{0N-y3K6oPXM0r>D8j$kTLbXYEu{gxer{NF-Bio{J1cSR86eKK_#mQ#@GMG9sSn zquYfbyD)*Pv62ncD|8A$_4XrEG9{BcQmK#*cj0=%I_!a5aJRObkKkVp#EeB-U0Q{i z`IXX!P_q2{=9@?|B(2bmEpAv_@!gnUZZ**;my@S1UO2iiA1<(zh9W`L=1^DNH$8GZzQKPd>Ft#B+RR5YWXBA)kGE{HtB;?Y7OP5E-5e$6 zFhUc17!^I6$t-8p;TENu^6Yuy4ELy~Sq9CU*Yel+L(CpgF=DT6oh!R#b@yvSz~>j1 zG3)N@kiSCPd?@45aC|*rBje&_D{L!8D-v#w_ge(Ud_fA1)qN^`kd;EQOE;;xNzP=ZD zOD3X1_`}ortAwRencnZPM(OakXh9T@8Z0P^3>5|<@OlpAd5ROUG%C+Yk#0g+faq!5a4rE?- zZWQpf_iW**Drf5IG967iO=q%&a@u=k?Ol&=Tc6$navPi--D#Ha^78nk@RwrE>slfV zJNM4Zh!Gr47W7CQhQ^DDLi;mnP9esBbhaN29k@$wSk%xzeEoTSjKbj!tQ@HHNAz-7LIolth_P`=$$FHUZ z*MRHr&8F~Kcv; zKeJfkYotd&4}QSba%%e>9QF~FmT)2ds-ivP!lTkU8sc* zEW#Aar&{Z-b#U3)QQ`eIx=PZ1t2Ql%C;6^)W0Kd%SiHL@4R63PrAdnM9)C^1ZBBD~ zW8Je`V<+)BBmfGAez;^D=QHhoEXOZVO?*juSPRa`sq~JIJN(0}kettr8=g)jkOKT?KL6t8=+d>8+X7sGarg~IdkaojOh^l=lRFeZu>$G!gp81kjjJ1XKFu6cT3l} zp}}>g;xWT}a8n~8FaNSk+F6WFazdpdFTYaFH;c;h@ZRe4jPh?{iE)L#>MfX{kT5>( zNt;?3*je{Hq~e+^N}-WBRN%UMeJfI{&47%;^W|2C5A8B%pw7$3>4V9S@nwjeZbfbM z<1iA-;|MTv74^U_CnOFPwp>fl?_8`WX>ML|S~#5OyJmxQkxL_Njz5!G($~)&#p90~ z^eaZN&hWP7!;0f-RP}|$i{E(*lPTGJeGNa)*r6DM!~5{HSQtqs4i#S0N8#-Z)aF3K zII;3Cn+sWk6UT2eL=KMUMbxGci4uD^uV>ED2-9gup}6E)Nf|K5kupl-EXwxXSw53P zK;2q?_R87FJk3}synIx6&~|&I^PyIcn5B1J5_EE_XGNaFOW{YUejE0~hkM2TuLlxp z-dJ5CcFCi?_y*7W)X1aW?u-6?f|Pi}w9Mm)l9bV5iE*Qy?P_qEtRERljhD zpjAU-POw$B>*i(s$K)oaXS*mHJ#0UEV%9O+28_%bH_i9;_%CP}IiG9_)Q`iy`a6v) zaNVTSC70$?0?n@udgb;}7uFEH=jcm(@bt!Rn2WpB@?Ntz7InnHd2i>ao3hDiq_4$} z647iATHj4MO}sOzFL-W`2tS@lr9gassl``1Gb!(GtodBfET{-nqh7|jY@=#2op_*m zCx~(^q=pWb_Az%t#mdXBj%WsmW&jf z_yLMTj`5qmPn~O%Zu=(}PpxW)AJF2jZKqH?yki$gVi3X1mMsatLi;twaGp&rRo%70z1;Tr50$=R|rooD9)s!MnTi;uifJso7p>~}&I zvg@25V;#SSTxG<;!v_abF2}`_%C5TXs*2KAOrEGeg%=V%kbWmy9p1?9sqQ+KV<)Lu zvvu}0eYT}0cDuEf3&zK=8)x`XOowBlwy>_D_4q zhI|-dnZ=52e6uU7$jQuy^(r^UJY+DCKkB^CD{m}nobjt0eb^ZywQsuk5*`q7-;1dZ zrS;j@?;z+IaY85@jjl0B_$Y@?ww`X;W<9Dg-lw;eowh@dvg+RCOj%OCG>>x`hiHP= z?`;}8qfU)k6Dy%N=eg2Ovb$;QM%M#~dYj8XUzga8G^hVsf^e=L^5#Sazt5Ym`ye)2 z-rH~?f;MY8%o2S^mKx}-V=Znk_mJz%kUWIpyS)~}>O)V8xCB2R#M+)80t*3!efzVQ z&RChchLek+9a&t+?CX{q98tL$h!$d^)TfHDMOX%ygBGd{=q# zd4q>Ghism!Vd}pbb$?}U)G}|{bM(4&`N=GEYGZZ7Y_UgZN=$C-!0dg(M;`k$G9nrR zOwCPfm@g!4mszsCjA;UGN4#t#b({)cwo{{;(an_%8f1B0P zyvSN*Q?_gGkep}27)V((*z=f>eGT@6Z80j4^P@Vu9y{z_YD$lzlz!UD}jlT?^(yY z`xbmdmdXa9^2K{y&$06s1@kBwuUIzF?;rAxnXivAy!db|f%Km5zuICzd{J0Ktd3_n z2=y{7nNmlL)4(~7g5ES5Cp=6SRLQ@fXy`{H^6Yd$~G!$fJdmPH#A1)5&>`H5+Y zbCeaa`2*4#PsQgoBNFeT@}-Q)l2cjGxRvpF8kNsiFC6!e?MUobDfo0F)R1SnM^5iK zQ`bknG*36EOA~cRx#t+X;Ad9gPX#vr3O=dio(0SkM2pg5>mA{=w`9=)2RW&)g2mMLG; z@?g@jm?E^uAXtv+tEOWQHU>`E9jf`HwVfcl9g!n)r|lyPq*c|JUp{@!^LTY7TY_;r z(&C=tJZ5Gv-5Mix_gDn~rLO*$uVXNzu2M^~uTWjFW{b4I4ZR|%yS+allWJIUHB`mTym`PR|sIjfnsXYcsKm zgfXhXV&xUznP{}qT_=@xSQLD=9o>g>4F)+1))8V;SkM0T&9%SLYJ! zxF#H+3i8OMVHap{V}Frm*EB}CN?dSmbT5b3xY7G@xZjdh*-i`c(s5#r_UUJmPUD@a zXrn$w<$HXJcw-`Cb|Yr-q}R%CJ|LBmPvpkAbf#*Y5-ZE%+}HQeXB_eP);i0GR-)%` zWv%ahh{YP&K6=>VyHJ?Hxk~OM&gCQF*&2G&X)=zRKrwKchKVLMR?^ZWE`}7+#O9;i zZlctRnL6doouXR#Xs1%o;=lr7yJl}|eU2AJ;(R8exx}MhA32=3G=jR<_bYYJwRjJH z8ZdmWBtt9rRZ&52-MS;Oe#|7Zk72c(b@35n*`SwC9A#M?gSn^SqDY&!f(+duM}eec zK1LNrl1RY1rMtwTWq@_D0l~H7?W)uM#}4!yoaTCici)Pv;J7e{M(`8qljc)q@vqUV zzv}1V6&0qANyx`d$`99%e{=DHypfL5O7a$!%2<=b4m08?#RaPl6EX~r(au{wMw_e5 z**?=G{z_d~w&%mX6&WqsO5x*B?AEmlql! zntLR1jI)p_)cjgZz-{|FVlI5G0@3!^tI#U?%!`goS>ve~`UYb>4OkjMca|l( z`Z=1ON9^~{z*zIfatQQ{=UdDsJUPJ2xb9(nkq(D-f4+91t13rtzT`d3iwO%+$$>HW53Zg`v@Bn#rf4+rPGx9ZW52K?@CG@x?k7{* zyuOau6?h=h$(JOoZjQ&;3wsw5li!@mg=Xzq`8^F^Q}z!O(x-X4@K8%8tA<{kUN4Oxg)A7n-`Rt z*4nrZ{CcYHm}ym_yWX7FRbRwS@u8#=AH(iuk9!cPia#d3DXnk8hhs~UhTd4b)Xe&| z-I}RAgiBbyb9!NYcj6Hi-{nL#Aw!BEqmb z=|ZSMkw&5sk=xwcn$a?aY!7*#gCu^svL~Bb0bZ|~sBqnm3gnY$%7K7 zOx}pxR%80Ol*l#@20x#}i9&;8T~b{kb)cwE{fJ0jGH^o3FMD+F{z8_R*z9pe9PP9L z^03t1fsgpQwm!ZSIeh4y@xZE!@MD5VHLvWc+fwt2MQYw~?a=FJF|;JhH)jT{+|O3H zrCHi)Y+S`I#*f8#6_oX1j$6e4eR@lyJEY((stlg`8B={ij1+T`uNca;o=Oco^CC$n z9)&_1El+7_S;*Kx;mjqO@^hz_eBijIZGqa-u=WUVKRL&cIlQ5@1M}3?`spEPYOkJ5 zE%&&`&8mecybBjr6xg0R$mU3SaPo7wuFy@k#;K!rzm=U}OKvkVuf7UfC1jD}xUMs3 z7cNMkvoNhMW?6@#Tio(0=4Iv@qP1q-Z|-$1^qG;wwL{Ly)_|uyR&F$vB^B2nG1=g9 z#*y8BL(9V&M}3WqLh1vXhLg_LlHz6T=B%X@WlAYtI-+yxL$UoHF{*+~uO?4>P1)UA z2{_rg`Xd1^vX49Md(Ny=JWrbl@(Hd!FCLe6RbgVr;GI*F`Az0|F7GC{Y!Q`PisMX7 zn#{E$>hr9O7HtPv;#>Li?hK;GiCp3?t_=+i!q;48qU!E>w|#gVkf_>Wb;=WSW#x&H zLKHs@)BU%OXx6Be#C`md59DLeE=DTS5PCH7Dy>z_4B}3pui!@PuDyFJX5$=wU@Pq5 zXk!UQa;EtN{MYDqT4ouH4;Y@?#;{4nbq^*XB)3+g-$^#~OSMf(Nw-_-rVis-dra2(sj4G|tOLZAwasTxoRxgo_m&$%p{GT!TYBl1bNLw= z1sZ#C5RnQhw=5T_d5*T zTg^hqB`5G=f2v1y+xM`Jt9CT;Jry67=|J$1w(;e}dLFgxrcMp*etBR1M>hC7_iQQc zF5nidJ8@mQoGN(%lUdHSbvg31*TNcB%VJ*X@@T*dR<0#W-K>F_s});soGYFwsOss+ z(q@q9DNgE?u(PyfE+2f*F`g;B>tl7He6`$U(5c?qWa*p*o_8F#_@+_z{N@NL7BevS>^5 z@_L60TXii@=)>eEvoCr(tm2xEnlm3lF1llPtZw5h5mxhVt;>x{gNKLh{1bj??dlkE z_B!Y+TT@boa=@_1O?g_lGA|+j!6|(d47I5ISOgoDor2denz5%v!vXz@f?b6J3ep|K zuiB{;5O+mPw`_(+a$KAmk;Y3KLZ6s{y^brvEDo}mVA9unn|h;XgtWwMF>{2&0R6HO zFP*NIDh%?+0$oEhcSLp?mm*K^??c{n*?xN*&GB&^mnJUn-Vt$bL*<-|YW zcmLFrnJ=iLQn>8|IALj;7OF<%`8uwbu3AoSUCH)2cR^2Vvl-#|=A{}UCER<07U?z6 z%sq{7{#^HIgQBH)vI!nT%IQb8jy;puPeqQNDKAavJA2M0TrIZGfGLeBoVHt)E?Usm9Lx`>E4=tK3G#&lw9`FpuKGS}k*FH=i~rE4zhsC!03T*N zSzA9|+zgl4*M8ofvA~)XENp zkA;uVVf2``sSh}EJ~~@rO^83EN-1TFu|&8247H1tSWIMXtHd}nYd7L`{O8-#X2@}y zZl4X<>!dp<+dWDRCwnomMBp~kuXsOYpcWf0uV~H)>($kvBY9|zR;UGiSgw788iwO! z{-~pJ*d*>MHpgs%xo@39<7^tk{%9R^6%wm^ZKL7lk+Hpl+)KX>wDt;O8NY|?2dEsx z9p@v|Q!uy)Vu{%zM>?n_>}#yOE`(rH=f0O-^S(xlk9Sp7@WZ^#j_}b{lHcxU0!R*y zH*bH5zV2oz_Mr7mLK(FUTs=x_KL%4VcIHLVY`BOiQ?;FJWnYg^)LGM;A^a#AHwDce zp*NCU6g#q&x+XSTbp7GcgctOE=lsJ9{;&3RkH_EfsjzFx$dbvCskgCcH7W(_kYEcw z5#PZG)sR+j8#fka7c$q|!gA%l7>fD=`~Kiw9M2vN&BkaN+fHNKY|_|i?4+@6 zbK;4enQxx=y1svK?!C{ww$|E5$N&EEP531mm4;4qE(t3;C|&d_F2AP-%o~l@|Asy= zjXjIfb}h2%d&f6Xd3FKrT;2xc`c_rSScyiVaUdZ@o1yIn1&MR1;iedKMG-0C!HKbb z2GH1W#Yg?7m?etH9HaqO&GF&llTf{WixGn(O!Yo#ue=hn#5{i*5pK0gsidK5f_bt4~Dxnmj&ZZnf*Kv2gI#!^H5UQTZ>9`{QNQRr@_^ilY@Q^2Xy6Db|G zj{~HW*$t|CTJu_4b97yxun%sJ^^wp)@)C1?{xyJ3`cwWYx@&ocuj}rRy{V9zH_K-I zKymDkr1H@is|2Mj)llSGW^;t_k)Z(jjSRSB(TB&-<#Ej#G;G+o^f{QA&)_l!x5JL8kQ@S!`isX7HsY2!(8BdQOWY(y$yh%@8ddZV2TaAT%ROXlOL&4kl8*K zAf~mT`1YOv7J$+qgO*~1CrN8t+Qdfk9ZsX)Wf*0({o+Tx0||w1Sjv{nQxy^0ONjzd*3dFeiyvZ_3bbde0ydb6%kf@bj0JWLU*XpS0di2$7k9)bI3~m(3#O>K zVaB6$$2@kt%c^ka0jS$qrxim~y`nhwk5BaY7tOY!oylQ`dT&g3^R zfen@AH%x@>r0lDwzrm}gkU8Oy`uUp6%TC_6zypGWs&}+A4l4$OK<+_{E-yTpSKYw9+@%a`1nPU`?(TTXe=h)u?5@S1M9}Zr-!8NJ0h6R1y3;PH!(3& zI)2yit|G7d&ih1vOF00--+ojjnFSN}hvO~nRPQy3MMQ^vvWER;_q%qK66cunjH-ul z7csgdUeGoYnJainN!RrmRmI9f;Ky7cS>uZTRUfgi=l=O3!tA2e0wxxrd!&ZjF8jIb zs|lawb46*FuASnU9$LRZM4b?gDk2d{wh*66^E@?s^2lBFM_NXKFeJ5#Im5V;(+z-T zGFP+fdF90Hx}5jyZ6QOeut{JzOdY=vE^8a7gh}Vnl_ufSd4^hZG2PAjbVROg*Bwmh z-d7rfqWTkmg}>PPyZh?GcGLcEI#z~SLdVyh-j_~CgPk~@sZ8%{jGFWOwUsn$31v3p zVb3rgTr=^mec}XqH+!0R+-x7fPUb{zuo$7RJkOx_sJZrq|E5Tt&_%KFb0L{0!v7!y zb(pyJkvHI|=KSD&n2=Oka{*sDwTT%=<`)-S&fNYfZ%)#3Vqww3P&3`0tOovf4t}?w zJ))9IF$h~qY*6BIl;daHghWrz@vh~^f1dR_68RW=uQB#7t}4SS*}PxY_wzpx&w<=7I_Sp^Aq)6gqFDPy#PA0~d>=CPpN4#AqjseZ21Stb?2!D+rTp zhF;GgK^DJE^7;=qI}gJ^)1dJ(TZPQyqqpD|usyYFxC2N?irvHeQ8~=!5}WyDk+JzJ zjcno2-`(8bN)m42Qi<#q^<@O=%xubst3~wnk4ba|9Gf3|yqA5Kpmwtt`1;s_KKl&+ z`@&Yxu25a|3R(psMpP2t8C$H4R9r!2A-uHqut^=(XQT@5eLoo1XA}mtT&+ZfN{Vb$ z0`f2Op3qj`eXq&ihsOQMd&}EOx7@t_Cpya5Yu?ut>9Cn7$}VR|{T`0rl@@anlz`H*x<%w}zm#9M&2~ z(DWK`bdp<7$LpbOb7vDpGfc*uHtd}`{El!=aXP$Qjj=5W8z4~4k&O?_aCi89Aemx; zOj}&p6>XWsdF~80zxhx#p++ZQx8$-ED5zOwO1P+2Er^OeMkp%>k2Zd2BKSLO@qlVN zgd+2hN-LlF&ya4->MZ4)lPfj>%v9~0QR{Jr@%27w%UUmmt}-;_SV}seEyn%#*1(e5 zve7^6*!?d=Ky+%8gP<%*4GcA%VV?w)s`z2*GzpFH7fDO(Jhkk~U{wUia#%vXP;9EI zmaF^UfCAmRZAO-sbbB5D=RMxQqXgqUM9!hV0%ZZ&b%o7T`!VjGNabF|wb*0j7W1RB zP_SY|19;U_v&d*@Rk)H7if9U54GSR!f#W6_5t}vPKAVL9{hqKvaXNm7ku^Htfr)U= z1`6h>cq&4~mUhDR z3zT%-Zb!li-F^+tO*sKs=Le?H=IbyH0v%Q4V6hJLrJrLesWTh3aaCI ziMC%bDRWGlCCdEOkmJ8uQLjmqA7^cYd3Ty$e~Y}1#&6#l{||WCJkLuscmto5&YA71 zT!_caPU?rbxs&5I!-_JAzcs0y#0ts}-P+2VtR~!(d0GrUrVe1*aEX6zrpbT+b48e7 zYgz?&0_eFTqU(CIWV!K1WZL)PJ={@9H=C%M#3`dh^F5DFMn)NdLH4rW`V{TZ0K*si z8QR2<{b6>Uk`Wp{3vpd>o;{$|zgEwE)D@WizuyxQ5$aDXpL$qYGf0`vtXt!d=qcU9 zY)L5HVgWM6sn-K2D_@tT=MC7$6X_%PDWCG7OX{!_8@}yD3?XM;P{^EVo%2-tj#emq zdvoY{|B$h7eZ0fX`2>u!jWndA!YeB{i6g-}FE-Iv7oiSOP}3O!k%! z+bN9y>#-Qeer5etKdblj;&g=l_OFc()UYEcC)Sbh36bkI=9TvW>u;Y;lvQh-+WB7h zQ#BdKeo0&}`yN{l8r*;<@^An+rQx;Zvw96Lk^&B6uz$WA9ol=(dIQh){ z320i?lWz6%JqlNt;U`x*>tY3eY^ng3sCMbQ-y@Sm(VU|fe>g!icTu)>wubb-_ zHlvMuOFvGfd&91J0&VfuZr@c9TtSc{Y`_JojllfzxbD*Dyu|T^7`29tb#Z>Sx;hD^ zqxMTI?6ww~<NhHUh}$Y{h*IVhdbBU)uKv4hXoWU5ZYN0n zk&Sq3*CzSL85ke0XNZDt%>s6ffnpHYxEg9ZLImWk#n*O{f1@a)x^hOh(lR}cCd-d} zlGc_{glT{8;7ceef~zho@d6}pjB#+lPNkNi#B=3DN}g>!wwnSXa&LkmiQ4JkCy{{j z1kll;O?}ZdybH~7Z29kPXeU3DkMC0=x4$am$|Zhf06E^Dm<6{dEs|mQKo$PS}#TDao76Zo5y45 zaony|63IAN_>Zi}FCxGQ2p0wmSt=IVqAffYVkVKE(%)w;aq=&+mh=EYyjh(s$Kv55 z|K$w-$@`zs@Y<7Q|9^foJ6AH^I!K?G4ygJr$y7K^*+Z3WF39s&%FkT0*-Y-VLvk8> z<+Gkx!ydE^E5#)2 zeF718@pjS|Bd+{FHGnKVt{D`^Vzicp5WOfJ27);Ey=Efy{EnDl7m2{!?~ zYZQLo`;wl*1AfNs)z-@2>nrb0(vUfW!6+ouF6VNqnQegv;D-GAjpDo=X;0g(DfsZ0 zIwm>Kq$n|r23kW*vVW=N@mE;^m#*i@@X#_x;9bVky4R4v^e1EU4;eK{lz{}a?!PK; zR3>2JuegW?FAbdX%=4oN%5eQ( z^C9(S*XH*@oa>o6pJV(x80g?12`RFs~N%U;+>&(hO3xBt++>a!>(Ewz|T z=f&hGGHL{9**^LoPh{xL)MVtpFj3D9b7hI} z8z%T^V!PUQ4cEj%4p6)zl*1EnYIQk3lThv++3?-MhTN@#d>`)r=K}a5^BBDZDidzq zmmGX7Vp+pQ?0=(gEyJ~giW0s0Hi^S0uOft8fvZTOsdv#ksfLNLxPYF`$#LZ*Zi@2l z3w-m^Tb{?f$(Cu(C;f>{rGgF12`xbP+8auB7n9@!v50=fQ;bdfo|X^4^Byimdzap8 z0V^;iS+p&&9&41l&03`d-}#(m;R*aFL;2Eq6VqeUVaNYJ%fYX{AE=Nw-HbofIfhpy zUi_Z;`kT8Pmxk6Q2b=zro>3SH3?*DLZc_z25Gh@jQVgb|%4{NyV=`evtTr{XmEE;q z$8V#uyTGI0%=Wb9LzV}$YY#Yf7_eC)l2m=*(;1E$N$rDM0UKB&A9K{S!Z-(qDQ2r2 z=EhK-rUq*uAuA+Zd_5Z!{Q0w0#@{R>BEO;dYIi#x5|A)Q-iIeXYIM5nyF2EZ7SWec zc*y&3Dq!xy-74DN_bU+M$B{$hKW}jCcRGi;Fb3a+#ph_ymZ2#pb?63-IHda={mQuV z+m)*`uo2R)eTi6*ZVfnf-VaB05T7S_jb6$y{mOuW&CJ_nkr;ayT?MC36$is#(u007 z8dQhOS{m=YpEG zvewLx;#vFmUy|7sbm1(u_=8xI*5enO59P-el(L=(n6H|E)^upgWP+WmdOz#Hi?FRm zcf57@A{04k3_Uj1;G^v+nPwo|<~9z~4s8XD6e`6~N#up>!M-|^gj57Z5%$lK>eVOA znamDg5~M~-SNqR<{i|M=GUP2U9lcXA>xP@L$r`0L+JNGd8vC1j|uHrSJ5 z(QGQ$4FViQ-ZzqbiQ9Hqt`-+X9p>4rNEVeOf@atl(0hgREj;Q4R#2VB%5>6(cI=iqPO8EI3>g5vHQ%BHLv?&B4JcrFMx{7y?cLV zoHRjRWP}~tMJV(%d-xe*p%o>>ubKqEIinBSL=xvNs2`A zVHXkb3}ZHo@X7)AlgLY`&yw%~1W0oE{LYo1`;vCZ`l{PbV+q2MvPQ<0f6dh=wp z*~IG5)%&3p=4H&(HOwqNSQ+~qI*4Td&pND*81Gl6D93Z`5ymBs@DnV56P3F-O1Rv} zI&8sHcAD?UFfW0=Lg#66|M0|4mvGr!pQOT^iXgp2bVdDB?trh#aAdKYuK4}`X+eOEpU0)g?Y6~+WYpO_XgMkH#~K=A43{vMkb@4 zWT}719VSxza3ZV*h;&QJg%`e$Vi_dm!ulkp$(tK?1DzSJ|JUiSTHCzmaXWaxQ(E|kfo_9Pr= zxY`xr_x8ycAXp-0GI##ZeONs2*B`wt58;9QV@nc}946h#EKi8j<8k_nJW|>!DwoYJ zSW;q!-jySGQS=Y|9cKIsL!vFAuD{&hgn$-|SH7DiF*PMy@7?&sfnLimKj&ib_NHlo zGwn@8d7a&0$9Atbo!Wo=lt-c8uU4qS*fL4YFa#qrimGP_+I z-L;ZtA5(m$ipw@^Dvnjwf8o{kRFz)tt+wjxeM-=JPk1%GCi?2}wTxinz4&RbwHv&Mc_Fr9g_ozOO7WmsSM z1!>f0!Z?$#anesi0^SU>Z{gQUemP^|`!+jREbpn;i+GM)Y0WLK)8*vgSN zqO|>@6c?6=4u(>4`ZD3CE6m+u?v+4RUT1JOSkH{K3JA{4n7RP9O+bRL*PW-1L)UHf z-DGmGS^C>=4R!2G<4-2K;7NkQRgb6BUs;8f6kn{$Q#HldlBJlw$bn)&KNb1 z0GTQUARXRVh^Kf*mWg|N&Zk89-bib;4XB5{a_Y~`A6z@&K*gq_-C)$9K$j^*CF1U* zuz$6XkgPC(7nS{$iCc-`p8xsybG83Ho#(gfAplcz{zk3W2JuEs#wGCGsejXa|Dp=z zNQ||W0RPQQ^7L&(ypO#RUWbaB^}RzL3}9yKzUt4o>H^`{61VUQQZ8?yPe8)$d z%($`BRcmirzo66hrK-6ntaP2c8ZABUcE1%~u4YcdPs$lrDPa7N={J7(-kBj!?HV98 zC0%c#v})(cR^RbC17OYFnCKFT#1MSW2r5C+y=ZR+?qp<$iVw+~)(2j}`e#s>eoB(t z!;Y=4fBuY#6VL>H8-P z{bvue2_@srgJtrb4@LLdK;?`aS4vB86u{ls!npi!K%5*)H2QrR^0MB;vVQaeik6D< zog&cX0?~6Fy!gb@oR6-P_qNRTI!D$+#De7K!jk5HE`ZFh@fs(z2B2ez{K<5PYG;Ye zl5!>i4on$F(lpfdPTC@bqM+}7u zhYh}yx`8{~Un}Rkv?xU5h7I*Pi~Ck77YxNZ-%aa<^Y}LBhGx6A_sdSlu3LM{3LcaE z%-B@1r6;kHCxXn)!_uI0@LDg%*V=#IQ<;vg^$U1b#VOTB`Pnv)GFPTAK%tJC51oF% zpq;-KkE=Vc51iW+-(jY(zVi<`t*UwsZywuEnk&|1ie+cNv`|mBY6dOJbBQThcZkxM zD^10EE*ky_5d0a7jmT}!O@a8?er=o@a|2N0=yOT#XVNe<8NdEP{+7DZ8}ZUm$!T86 zKpy_`>5_w|+*t#?+2V8a;g7ZoXg%-!@-LGK3YdOAP;n6~Y6-Y3j4eL!0j0rnk!%~u ze$0p@O#sB5=d-eIQ$*m)OlS`1pc&Dw<5h*4<~?XKWeVK66mxtAKsryCrI-cg)(f@MDrx&>`Nf~|_m@{J zNjS2&DP%>sXFq)vPTl!(G}3YnDtK>&bCKyb0|$~<3*RewKIU)d>|yflf(Q&Bx~q5$ zK;7h|=MYVEm@IdB#Yj>+`bMTgmW_R%61p`2*7TetPE<&U!b@iI-{i8l`gE)gm*P@< zzu$z{gdjDC!%D)z^Oo^N!X{ghc_J~@4MEXd*F^p zgEd?wXkb+eDT^jpGhV(VQ!SceLofF$&)LcG$Sz#384981tW>s|sN%%$iBpsu^0}$_ zv4@}$RQ~(+Hg|z#|6OOp{ow)TT`zg=Ty6d0nXnWJckD_daA@<&xBWBCL zgvxG(N7|7*;dkh}C~A>Zt;~;a;>y@3<%pf{UPHAbV0NbI`tGaqnU6nf5Vgu-CD9{m z>@By{Yn>w=qw^_dtC%vynJQiPXj#*1@zdMP&!BTyO$5ex$^EjQI-7toItWbCn?~3@ zcEi1Zx%e(q--gP6`y_(fLWz5We+L-w}w zlx*PZH_0{j8H1=2UxJ~o%^7jds^V4-eS-U_OldUVj9)+a@7m!0tiP-2Ou!w&$% z;!D1nEfd<-sWDbKB~I4*%k`ay?{$ty&!W$<1L(y2u${XIpI@K-Dm4FH1EX8Hy628& z=Z87$T3Oz6Xbic>Zhqia1>Fkw7@C4mf}g6na+JLcN!%F1GT&cbd91$Yb(JV<^mVu{e#C%FoLdD#qJrdR|`-B)|79V_&Cz1%)r@-a}PsTY9nW)_Ddvt1+0^IY>?-gp{sIL_pa`c#?^5qPxe%QFFl5Sk`y^Tx@P?G*?$Oi2=rkwkXX!%dFnEA~2F&s~N8Dv$%q5f!)~OOZDnN5SKh0p)&1c7*jc{*HF< zBHUZe5TAq=WMX(HGDG$-bmCh-is{xSqtBRvzZCPyQ>2;IC{?(BM^7Nv1tGZ~wY`Q< z$pn7*u7FO>P<_w9PbW7G5kRm3(2#hNO=s0Ys6P$E9E~R0gH(%)7zbTPtL>E1ONC6P ziPL~HZi)M#wj__-d`*lKUITUzm3OP_G^6K!sw!|VKa1Dsw$eDi^Rh@ptFF8e-e~et zb8U<=B}_hG?CCq!1Cw8455}y9Ls-;vDU!n=jD{^{;D`fez(Ud8JEXEQ$m@Mr0A$5! zQ?84=O(=?Be|e&hc;xy~?MAF=Sn<95(N>{*4-h~s(eDpA8C~0;$!YQ@yA*R%M+b`$;QYyC)9R|aUOS*l zBEpF2m$_M32MK%C6!-EowqWij3XHO+K z_$c1yOgKZSPTwV5FNg`Dhoq@l$!SftoDLgGA1*m?E$kpaMnprOGBYc1ds z`=d_P+a)7%W4M@wYJh0P%a4QWQ2f}6p`3w+$h!7Rv1B#sj7+EOmH17F&U;y}%h2ls zu*c+QL$l!F@3(H#Iw8-Or`ZjOp|J}-02W|u&1&SAGeJ}{9j2|B>>%^qDBm6ey0`8^ zSo$n{Q-$+_#3FsgrB!GA2|j7M-{YNe_iYWJ2UsKoEcyUd)V~bRbTLdC`j!K$KtC;b z$kh#eX{F{i>1I;&mwl!`4tZGMHHV@eyPz3E_*8Ql%n+=yw;zz{u9|knHXyYc^G@I; zgoR;vrPK@ zw+i@b*yCwF2X*b+>v>UnkRW_9SX!a*e1+rPLp>~6E9Af@%6a$_pNp1fa~&rmF}SW8 z9X3Ej$fY|vxEBB82=JFdiOq&$2+4kT{hWvF{>bs;gq1*l0(nMQ7_`ieDQsHqz(Q-H zDxs0)qMbppCf?5~01p`VJ9n1+0~w0=s-RVTHsp&~vPjh=L+oI|%B6A-sS?cLnYy}f zuQR%FE%@?u;Mjf0-q`AYiU!C5rI$GtC^g-`Jko(5>7iO?=l|4=Iu@`%p?)%;IPz9D z@c|6%bZt-u-h@F4>YH&-?YmY#AAjWodUN#(AZpylR81`$!N8|jVOoxz+`G%mVIxmA zYgDRv%vUDd$f0kgE5audPyQzx+pYu-Kn@?K3V6QD#hv%bUx@GXS+0Mu)5lLr%_hqu z?|$pSk)j5kwzrLcvOz5A(HEwW!kd@zqc@(<5{)djzgy(LJ5s0>dPsA8->rkpqyZv; zn+&p>-EL#yGpa>yE_Z%B%GCM!-&DRbXvpVrY;LnbPsN$_iP6M0uA!-)Jq?}PZZL8O zI1a6Tq}o&--`esDf?`(!t>$=+;`>@zgl&(ObA;WEjv8H+W$6>up{l*^pxLF=<;xj* zSYb*H6h$=g0jPv@7O)I`X%5j3>H0Pn<0=kgQ~5j7jPZK^wX4!mjhCkl1KO;*Rd;f( zQ5*vOttj7DJ@^9(c2vUsQg4jrMc(L0`l967%)AvJ1-2Ha-`8(d6G%hB+GzJD)EM4J z4xQDnM)e#iTTtinjI1b!V({D8Bcz3wqmZdJkzy#{PI70ECO!{|N$KcUGkRQG8IR!1 zw10*?e~}7a*3$spcirHY1v6XkNoowQH_+SGQ!vlxX>Uo=@4w`I>Aq8XCgoDCd;J)~ z^HxpjjBHBkAXHz1HIsEah^K+kfc0DW&7N{BkWA>UI#7R%3X$DB06<#+%nnALkHCK| z`XW!#sJw!G?L?WABd!+N31=Qepr}TG2TK8}NN)W(1Dr7&PkSqiUXA#`~XeST&RM{kZFTe z_GJVUyMmO%t}j$@Cs~|^CtjBTvV6qL;Gmqz_27Z{>3uRI@OpV@`Bq=WJCyWo6t;ku zvz&K05gRxsW_TvUpK(9We~qsV8QkAXaf}^>;{e8i3MSJ@mAA=rCbEC21aC0TqH7M= z?&esHdO!stk8z|7s;`@L#`l9-w-10Q4B2+HQ9OW}v3V(K4ew=?=$gyie2Q~z6C5)! zy%LIj$E+hT${kAAgDR9fzF_-R!E!9-m~$?pDBVD_7SXEhFHsh{7L>WqwCGWL-ex z;T9>jMSSz9sBYX;%s-K=L%%^3Hb>ZX{@HZDqnW=h&?>S^A&?PCiT{pHs`Ce~TXx;E zf^Mv1YLAMIJ6~@SzMV)Nw7>$c-O&*m&_4%bM2yz=!>ON)>sGCsr{Q#nMmOlHtZ-Aw zBPC%`(FPNvIo19v68n_hA7ty0=RY`wS8-OxXXp1Ai|C5UKt+KK}6?;b*!g z;{!f83Q@E@4kDeDv8PTM&>0k2gON3II&DBJ?&}hGZq(2DlYu8uBUb>95d+$;4*Q)YqwYJ{8D6`|>|O^m*Jt^7;#FHL^C4toEym!KvKs1jmrznf(8-rGwc_}>6<(a;!% z@t@^P^=W{R)ogN-3KSFcVU~(?T1`}zdAwY{fb55G8O76v|@Z^qFnXr-@v1}MRU(}c@-fwNg$1Z6<7Zbj3GB3arP$1}&NR!3~y zguPt|3QTEUV7S z>S!Q!&t%}JW?xyM6AuNoI}Qc66vG5rFydPKpW<0DeO#ZU{T8z9js$)tw(RowOx(fHQpLw$F8oM!>h}?RUZIzl`zjSbj5bI)?c!qY$5~ zPCKMnpqr7QB##=~IaZvfPJl)GXo6ZTB9Eo!E)`fH<}%VH@_Zme_SEvAP-6*ru2`8F zMSrVWP9^UB`s^CM=n6&a{T>|S2xhiC579t2%Npx_Lg^F6__|9oJLaI{ct6r}Si8Pq z@&5E&!PJi->@?HpVcdF)dgppq@<~;v9LbuCHdK_z%TAXX!P`O6238XzhYWB1W9G(A*_zLr;wqay(ZsBdYr{7f-L@GiW=-R&>Q*$&`_tG60a8l?C)>xtC%E09B z(H!Rtwx&lq&TO#KR0`4TA^FXdPVnzHLRnj)>_NOF3$t|DAW!m!rpxv4&C-O!w~spT zV@v|%;(UmhLd;UyxZy#6m?@{v^d!{>qR=pcX|Q~bN~f~93gc1D3@V|ekafJ~XNOaB z=KFQAY`3jT4u&vhZcAc}ZdR9G?&yA=q6@ju0x%-W74x5w>rx8y=UbnBd@<>{qc-V2 zWl?qgy|f>xuKV(1jQG7y7~GJ+Z|Yq>GJ`Cl1?4piBquKL+BBs@BW|5?`B$}T0PfP3 z4={caM`5Q(%NfhXL(spdDYU^%qoy9hRfdbo6115}@$d<%5+rt9>v#kQylw!x!390_ zC*Kl;Z-WRfx*!^iHVXqAD8_KvOF2WC&z=?-{u+O@!mN`fO#hz?ptqyy8htk;z^bum z8yr;Nmq`h@Eu8w8LXe(37P)DznhxCQ4e(bR-X|UE_1{0V#JJ@Rq|-QQp3m`3l@n?O z+^*3M8*RjmzpCsselL`?{O;AFf?>D^rsKhk7dgl@2R~Orf@D_Ac7u=oTj8C$eD>>d z?jaKY@8k+R5^Sb@8dH8;pSu1r#=$}6E(}^*X0hKFfmiLY$s=~R34RmQ3Er2tg1rUQ z0X7=5DJsto(%0X`^QtccF%NK7da_-d5#6zTgOb-e$1CxqrPy=U%NyYK!6NBldx!oSElD!*pOGXUo&H1no0+Id<~G@q1z zSh;1ny1eVQk=**P zFII#C7@n)2-Ww9WJs&n#l{&;w;?3}!Y^X^iCE;nz`SK^+bDk~r#q2XCJpWT>#9)uV zz`Gj~{I_1KtD}VJq{011jrW0-!0#y!_|Zpj2D#A1Bf=*tSDg+=Xrb?V2@_}|*_9EW?poM4S&LAX_l z6`ARe#T2K;C`QydRWiL-<$sKC!2#(X`ono40whq%-rKl=eizi3!dpx!$I`kdvtsZ{ zQfDyE=Yq>pn~PY6>`dgN?btTqIb{219h!$S_NKe&(UL1s6k0Dq787t2C-wW4=e%T~ zBjCH0T1GbHg@B|Sa?e2!on8t5gOF8T;t!X9Xz#!KSGaku>f1k67*r5yl37zb zrScd1{0+>MSWb)RKTl?`t8!n{+_hDJ*f(tFjQRE^BkW-vzP0{-%Gtfu;@cv2`iZ8H zjv(Ep`|;6;p`0@@@_S!ox9XS=dZ3PxB0m8l1uWgVej1^TxwJ!XOzX2uHz@vUi{r}R zT`@##`#xLb`7MItxDC5WkoWX1fy{(~n7kAF7{yE6_u88^-sR_Btd#BZ~7B zSE`NUs+A!e9p~9Ls6|x%$;#SqH10e*s`GstiPyDbuH!!#EAU^$M$BExHZhdm2qj2B zBXYSMy?5JN+^Me=p{!_TLWQ5G7V2I`(@JQoe9uRsCpr#w1bZz2dvEiMpSKD;W`u7m z?sBrOqaJMTLR`!(L%HS_s1EbVh?Bx{dg;C?RX4wt2}!?z&)T{DVZ;iLkr<+WcN%n7 z`24e0r~yoz}x zZCR~l3g5pwm&^c3O*>&qSlFODT|$=d^;U*@YgG*2e~V>TvY~TE`czg*FU^$<@<|GV zyNRduz32&ji7uc3kB$kQdW2t%so>bs3{ zXB3i*?y$|V$)aI#4|O77XPJT~(}re0P*LkuD~tcdB_)HQ?4YKe|1`c2?}wzZ`xpGk z3cwBVkMlsoaXVYovRkYLxHD8?-ZH<6kK#8&(oaExeH`~CG7<38# zOqo&HqpelpM`y(_gWl>O^nAC|_UaD#)em<9@82DTj(^cDyDuGG^4;L-tfS3xX%0{Z z&$XDFO+J@eA-VAE8;Bv{uFo} zQAg|*5fHn#KSceG`jPaKd7>`*)=#XoLNUW$Y7R z?JQn5aIwKrFV*yE40Wf5u>&)Y&U=D^6{92;g%J}y!r}{J|6hrzhs!RGfK6Ws1D1;P z^ALCA1lga1Xy&-b$vCd1>Dc{1@LK!Xs6Z|c^FeKY9tZLDjL~aTg3yJSZvnxv0zMgb zwR1@;8SbZXG`=RkpwqX_WBi>(&Fz6fy>+-#oMhLePnhT87-ulk^o+~ZhZB&o$)Zlr z5%ma!G{%|ldNGvX_1sejtc*r0e!)1UIwSp79fKik`PZx5MiQU5aJ4d7YqVs(dDn{A zg=(yr)i{5DEq0tf!?5>Z#n=s$p$sZ`Jdr5)<~yYMbn|d{DCT=!rOVV+<9ReBT2p?` zl~kfQ34d|oF@W) z+#mJ6b~?U4JA;?bIf-}f%&Nf7W#ecqYTGGVEEaU0YG_Rr-;Ju+wafJ2StH|Sr6pr? zNeY7qQhD6z7~DG*DDn&&L8GWM-ySMfF5Q@c{y>Fzk*4mqjBj`knP&vQ&i`aE|QHsoVy82-_C!_t;6Nd_j-Wsv1e@R!E;G+TmA*G@(Ys?sv+v zkNKS|H)cn0=ME5)#WBEr#HBl%WBJni*Rw@X1@+i~_T?_w8j88Qyz^w(�g5uT{wE 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 Pkq|tAVBzlo5)k}9dYD8j literal 10134 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 0 || pause_emulation) { if ((emulation_paused > 0 || pause_emulation) && was_paused == 0) { - close_sound (); -#ifdef AHI - ahi_close_sound (); -#endif + setpaused(); was_paused = 1; manual_painting_needed++; gui_fps (0, 0); @@ -1262,11 +1275,9 @@ void handle_events (void) } while (checkIPC(&currprefs)); if (was_paused) { - set_audio (); -#ifdef AHI - ahi_open_sound (); -#endif + resumepaused(); emulation_paused = 0; + sound_closed = 0; manual_painting_needed--; } } diff --git a/od-win32/win32.h b/od-win32/win32.h index 038114ac..7211a704 100755 --- a/od-win32/win32.h +++ b/od-win32/win32.h @@ -15,9 +15,9 @@ #define GETBDM(x) (((x) - ((x / 10000) * 10000)) / 100) #define GETBDD(x) ((x) % 100) -#define WINUAEBETA 2 +#define WINUAEBETA 3 #define WINUAEPUBLICBETA 1 -#define WINUAEDATE MAKEBD(2007, 1, 20) +#define WINUAEDATE MAKEBD(2007, 1, 27) #define IHF_WINDOWHIDDEN 6 #define NORMAL_WINDOW_STYLE (WS_VISIBLE | WS_BORDER | WS_CAPTION | WS_MINIMIZEBOX | WS_SYSMENU) @@ -39,12 +39,12 @@ extern void clearallkeys(void); extern int getcapslock (void); void releasecapture (void); -int WIN32_RegisterClasses( void ); -int WIN32_InitHtmlHelp( void ); -int WIN32_InitLibraries( void ); -int WIN32_CleanupLibraries( void ); -void WIN32_MouseDefaults( int, int ); -void WIN32_HandleRegistryStuff( void ); +int WIN32_RegisterClasses(void); +int WIN32_InitHtmlHelp(void); +int WIN32_InitLibraries(void); +int WIN32_CleanupLibraries(void); +void WIN32_MouseDefaults(int, int); +void WIN32_HandleRegistryStuff(void); extern void setup_brkhandler (void); extern void remove_brkhandler (void); extern void disablecapture (void); @@ -54,6 +54,9 @@ extern void setmouseactive (int active); extern void minimizewindow (void); extern uae_u32 OSDEP_minimize_uae(void); +extern void resumepaused(void); +extern void setpaused(void); + void finishjob (void); void updatedisplayarea (void); void init_colors (void); diff --git a/od-win32/win32gui.c b/od-win32/win32gui.c index d8dce987..8d834b15 100755 --- a/od-win32/win32gui.c +++ b/od-win32/win32gui.c @@ -97,28 +97,28 @@ static int qs_request_reset; static int qs_override; int gui_active; -extern HWND (WINAPI *pHtmlHelp)(HWND, LPCSTR, UINT, LPDWORD ); +extern HWND (WINAPI *pHtmlHelp)(HWND, LPCSTR, UINT, LPDWORD); #undef HtmlHelp #ifndef HH_DISPLAY_TOPIC #define HH_DISPLAY_TOPIC 0 #endif -#define HtmlHelp(a,b,c,d) if( pHtmlHelp ) (*pHtmlHelp)(a,b,c,(LPDWORD)d); else \ -{ char szMessage[MAX_DPATH]; WIN32GUI_LoadUIString( IDS_NOHELP, szMessage, MAX_DPATH ); gui_message( szMessage ); } +#define HtmlHelp(a,b,c,d) if(pHtmlHelp) (*pHtmlHelp)(a,b,c,(LPDWORD)d); else \ +{ char szMessage[MAX_DPATH]; WIN32GUI_LoadUIString(IDS_NOHELP, szMessage, MAX_DPATH); gui_message(szMessage); } extern HWND hAmigaWnd; extern char help_file[MAX_DPATH]; extern int mouseactive; -static char config_filename[ MAX_DPATH ] = ""; +static char config_filename[MAX_DPATH] = ""; -#define Error(x) MessageBox( NULL, (x), "WinUAE Error", MB_OK ) +#define Error(x) MessageBox(NULL, (x), "WinUAE Error", MB_OK) -void WIN32GUI_LoadUIString( DWORD id, char *string, DWORD dwStringLen ) +void WIN32GUI_LoadUIString(DWORD id, char *string, DWORD dwStringLen) { - if( LoadString( hUIDLL ? hUIDLL : hInst, id, string, dwStringLen ) == 0 ) - LoadString( hInst, id, string, dwStringLen ); + if(LoadString(hUIDLL ? hUIDLL : hInst, id, string, dwStringLen) == 0) + LoadString(hInst, id, string, dwStringLen); } static int C_PAGES; @@ -138,6 +138,16 @@ struct ToolTipHWNDS { }; static struct ToolTipHWNDS ToolTipHWNDS2[MAX_IMAGETOOLTIPS + 1]; +static void ew (HWND hDlg, DWORD id, int enable) +{ + HWND w = GetDlgItem(hDlg, id); + if (!w) + return; + if (!enable && w == GetFocus()) + SendMessage(hDlg, WM_NEXTDLGCTL, 0, FALSE); + EnableWindow(w, !!enable); +} + void write_disk_history (void) { int i, j; @@ -781,18 +791,9 @@ void gui_display(int shortcut) #ifdef D3D D3D_guimode (TRUE); #endif -#ifdef CD32 - akiko_entergui (); -#endif -#ifdef CDTV - cdtv_entergui (); -#endif + setpaused(); inputdevice_unacquire (); clearallkeys (); -#ifdef AHI - ahi_close_sound (); -#endif - pause_sound (); setmouseactive (0); if ((!WIN32GFX_IsPicassoScreen() && currprefs.gfx_afullscreen && (currprefs.gfx_size.width < gui_width || currprefs.gfx_size.height < gui_height)) @@ -833,20 +834,11 @@ void gui_display(int shortcut) } manual_painting_needed--; /* So that WM_PAINT doesn't need to use custom refreshing */ manual_palette_refresh_needed = 1; - resume_sound (); -#ifdef AHI - ahi_open_sound (); -#endif + resumepaused(); inputdevice_copyconfig (&changed_prefs, &currprefs); inputdevice_config_change_test (); clearallkeys (); inputdevice_acquire (); -#ifdef CD32 - akiko_exitgui (); -#endif -#ifdef CDTV - cdtv_exitgui (); -#endif if (flipflop >= 0) setmouseactive (1); #ifdef D3D @@ -1635,8 +1627,8 @@ static char *HandleConfiguration (HWND hDlg, int flag, struct ConfigStruct *conf case CONFIG_SAVE: if (strlen (name) == 0 || strcmp (name, ".uae") == 0) { - char szMessage[ MAX_DPATH ]; - WIN32GUI_LoadUIString( IDS_MUSTENTERNAME, szMessage, MAX_DPATH ); + char szMessage[MAX_DPATH]; + WIN32GUI_LoadUIString(IDS_MUSTENTERNAME, szMessage, MAX_DPATH); pre_gui_message (szMessage); } else { strcpy (workprefs.description, desc); @@ -1646,27 +1638,27 @@ static char *HandleConfiguration (HWND hDlg, int flag, struct ConfigStruct *conf case CONFIG_LOAD: if (strlen (name) == 0) { - char szMessage[ MAX_DPATH ]; - WIN32GUI_LoadUIString( IDS_MUSTSELECTCONFIG, szMessage, MAX_DPATH ); + char szMessage[MAX_DPATH]; + WIN32GUI_LoadUIString(IDS_MUSTSELECTCONFIG, szMessage, MAX_DPATH); pre_gui_message (szMessage); } else { if (target_cfgfile_load (&workprefs, path, configtypepanel, 0) == 0) { - char szMessage[ MAX_DPATH ]; + char szMessage[MAX_DPATH]; WIN32GUI_LoadUIString( IDS_COULDNOTLOADCONFIG, szMessage, MAX_DPATH ); pre_gui_message (szMessage); } else { - EnableWindow (GetDlgItem (hDlg, IDC_VIEWINFO), workprefs.info[0]); + ew (hDlg, IDC_VIEWINFO, workprefs.info[0]); } break; case CONFIG_DELETE: if (strlen (name) == 0) { - char szMessage[ MAX_DPATH ]; - WIN32GUI_LoadUIString( IDS_MUSTSELECTCONFIGFORDELETE, szMessage, MAX_DPATH ); + char szMessage[MAX_DPATH]; + WIN32GUI_LoadUIString(IDS_MUSTSELECTCONFIGFORDELETE, szMessage, MAX_DPATH); pre_gui_message (szMessage); } else { - char szMessage[ MAX_DPATH ]; - char szTitle[ MAX_DPATH ]; + char szMessage[MAX_DPATH]; + char szTitle[MAX_DPATH]; WIN32GUI_LoadUIString( IDS_DELETECONFIGCONFIRMATION, szMessage, MAX_DPATH ); WIN32GUI_LoadUIString( IDS_DELETECONFIGTITLE, szTitle, MAX_DPATH ); if( MessageBox( hDlg, szMessage, szTitle, @@ -1845,16 +1837,16 @@ void InitializeListView (HWND hDlg) // If there are no columns, then insert some lvcolumn.mask = LVCF_WIDTH; - if( ListView_GetColumn( list, 1, &lvcolumn ) == FALSE ) + if(ListView_GetColumn(list, 1, &lvcolumn) == FALSE) { - for( i = 0; i < listview_num_columns; i++ ) + for(i = 0; i < listview_num_columns; i++) { lvcolumn.mask = LVCF_FMT | LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM; lvcolumn.iSubItem = i; lvcolumn.fmt = LVCFMT_LEFT; lvcolumn.pszText = column_heading[i]; lvcolumn.cx = listview_column_width[i]; - ListView_InsertColumn( list, i, &lvcolumn ); + ListView_InsertColumn(list, i, &lvcolumn); } } if (lv_type == LV_INPUT) @@ -1867,10 +1859,10 @@ void InitializeListView (HWND hDlg) lvstruct.lParam = 0; lvstruct.iItem = i; lvstruct.iSubItem = 0; - result = ListView_InsertItem( list, &lvstruct ); - width = ListView_GetStringWidth( list, lvstruct.pszText ) + 15; - if( width > listview_column_width[ 0 ] ) - listview_column_width[ 0 ] = width; + result = ListView_InsertItem(list, &lvstruct); + width = ListView_GetStringWidth(list, lvstruct.pszText) + 15; + if( width > listview_column_width[0]) + listview_column_width[0] = width; entry++; } listview_column_width [1] = 260; @@ -1908,7 +1900,7 @@ void InitializeListView (HWND hDlg) ListView_SetItemText (list, result, 2, tmp); width = ListView_GetStringWidth(list, lvstruct.pszText) + 15; if (width > listview_column_width[0]) - listview_column_width[ 0 ] = width; + listview_column_width[0] = width; entry++; } listview_column_width[0] = 30; @@ -1970,12 +1962,12 @@ void InitializeListView (HWND hDlg) listview_column_width[0] = 15; - width = ListView_GetStringWidth(list, devname_str) + 10; ListView_SetItemText(list, result, 1, devname_str); + width = ListView_GetStringWidth(list, devname_str) + 10; if(width > listview_column_width[1]) listview_column_width[1] = width; - ListView_SetItemText(list, result, 1, volname_str); + ListView_SetItemText(list, result, 2, volname_str); width = ListView_GetStringWidth(list, volname_str) + 10; if(width > listview_column_width[2]) listview_column_width[2] = width; @@ -2314,7 +2306,7 @@ static void checkautoload (HWND hDlg, struct ConfigStruct *config) ConfigToRegistry2 (ct, configtypepanel, -1); } CheckDlgButton(hDlg, IDC_CONFIGAUTO, ct ? BST_CHECKED : BST_UNCHECKED); - EnableWindow (GetDlgItem (hDlg, IDC_CONFIGAUTO), configtypepanel > 0 && config && !config->Directory ? TRUE : FALSE); + ew (hDlg, IDC_CONFIGAUTO, configtypepanel > 0 && config && !config->Directory ? TRUE : FALSE); RegQueryValueEx (hWinUAEKey, "ConfigFile_NoAuto", 0, &dwType, (LPBYTE)&ct, &dwRFPsize); CheckDlgButton(hDlg, IDC_CONFIGNOLINK, ct ? BST_CHECKED : BST_UNCHECKED); } @@ -2553,9 +2545,9 @@ static INT_PTR CALLBACK LoadSaveDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPA static INT_PTR CALLBACK ContributorsProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) { CHARFORMAT CharFormat; - char szContributors1[ MAX_CONTRIBUTORS_LENGTH ]; - char szContributors2[ MAX_CONTRIBUTORS_LENGTH ]; - char szContributors[ MAX_CONTRIBUTORS_LENGTH*2 ]; + char szContributors1[MAX_CONTRIBUTORS_LENGTH]; + char szContributors2[MAX_CONTRIBUTORS_LENGTH]; + char szContributors[MAX_CONTRIBUTORS_LENGTH * 2]; switch (msg) { case WM_COMMAND: @@ -2939,21 +2931,23 @@ static struct amigamodels amodels[] = { static DWORD quickstart_model = 0, quickstart_conf = 0, quickstart_compa = 1; static int quickstart_ok, quickstart_ok_floppy; static void addfloppytype (HWND hDlg, int n); +static void addfloppyhistory (HWND hDlg); static void enable_for_quickstart (HWND hDlg) { int v = quickstart_ok && quickstart_ok_floppy ? TRUE : FALSE; - EnableWindow (GetDlgItem (guiDlg, IDC_RESETAMIGA), !full_property_sheet ? TRUE : FALSE); + ew (guiDlg, IDC_RESETAMIGA, !full_property_sheet ? TRUE : FALSE); ShowWindow (GetDlgItem (hDlg, IDC_QUICKSTART_SETCONFIG), quickstart ? SW_HIDE : SW_SHOW); } static void load_quickstart (HWND hDlg, int romcheck) { - EnableWindow (GetDlgItem (guiDlg, IDC_RESETAMIGA), FALSE); + ew (guiDlg, IDC_RESETAMIGA, FALSE); quickstart_ok = build_in_prefs (&workprefs, quickstart_model, quickstart_conf, quickstart_compa, romcheck); enable_for_quickstart (hDlg); addfloppytype (hDlg, 0); addfloppytype (hDlg, 1); + addfloppyhistory (hDlg); } static void quickstarthost (HWND hDlg, char *name) @@ -3068,7 +3062,7 @@ static void init_quickstartdlg (HWND hDlg) if (quickstart_compa >= amodels[quickstart_model].compalevels) quickstart_compa = 0; i = amodels[quickstart_model].compalevels; - EnableWindow (GetDlgItem (hDlg, IDC_QUICKSTART_COMPATIBILITY), i > 1); + ew (hDlg, IDC_QUICKSTART_COMPATIBILITY, i > 1); SendDlgItemMessage (hDlg, IDC_QUICKSTART_COMPATIBILITY, TBM_SETRANGE, TRUE, MAKELONG (0, i > 1 ? i - 1 : 1)); SendDlgItemMessage (hDlg, IDC_QUICKSTART_COMPATIBILITY, TBM_SETPAGESIZE, 0, 1); SendDlgItemMessage( hDlg, IDC_QUICKSTART_COMPATIBILITY, TBM_SETPOS, TRUE, quickstart_compa); @@ -3176,7 +3170,7 @@ static INT_PTR CALLBACK QuickstartDlgProc (HWND hDlg, UINT msg, WPARAM wParam, L static int doinit; LRESULT val; - switch( msg ) + switch(msg) { case WM_INITDIALOG: pages[QUICKSTART_ID] = hDlg; @@ -3193,6 +3187,7 @@ static INT_PTR CALLBACK QuickstartDlgProc (HWND hDlg, UINT msg, WPARAM wParam, L if (doinit) { addfloppytype (hDlg, 0); addfloppytype (hDlg, 1); + addfloppyhistory (hDlg); init_quickstartdlg (hDlg); } doinit = 0; @@ -3377,22 +3372,22 @@ static void enable_for_displaydlg (HWND hDlg) #ifndef PICASSO96 rtg = FALSE; #endif - EnableWindow (GetDlgItem (hDlg, IDC_PFULLSCREEN), rtg); + ew (hDlg, IDC_PFULLSCREEN, rtg); if (!full_property_sheet) { /* Disable certain controls which are only to be set once at start-up... */ - EnableWindow (GetDlgItem (hDlg, IDC_TEST16BIT), FALSE); + ew (hDlg, IDC_TEST16BIT, FALSE); } else { - CheckDlgButton( hDlg, IDC_VSYNC, workprefs.gfx_vsync); - EnableWindow (GetDlgItem (hDlg, IDC_XCENTER), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_YCENTER), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_LM_SCANLINES), TRUE); + CheckDlgButton(hDlg, IDC_VSYNC, workprefs.gfx_vsync); + ew (hDlg, IDC_XCENTER, TRUE); + ew (hDlg, IDC_YCENTER, TRUE); + ew (hDlg, IDC_LM_SCANLINES, TRUE); } - EnableWindow (GetDlgItem (hDlg, IDC_FRAMERATE2), !workprefs.gfx_vsync); - EnableWindow (GetDlgItem (hDlg, IDC_FRAMERATE), !workprefs.cpu_cycle_exact); - EnableWindow (GetDlgItem (hDlg, IDC_LORES), !workprefs.gfx_autoresolution); - EnableWindow (GetDlgItem (hDlg, IDC_LM_NORMAL), !workprefs.gfx_autoresolution); - EnableWindow (GetDlgItem (hDlg, IDC_LM_DOUBLED), !workprefs.gfx_autoresolution); - EnableWindow (GetDlgItem (hDlg, IDC_LM_SCANLINES), !workprefs.gfx_autoresolution); + ew (hDlg, IDC_FRAMERATE2, !workprefs.gfx_vsync); + ew (hDlg, IDC_FRAMERATE, !workprefs.cpu_cycle_exact); + ew (hDlg, IDC_LORES, !workprefs.gfx_autoresolution); + ew (hDlg, IDC_LM_NORMAL, !workprefs.gfx_autoresolution); + ew (hDlg, IDC_LM_DOUBLED, !workprefs.gfx_autoresolution); + ew (hDlg, IDC_LM_SCANLINES, !workprefs.gfx_autoresolution); } static void enable_for_chipsetdlg (HWND hDlg) @@ -3400,17 +3395,17 @@ static void enable_for_chipsetdlg (HWND hDlg) int enable = workprefs.cpu_cycle_exact ? FALSE : TRUE; #if !defined (CPUEMU_6) - EnableWindow (GetDlgItem (hDlg, IDC_CYCLEEXACT), FALSE); + ew (hDlg, IDC_CYCLEEXACT, FALSE); #endif - EnableWindow (GetDlgItem (hDlg, IDC_FASTCOPPER), enable); - EnableWindow (GetDlgItem (hDlg, IDC_GENLOCK), full_property_sheet); - EnableWindow (GetDlgItem (hDlg, IDC_BLITIMM), enable); + ew (hDlg, IDC_FASTCOPPER, enable); + ew (hDlg, IDC_GENLOCK, full_property_sheet); + ew (hDlg, IDC_BLITIMM, enable); if (enable == FALSE) { workprefs.immediate_blits = 0; CheckDlgButton (hDlg, IDC_FASTCOPPER, FALSE); CheckDlgButton (hDlg, IDC_BLITIMM, FALSE); } - EnableWindow (GetDlgItem (hDlg, IDC_CS_EXT), workprefs.cs_compatible ? TRUE : FALSE); + ew (hDlg, IDC_CS_EXT, workprefs.cs_compatible ? TRUE : FALSE); } static DWORD idnth[] = { IDS_SECOND, IDS_THIRD, IDS_FOURTH, IDS_FIFTH, IDS_SIXTH, IDS_SEVENTH, IDS_EIGHTH, IDS_NINTH, IDS_TENTH, -1 }; @@ -3647,8 +3642,8 @@ static void init_display_mode (HWND hDlg) static void values_to_displaydlg (HWND hDlg) { - char buffer[ MAX_FRAMERATE_LENGTH + MAX_NTH_LENGTH ]; - char Nth[ MAX_NTH_LENGTH ]; + char buffer[MAX_FRAMERATE_LENGTH + MAX_NTH_LENGTH]; + char Nth[MAX_NTH_LENGTH]; LPSTR blah[1] = { Nth }; LPTSTR string = NULL; int v; @@ -3745,8 +3740,8 @@ static void values_from_displaydlg (HWND hDlg, UINT msg, WPARAM wParam, LPARAM l workprefs.gfx_vsync = IsDlgButtonChecked (hDlg, IDC_VSYNC); { - char buffer[ MAX_FRAMERATE_LENGTH ]; - char Nth[ MAX_NTH_LENGTH ]; + char buffer[MAX_FRAMERATE_LENGTH]; + char Nth[MAX_NTH_LENGTH]; LPSTR blah[1] = { Nth }; LPTSTR string = NULL; @@ -3899,7 +3894,7 @@ static INT_PTR CALLBACK DisplayDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPAR if((wParam == IDC_TEST16BIT) && DirectDraw_Start(NULL)) { if(RegOpenKeyEx( HKEY_CURRENT_USER, "Software\\Arabuusimiehet\\WinUAE", 0, KEY_WRITE | KEY_READ, &hPixelFormatKey) == ERROR_SUCCESS) { char szMessage[4096]; - char szTitle[ MAX_DPATH ]; + char szTitle[MAX_DPATH]; WIN32GUI_LoadUIString(IDS_GFXCARDCHECK, szMessage, 4096); WIN32GUI_LoadUIString(IDS_GFXCARDTITLE, szTitle, MAX_DPATH); @@ -3933,7 +3928,7 @@ static INT_PTR CALLBACK DisplayDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPAR static void values_to_chipsetdlg (HWND hDlg) { - char Nth[ MAX_NTH_LENGTH ]; + char Nth[MAX_NTH_LENGTH]; LPSTR blah[1] = { Nth }; LPTSTR string = NULL; int which_button; @@ -4052,7 +4047,7 @@ static INT_PTR CALLBACK ChipsetDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPAR pages[CHIPSET_ID] = hDlg; currentpage = CHIPSET_ID; #ifndef AGA - EnableWindow (GetDlgItem (hDlg, IDC_AGA), FALSE); + ew (hDlg, IDC_AGA, FALSE); #endif case WM_USER: @@ -4226,26 +4221,26 @@ static void enable_for_chipsetdlg2 (HWND hDlg) { int e = workprefs.cs_compatible ? FALSE : TRUE; - EnableWindow (GetDlgItem (hDlg, IDC_CS_FATGARY), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_RAMSEY), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_AGNUS), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_DENISE), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_FATGARYREV), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_RAMSEYREV), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_AGNUSREV), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_DENISEREV), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_IDE1), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_IDE2), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_DMAC), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CD32CD), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CD32NVRAM), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CD32C2P), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CDTVCD), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CDTVRAM), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CDTVRAMEXP), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_KSMIRROR), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_A1000RAM), e); - EnableWindow (GetDlgItem (hDlg, IDC_CS_DF0IDHW), e); + ew (hDlg, IDC_CS_FATGARY, e); + ew (hDlg, IDC_CS_RAMSEY, e); + ew (hDlg, IDC_CS_AGNUS, e); + ew (hDlg, IDC_CS_DENISE, e); + ew (hDlg, IDC_CS_FATGARYREV, e); + ew (hDlg, IDC_CS_RAMSEYREV, e); + ew (hDlg, IDC_CS_AGNUSREV, e); + ew (hDlg, IDC_CS_DENISEREV, e); + ew (hDlg, IDC_CS_IDE1, e); + ew (hDlg, IDC_CS_IDE2, e); + ew (hDlg, IDC_CS_DMAC, e); + ew (hDlg, IDC_CS_CD32CD, e); + ew (hDlg, IDC_CS_CD32NVRAM, e); + ew (hDlg, IDC_CS_CD32C2P, e); + ew (hDlg, IDC_CS_CDTVCD, e); + ew (hDlg, IDC_CS_CDTVRAM, e); + ew (hDlg, IDC_CS_CDTVRAMEXP, e); + ew (hDlg, IDC_CS_KSMIRROR, e); + ew (hDlg, IDC_CS_A1000RAM, e); + ew (hDlg, IDC_CS_DF0IDHW, e); } static INT_PTR CALLBACK ChipsetDlgProc2 (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) @@ -4284,19 +4279,19 @@ static void enable_for_memorydlg (HWND hDlg) z3 = FALSE; fast = FALSE; #endif - EnableWindow (GetDlgItem (hDlg, IDC_Z3TEXT), z3); - EnableWindow (GetDlgItem (hDlg, IDC_Z3FASTRAM), z3); - EnableWindow (GetDlgItem (hDlg, IDC_Z3FASTMEM), z3); - EnableWindow (GetDlgItem (hDlg, IDC_FASTMEM), fast); - EnableWindow (GetDlgItem (hDlg, IDC_FASTRAM), fast); - EnableWindow (GetDlgItem (hDlg, IDC_FASTTEXT), fast); - EnableWindow (GetDlgItem (hDlg, IDC_GFXCARDTEXT), z3); - EnableWindow (GetDlgItem (hDlg, IDC_P96RAM), z3); - EnableWindow (GetDlgItem (hDlg, IDC_P96MEM), z3); - EnableWindow (GetDlgItem (hDlg, IDC_MBRAM1), z3); - EnableWindow (GetDlgItem (hDlg, IDC_MBMEM1), z3); - EnableWindow (GetDlgItem (hDlg, IDC_MBRAM2), z3); - EnableWindow (GetDlgItem (hDlg, IDC_MBMEM2), z3); + ew (hDlg, IDC_Z3TEXT, z3); + ew (hDlg, IDC_Z3FASTRAM, z3); + ew (hDlg, IDC_Z3FASTMEM, z3); + ew (hDlg, IDC_FASTMEM, fast); + ew (hDlg, IDC_FASTRAM, fast); + ew (hDlg, IDC_FASTTEXT, fast); + ew (hDlg, IDC_GFXCARDTEXT, z3); + ew (hDlg, IDC_P96RAM, z3); + ew (hDlg, IDC_P96MEM, z3); + ew (hDlg, IDC_MBRAM1, z3); + ew (hDlg, IDC_MBMEM1, z3); + ew (hDlg, IDC_MBRAM2, z3); + ew (hDlg, IDC_MBMEM2, z3); } static void values_to_memorydlg (HWND hDlg) @@ -4532,7 +4527,7 @@ static void values_from_kickstartdlg (HWND hDlg) getromfile (hDlg, IDC_CARTFILE, workprefs.cartfile, sizeof (workprefs.cartfile)); if (workprefs.cartfile[0]) workprefs.cart_internal = 0; - EnableWindow(GetDlgItem(hDlg, IDC_HRTMON), workprefs.cartfile[0] ? FALSE : TRUE); + ew (hDlg, IDC_HRTMON, workprefs.cartfile[0] ? FALSE : TRUE); CheckDlgButton(hDlg, IDC_HRTMON, workprefs.cart_internal ? TRUE : FALSE); } @@ -4562,26 +4557,26 @@ static void init_kickstart (HWND hDlg) HKEY fkey; #if !defined(AUTOCONFIG) - EnableWindow(GetDlgItem(hDlg, IDC_MAPROM), FALSE); + ew (hDlg, IDC_MAPROM), FALSE); #endif #if !defined (CDTV) && !defined (CD32) - EnableWindow(GetDlgItem(hDlg, IDC_FLASHFILE), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_ROMFILE2), FALSE); + ew (hDlg, IDC_FLASHFILE), FALSE); + ew (hDlg, IDC_ROMFILE2), FALSE); #endif #if !defined (ACTION_REPLAY) - EnableWindow(GetDlgItem(hDlg, IDC_CARTFILE), FALSE); + ew (hDlg, IDC_CARTFILE), FALSE); #endif #if defined (UAE_MINI) - EnableWindow(GetDlgItem(hDlg, IDC_KICKSHIFTER), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_ROMCHOOSER2), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_CARTCHOOSER), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_FLASHCHOOSER), FALSE); + ew (hDlg, IDC_KICKSHIFTER), FALSE); + ew (hDlg, IDC_ROMCHOOSER2), FALSE); + ew (hDlg, IDC_CARTCHOOSER), FALSE); + ew (hDlg, IDC_FLASHCHOOSER), FALSE); #endif if (RegOpenKeyEx (hWinUAEKey , "DetectedROMs", 0, KEY_READ, &fkey) != ERROR_SUCCESS) scan_roms (workprefs.path_rom); if (fkey) RegCloseKey (fkey); - EnableWindow(GetDlgItem(hDlg, IDC_HRTMON), full_property_sheet); + ew (hDlg, IDC_HRTMON, full_property_sheet); } @@ -4649,7 +4644,7 @@ static INT_PTR CALLBACK KickstartDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LP case IDC_HRTMON: workprefs.cart_internal = IsDlgButtonChecked(hDlg, IDC_HRTMON) ? 1 : 0; - EnableWindow(GetDlgItem(hDlg, IDC_CARTFILE), workprefs.cart_internal ? FALSE : TRUE); + ew (hDlg, IDC_CARTFILE, workprefs.cart_internal ? FALSE : TRUE); break; } @@ -4662,23 +4657,23 @@ static INT_PTR CALLBACK KickstartDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LP static void enable_for_miscdlg (HWND hDlg) { if (!full_property_sheet) { - EnableWindow (GetDlgItem (hDlg, IDC_JULIAN), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_CTRLF11), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_SOCKETS), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_SHOWGUI), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_NOSPEED), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_NOSPEEDPAUSE), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_NOSOUND), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_NOOVERLAY), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_DOSAVESTATE), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_SCSIMODE), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_SCSIDEVICE), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_CLOCKSYNC), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_CATWEASEL), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_STATE_CAPTURE), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_STATE_RATE), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_STATE_BUFFERSIZE), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_LANGUAGE), FALSE); + ew (hDlg, IDC_JULIAN, TRUE); + ew (hDlg, IDC_CTRLF11, TRUE); + ew (hDlg, IDC_SOCKETS, FALSE); + ew (hDlg, IDC_SHOWGUI, FALSE); + ew (hDlg, IDC_NOSPEED, TRUE); + ew (hDlg, IDC_NOSPEEDPAUSE, TRUE); + ew (hDlg, IDC_NOSOUND, TRUE); + ew (hDlg, IDC_NOOVERLAY, TRUE); + ew (hDlg, IDC_DOSAVESTATE, TRUE); + ew (hDlg, IDC_SCSIMODE, FALSE); + ew (hDlg, IDC_SCSIDEVICE, FALSE); + ew (hDlg, IDC_CLOCKSYNC, FALSE); + ew (hDlg, IDC_CATWEASEL, FALSE); + ew (hDlg, IDC_STATE_CAPTURE, FALSE); + ew (hDlg, IDC_STATE_RATE, FALSE); + ew (hDlg, IDC_STATE_BUFFERSIZE, FALSE); + ew (hDlg, IDC_LANGUAGE, FALSE); } else { #if !defined (BSDSOCKET) EnableWindow (GetDlgItem(hDlg, IDC_SOCKETS), FALSE); @@ -4687,9 +4682,9 @@ static void enable_for_miscdlg (HWND hDlg) EnableWindow (GetDlgItem(hDlg, IDC_SCSIDEVICE), FALSE); EnableWindow (GetDlgItem(hDlg, IDC_SCSIMODE), TRUE); #endif - EnableWindow (GetDlgItem (hDlg, IDC_DOSAVESTATE), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_STATE_RATE), workprefs.statecapture ? TRUE : FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_STATE_BUFFERSIZE), workprefs.statecapture ? TRUE : FALSE); + ew (hDlg, IDC_DOSAVESTATE, FALSE); + ew (hDlg, IDC_STATE_RATE, workprefs.statecapture ? TRUE : FALSE); + ew (hDlg, IDC_STATE_BUFFERSIZE, workprefs.statecapture ? TRUE : FALSE); } } @@ -4829,7 +4824,7 @@ static void values_to_miscdlg (HWND hDlg) CheckDlgButton (hDlg, IDC_CLOCKSYNC, workprefs.tod_hack); CheckDlgButton (hDlg, IDC_POWERSAVE, workprefs.win32_powersavedisabled); cw = catweasel_detect(); - EnableWindow (GetDlgItem (hDlg, IDC_CATWEASEL), cw); + ew (hDlg, IDC_CATWEASEL, cw); if (!cw && workprefs.catweasel < 100) workprefs.catweasel = 0; CheckDlgButton (hDlg, IDC_CATWEASEL, workprefs.catweasel); @@ -5059,21 +5054,21 @@ static void enable_for_cpudlg (HWND hDlg) BOOL cpu_based_enable = FALSE; /* These four items only get enabled when adjustable CPU style is enabled */ - EnableWindow (GetDlgItem (hDlg, IDC_SPEED), workprefs.m68k_speed > 0); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CPU_TEXT), (!workprefs.cpu_cycle_exact || workprefs.cpu_level > 0) && workprefs.m68k_speed > 0); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CHIPSET_TEXT), (!workprefs.cpu_cycle_exact || workprefs.cpu_level > 0) && workprefs.m68k_speed > 0); - EnableWindow (GetDlgItem (hDlg, IDC_CS_HOST), !workprefs.cpu_cycle_exact || workprefs.cpu_level > 0); - EnableWindow (GetDlgItem (hDlg, IDC_CS_68000), !workprefs.cpu_cycle_exact || workprefs.cpu_level > 0); - EnableWindow (GetDlgItem (hDlg, IDC_CS_ADJUSTABLE), !workprefs.cpu_cycle_exact || workprefs.cpu_level > 0); - EnableWindow (GetDlgItem (hDlg, IDC_CPUTEXT), workprefs.m68k_speed > 0 ); - EnableWindow (GetDlgItem (hDlg, IDC_CPUIDLE), workprefs.m68k_speed != 0 ? TRUE : FALSE); + ew (hDlg, IDC_SPEED, workprefs.m68k_speed > 0); + ew (hDlg, IDC_CS_CPU_TEXT, (!workprefs.cpu_cycle_exact || workprefs.cpu_level > 0) && workprefs.m68k_speed > 0); + ew (hDlg, IDC_CS_CHIPSET_TEXT, (!workprefs.cpu_cycle_exact || workprefs.cpu_level > 0) && workprefs.m68k_speed > 0); + ew (hDlg, IDC_CS_HOST, !workprefs.cpu_cycle_exact || workprefs.cpu_level > 0); + ew (hDlg, IDC_CS_68000, !workprefs.cpu_cycle_exact || workprefs.cpu_level > 0); + ew (hDlg, IDC_CS_ADJUSTABLE, !workprefs.cpu_cycle_exact || workprefs.cpu_level > 0); + ew (hDlg, IDC_CPUTEXT, workprefs.m68k_speed > 0 ); + ew (hDlg, IDC_CPUIDLE, workprefs.m68k_speed != 0 ? TRUE : FALSE); #if !defined(CPUEMU_0) || defined(CPUEMU_68000_ONLY) - EnableWindow (GetDlgItem (hDlg, IDC_CPU1), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_CPU2), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_CPU3), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_CPU4), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_CPU5), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_CPU6), FALSE); + ew (hDlg, IDC_CPU1, FALSE); + ew (hDlg, IDC_CPU2, FALSE); + ew (hDlg, IDC_CPU3, FALSE); + ew (hDlg, IDC_CPU4, FALSE); + ew (hDlg, IDC_CPU5, FALSE); + ew (hDlg, IDC_CPU6, FALSE); #endif cpu_based_enable = workprefs.cpu_level >= 2 && @@ -5085,20 +5080,20 @@ static void enable_for_cpudlg (HWND hDlg) #endif enable2 = enable && workprefs.compforcesettings; - EnableWindow (GetDlgItem (hDlg, IDC_TRUST0), enable2); - EnableWindow (GetDlgItem (hDlg, IDC_TRUST1), enable2); - EnableWindow (GetDlgItem (hDlg, IDC_TRUST2), enable2); - EnableWindow (GetDlgItem (hDlg, IDC_HARDFLUSH), enable2); - EnableWindow (GetDlgItem (hDlg, IDC_CONSTJUMP), enable2); - EnableWindow (GetDlgItem (hDlg, IDC_JITFPU), enable2); - EnableWindow (GetDlgItem (hDlg, IDC_NOFLAGS), enable2); - EnableWindow (GetDlgItem (hDlg, IDC_CS_CACHE_TEXT), cpu_based_enable && workprefs.cachesize); - EnableWindow (GetDlgItem (hDlg, IDC_CACHE), cpu_based_enable && workprefs.cachesize); - EnableWindow (GetDlgItem (hDlg, IDC_CACHETEXT), cpu_based_enable && workprefs.cachesize); - EnableWindow (GetDlgItem (hDlg, IDC_FORCE), enable); - EnableWindow (GetDlgItem (hDlg, IDC_JITENABLE), cpu_based_enable); - EnableWindow (GetDlgItem (hDlg, IDC_COMPATIBLE), !workprefs.cpu_cycle_exact && !workprefs.cachesize); - EnableWindow (GetDlgItem (hDlg, IDC_COMPATIBLE_FPU), workprefs.cpu_level >= 3); + ew (hDlg, IDC_TRUST0, enable2); + ew (hDlg, IDC_TRUST1, enable2); + ew (hDlg, IDC_TRUST2, enable2); + ew (hDlg, IDC_HARDFLUSH, enable2); + ew (hDlg, IDC_CONSTJUMP, enable2); + ew (hDlg, IDC_JITFPU, enable2); + ew (hDlg, IDC_NOFLAGS, enable2); + ew (hDlg, IDC_CS_CACHE_TEXT, cpu_based_enable && workprefs.cachesize); + ew (hDlg, IDC_CACHE, cpu_based_enable && workprefs.cachesize); + ew (hDlg, IDC_CACHETEXT, cpu_based_enable && workprefs.cachesize); + ew (hDlg, IDC_FORCE, enable); + ew (hDlg, IDC_JITENABLE, cpu_based_enable); + ew (hDlg, IDC_COMPATIBLE, !workprefs.cpu_cycle_exact && !workprefs.cachesize); + ew (hDlg, IDC_COMPATIBLE_FPU, workprefs.cpu_level >= 3); #ifdef JIT if( enable ) @@ -5121,7 +5116,7 @@ static void enable_for_cpudlg (HWND hDlg) static void values_to_cpudlg (HWND hDlg) { - char cache[ 8 ] = ""; + char cache[8] = ""; BOOL enable = FALSE; BOOL cpu_based_enable = FALSE; @@ -5166,7 +5161,7 @@ static void values_to_cpudlg (HWND hDlg) workprefs.comptrustnaddr= 0; } - CheckRadioButton(hDlg, IDC_TRUST0, IDC_TRUST2, trust_ids[ workprefs.comptrustbyte]); + CheckRadioButton(hDlg, IDC_TRUST0, IDC_TRUST2, trust_ids[workprefs.comptrustbyte]); SendDlgItemMessage(hDlg, IDC_CACHE, TBM_SETPOS, TRUE, workprefs.cachesize / 1024); sprintf(cache, "%d MB", workprefs.cachesize / 1024 ); @@ -5309,34 +5304,34 @@ static void enable_for_sounddlg (HWND hDlg) enumerate_sound_devices (&numdevs); if( numdevs == 0 ) - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDCARDLIST), FALSE); + ew (hDlg, IDC_SOUNDCARDLIST, FALSE); else - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDCARDLIST), workprefs.produce_sound); - - EnableWindow (GetDlgItem (hDlg, IDC_FREQUENCY), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDFREQ), workprefs.produce_sound ? TRUE : FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDSTEREO), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDINTERPOLATION), workprefs.sound_stereo < 3 && workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDVOLUME), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDVOLUME2), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDSTEREOSEP), ISSTEREO(workprefs) && workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDSTEREOMIX), ISSTEREO(workprefs) && workprefs.produce_sound); - - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDBUFFERMEM), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDBUFFERRAM), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDADJUST), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDADJUSTNUM), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDBUFFERTEXT), workprefs.produce_sound); - - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDDRIVE), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDDRIVESELECT), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDDRIVEVOLUME), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDDRIVEVOLUME2), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_AUDIOSYNC), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDFILTER), workprefs.produce_sound); - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDSWAP), workprefs.produce_sound); - - EnableWindow (GetDlgItem (hDlg, IDC_SOUNDCALIBRATE), workprefs.produce_sound && full_property_sheet); + ew (hDlg, IDC_SOUNDCARDLIST, workprefs.produce_sound); + + ew (hDlg, IDC_FREQUENCY, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDFREQ, workprefs.produce_sound ? TRUE : FALSE); + ew (hDlg, IDC_SOUNDSTEREO, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDINTERPOLATION, workprefs.sound_stereo < 3 && workprefs.produce_sound); + ew (hDlg, IDC_SOUNDVOLUME, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDVOLUME2, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDSTEREOSEP, ISSTEREO(workprefs) && workprefs.produce_sound); + ew (hDlg, IDC_SOUNDSTEREOMIX, ISSTEREO(workprefs) && workprefs.produce_sound); + + ew (hDlg, IDC_SOUNDBUFFERMEM, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDBUFFERRAM, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDADJUST, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDADJUSTNUM, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDBUFFERTEXT, workprefs.produce_sound); + + ew (hDlg, IDC_SOUNDDRIVE, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDDRIVESELECT, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDDRIVEVOLUME, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDDRIVEVOLUME2, workprefs.produce_sound); + ew (hDlg, IDC_AUDIOSYNC, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDFILTER, workprefs.produce_sound); + ew (hDlg, IDC_SOUNDSWAP, workprefs.produce_sound); + + ew (hDlg, IDC_SOUNDCALIBRATE, workprefs.produce_sound && full_property_sheet); } static int exact_log2 (int v) @@ -5609,13 +5604,13 @@ static void values_from_sounddlg (HWND hDlg) workprefs.sound_mixed_stereo = 0; if (workprefs.sound_stereo > 0) { idx = SendDlgItemMessage (hDlg, IDC_SOUNDSTEREOSEP, CB_GETCURSEL, 0, 0); - if (idx >= 0) { + if (idx != CB_ERR) { if (idx > 0) workprefs.sound_mixed_stereo = -1; workprefs.sound_stereo_separation = 10 - idx; } idx = SendDlgItemMessage (hDlg, IDC_SOUNDSTEREOMIX, CB_GETCURSEL, 0, 0); - if (idx > 0) + if (idx != CB_ERR && idx > 0) workprefs.sound_mixed_stereo = idx; } @@ -5769,7 +5764,7 @@ static INT_PTR CALLBACK VolumeSettingsProc (HWND hDlg, UINT msg, WPARAM wParam, BROWSEINFO browse_info; char directory_path[MAX_DPATH] = ""; LPITEMIDLIST browse; - char szTitle[ MAX_DPATH ]; + char szTitle[MAX_DPATH]; WIN32GUI_LoadUIString( IDS_SELECTFILESYSROOT, szTitle, MAX_DPATH ); @@ -5857,7 +5852,7 @@ static void sethardfile (HWND hDlg) SetDlgItemInt (hDlg, IDC_BLOCKSIZE, current_hfdlg.blocksize, FALSE); SetDlgItemInt (hDlg, IDC_HARDFILE_BOOTPRI, current_hfdlg.bootpri, TRUE); CheckDlgButton (hDlg, IDC_RW, current_hfdlg.rw); - EnableWindow (GetDlgItem (hDlg, IDC_HDF_RDB), + ew (hDlg, IDC_HDF_RDB, !(current_hfdlg.sectors == 0 && current_hfdlg.surfaces == 0 && current_hfdlg.reserved == 0)); } @@ -5865,8 +5860,8 @@ static void inithardfile (HWND hDlg) { char tmp[MAX_DPATH]; - EnableWindow (GetDlgItem (hDlg, IDC_HF_DOSTYPE), FALSE); - EnableWindow (GetDlgItem (hDlg, IDC_HF_CREATE), FALSE); + ew (hDlg, IDC_HF_DOSTYPE, FALSE); + ew (hDlg, IDC_HF_CREATE, FALSE); SendDlgItemMessage(hDlg, IDC_HF_TYPE, CB_RESETCONTENT, 0, 0); WIN32GUI_LoadUIString (IDS_HF_FS_CUSTOM, tmp, sizeof (tmp)); SendDlgItemMessage (hDlg, IDC_HF_TYPE, CB_ADDSTRING, 0, (LPARAM)"OFS/FFS/RDB"); @@ -5923,12 +5918,12 @@ static INT_PTR CALLBACK HardfileSettingsProc (HWND hDlg, UINT msg, WPARAM wParam switch (LOWORD (wParam)) { case IDC_HF_SIZE: - EnableWindow (GetDlgItem (hDlg, IDC_HF_CREATE), CalculateHardfileSize (hDlg) > 0); + ew (hDlg, IDC_HF_CREATE, CalculateHardfileSize (hDlg) > 0); break; case IDC_HF_TYPE: res = SendDlgItemMessage (hDlg, IDC_HF_TYPE, CB_GETCURSEL, 0, 0); sethfdostype (hDlg, (int)res); - EnableWindow (GetDlgItem (hDlg, IDC_HF_DOSTYPE), res >= 2); + ew (hDlg, IDC_HF_DOSTYPE, res >= 2); break; case IDC_HF_CREATE: { @@ -6017,9 +6012,9 @@ static INT_PTR CALLBACK HarddriveSettingsProc (HWND hDlg, UINT msg, WPARAM wPara recursive++; CheckDlgButton (hDlg, IDC_RW, current_hfdlg.rw); SendDlgItemMessage(hDlg, IDC_HARDDRIVE, CB_RESETCONTENT, 0, 0); - EnableWindow(GetDlgItem(hDlg, IDC_HARDDRIVE_IMAGE), FALSE); - EnableWindow(GetDlgItem(hDlg, IDOK), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_RW), FALSE); + ew (hDlg, IDC_HARDDRIVE_IMAGE, FALSE); + ew (hDlg, IDOK, FALSE); + ew (hDlg, IDC_RW, FALSE); index = -1; for (i = 0; i < hdf_getnumharddrives(); i++) { SendDlgItemMessage( hDlg, IDC_HARDDRIVE, CB_ADDSTRING, 0, (LPARAM)hdf_getnameharddrive(i, 1)); @@ -6038,9 +6033,9 @@ static INT_PTR CALLBACK HarddriveSettingsProc (HWND hDlg, UINT msg, WPARAM wPara if (oposn != posn) { oposn = posn; if (posn >= 0) { - EnableWindow(GetDlgItem(hDlg, IDC_HARDDRIVE_IMAGE), TRUE); - EnableWindow(GetDlgItem(hDlg, IDOK), TRUE); - EnableWindow(GetDlgItem(hDlg, IDC_RW), TRUE); + ew (hDlg, IDC_HARDDRIVE_IMAGE, TRUE); + ew (hDlg, IDOK, TRUE); + ew (hDlg, IDC_RW, TRUE); } } if (HIWORD (wParam) == BN_CLICKED) { @@ -6416,7 +6411,7 @@ static void floppytooltip (HWND hDlg, int num, uae_u32 crc32) SendMessage (ToolTipHWND, TTM_ADDTOOL, 0, (LPARAM) (LPTOOLINFO) &ti); } -static void addfloppyhistory (HWND hDlg, HKEY fkey, int n, int f_text) +static void addfloppyhistory_2 (HWND hDlg, HKEY fkey, int n, int f_text) { int i, j; char *s; @@ -6464,10 +6459,36 @@ static void addfloppyhistory (HWND hDlg, HKEY fkey, int n, int f_text) } } +static void addfloppyhistory(HWND hDlg) +{ + HKEY fkey; + int f_text, max, n; + + if (currentpage == QUICKSTART_ID) + max = 2; + else if (currentpage == FLOPPY_ID) + max = 4; + else if (currentpage == DISK_ID) + max = 1; + else + return; + fkey = read_disk_history (); + for (n = 0; n < max; n++) { + if (currentpage == QUICKSTART_ID) + f_text = floppybuttonsq[n][0]; + else if (currentpage == FLOPPY_ID) + f_text = floppybuttons[n][0]; + else + f_text = IDC_DISKTEXT; + addfloppyhistory_2 (hDlg, fkey, n, f_text); + } + if (fkey) + RegCloseKey (fkey); +} + static void addfloppytype (HWND hDlg, int n) { int state, chk; - HKEY fkey; int nn = workprefs.dfxtype[n] + 1; int f_text = floppybuttons[n][0]; @@ -6496,25 +6517,18 @@ static void addfloppytype (HWND hDlg, int n) ShowWindow (GetDlgItem(hDlg, f_si), zfile_exists (DISK_get_saveimagepath (workprefs.df[n])) ? SW_SHOW : SW_HIDE); if (f_text >= 0) - EnableWindow(GetDlgItem(hDlg, f_text), state); + ew (hDlg, f_text, state); if (f_eject >= 0) - EnableWindow(GetDlgItem(hDlg, f_eject), TRUE); + ew (hDlg, f_eject, TRUE); if (f_drive >= 0) - EnableWindow(GetDlgItem(hDlg, f_drive), state); + ew (hDlg, f_drive, state); chk = disk_getwriteprotect (workprefs.df[n]) && state == TRUE ? BST_CHECKED : 0; if (f_wp >= 0) CheckDlgButton(hDlg, f_wp, chk); chk = state && DISK_validate_filename (workprefs.df[n], 0, NULL, NULL) ? TRUE : FALSE; if (f_wp >= 0) - EnableWindow(GetDlgItem(hDlg, f_wp), chk); - - fkey = read_disk_history (); - - addfloppyhistory (hDlg, fkey, n, f_text); - - if (fkey) - RegCloseKey (fkey); -} + ew (hDlg, f_wp, chk); + } static void getfloppytype (HWND hDlg, int n) { @@ -6584,6 +6598,7 @@ static void addallfloppies (HWND hDlg) for (i = 0; i < 4; i++) addfloppytype (hDlg, i); + addfloppyhistory (hDlg); } static void floppysetwriteprotect (HWND hDlg, int n, int protect) @@ -6610,6 +6625,7 @@ static void diskselect (HWND hDlg, WPARAM wParam, struct uae_prefs *p, int drv) disk_insert (2, p->df[2]); disk_insert (3, p->df[3]); addfloppytype (hDlg, drv); + addfloppyhistory (hDlg); } static INT_PTR CALLBACK FloppyDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) @@ -6677,19 +6693,23 @@ static INT_PTR CALLBACK FloppyDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARA case IDC_DF0TEXTQ: getfloppyname (hDlg, 0); addfloppytype (hDlg, 0); + addfloppyhistory (hDlg); break; case IDC_DF1TEXT: case IDC_DF1TEXTQ: getfloppyname (hDlg, 1); addfloppytype (hDlg, 1); + addfloppyhistory (hDlg); break; case IDC_DF2TEXT: getfloppyname (hDlg, 2); addfloppytype (hDlg, 2); + addfloppyhistory (hDlg); break; case IDC_DF3TEXT: getfloppyname (hDlg, 3); addfloppytype (hDlg, 3); + addfloppyhistory (hDlg); break; case IDC_DF0TYPE: getfloppytype (hDlg, 0); @@ -6838,7 +6858,6 @@ static INT_PTR CALLBACK SwapperDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPAR static int recursive = 0; static int entry; char tmp[MAX_DPATH]; - HKEY fkey; switch (msg) { @@ -6846,10 +6865,7 @@ static INT_PTR CALLBACK SwapperDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPAR pages[DISK_ID] = hDlg; currentpage = DISK_ID; InitializeListView(hDlg); - fkey = read_disk_history (); - addfloppyhistory (hDlg, fkey, 0, IDC_DISKTEXT); - if (fkey) - RegCloseKey (fkey); + addfloppyhistory (hDlg); entry = 0; swapperhili (hDlg, entry); break; @@ -6964,6 +6980,7 @@ static INT_PTR CALLBACK SwapperDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPAR if (entry >= 0) { if (getfloppybox (hDlg, IDC_DISKTEXT, tmp, sizeof (tmp))) { strcpy (workprefs.dfxlist[entry], tmp); + addfloppyhistory (hDlg); InitializeListView (hDlg); swapperhili (hDlg, entry); } else { @@ -7072,33 +7089,33 @@ static void enable_for_portsdlg( HWND hDlg ) int v; v = workprefs.input_selected_setting > 0 ? FALSE : TRUE; - EnableWindow (GetDlgItem (hDlg, IDC_SWAP), v); + ew (hDlg, IDC_SWAP, v); #if !defined (SERIAL_PORT) - EnableWindow(GetDlgItem(hDlg, IDC_MIDIOUTLIST), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_MIDIINLIST), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_SHARED), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_SER_CTSRTS), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_SERIAL_DIRECT), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_SERIAL), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_UAESERIAL), FALSE); + ew (hDlg, IDC_MIDIOUTLIST, FALSE); + ew (hDlg, IDC_MIDIINLIST, FALSE); + ew (hDlg, IDC_SHARED, FALSE); + ew (hDlg, IDC_SER_CTSRTS, FALSE); + ew (hDlg, IDC_SERIAL_DIRECT, FALSE); + ew (hDlg, IDC_SERIAL, FALSE); + ew (hDlg, IDC_UAESERIAL, FALSE); #else v = workprefs.use_serial ? TRUE : FALSE; - EnableWindow(GetDlgItem(hDlg, IDC_SER_SHARED), v); - EnableWindow(GetDlgItem(hDlg, IDC_SER_CTSRTS), v); - EnableWindow(GetDlgItem(hDlg, IDC_SER_DIRECT), v); - EnableWindow(GetDlgItem(hDlg, IDC_UAESERIAL), full_property_sheet); + ew (hDlg, IDC_SER_SHARED, v); + ew (hDlg, IDC_SER_CTSRTS, v); + ew (hDlg, IDC_SER_DIRECT, v); + ew (hDlg, IDC_UAESERIAL, full_property_sheet); #endif #if !defined (PARALLEL_PORT) - EnableWindow(GetDlgItem(hDlg, IDC_PRINTERLIST), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_FLUSHPRINTER), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_PSPRINTER), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_PS_PARAMS), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_PRINTER_AUTOFLUSH), FALSE); + ew (hDlg, IDC_PRINTERLIST, FALSE); + ew (hDlg, IDC_FLUSHPRINTER, FALSE); + ew (hDlg, IDC_PSPRINTER, FALSE); + ew (hDlg, IDC_PS_PARAMS, FALSE); + ew (hDlg, IDC_PRINTER_AUTOFLUSH, FALSE); #else - EnableWindow(GetDlgItem(hDlg, IDC_FLUSHPRINTER), isprinteropen () ? TRUE : FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_PSPRINTER), full_property_sheet && ghostscript_available ? TRUE : FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_PSPRINTERDETECT), full_property_sheet ? TRUE : FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_PS_PARAMS), full_property_sheet && ghostscript_available); + ew (hDlg, IDC_FLUSHPRINTER, isprinteropen () ? TRUE : FALSE); + ew (hDlg, IDC_PSPRINTER, full_property_sheet && ghostscript_available ? TRUE : FALSE); + ew (hDlg, IDC_PSPRINTERDETECT, full_property_sheet ? TRUE : FALSE); + ew (hDlg, IDC_PS_PARAMS, full_property_sheet && ghostscript_available); #endif } @@ -7267,7 +7284,7 @@ static void values_from_portsdlg (HWND hDlg) } else { workprefs.win32_midiindev = SendDlgItemMessage(hDlg, IDC_MIDIINLIST, CB_GETCURSEL, 0, 0); } - EnableWindow(GetDlgItem(hDlg, IDC_MIDIINLIST), workprefs.win32_midioutdev < -1 ? FALSE : TRUE); + ew (hDlg, IDC_MIDIINLIST, workprefs.win32_midioutdev < -1 ? FALSE : TRUE); item = SendDlgItemMessage (hDlg, IDC_SERIAL, CB_GETCURSEL, 0, 0L); if (item != CB_ERR && item > 0) { @@ -7336,7 +7353,7 @@ static void values_to_portsdlg (HWND hDlg) SendDlgItemMessage(hDlg, IDC_MIDIINLIST, CB_SETCURSEL, workprefs.win32_midiindev, 0); else SendDlgItemMessage(hDlg, IDC_MIDIINLIST, CB_SETCURSEL, 0, 0); - EnableWindow(GetDlgItem(hDlg, IDC_MIDIINLIST ), workprefs.win32_midioutdev < -1 ? FALSE : TRUE); + ew (hDlg, IDC_MIDIINLIST, workprefs.win32_midioutdev < -1 ? FALSE : TRUE); CheckDlgButton(hDlg, IDC_UAESERIAL, workprefs.uaeserial); CheckDlgButton(hDlg, IDC_SER_SHARED, workprefs.serial_demand); @@ -7418,7 +7435,7 @@ static void init_portsdlg( HWND hDlg ) for(port = 0; port < (int)dwEnumeratedPrinters; port++) SendDlgItemMessage(hDlg, IDC_PRINTERLIST, CB_ADDSTRING, 0, (LPARAM)pInfo[port].pName); } else { - EnableWindow(GetDlgItem(hDlg, IDC_PRINTERLIST), FALSE); + ew (hDlg, IDC_PRINTERLIST, FALSE); } if (paraport_mask) { int mask = paraport_mask; @@ -7437,7 +7454,7 @@ static void init_portsdlg( HWND hDlg ) SendDlgItemMessage (hDlg, IDC_MIDIOUTLIST, CB_RESETCONTENT, 0, 0L); SendDlgItemMessage (hDlg, IDC_MIDIOUTLIST, CB_ADDSTRING, 0, (LPARAM)szNone); if((numdevs = midiOutGetNumDevs()) == 0) { - EnableWindow(GetDlgItem(hDlg, IDC_MIDIOUTLIST), FALSE); + ew (hDlg, IDC_MIDIOUTLIST, FALSE); } else { char szMidiOut[MAX_DPATH]; WIN32GUI_LoadUIString(IDS_DEFAULTMIDIOUT, szMidiOut, MAX_DPATH); @@ -7447,12 +7464,12 @@ static void init_portsdlg( HWND hDlg ) if(midiOutGetDevCaps(port, &midiOutCaps, sizeof(midiOutCaps)) == MMSYSERR_NOERROR) SendDlgItemMessage(hDlg, IDC_MIDIOUTLIST, CB_ADDSTRING, 0, (LPARAM)midiOutCaps.szPname); } - EnableWindow(GetDlgItem(hDlg, IDC_MIDIOUTLIST), TRUE); + ew (hDlg, IDC_MIDIOUTLIST, TRUE); } SendDlgItemMessage(hDlg, IDC_MIDIINLIST, CB_RESETCONTENT, 0, 0L); if((numdevs = midiInGetNumDevs()) == 0) { - EnableWindow(GetDlgItem(hDlg, IDC_MIDIINLIST), FALSE); + ew (hDlg, IDC_MIDIINLIST, FALSE); bNoMidiIn = TRUE; } else { for(port = 0; port < numdevs; port++) { @@ -7624,23 +7641,23 @@ static void init_inputdlg( HWND hDlg ) static void enable_for_inputdlg (HWND hDlg) { int v = workprefs.input_selected_setting == 0 ? FALSE : TRUE; - EnableWindow (GetDlgItem (hDlg, IDC_INPUTLIST), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTAMIGA), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTAMIGACNT), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTDEADZONE), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTAUTOFIRERATE), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTSPEEDA), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTSPEEDD), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTSPEEDM), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTCOPY), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTCOPYFROM), v); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTSWAP), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_INPUTDEVICEDISABLE), workprefs.input_selected_setting == 0 ? FALSE : TRUE); + ew (hDlg, IDC_INPUTLIST, v); + ew (hDlg, IDC_INPUTAMIGA, v); + ew (hDlg, IDC_INPUTAMIGACNT, v); + ew (hDlg, IDC_INPUTDEADZONE, TRUE); + ew (hDlg, IDC_INPUTAUTOFIRERATE, v); + ew (hDlg, IDC_INPUTSPEEDA, v); + ew (hDlg, IDC_INPUTSPEEDD, v); + ew (hDlg, IDC_INPUTSPEEDM, TRUE); + ew (hDlg, IDC_INPUTCOPY, v); + ew (hDlg, IDC_INPUTCOPYFROM, v); + ew (hDlg, IDC_INPUTSWAP, TRUE); + ew (hDlg, IDC_INPUTDEVICEDISABLE, workprefs.input_selected_setting == 0 ? FALSE : TRUE); } static void clearinputlistview (HWND hDlg) { - ListView_DeleteAllItems( GetDlgItem( hDlg, IDC_INPUTLIST ) ); + ListView_DeleteAllItems(GetDlgItem(hDlg, IDC_INPUTLIST)); } static void values_from_inputdlg (HWND hDlg) @@ -7859,24 +7876,24 @@ static void enable_for_hw3ddlg (HWND hDlg) vv = TRUE; if (v && uf->x[0]) vv2 = TRUE; - EnableWindow (GetDlgItem (hDlg, IDC_FILTERENABLE), TRUE); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERMODE), v); - CheckDlgButton( hDlg, IDC_FILTERENABLE, v ); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERHZ), v); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERVZ), v); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERHZMULT), vv && !vv2); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERVZMULT), vv && !vv2); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERHO), v); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERVO), v); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERSLR), vv2); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERSL), vv2); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERSL2), vv2); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERDEFAULT), v); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERFILTER), vv); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERAUTORES), vv && !vv2); - - EnableWindow (GetDlgItem (hDlg, IDC_FILTERPRESETLOAD), filterpreset > 0); - EnableWindow (GetDlgItem (hDlg, IDC_FILTERPRESETDELETE), filterpreset > 0); + ew (hDlg, IDC_FILTERENABLE, TRUE); + ew (hDlg, IDC_FILTERMODE, v); + CheckDlgButton(hDlg, IDC_FILTERENABLE, v); + ew (hDlg, IDC_FILTERHZ, v); + ew (hDlg, IDC_FILTERVZ, v); + ew (hDlg, IDC_FILTERHZMULT, vv && !vv2); + ew (hDlg, IDC_FILTERVZMULT, vv && !vv2); + ew (hDlg, IDC_FILTERHO, v); + ew (hDlg, IDC_FILTERVO, v); + ew (hDlg, IDC_FILTERSLR, vv2); + ew (hDlg, IDC_FILTERSL, vv2); + ew (hDlg, IDC_FILTERSL2, vv2); + ew (hDlg, IDC_FILTERDEFAULT, v); + ew (hDlg, IDC_FILTERFILTER, vv); + ew (hDlg, IDC_FILTERAUTORES, vv && !vv2); + + ew (hDlg, IDC_FILTERPRESETLOAD, filterpreset > 0); + ew (hDlg, IDC_FILTERPRESETDELETE, filterpreset > 0); } static void makefilter(char *s, int x, int flags) @@ -8332,25 +8349,25 @@ static void enable_for_avioutputdlg(HWND hDlg) { char tmp[1000]; #if defined (PROWIZARD) - EnableWindow(GetDlgItem(hDlg, IDC_PROWIZARD), TRUE); + ew (hDlg, IDC_PROWIZARD, TRUE); if (full_property_sheet) - EnableWindow(GetDlgItem(hDlg, IDC_PROWIZARD), FALSE); + ew (hDlg, IDC_PROWIZARD, FALSE); #endif - EnableWindow(GetDlgItem(hDlg, IDC_SCREENSHOT), full_property_sheet ? FALSE : TRUE); + ew (hDlg, IDC_SCREENSHOT, full_property_sheet ? FALSE : TRUE); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_PAL), TRUE); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_NTSC), TRUE); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_FPS), TRUE); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_FILE), TRUE); + ew (hDlg, IDC_AVIOUTPUT_PAL, TRUE); + ew (hDlg, IDC_AVIOUTPUT_NTSC, TRUE); + ew (hDlg, IDC_AVIOUTPUT_FPS, TRUE); + ew (hDlg, IDC_AVIOUTPUT_FILE, TRUE); if(workprefs.produce_sound < 2) { - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_AUDIO), FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_AUDIO_STATIC), FALSE); + ew (hDlg, IDC_AVIOUTPUT_AUDIO, FALSE); + ew (hDlg, IDC_AVIOUTPUT_AUDIO_STATIC, FALSE); avioutput_audio = 0; } else { - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_AUDIO), TRUE); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_AUDIO_STATIC), TRUE); + ew (hDlg, IDC_AVIOUTPUT_AUDIO, TRUE); + ew (hDlg, IDC_AVIOUTPUT_AUDIO_STATIC, TRUE); } if (avioutput_audio == AVIAUDIO_WAV) { @@ -8372,20 +8389,20 @@ static void enable_for_avioutputdlg(HWND hDlg) } SetWindowText(GetDlgItem(hDlg, IDC_AVIOUTPUT_VIDEO_STATIC), tmp); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_NOSOUNDOUTPUT), avioutput_framelimiter ? TRUE : FALSE); + ew (hDlg, IDC_AVIOUTPUT_NOSOUNDOUTPUT, avioutput_framelimiter ? TRUE : FALSE); if (!avioutput_framelimiter) avioutput_nosoundoutput = 1; CheckDlgButton (hDlg, IDC_AVIOUTPUT_FRAMELIMITER, avioutput_framelimiter ? FALSE : TRUE); CheckDlgButton (hDlg, IDC_AVIOUTPUT_NOSOUNDOUTPUT, avioutput_nosoundoutput ? TRUE : FALSE); - EnableWindow(GetDlgItem(hDlg, IDC_AVIOUTPUT_ACTIVATED), (!avioutput_audio && !avioutput_video) ? FALSE : TRUE); + ew (hDlg, IDC_AVIOUTPUT_ACTIVATED, (!avioutput_audio && !avioutput_video) ? FALSE : TRUE); - EnableWindow(GetDlgItem(hDlg, IDC_INPREC_RECORD), input_recording >= 0); + ew (hDlg, IDC_INPREC_RECORD, input_recording >= 0); CheckDlgButton(hDlg, IDC_INPREC_RECORD, input_recording > 0 ? BST_CHECKED : BST_UNCHECKED); - EnableWindow(GetDlgItem(hDlg, IDC_INPREC_PLAY), input_recording <= 0); + ew (hDlg, IDC_INPREC_PLAY, input_recording <= 0); CheckDlgButton(hDlg, IDC_INPREC_PLAY, input_recording < 0 ? BST_CHECKED : BST_UNCHECKED); - EnableWindow(GetDlgItem(hDlg, IDC_INPREC_PLAYMODE), input_recording == 0); + ew (hDlg, IDC_INPREC_PLAYMODE, input_recording == 0); } static INT_PTR CALLBACK AVIOutputDlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) @@ -8801,8 +8818,8 @@ static HWND updatePanel (HWND hDlg, int id) int w, h, pw, ph, x , y, i; int fullpanel; - EnableWindow (GetDlgItem (guiDlg, IDC_RESETAMIGA), full_property_sheet ? FALSE : TRUE); - EnableWindow (GetDlgItem (guiDlg, IDOK), TRUE); + ew (guiDlg, IDC_RESETAMIGA, full_property_sheet ? FALSE : TRUE); + ew (guiDlg, IDOK, TRUE); if (panelDlg != NULL) { ShowWindow (panelDlg, FALSE); DestroyWindow (panelDlg); @@ -8829,7 +8846,7 @@ static HWND updatePanel (HWND hDlg, int id) RegSetValueEx (hWinUAEKey, "yPosGUI", 0, REG_DWORD, (LPBYTE)&top, sizeof(LONG)); } } - EnableWindow (GetDlgItem (hDlg, IDHELP), FALSE); + ew (hDlg, IDHELP, FALSE); return NULL; } @@ -8863,7 +8880,7 @@ static HWND updatePanel (HWND hDlg, int id) ShowWindow(GetDlgItem(hDlg, IDC_PANEL_FRAME_OUTER), !fullpanel ? SW_SHOW : SW_HIDE); ShowWindow(GetDlgItem(hDlg, IDC_PANELTREE), !fullpanel ? SW_SHOW : SW_HIDE); ShowWindow (panelDlg, SW_SHOW); - EnableWindow (GetDlgItem (hDlg, IDHELP), pHtmlHelp && ppage[currentpage].help ? TRUE : FALSE); + ew (hDlg, IDHELP, pHtmlHelp && ppage[currentpage].help ? TRUE : FALSE); ToolTipHWND = CreateWindowEx (WS_EX_TOPMOST, TOOLTIPS_CLASS, NULL, @@ -9596,7 +9613,7 @@ static int fsdialog (HWND *hwnd, DWORD *flags) int gui_message_multibutton (int flags, const char *format,...) { char msg[2048]; - char szTitle[ MAX_DPATH ]; + char szTitle[MAX_DPATH]; va_list parms; int flipflop = 0; int fullscreen = 0; diff --git a/od-win32/winuaechangelog.txt b/od-win32/winuaechangelog.txt index 3591521c..d02498ec 100755 --- a/od-win32/winuaechangelog.txt +++ b/od-win32/winuaechangelog.txt @@ -1,4 +1,23 @@ +Beta 3: + +- remove harddrives loaded from default.uae in quickstart-mode +- wrong device/volumename in harddisk panel (visual error only) +- S in command line parameters set illegal stereo + separation value in some cases +- hardfile configuration handling bugs fixed +- disk history list wrong item selection fixed (really old bug, + select second entry from disk history then select first entry + from other drive's disk history) +- sinc interpolator update from uaede 2.04 +- CDTV CD audio play end position status change detection improved +- application icon updated (also includes 256x256 Vista-style icon) +- CD access freeze when CD was already open in another program, also + tries shared access mode first before falling back to exclusive + mode +- emulation paused mode sound start/stop issues fixed + + Beta 2: - filter zoom and position is not restricted to coordinates divisible diff --git a/sinctable.c b/sinctable.c index 5e962117..a373d01b 100755 --- a/sinctable.c +++ b/sinctable.c @@ -1,647 +1,626 @@ /* tables are: a500 off, a500 on, a1200 off, a1200 on, vanilla. */ static const int winsinc_integral[5][2048] = { { -131072,131070,131069,131067,131065,131064,131062,131060,131058,131056,131054, -131052,131050,131048,131046,131043,131041,131038,131035,131033,131029,131026,131023, -131019,131015,131011,131007,131002,130997,130992,130986,130980,130974,130967,130960, -130953,130944,130936,130927,130917,130907,130896,130884,130872,130859,130845,130830, -130815,130799,130781,130763,130744,130724,130702,130680,130656,130631,130605,130578, -130549,130518,130486,130453,130418,130381,130343,130303,130260,130217,130171,130123, -130073,130020,129966,129909,129850,129788,129724,129657,129588,129516,129441,129363, -129282,129199,129112,129022,128928,128832,128731,128628,128520,128409,128295,128176, -128054,127927,127796,127662,127523,127379,127232,127079,126922,126761,126594,126423, -126247,126066,125880,125689,125492,125290,125083,124870,124652,124428,124198,123963, -123722,123475,123222,122962,122697,122426,122148,121864,121574,121277,120974,120664, -120347,120024,119695,119358,119015,118665,118308,117945,117574,117196,116812,116420, -116022,115616,115204,114784,114357,113923,113482,113034,112579,112117,111648,111171, -110688,110198,109700,109196,108684,108166,107641,107109,106570,106025,105473,104914, -104348,103776,103198,102613,102022,101424,100821,100211,99596,98974,98347,97714,97075, -96431,95782,95127,94467,93802,93132,92457,91778,91094,90406,89713,89016,88316,87611, -86903,86191,85476,84758,84036,83312,82585,81856,81124,80389,79653,78915,78175,77434, -76691,75948,75203,74457,73711,72965,72218,71471,70724,69978,69232,68487,67743,67000, -66258,65518,64779,64043,63308,62576,61846,61118,60394,59672,58954,58239,57527,56819, -56116,55416,54720,54029,53342,52661,51984,51312,50645,49984,49329,48679,48035,47397, -46765,46139,45520,44907,44301,43701,43109,42523,41945,41374,40810,40254,39705,39164, -38630,38105,37587,37077,36575,36081,35595,35117,34648,34186,33733,33289,32852,32424, -32005,31593,31191,30796,30410,30032,29663,29302,28949,28605,28268,27940,27621,27309, -27005,26710,26422,26143,25871,25607,25350,25101,24860,24626,24399,24180,23968,23762, -23564,23372,23187,23009,22837,22671,22512,22358,22211,22069,21932,21802,21676,21556, -21441,21330,21224,21123,21027,20934,20846,20761,20681,20604,20530,20460,20393,20329, -20267,20209,20152,20098,20047,19997,19949,19903,19858,19814,19772,19731,19691,19651, -19613,19574,19536,19498,19460,19422,19384,19345,19306,19266,19226,19184,19142,19098, -19054,19008,18960,18911,18860,18808,18754,18698,18639,18579,18517,18453,18386,18317, -18245,18171,18095,18016,17935,17851,17764,17674,17582,17487,17390,17290,17187,17081, -16972,16861,16747,16630,16511,16389,16264,16136,16006,15874,15739,15601,15461,15319, -15174,15027,14878,14726,14573,14418,14260,14101,13940,13777,13613,13447,13280,13111, -12941,12770,12598,12424,12250,12075,11899,11723,11546,11369,11192,11014,10836,10658, -10481,10303,10126,9950,9774,9598,9423,9249,9076,8905,8734,8564,8396,8229,8064,7901, -7739,7579,7420,7264,7110,6958,6809,6661,6516,6373,6233,6096,5961,5829,5700,5573, -5450,5329,5211,5097,4985,4877,4771,4669,4570,4475,4382,4293,4207,4125,4045,3969, -3897,3827,3761,3699,3639,3583,3530,3481,3434,3391,3351,3314,3281,3250,3222,3197, -3176,3157,3141,3127,3117,3109,3103,3100,3100,3102,3106,3113,3122,3132,3145,3160, -3177,3195,3215,3237,3261,3285,3311,3339,3367,3397,3428,3459,3491,3525,3558,3593, -3627,3663,3698,3734,3769,3805,3841,3876,3912,3947,3981,4015,4049,4082,4114,4145, -4176,4205,4234,4261,4287,4312,4336,4359,4380,4400,4418,4434,4449,4463,4475,4485, -4493,4499,4504,4507,4507,4506,4503,4498,4492,4483,4472,4459,4444,4427,4408,4387, -4364,4339,4312,4284,4253,4220,4185,4149,4110,4070,4028,3984,3939,3891,3842,3792, -3740,3686,3631,3574,3517,3457,3397,3335,3272,3208,3143,3077,3010,2942,2874,2805, -2735,2664,2593,2522,2450,2378,2305,2233,2160,2087,2014,1942,1869,1797,1725,1654, -1582,1512,1442,1372,1304,1236,1169,1103,1037,973,910,848,787,727,669,612,556,501, -448,397,347,299,252,207,164,122,82,44,8,-27,-60,-91,-120,-147,-172,-196,-217,-237, --255,-271,-285,-297,-307,-316,-322,-327,-330,-331,-331,-328,-324,-319,-311,-302, --291,-279,-265,-250,-233,-215,-195,-175,-152,-129,-104,-79,-52,-24,5,35,65,97,129, -162,196,230,265,300,336,372,408,445,482,519,556,593,630,667,704,740,777,813,848, -884,918,953,986,1019,1052,1083,1114,1144,1173,1202,1229,1255,1281,1305,1328,1350, -1371,1391,1409,1427,1443,1458,1471,1483,1494,1503,1511,1518,1523,1527,1530,1531, -1531,1529,1526,1521,1516,1508,1500,1490,1478,1465,1451,1436,1419,1401,1382,1362, -1340,1318,1294,1269,1243,1216,1187,1158,1128,1097,1066,1033,1000,966,931,895,859, -823,785,748,710,671,632,593,554,515,475,435,395,355,316,276,236,197,158,119,80,42, -4,-33,-70,-106,-142,-177,-212,-246,-279,-311,-343,-374,-403,-432,-461,-488,-514, --539,-563,-586,-608,-629,-649,-668,-686,-702,-717,-731,-744,-756,-767,-776,-784, --791,-797,-801,-805,-807,-808,-807,-806,-803,-800,-795,-789,-782,-773,-764,-754, --742,-730,-717,-703,-687,-671,-654,-636,-618,-598,-578,-557,-536,-514,-491,-467, --443,-419,-394,-369,-343,-317,-290,-264,-237,-209,-182,-155,-127,-100,-72,-45,-17, -10,37,64,91,118,144,170,195,220,245,269,293,316,339,361,382,403,423,443,462,480, -497,513,529,544,558,571,583,594,605,614,623,631,637,643,648,652,655,657,658,658, -658,656,653,649,645,639,633,626,618,609,599,588,577,564,551,538,523,508,492,475, -458,440,421,402,383,362,342,321,299,277,255,232,209,186,163,139,115,91,67,42,18,-6, --31,-55,-79,-103,-127,-151,-175,-198,-221,-244,-267,-289,-311,-333,-354,-375,-395, --415,-434,-453,-471,-488,-505,-522,-538,-553,-567,-581,-594,-607,-618,-629,-639, --649,-658,-666,-673,-679,-685,-690,-694,-697,-700,-702,-703,-703,-702,-701,-699, --696,-693,-689,-684,-678,-672,-665,-657,-648,-639,-630,-619,-609,-597,-585,-573, --560,-546,-532,-518,-503,-488,-472,-456,-440,-423,-406,-389,-372,-354,-336,-319, --300,-282,-264,-246,-227,-209,-191,-172,-154,-136,-118,-100,-83,-65,-48,-31,-14,3, -19,35,50,65,80,95,109,122,135,148,160,172,183,193,204,213,222,231,239,246,253,259, -264,269,274,277,280,283,285,286,287,287,286,285,283,281,278,275,271,266,261,255, -249,242,235,227,219,210,201,192,182,171,160,149,138,126,114,101,88,75,62,49,35,21, -7,-7,-22,-36,-51,-65,-80,-95,-109,-124,-139,-153,-168,-182,-196,-210,-224,-238, --252,-265,-279,-292,-304,-317,-329,-341,-352,-363,-374,-385,-395,-405,-414,-423, --431,-439,-447,-454,-461,-467,-473,-479,-483,-488,-492,-495,-498,-501,-503,-504, --505,-505,-505,-505,-504,-502,-501,-498,-495,-492,-488,-484,-479,-474,-468,-462, --456,-449,-442,-435,-427,-418,-410,-401,-392,-382,-372,-362,-352,-341,-330,-319, --308,-297,-285,-273,-262,-250,-238,-225,-213,-201,-188,-176,-164,-151,-139,-127, --114,-102,-90,-78,-66,-54,-43,-31,-20,-9,2,13,23,34,44,53,63,72,81,90,98,106,114, -121,129,135,142,148,154,159,164,169,173,177,180,183,186,189,191,192,194,195,195, -196,195,195,194,193,191,190,187,185,182,179,175,172,168,163,159,154,149,144,138, -132,126,120,114,107,100,94,87,79,72,65,57,50,42,35,27,19,11,3,-4,-12,-20,-28,-35, --43,-51,-58,-66,-73,-80,-87,-94,-101,-108,-115,-121,-127,-133,-139,-145,-150,-156, --161,-166,-170,-175,-179,-183,-186,-190,-193,-196,-199,-201,-203,-205,-207,-208, --209,-210,-211,-211,-211,-211,-211,-210,-209,-208,-207,-205,-203,-201,-199,-196, --194,-191,-187,-184,-180,-177,-173,-169,-164,-160,-155,-150,-146,-141,-135,-130, --125,-119,-114,-108,-103,-97,-91,-85,-79,-73,-67,-61,-56,-50,-44,-38,-32,-26,-20, --14,-9,-3,2,8,13,18,24,29,34,38,43,48,52,56,61,65,68,72,75,79,82,85,88,90,93,95,97, -99,101,102,104,105,106,106,107,107,107,107,107,107,106,106,105,104,103,101,100,98, -96,94,92,90,87,85,82,79,76,73,70,67,64,60,57,53,49,46,42,38,34,31,27,23,19,15,11, -7,3,-1,-5,-9,-13,-17,-21,-24,-28,-32,-35,-39,-42,-46,-49,-52,-55,-58,-61,-64,-67, --70,-72,-75,-77,-79,-81,-83,-85,-87,-88,-90,-91,-92,-93,-94,-95,-95,-96,-96,-97, --97,-97,-96,-96,-96,-95,-95,-94,-93,-92,-91,-90,-88,-87,-85,-84,-82,-80,-78,-76, --74,-72,-69,-67,-65,-62,-60,-57,-55,-52,-49,-46,-44,-41,-38,-35,-32,-29,-27,-24, --21,-18,-15,-12,-9,-7,-4,-1,2,4,7,10,12,15,17,19,22,24,26,28,30,32,34,36,37,39,41, -42,43,45,46,47,48,49,50,50,51,51,52,52,52,52,53,52,52,52,52,51,51,50,50,49,48,47, -46,45,44,43,42,40,39,38,36,35,33,31,30,28,26,25,23,21,19,17,15,13,11,10,8,6,4,2,0, --2,-4,-6,-8,-10,-11,-13,-15,-17,-18,-20,-22,-23,-25,-26,-28,-29,-31,-32,-33,-34, --35,-37,-38,-38,-39,-40,-41,-42,-42,-43,-43,-44,-44,-44,-45,-45,-45,-45,-45,-45, --45,-45,-44,-44,-44,-43,-43,-42,-42,-41,-40,-39,-39,-38,-37,-36,-35,-34,-33,-32, --31,-29,-28,-27,-26,-25,-23,-22,-21,-19,-18,-17,-15,-14,-13,-11,-10,-9,-7,-6,-5,-3, --2,-1,1,2,3,4,5,6,8,9,10,11,12,13,13,14,15,16,17,17,18,19,19,20,20,21,21,21,22,22, -22,22,22,23,23,23,22,22,22,22,22,22,21,21,20,20,20,19,19,18,17,17,16,15,15,14,13, -13,12,11,10,9,8,8,7,6,5,4,3,2,1,0,0,-1,-2,-3,-4,-5,-6,-7,-7,-8,-9,-10,-11,-11,-12, --13,-13,-14,-15,-15,-16,-17,-17,-18,-18,-19,-19,-19,-20,-20,-20,-21,-21,-21,-21, --21,-21,-21,-22,-22,-21,-21,-21,-21,-21,-21,-21,-21,-20,-20,-20,-19,-19,-19,-18, --18,-17,-17,-16,-16,-15,-15,-14,-14,-13,-13,-12,-11,-11,-10,-10,-9,-8,-8,-7,-7,-6, --5,-5,-4,-3,-3,-2,-2,-1,0,0,1,1,2,2,3,3,4,4,4,5,5,6,6,6,7,7,7,7,8,8,8,8,8,8,8,8,8, -8,8,8,8,8,8,8,8,8,7,7,7,7,7,6,6,6,5,5,5,4,4,4,3,3,2,2,2,1,1,0,0,-1,-1,-1,-2,-2, --3,-3,-4,-4,-4,-5,-5,-6,-6,-6,-7,-7,-7,-8,-8,-8,-8,-9,-9,-9,-9,-10,-10,-10,-10, --10,-10,-10,-11,-11,-11,-11,-11,-11,-11,-11,-11,-11,-11,-11,-10,-10,-10,-10,-10, --10,-10,-10,-9,-9,-9,-9,-9,-9,-8,-8,-8,-8,-8,-7,-7,-7,-7,-7,-6,-6,-6,-6,-6,-5,-5, --5,-5,-5,-5,-4,-4,-4,-4,-4,-3,-3,-3,-3,-3,-3,-2,-2,-2,-2,-2,-1,-1,-1,-1,-1,0,0,0, +131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,131072, +131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131070, +131070,131070,131070,131070,131069,131069,131069,131069,131068,131068,131067,131067, +131066,131066,131065,131065,131064,131063,131062,131062,131061,131060,131058,131057, +131056,131055,131053,131051,131050,131048,131046,131043,131041,131039,131036,131033, +131030,131027,131023,131019,131016,131011,131007,131002,130997,130992,130986,130980, +130973,130967,130959,130952,130944,130935,130926,130917,130907,130896,130885,130873, +130861,130848,130835,130820,130805,130789,130773,130756,130737,130718,130698,130677, +130655,130633,130609,130584,130557,130530,130502,130472,130441,130408,130375,130339, +130303,130265,130225,130184,130141,130096,130050,130002,129952,129900,129846,129790, +129732,129672,129609,129545,129478,129409,129337,129263,129186,129107,129025,128940, +128852,128762,128669,128572,128473,128370,128264,128155,128043,127927,127807,127684, +127558,127428,127293,127156,127014,126868,126718,126564,126406,126243,126076,125905, +125729,125549,125364,125174,124980,124780,124576,124367,124152,123933,123708,123478, +123243,123002,122756,122505,122247,121985,121716,121442,121162,120876,120584,120286, +119982,119672,119356,119033,118705,118370,118029,117682,117328,116967,116601,116228, +115848,115462,115069,114670,114264,113851,113432,113006,112573,112134,111688,111236, +110777,110311,109838,109359,108874,108381,107882,107377,106865,106346,105821,105290, +104752,104208,103657,103100,102537,101968,101392,100811,100224,99630,99031,98426, +97816,97199,96578,95950,95318,94680,94037,93389,92736,92079,91416,90749,90077,89401, +88721,88037,87348,86656,85960,85260,84557,83851,83141,82429,81713,80995,80274,79551, +78826,78098,77369,76638,75905,75171,74435,73699,72961,72223,71484,70745,70006,69266, +68527,67788,67050,66312,65576,64840,64106,63373,62641,61912,61184,60459,59736,59015, +58297,57582,56871,56162,55457,54755,54058,53364,52674,51989,51308,50632,49960,49294, +48632,47976,47325,46680,46041,45407,44780,44158,43543,42934,42332,41737,41148,40566, +39991,39424,38863,38310,37765,37227,36696,36173,35659,35152,34652,34161,33678,33204, +32737,32279,31828,31387,30953,30528,30112,29704,29304,28913,28530,28155,27790,27432, +27083,26743,26411,26087,25772,25465,25166,24875,24593,24318,24052,23794,23543,23300, +23066,22838,22619,22406,22202,22004,21814,21631,21454,21285,21122,20966,20816,20673, +20536,20404,20279,20160,20046,19938,19835,19738,19645,19558,19475,19396,19322,19253, +19187,19126,19068,19014,18963,18915,18871,18830,18791,18755,18721,18690,18661,18633, +18608,18584,18561,18540,18520,18501,18483,18465,18448,18431,18414,18398,18381,18364, +18347,18329,18310,18291,18270,18249,18226,18203,18177,18150,18122,18092,18060,18026, +17990,17951,17911,17868,17823,17775,17725,17672,17617,17559,17498,17434,17368,17298, +17226,17150,17072,16990,16906,16818,16727,16634,16537,16437,16334,16228,16119,16007, +15892,15774,15653,15529,15403,15273,15141,15006,14868,14728,14585,14440,14293,14143, +13990,13836,13680,13521,13361,13198,13035,12869,12702,12533,12363,12192,12019,11846, +11671,11496,11320,11143,10966,10789,10611,10433,10255,10076,9898,9721,9543,9367,9190, +9015,8840,8666,8493,8322,8151,7982,7814,7648,7484,7321,7160,7002,6845,6690,6537, +6387,6239,6094,5951,5811,5673,5538,5406,5277,5151,5027,4907,4790,4676,4565,4458, +4354,4253,4155,4061,3970,3882,3798,3718,3640,3567,3496,3430,3366,3306,3250,3197, +3147,3100,3057,3018,2981,2948,2918,2892,2868,2847,2830,2815,2804,2795,2789,2786, +2785,2787,2792,2799,2809,2820,2834,2851,2869,2889,2911,2935,2961,2988,3017,3048, +3079,3113,3147,3182,3218,3256,3294,3332,3372,3412,3452,3493,3534,3575,3616,3657, +3698,3739,3780,3820,3860,3899,3937,3975,4012,4048,4083,4118,4151,4183,4213,4243, +4271,4297,4323,4346,4368,4389,4407,4424,4440,4453,4465,4474,4482,4488,4492,4494, +4494,4491,4487,4481,4472,4462,4449,4435,4418,4399,4378,4355,4330,4303,4274,4243, +4210,4176,4139,4100,4060,4017,3973,3927,3880,3831,3780,3728,3674,3619,3562,3504, +3445,3384,3323,3260,3196,3132,3066,2999,2932,2864,2796,2727,2657,2587,2516,2446, +2375,2304,2232,2161,2090,2019,1948,1878,1807,1738,1668,1599,1531,1464,1397,1331, +1266,1201,1138,1076,1015,954,896,838,782,726,673,620,570,520,473,426,382,339,297, +258,220,184,149,116,86,56,29,4,-20,-42,-62,-80,-96,-111,-123,-134,-143,-151,-156, +-160,-162,-162,-161,-158,-153,-147,-139,-130,-119,-107,-93,-78,-61,-43,-24,-4,17,40, +64,89,114,141,168,197,226,256,286,318,349,381,414,447,481,514,548,582,616,651,685, +719,753,787,821,854,887,920,953,985,1016,1047,1077,1107,1136,1164,1192,1218,1244, +1269,1293,1316,1338,1359,1379,1398,1416,1433,1449,1463,1477,1489,1500,1509,1518, +1525,1531,1536,1539,1541,1542,1542,1541,1538,1534,1528,1522,1514,1505,1495,1483, +1471,1457,1442,1426,1409,1391,1372,1352,1331,1309,1286,1262,1238,1212,1186,1159, +1131,1102,1073,1044,1013,983,951,919,887,855,822,789,755,722,688,654,620,586,552, +518,484,451,417,384,351,318,285,253,221,190,159,129,99,69,41,12,-15,-42,-68,-93, +-118,-142,-165,-187,-209,-229,-249,-268,-285,-302,-318,-333,-347,-361,-373,-384, +-394,-403,-412,-419,-425,-430,-435,-438,-440,-442,-442,-442,-440,-438,-435,-431, +-426,-420,-413,-405,-397,-388,-378,-367,-356,-344,-331,-318,-304,-289,-274,-258, +-242,-225,-208,-191,-173,-154,-136,-117,-97,-78,-58,-38,-18,2,22,43,63,83,104,124, +144,164,184,204,223,243,262,281,299,317,335,352,369,386,402,418,433,448,462,475, +488,501,513,524,535,545,554,563,571,579,586,592,597,602,606,610,612,615,616,617, +617,616,615,613,610,607,603,599,593,588,581,574,567,559,550,541,532,521,511,500, +488,476,464,451,438,424,411,397,382,368,353,338,322,307,291,275,259,243,227,211, +195,179,163,147,130,115,99,83,67,52,37,21,7,-8,-22,-36,-50,-64,-77,-90,-103,-115, +-127,-138,-149,-160,-170,-180,-189,-198,-207,-215,-222,-229,-236,-242,-248,-253, +-258,-262,-266,-269,-272,-274,-276,-277,-278,-278,-278,-278,-277,-275,-273,-271, +-268,-265,-262,-258,-253,-248,-243,-238,-232,-226,-219,-212,-205,-198,-190,-182, +-174,-166,-157,-148,-139,-130,-121,-112,-102,-92,-83,-73,-63,-53,-43,-33,-23,-13,-3, +7,17,27,36,46,55,65,74,83,92,101,109,118,126,134,141,149,156,163,170,177,183,189, +194,200,205,210,214,218,222,226,229,232,234,237,239,240,241,242,243,243,244,243, +243,242,241,239,237,235,233,230,227,224,221,217,213,209,205,200,196,191,186,180, +175,169,163,157,151,145,139,132,126,119,113,106,99,92,85,79,72,65,58,51,44,37,31, +24,17,11,4,-2,-9,-15,-21,-27,-33,-39,-44,-50,-55,-60,-65,-70,-74,-79,-83,-87,-91, +-95,-98,-102,-105,-108,-110,-113,-115,-117,-119,-121,-122,-123,-124,-125,-126,-126, +-126,-126,-126,-126,-125,-124,-123,-122,-121,-119,-118,-116,-114,-112,-110,-107, +-105,-102,-99,-96,-93,-90,-86,-83,-80,-76,-72,-69,-65,-61,-57,-53,-49,-45,-41,-37, +-33,-29,-25,-21,-17,-13,-8,-4,0,3,7,11,15,19,22,26,30,33,36,40,43,46,49,52,55,57, +60,62,65,67,69,71,73,74,76,78,79,80,81,82,83,84,84,85,85,85,85,85,85,85,85,84,83, +83,82,81,80,79,77,76,75,73,72,70,68,66,64,62,60,58,56,54,52,49,47,45,42,40,37,35, +32,30,27,25,22,20,17,15,12,10,8,5,3,0,-2,-4,-6,-9,-11,-13,-15,-17,-19,-21,-22,-24, +-26,-27,-29,-30,-32,-33,-34,-35,-37,-38,-39,-39,-40,-41,-42,-42,-43,-43,-43,-44, +-44,-44,-44,-44,-44,-44,-44,-43,-43,-42,-42,-41,-41,-40,-39,-39,-38,-37,-36,-35, +-34,-33,-32,-31,-29,-28,-27,-26,-24,-23,-22,-20,-19,-18,-16,-15,-14,-12,-11,-9,-8, +-6,-5,-4,-2,-1,0,2,3,4,6,7,8,9,10,12,13,14,15,16,17,18,18,19,20,21,22,22,23,23,24, +24,25,25,26,26,26,27,27,27,27,27,27,27,27,27,27,27,26,26,26,25,25,25,24,24,23,23, +22,22,21,21,20,19,19,18,17,16,16,15,14,13,13,12,11,10,9,9,8,7,6,5,5,4,3,2,2,1,0, +-1,-1,-2,-3,-3,-4,-5,-5,-6,-6,-7,-8,-8,-9,-9,-9,-10,-10,-11,-11,-11,-12,-12,-12, +-12,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-13,-12,-12, +-12,-12,-11,-11,-11,-11,-10,-10,-10,-9,-9,-9,-8,-8,-8,-7,-7,-6,-6,-5,-5,-5,-4,-4, +-3,-3,-3,-2,-2,-1,-1,-1,0,0,1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,5,6,6,6,6,6,6,7,7,7,7,7, +7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6,6,6,6,6,6,5,5,5,5,5,4,4,4,4,4,3,3,3,3,3, +2,2,2,2,2,1,1,1,1,0,0,0,0,0,0,-1,-1,-1,-1,-1,-1,-2,-2,-2,-2,-2,-2,-2,-2,-3,-3,-3, +-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3, +-3,-3,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,0,0, +0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1, +1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, +-1,-1,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, }, { -131072,131070,131069,131067,131065,131064,131062,131060,131059,131057,131055, -131054,131052,131050,131049,131047,131046,131044,131042,131041,131039,131037,131036, -131034,131032,131031,131029,131027,131026,131024,131022,131021,131019,131017,131016, -131014,131012,131011,131009,131007,131006,131004,131002,131001,130999,130997,130995, -130994,130992,130990,130989,130987,130985,130983,130982,130980,130978,130976,130974, -130973,130971,130969,130967,130965,130963,130962,130960,130958,130956,130954,130952, -130950,130948,130946,130944,130941,130939,130937,130935,130933,130930,130928,130926, -130923,130921,130918,130916,130913,130910,130908,130905,130902,130899,130896,130893, -130890,130887,130883,130880,130876,130873,130869,130865,130861,130857,130853,130849, -130845,130840,130836,130831,130826,130821,130816,130811,130805,130800,130794,130788, -130782,130775,130769,130762,130755,130748,130740,130733,130725,130717,130708,130700, -130691,130682,130672,130663,130653,130642,130632,130621,130609,130598,130586,130573, -130561,130548,130534,130520,130506,130491,130476,130461,130445,130428,130411,130394, -130376,130358,130339,130319,130300,130279,130258,130236,130214,130191,130168,130144, -130119,130094,130068,130042,130014,129987,129958,129929,129898,129868,129836,129804, -129771,129737,129702,129666,129630,129593,129555,129516,129476,129435,129393,129351, -129307,129263,129217,129171,129124,129075,129026,128975,128924,128871,128818,128763, -128707,128650,128592,128533,128473,128411,128348,128285,128219,128153,128086,128017, -127947,127876,127803,127729,127654,127578,127500,127421,127341,127259,127176,127092, -127006,126919,126830,126740,126649,126556,126462,126366,126269,126170,126070,125969, -125866,125761,125655,125548,125439,125329,125217,125103,124988,124871,124753,124634, -124512,124390,124265,124140,124012,123883,123753,123621,123487,123352,123215,123077, -122937,122795,122652,122507,122361,122213,122064,121913,121761,121607,121451,121294, -121135,120975,120813,120650,120485,120318,120150,119981,119810,119637,119463,119288, -119111,118932,118752,118571,118388,118204,118018,117830,117642,117452,117260,117067, -116873,116677,116480,116281,116081,115880,115677,115474,115268,115062,114854,114645, -114434,114223,114010,113796,113580,113364,113146,112927,112707,112486,112263,112039, -111815,111589,111362,111134,110905,110675,110443,110211,109978,109744,109508,109272, -109035,108797,108557,108317,108076,107835,107592,107348,107104,106858,106612,106365, -106117,105869,105619,105369,105118,104867,104614,104361,104108,103853,103598,103342, -103086,102828,102571,102312,102053,101794,101534,101273,101012,100750,100487,100225, -99961,99697,99433,99168,98902,98637,98370,98104,97836,97569,97301,97032,96763,96494, -96225,95955,95684,95414,95142,94871,94599,94327,94055,93782,93509,93236,92962,92689, -92415,92140,91866,91591,91316,91040,90765,90489,90213,89936,89660,89383,89106,88829, -88552,88275,87997,87719,87441,87163,86885,86606,86328,86049,85770,85491,85212,84932, -84653,84374,84094,83814,83534,83254,82974,82694,82414,82133,81853,81573,81292,81011, -80731,80450,80169,79888,79607,79326,79045,78764,78483,78202,77921,77640,77358,77077, -76796,76515,76234,75952,75671,75390,75109,74828,74547,74266,73985,73704,73423,73142, -72861,72580,72299,72019,71738,71458,71177,70897,70617,70337,70057,69777,69497,69218, -68938,68659,68380,68101,67822,67543,67264,66986,66708,66430,66152,65874,65597,65320, -65043,64766,64490,64213,63937,63661,63386,63111,62836,62561,62287,62013,61739,61465, -61192,60919,60647,60374,60103,59831,59560,59289,59019,58748,58479,58209,57941,57672, -57404,57136,56869,56602,56336,56070,55804,55539,55274,55010,54747,54483,54221,53958, -53696,53435,53174,52914,52654,52395,52136,51878,51621,51363,51107,50851,50595,50340, -50086,49832,49579,49326,49074,48823,48572,48321,48072,47823,47574,47326,47079,46832, -46586,46340,46095,45851,45608,45365,45122,44880,44639,44399,44159,43920,43681,43443, -43206,42969,42733,42498,42263,42029,41795,41563,41330,41099,40868,40638,40408,40180, -39951,39724,39497,39271,39045,38820,38596,38372,38149,37927,37705,37484,37264,37044, -36825,36606,36389,36171,35955,35739,35524,35309,35096,34882,34670,34458,34247,34036, -33826,33617,33408,33200,32992,32786,32579,32374,32169,31965,31761,31558,31356,31154, -30953,30753,30553,30354,30155,29957,29760,29563,29367,29172,28977,28783,28590,28397, -28205,28013,27822,27632,27442,27253,27065,26877,26690,26503,26317,26132,25947,25763, -25580,25397,25215,25033,24852,24672,24493,24314,24135,23958,23781,23604,23428,23253, -23079,22905,22732,22559,22387,22216,22045,21875,21706,21537,21369,21202,21035,20869, -20704,20539,20375,20211,20049,19886,19725,19564,19404,19245,19086,18928,18770,18613, -18457,18302,18147,17993,17839,17686,17534,17383,17232,17082,16932,16784,16636,16488, -16342,16195,16050,15905,15761,15618,15475,15333,15192,15051,14911,14772,14634,14496, -14358,14222,14086,13951,13816,13682,13549,13417,13285,13154,13023,12893,12764,12636, -12508,12381,12254,12128,12003,11879,11755,11632,11509,11387,11266,11145,11025,10906, -10788,10670,10552,10435,10319,10204,10089,9975,9861,9748,9636,9524,9413,9303,9193, -9084,8975,8867,8760,8653,8547,8441,8336,8232,8128,8025,7922,7820,7718,7617,7517, -7417,7318,7219,7121,7024,6927,6830,6735,6639,6545,6450,6357,6264,6171,6079,5987, -5896,5806,5716,5626,5538,5449,5361,5274,5187,5101,5015,4930,4845,4760,4677,4593, -4510,4428,4346,4265,4184,4103,4024,3944,3865,3787,3709,3631,3554,3478,3401,3326, -3251,3176,3102,3028,2955,2882,2809,2737,2666,2595,2524,2454,2385,2315,2247,2178, -2111,2043,1976,1910,1844,1778,1713,1648,1584,1520,1457,1394,1331,1269,1207,1146, -1085,1025,965,906,847,788,730,672,615,558,502,446,390,335,280,226,172,119,66,13,-39, --91,-142,-193,-244,-294,-343,-393,-441,-490,-538,-585,-633,-679,-726,-772,-817, --863,-907,-952,-996,-1039,-1082,-1125,-1167,-1209,-1251,-1292,-1333,-1374,-1414, --1453,-1493,-1531,-1570,-1608,-1646,-1683,-1720,-1757,-1793,-1829,-1865,-1900,-1935, --1969,-2004,-2037,-2071,-2104,-2137,-2169,-2201,-2233,-2264,-2296,-2326,-2357,-2387, --2417,-2446,-2475,-2504,-2532,-2561,-2588,-2616,-2643,-2670,-2697,-2723,-2749,-2775, --2801,-2826,-2851,-2875,-2900,-2924,-2947,-2971,-2994,-3017,-3040,-3062,-3084,-3106, --3128,-3149,-3170,-3191,-3212,-3232,-3252,-3272,-3292,-3311,-3330,-3349,-3368,-3386, --3404,-3422,-3440,-3457,-3475,-3492,-3508,-3525,-3541,-3557,-3573,-3589,-3605,-3620, --3635,-3650,-3664,-3679,-3693,-3707,-3721,-3735,-3748,-3761,-3774,-3787,-3800,-3812, --3824,-3836,-3848,-3860,-3871,-3883,-3894,-3905,-3915,-3926,-3936,-3946,-3956,-3966, --3976,-3985,-3994,-4003,-4012,-4021,-4029,-4038,-4046,-4054,-4062,-4069,-4077,-4084, --4091,-4098,-4105,-4111,-4117,-4124,-4130,-4136,-4141,-4147,-4152,-4157,-4162,-4167, --4172,-4176,-4181,-4185,-4189,-4193,-4197,-4200,-4204,-4207,-4210,-4213,-4215,-4218, --4220,-4223,-4225,-4227,-4229,-4230,-4232,-4233,-4234,-4235,-4236,-4237,-4238,-4238, --4238,-4239,-4239,-4239,-4238,-4238,-4237,-4237,-4236,-4235,-4234,-4233,-4232,-4230, --4228,-4227,-4225,-4223,-4221,-4219,-4216,-4214,-4211,-4209,-4206,-4203,-4200,-4197, --4194,-4190,-4187,-4183,-4179,-4176,-4172,-4168,-4164,-4160,-4155,-4151,-4146,-4142, --4137,-4133,-4128,-4123,-4118,-4113,-4107,-4102,-4097,-4091,-4086,-4080,-4075,-4069, --4063,-4057,-4051,-4045,-4039,-4033,-4027,-4021,-4014,-4008,-4002,-3995,-3988,-3982, --3975,-3968,-3961,-3955,-3948,-3941,-3934,-3927,-3919,-3912,-3905,-3898,-3890,-3883, --3876,-3868,-3861,-3853,-3846,-3838,-3830,-3823,-3815,-3807,-3799,-3791,-3783,-3775, --3767,-3759,-3751,-3743,-3735,-3727,-3719,-3710,-3702,-3694,-3685,-3677,-3669,-3660, --3652,-3643,-3635,-3626,-3618,-3609,-3600,-3592,-3583,-3574,-3565,-3556,-3548,-3539, --3530,-3521,-3512,-3503,-3494,-3485,-3476,-3467,-3457,-3448,-3439,-3430,-3420,-3411, --3402,-3393,-3383,-3374,-3364,-3355,-3345,-3336,-3326,-3317,-3307,-3298,-3288,-3278, --3269,-3259,-3249,-3239,-3229,-3220,-3210,-3200,-3190,-3180,-3170,-3160,-3150,-3140, --3130,-3120,-3110,-3100,-3090,-3080,-3070,-3059,-3049,-3039,-3029,-3018,-3008,-2998, --2988,-2977,-2967,-2957,-2946,-2936,-2926,-2915,-2905,-2894,-2884,-2873,-2863,-2853, --2842,-2832,-2821,-2811,-2800,-2790,-2779,-2769,-2758,-2747,-2737,-2726,-2716,-2705, --2695,-2684,-2674,-2663,-2653,-2642,-2632,-2621,-2611,-2600,-2590,-2579,-2569,-2558, --2548,-2537,-2527,-2516,-2506,-2495,-2485,-2474,-2464,-2454,-2443,-2433,-2422,-2412, --2402,-2391,-2381,-2371,-2361,-2350,-2340,-2330,-2320,-2309,-2299,-2289,-2279,-2269, --2259,-2249,-2238,-2228,-2218,-2208,-2198,-2188,-2178,-2169,-2159,-2149,-2139,-2129, --2119,-2109,-2100,-2090,-2080,-2070,-2061,-2051,-2041,-2032,-2022,-2013,-2003,-1993, --1984,-1974,-1965,-1955,-1946,-1937,-1927,-1918,-1908,-1899,-1890,-1881,-1871,-1862, --1853,-1844,-1834,-1825,-1816,-1807,-1798,-1789,-1780,-1771,-1762,-1753,-1744,-1735, --1726,-1717,-1708,-1699,-1691,-1682,-1673,-1664,-1655,-1647,-1638,-1629,-1621,-1612, --1603,-1595,-1586,-1577,-1569,-1560,-1552,-1543,-1535,-1526,-1518,-1510,-1501,-1493, --1484,-1476,-1468,-1459,-1451,-1443,-1435,-1426,-1418,-1410,-1402,-1394,-1386,-1378, --1369,-1361,-1353,-1345,-1337,-1329,-1321,-1314,-1306,-1298,-1290,-1282,-1274,-1266, --1259,-1251,-1243,-1236,-1228,-1220,-1213,-1205,-1197,-1190,-1182,-1175,-1167,-1160, --1152,-1145,-1138,-1130,-1123,-1116,-1108,-1101,-1094,-1087,-1080,-1072,-1065,-1058, --1051,-1044,-1037,-1030,-1023,-1016,-1009,-1003,-996,-989,-982,-975,-969,-962,-955, --949,-942,-935,-929,-922,-916,-909,-903,-897,-890,-884,-878,-871,-865,-859,-853, --846,-840,-834,-828,-822,-816,-810,-804,-798,-792,-786,-780,-775,-769,-763,-757, --751,-746,-740,-735,-729,-723,-718,-712,-707,-701,-696,-691,-685,-680,-674,-669, --664,-659,-653,-648,-643,-638,-633,-628,-623,-618,-613,-608,-603,-598,-593,-588, --583,-578,-573,-569,-564,-559,-554,-550,-545,-540,-536,-531,-527,-522,-517,-513, --508,-504,-500,-495,-491,-486,-482,-478,-473,-469,-465,-461,-456,-452,-448,-444, --440,-436,-431,-427,-423,-419,-415,-411,-407,-403,-399,-396,-392,-388,-384,-380, --376,-373,-369,-365,-361,-358,-354,-350,-347,-343,-339,-336,-332,-329,-325,-322, --318,-315,-311,-308,-305,-301,-298,-295,-291,-288,-285,-281,-278,-275,-272,-269, --266,-262,-259,-256,-253,-250,-247,-244,-241,-238,-235,-232,-229,-227,-224,-221, --218,-215,-213,-210,-207,-204,-202,-199,-196,-194,-191,-188,-186,-183,-181,-178, --176,-173,-171,-168,-166,-164,-161,-159,-157,-154,-152,-150,-147,-145,-143,-141, --139,-136,-134,-132,-130,-128,-126,-124,-122,-120,-118,-116,-114,-112,-110,-108, --106,-104,-102,-100,-99,-97,-95,-93,-91,-90,-88,-86,-84,-83,-81,-79,-78,-76,-74,-73, --71,-70,-68,-66,-65,-63,-62,-60,-59,-57,-56,-55,-53,-52,-50,-49,-48,-46,-45,-43, --42,-41,-40,-38,-37,-36,-34,-33,-32,-31,-30,-28,-27,-26,-25,-24,-23,-21,-20,-19, --18,-17,-16,-15,-14,-13,-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,0,1,2,3,4,5,5,6,7, -8,9,9,10,11,12,12,13,14,14,15,16,16,17,18,18,19,20,20,21,21,22,23,23,24,24,25,25, -26,26,27,27,28,28,29,29,29,30,30,31,31,31,32,32,33,33,33,34,34,34,35,35,35,35,36, -36,36,36,37,37,37,37,38,38,38,38,38,39,39,39,39,39,39,40,40,40,40,40,40,40,40,40, -41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41, -41,41,41,40,40,40,40,40,40,40,40,40,40,40,39,39,39,39,39,39,39,38,38,38,38,38,38, -38,37,37,37,37,37,36,36,36,36,36,35,35,35,35,35,34,34,34,34,33,33,33,33,32,32,32, -32,31,31,31,31,30,30,30,30,29,29,29,28,28,28,27,27,27,27,26,26,26,25,25,25,24,24, -24,23,23,23,22,22,22,21,21,21,20,20,19,19,19,18,18,18,17,17,16,16,16,15,15,15,14, -14,13,13,13,12,12,11,11,11,10,10,9,9,9,8,8,7,7,7,6,6,5,5,5,4,4,3,3,3,2,2,1,1,0,0, +131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,131072, +131072,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071, +131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071, +131070,131070,131070,131070,131070,131070,131070,131070,131070,131070,131070,131070, +131070,131070,131070,131070,131070,131070,131070,131070,131070,131070,131069,131069, +131069,131069,131069,131069,131069,131069,131069,131069,131069,131069,131069,131069, +131069,131068,131068,131068,131068,131068,131068,131068,131068,131068,131068,131067, +131067,131067,131067,131067,131067,131067,131066,131066,131066,131066,131066,131065, +131065,131065,131065,131064,131064,131064,131064,131063,131063,131062,131062,131062, +131061,131061,131060,131060,131059,131059,131058,131058,131057,131056,131056,131055, +131054,131053,131052,131052,131051,131050,131049,131048,131046,131045,131044,131043, +131041,131040,131038,131037,131035,131034,131032,131030,131028,131026,131024,131022, +131020,131017,131015,131012,131010,131007,131004,131001,130998,130994,130991,130987, +130984,130980,130976,130972,130968,130963,130959,130954,130949,130944,130938,130933, +130927,130921,130915,130909,130902,130895,130888,130881,130873,130865,130857,130849, +130840,130831,130822,130813,130803,130793,130782,130771,130760,130749,130737,130725, +130712,130699,130685,130672,130657,130643,130628,130612,130596,130580,130563,130545, +130528,130509,130490,130471,130451,130430,130409,130388,130365,130343,130319,130295, +130270,130245,130219,130193,130165,130137,130109,130079,130049,130018,129987,129954, +129921,129887,129853,129817,129781,129744,129706,129667,129627,129587,129545,129503, +129459,129415,129370,129324,129276,129228,129179,129129,129078,129026,128972,128918, +128862,128806,128748,128690,128630,128569,128507,128443,128379,128313,128246,128178, +128109,128038,127966,127893,127819,127743,127667,127588,127509,127428,127346,127262, +127177,127091,127004,126915,126824,126732,126639,126545,126449,126351,126252,126152, +126050,125947,125842,125736,125628,125519,125408,125296,125182,125067,124950,124832, +124712,124591,124468,124344,124218,124090,123961,123830,123698,123564,123429,123292, +123154,123014,122872,122729,122585,122438,122291,122141,121990,121838,121684,121528, +121371,121212,121052,120891,120727,120562,120396,120228,120059,119888,119715,119541, +119366,119189,119011,118831,118649,118467,118282,118097,117909,117721,117531,117339, +117146,116952,116757,116560,116361,116161,115960,115758,115554,115349,115143,114935, +114726,114516,114305,114092,113878,113663,113447,113229,113011,112791,112570,112348, +112124,111900,111675,111448,111220,110992,110762,110531,110300,110067,109833,109598, +109363,109126,108889,108650,108411,108171,107930,107688,107445,107201,106957,106712, +106466,106219,105972,105723,105474,105225,104974,104723,104471,104219,103966,103712, +103458,103203,102948,102692,102435,102178,101920,101662,101403,101144,100885,100624, +100364,100103,99841,99579,99317,99054,98791,98527,98264,97999,97735,97470,97204,96939, +96673,96407,96140,95873,95606,95339,95071,94804,94536,94267,93999,93730,93461,93192, +92923,92653,92383,92114,91844,91573,91303,91033,90762,90491,90220,89949,89678,89407, +89136,88865,88593,88321,88050,87778,87506,87234,86962,86690,86418,86146,85874,85602, +85330,85057,84785,84513,84240,83968,83696,83423,83151,82878,82606,82333,82061,81789, +81516,81244,80971,80699,80427,80154,79882,79610,79337,79065,78793,78521,78249,77977, +77705,77433,77161,76889,76617,76345,76074,75802,75531,75259,74988,74717,74446,74175, +73904,73633,73362,73092,72821,72551,72280,72010,71740,71470,71201,70931,70661,70392, +70123,69854,69585,69317,69048,68780,68512,68244,67976,67709,67441,67174,66907,66641, +66374,66108,65842,65576,65311,65046,64781,64516,64252,63988,63724,63460,63197,62934, +62672,62409,62147,61886,61624,61363,61103,60843,60583,60323,60064,59805,59547,59289, +59031,58774,58517,58261,58005,57749,57494,57239,56985,56731,56478,56225,55973,55721, +55470,55219,54968,54718,54469,54220,53971,53724,53476,53229,52983,52737,52492,52247, +52003,51759,51516,51274,51032,50791,50550,50310,50070,49831,49593,49355,49118,48881, +48645,48410,48175,47941,47707,47474,47242,47010,46779,46549,46319,46090,45861,45633, +45406,45179,44953,44728,44503,44279,44056,43833,43611,43389,43168,42948,42728,42510, +42291,42074,41857,41640,41425,41210,40995,40782,40568,40356,40144,39933,39723,39513, +39304,39095,38887,38680,38473,38267,38062,37857,37653,37449,37247,37044,36843,36642, +36442,36242,36043,35845,35647,35450,35253,35057,34862,34667,34473,34280,34087,33894, +33703,33512,33321,33132,32942,32754,32566,32378,32192,32006,31820,31635,31451,31267, +31084,30901,30719,30538,30357,30177,29997,29818,29640,29462,29285,29108,28932,28756, +28581,28407,28233,28060,27888,27716,27545,27374,27204,27034,26865,26697,26529,26362, +26195,26029,25863,25699,25534,25371,25207,25045,24883,24722,24561,24401,24241,24082, +23924,23766,23609,23453,23297,23142,22987,22833,22679,22526,22374,22222,22071,21921, +21771,21622,21473,21325,21177,21031,20884,20739,20594,20449,20306,20162,20020,19878, +19737,19596,19456,19316,19178,19039,18902,18765,18628,18493,18358,18223,18089,17956, +17823,17691,17560,17429,17299,17169,17040,16912,16784,16657,16531,16405,16280,16155, +16031,15908,15785,15663,15541,15420,15300,15180,15061,14942,14824,14707,14590,14474, +14358,14243,14129,14015,13901,13789,13677,13565,13454,13344,13234,13125,13016,12908, +12801,12694,12588,12482,12377,12272,12168,12064,11961,11859,11757,11655,11554,11454, +11354,11255,11156,11058,10960,10863,10766,10670,10575,10480,10385,10291,10197,10104, +10012,9920,9828,9737,9646,9556,9466,9377,9289,9200,9113,9025,8939,8852,8766,8681, +8596,8512,8428,8344,8261,8178,8096,8014,7933,7852,7772,7692,7612,7533,7455,7376, +7299,7221,7144,7068,6992,6916,6841,6766,6692,6618,6544,6471,6398,6326,6254,6182, +6111,6041,5970,5901,5831,5762,5693,5625,5557,5490,5423,5356,5290,5224,5159,5093, +5029,4965,4901,4837,4774,4711,4649,4587,4525,4464,4404,4343,4283,4224,4164,4105, +4047,3989,3931,3874,3817,3760,3704,3648,3593,3538,3483,3429,3375,3321,3268,3215, +3163,3111,3059,3008,2957,2906,2856,2806,2756,2707,2658,2610,2562,2514,2466,2419, +2373,2326,2280,2235,2189,2144,2100,2056,2012,1968,1925,1882,1839,1797,1755,1714, +1672,1631,1591,1551,1511,1471,1432,1393,1354,1316,1278,1240,1203,1165,1129,1092, +1056,1020,984,949,914,879,845,811,777,743,710,677,644,612,580,548,516,485,454,423, +393,362,332,303,273,244,215,186,158,129,101,74,46,19,-8,-35,-61,-88,-114,-140,-165, +-191,-216,-241,-265,-290,-314,-338,-362,-386,-409,-432,-455,-478,-501,-523,-545, +-567,-589,-610,-632,-653,-674,-694,-715,-735,-756,-775,-795,-815,-834,-853,-872, +-891,-910,-928,-947,-965,-983,-1000,-1018,-1035,-1052,-1069,-1086,-1103,-1119,-1136, +-1152,-1168,-1184,-1199,-1215,-1230,-1245,-1260,-1275,-1289,-1304,-1318,-1332,-1346, +-1360,-1373,-1387,-1400,-1413,-1426,-1439,-1452,-1464,-1477,-1489,-1501,-1513,-1524, +-1536,-1547,-1558,-1570,-1581,-1591,-1602,-1612,-1623,-1633,-1643,-1653,-1663,-1672, +-1682,-1691,-1700,-1709,-1718,-1727,-1735,-1744,-1752,-1760,-1768,-1776,-1784,-1792, +-1799,-1807,-1814,-1821,-1828,-1835,-1842,-1848,-1855,-1861,-1867,-1873,-1879,-1885, +-1891,-1896,-1902,-1907,-1913,-1918,-1923,-1928,-1932,-1937,-1942,-1946,-1950,-1955, +-1959,-1963,-1967,-1971,-1974,-1978,-1981,-1985,-1988,-1991,-1994,-1997,-2000,-2003, +-2006,-2009,-2011,-2013,-2016,-2018,-2020,-2022,-2024,-2026,-2028,-2030,-2032,-2033, +-2035,-2036,-2037,-2039,-2040,-2041,-2042,-2043,-2044,-2045,-2045,-2046,-2047,-2047, +-2048,-2048,-2048,-2049,-2049,-2049,-2049,-2049,-2049,-2049,-2049,-2048,-2048,-2048, +-2047,-2047,-2046,-2046,-2045,-2044,-2043,-2043,-2042,-2041,-2040,-2039,-2038,-2036, +-2035,-2034,-2033,-2031,-2030,-2028,-2027,-2025,-2024,-2022,-2020,-2019,-2017,-2015, +-2013,-2011,-2009,-2007,-2005,-2003,-2001,-1998,-1996,-1994,-1992,-1989,-1987,-1984, +-1982,-1979,-1977,-1974,-1971,-1969,-1966,-1963,-1960,-1957,-1954,-1952,-1949,-1946, +-1942,-1939,-1936,-1933,-1930,-1927,-1923,-1920,-1917,-1913,-1910,-1906,-1903,-1899, +-1896,-1892,-1889,-1885,-1881,-1878,-1874,-1870,-1866,-1863,-1859,-1855,-1851,-1847, +-1843,-1839,-1835,-1831,-1827,-1823,-1819,-1814,-1810,-1806,-1802,-1798,-1793,-1789, +-1785,-1780,-1776,-1771,-1767,-1763,-1758,-1754,-1749,-1745,-1740,-1736,-1731,-1726, +-1722,-1717,-1713,-1708,-1703,-1698,-1694,-1689,-1684,-1680,-1675,-1670,-1665,-1660, +-1656,-1651,-1646,-1641,-1636,-1631,-1626,-1622,-1617,-1612,-1607,-1602,-1597,-1592, +-1587,-1582,-1577,-1572,-1567,-1562,-1557,-1552,-1547,-1542,-1537,-1532,-1527,-1522, +-1517,-1512,-1507,-1502,-1497,-1492,-1487,-1482,-1477,-1471,-1466,-1461,-1456,-1451, +-1446,-1441,-1436,-1431,-1426,-1421,-1416,-1411,-1406,-1401,-1395,-1390,-1385,-1380, +-1375,-1370,-1365,-1360,-1355,-1350,-1345,-1340,-1335,-1330,-1325,-1320,-1315,-1310, +-1305,-1300,-1295,-1290,-1285,-1280,-1275,-1270,-1265,-1260,-1255,-1250,-1245,-1240, +-1235,-1230,-1225,-1220,-1215,-1210,-1205,-1200,-1195,-1190,-1185,-1180,-1175,-1171, +-1166,-1161,-1156,-1151,-1146,-1141,-1136,-1131,-1127,-1122,-1117,-1112,-1107,-1102, +-1098,-1093,-1088,-1083,-1078,-1074,-1069,-1064,-1059,-1055,-1050,-1045,-1040,-1036, +-1031,-1026,-1022,-1017,-1012,-1007,-1003,-998,-994,-989,-984,-980,-975,-970,-966, +-961,-957,-952,-948,-943,-938,-934,-929,-925,-920,-916,-911,-907,-902,-898,-894, +-889,-885,-880,-876,-872,-867,-863,-858,-854,-850,-845,-841,-837,-833,-828,-824, +-820,-816,-811,-807,-803,-799,-795,-790,-786,-782,-778,-774,-770,-766,-762,-757, +-753,-749,-745,-741,-737,-733,-729,-725,-721,-717,-714,-710,-706,-702,-698,-694, +-690,-686,-683,-679,-675,-671,-667,-664,-660,-656,-652,-649,-645,-641,-638,-634, +-630,-627,-623,-620,-616,-612,-609,-605,-602,-598,-595,-591,-588,-584,-581,-577, +-574,-571,-567,-564,-560,-557,-554,-550,-547,-544,-540,-537,-534,-530,-527,-524, +-521,-518,-514,-511,-508,-505,-502,-499,-495,-492,-489,-486,-483,-480,-477,-474, +-471,-468,-465,-462,-459,-456,-453,-450,-447,-444,-441,-438,-435,-433,-430,-427, +-424,-421,-418,-416,-413,-410,-407,-405,-402,-399,-396,-394,-391,-388,-386,-383, +-380,-378,-375,-373,-370,-367,-365,-362,-360,-357,-355,-352,-350,-347,-345,-342, +-340,-337,-335,-333,-330,-328,-325,-323,-321,-318,-316,-314,-311,-309,-307,-305, +-302,-300,-298,-296,-293,-291,-289,-287,-285,-282,-280,-278,-276,-274,-272,-270, +-268,-266,-264,-261,-259,-257,-255,-253,-251,-249,-247,-246,-244,-242,-240,-238, +-236,-234,-232,-230,-228,-227,-225,-223,-221,-219,-217,-216,-214,-212,-210,-209, +-207,-205,-203,-202,-200,-198,-197,-195,-193,-192,-190,-188,-187,-185,-184,-182, +-180,-179,-177,-176,-174,-173,-171,-170,-168,-167,-165,-164,-162,-161,-159,-158, +-156,-155,-154,-152,-151,-149,-148,-147,-145,-144,-143,-141,-140,-139,-137,-136, +-135,-133,-132,-131,-130,-128,-127,-126,-125,-123,-122,-121,-120,-119,-117,-116, +-115,-114,-113,-112,-111,-109,-108,-107,-106,-105,-104,-103,-102,-101,-100,-99,-98, +-97,-96,-95,-94,-93,-92,-91,-90,-89,-88,-87,-86,-85,-84,-83,-82,-81,-80,-79,-78, +-78,-77,-76,-75,-74,-73,-72,-71,-71,-70,-69,-68,-67,-67,-66,-65,-64,-63,-63,-62, +-61,-60,-60,-59,-58,-58,-57,-56,-55,-55,-54,-53,-53,-52,-51,-51,-50,-49,-49,-48, +-47,-47,-46,-45,-45,-44,-44,-43,-42,-42,-41,-41,-40,-40,-39,-38,-38,-37,-37,-36, +-36,-35,-35,-34,-34,-33,-33,-32,-32,-31,-31,-30,-30,-29,-29,-28,-28,-28,-27,-27, +-26,-26,-25,-25,-25,-24,-24,-23,-23,-23,-22,-22,-21,-21,-21,-20,-20,-20,-19,-19, +-19,-18,-18,-17,-17,-17,-17,-16,-16,-16,-15,-15,-15,-14,-14,-14,-13,-13,-13,-13, +-12,-12,-12,-12,-11,-11,-11,-11,-10,-10,-10,-10,-9,-9,-9,-9,-9,-8,-8,-8,-8,-7,-7, +-7,-7,-7,-7,-6,-6,-6,-6,-6,-5,-5,-5,-5,-5,-5,-5,-4,-4,-4,-4,-4,-4,-4,-3,-3,-3,-3, +-3,-3,-3,-3,-3,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, +-1,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, }, { -131072,131070,131069,131067,131065,131063,131060,131058,131055,131052,131049, -131045,131041,131037,131032,131026,131020,131014,131007,130999,130990,130981,130970, -130959,130947,130934,130919,130904,130887,130869,130849,130828,130805,130781,130755, -130727,130697,130666,130632,130596,130557,130516,130473,130427,130378,130326,130272, -130214,130153,130089,130021,129949,129874,129795,129712,129625,129533,129437,129336, -129231,129121,129005,128885,128759,128627,128490,128347,128198,128043,127882,127714, -127539,127357,127169,126973,126770,126559,126341,126114,125880,125637,125386,125127, -124859,124581,124295,123999,123694,123380,123055,122721,122377,122022,121657,121281, -120895,120498,120090,119670,119239,118797,118343,117878,117401,116911,116410,115896, -115370,114831,114280,113717,113140,112551,111949,111334,110705,110064,109409,108742, -108061,107366,106658,105937,105203,104455,103693,102919,102130,101329,100514,99685, -98844,97989,97121,96240,95346,94439,93519,92586,91641,90683,89712,88730,87735,86728, -85710,84679,83638,82585,81521,80446,79361,78265,77159,76042,74917,73782,72637,71484, -70322,69152,67974,66788,65594,64394,63187,61974,60754,59529,58298,57063,55823,54579, -53331,52079,50825,49568,48309,47048,45785,44522,43259,41995,40731,39469,38208,36948, -35691,34436,33184,31936,30692,29453,28218,26989,25766,24549,23338,22135,20940,19753, -18575,17405,16246,15096,13956,12828,11711,10606,9512,8432,7365,6311,5270,4245,3234, -2238,1257,292,-656,-1588,-2503,-3401,-4281,-5144,-5988,-6813,-7620,-8407,-9175, --9924,-10653,-11361,-12049,-12716,-13363,-13989,-14593,-15176,-15738,-16278,-16796, --17293,-17767,-18219,-18650,-19058,-19443,-19807,-20148,-20467,-20764,-21038,-21291, --21521,-21729,-21914,-22079,-22221,-22341,-22440,-22518,-22575,-22610,-22625,-22618, --22592,-22545,-22479,-22393,-22287,-22162,-22019,-21857,-21677,-21479,-21263,-21031, --20781,-20515,-20234,-19936,-19624,-19296,-18955,-18599,-18230,-17848,-17453,-17047, --16628,-16199,-15759,-15308,-14848,-14379,-13902,-13416,-12922,-12422,-11914,-11401, --10882,-10358,-9830,-9297,-8762,-8223,-7682,-7139,-6595,-6049,-5504,-4959,-4414,-3871, --3329,-2790,-2253,-1720,-1190,-665,-144,372,882,1386,1884,2375,2858,3334,3802,4261, -4712,5153,5585,6006,6417,6818,7208,7586,7953,8309,8652,8983,9301,9606,9899,10178, -10444,10697,10936,11161,11372,11569,11752,11920,12075,12215,12340,12452,12549,12631, -12699,12753,12792,12817,12829,12825,12808,12778,12733,12675,12603,12519,12421,12310, -12187,12051,11903,11743,11571,11388,11193,10988,10772,10546,10310,10064,9808,9544, -9271,8990,8701,8404,8100,7789,7471,7148,6819,6484,6145,5801,5453,5101,4746,4388, -4028,3665,3301,2936,2570,2203,1836,1470,1104,740,377,16,-343,-699,-1052,-1401,-1747, --2088,-2425,-2757,-3084,-3405,-3721,-4030,-4333,-4629,-4918,-5199,-5473,-5740,-5998, --6247,-6488,-6720,-6944,-7158,-7362,-7557,-7742,-7918,-8083,-8238,-8383,-8518,-8642, --8756,-8859,-8951,-9033,-9103,-9164,-9213,-9252,-9279,-9297,-9303,-9299,-9285,-9260, --9224,-9179,-9123,-9057,-8981,-8896,-8801,-8696,-8582,-8460,-8328,-8188,-8039,-7882, --7716,-7544,-7363,-7175,-6981,-6779,-6571,-6357,-6137,-5911,-5680,-5444,-5203,-4958, --4708,-4455,-4198,-3938,-3676,-3410,-3143,-2874,-2603,-2331,-2058,-1784,-1510,-1237, --963,-691,-419,-149,120,386,650,912,1171,1427,1679,1927,2172,2412,2647,2878,3104, -3324,3539,3749,3952,4149,4340,4524,4701,4872,5035,5191,5340,5481,5614,5740,5858, -5967,6069,6162,6248,6325,6393,6453,6505,6548,6583,6610,6628,6637,6638,6631,6616, -6592,6560,6520,6472,6416,6353,6281,6203,6116,6023,5922,5815,5700,5579,5452,5318, -5179,5033,4882,4725,4563,4396,4225,4049,3868,3684,3495,3304,3108,2910,2709,2506, -2300,2092,1883,1672,1459,1246,1032,818,604,389,175,-38,-250,-461,-671,-879,-1085, --1289,-1491,-1690,-1886,-2079,-2269,-2455,-2638,-2816,-2990,-3160,-3326,-3486,-3642, --3793,-3938,-4078,-4213,-4341,-4464,-4582,-4693,-4797,-4896,-4988,-5074,-5153,-5226, --5292,-5351,-5404,-5450,-5489,-5521,-5547,-5565,-5577,-5582,-5580,-5572,-5557,-5535, --5506,-5472,-5430,-5383,-5329,-5269,-5202,-5130,-5052,-4969,-4880,-4785,-4685,-4580, --4470,-4355,-4235,-4111,-3983,-3851,-3714,-3574,-3430,-3283,-3133,-2980,-2824,-2666, --2505,-2342,-2177,-2011,-1843,-1674,-1504,-1333,-1161,-990,-818,-646,-474,-303,-133, -37,205,372,537,701,863,1022,1179,1334,1486,1635,1781,1923,2063,2198,2330,2458, -2582,2702,2817,2929,3035,3137,3234,3326,3413,3496,3573,3645,3711,3772,3828,3878, -3923,3963,3997,4025,4048,4065,4076,4082,4083,4078,4067,4051,4030,4003,3971,3934, -3892,3845,3792,3735,3673,3606,3535,3459,3379,3294,3206,3113,3017,2917,2813,2707, -2596,2483,2367,2248,2126,2002,1876,1748,1617,1485,1352,1217,1081,943,806,667,528, -388,249,109,-30,-168,-307,-444,-580,-715,-849,-982,-1113,-1242,-1369,-1494,-1616, --1737,-1854,-1969,-2082,-2191,-2297,-2400,-2500,-2596,-2688,-2777,-2862,-2944,-3021, --3094,-3164,-3229,-3289,-3346,-3398,-3446,-3489,-3528,-3563,-3592,-3618,-3638,-3655, --3666,-3673,-3676,-3674,-3667,-3656,-3641,-3621,-3597,-3568,-3536,-3499,-3458,-3413, --3364,-3311,-3254,-3194,-3130,-3062,-2991,-2917,-2840,-2759,-2676,-2590,-2501,-2409, --2315,-2219,-2121,-2021,-1918,-1814,-1709,-1602,-1493,-1384,-1273,-1162,-1050,-937, --824,-711,-598,-485,-371,-259,-146,-35,76,186,295,403,509,614,717,819,919,1016,1112, -1205,1297,1385,1471,1555,1636,1714,1789,1861,1930,1996,2058,2117,2173,2226,2275, -2320,2362,2401,2435,2466,2494,2517,2537,2554,2566,2575,2580,2581,2579,2573,2563, -2550,2533,2513,2489,2461,2431,2397,2359,2319,2275,2228,2178,2126,2070,2012,1951, -1887,1821,1753,1683,1610,1535,1458,1380,1300,1218,1134,1050,964,877,789,700,610,520, -429,337,246,154,63,-29,-120,-212,-302,-392,-481,-570,-657,-744,-829,-914,-996, --1078,-1157,-1236,-1312,-1386,-1459,-1529,-1598,-1664,-1728,-1790,-1849,-1905,-1960, --2011,-2060,-2106,-2150,-2190,-2228,-2263,-2295,-2324,-2350,-2373,-2393,-2411,-2425, --2436,-2444,-2449,-2451,-2450,-2446,-2439,-2429,-2416,-2401,-2382,-2361,-2337,-2310, --2281,-2249,-2214,-2177,-2138,-2096,-2052,-2006,-1957,-1906,-1854,-1799,-1743,-1685, --1625,-1564,-1501,-1437,-1371,-1305,-1237,-1168,-1098,-1028,-957,-885,-812,-739,-666, --593,-519,-446,-373,-299,-226,-154,-82,-10,61,131,200,269,336,402,468,531,594,655, -715,773,829,884,937,988,1037,1085,1130,1173,1214,1253,1290,1325,1357,1387,1415, -1441,1464,1484,1503,1519,1532,1543,1552,1558,1562,1564,1563,1559,1554,1546,1535, -1523,1508,1491,1472,1450,1427,1401,1373,1344,1312,1279,1244,1207,1168,1128,1086, -1043,998,952,904,856,806,755,703,650,596,542,487,431,375,318,261,204,146,88,30,-27, --85,-143,-200,-257,-313,-369,-425,-479,-534,-587,-639,-691,-741,-791,-839,-887, --933,-977,-1021,-1063,-1103,-1143,-1180,-1216,-1250,-1283,-1314,-1343,-1371,-1397, --1421,-1443,-1463,-1481,-1498,-1512,-1525,-1536,-1545,-1551,-1556,-1559,-1561,-1560, --1557,-1552,-1546,-1538,-1527,-1515,-1502,-1486,-1469,-1450,-1429,-1407,-1383,-1358, --1331,-1302,-1272,-1241,-1209,-1175,-1140,-1104,-1066,-1028,-988,-948,-907,-865,-822, --778,-734,-689,-644,-598,-552,-505,-459,-412,-364,-317,-270,-223,-176,-129,-82,-35, -11,56,102,146,191,234,277,319,360,401,440,479,517,554,589,624,657,689,721,750,779, -806,832,857,880,902,922,941,958,974,989,1002,1014,1024,1032,1039,1045,1049,1052, -1053,1053,1051,1048,1043,1037,1030,1021,1011,999,987,973,957,941,923,904,884,863, -841,818,794,769,743,717,689,661,632,603,572,542,510,478,446,414,381,348,314,280, -247,213,179,145,111,77,44,10,-23,-56,-89,-121,-153,-184,-215,-246,-275,-305,-333, --361,-389,-415,-441,-466,-490,-513,-536,-557,-578,-597,-616,-633,-650,-666,-680, --694,-706,-718,-728,-737,-746,-753,-759,-764,-767,-770,-772,-772,-772,-770,-768, --764,-759,-754,-747,-740,-731,-722,-711,-700,-688,-675,-661,-646,-631,-615,-598, --580,-562,-543,-524,-504,-483,-462,-441,-419,-397,-374,-351,-328,-305,-281,-257, --233,-209,-185,-161,-137,-113,-89,-65,-41,-17,6,29,52,75,97,119,141,162,183,203,223, -242,261,279,297,314,330,346,361,375,389,402,414,426,437,447,456,465,472,479,486, -491,496,500,503,505,506,507,507,506,505,502,499,495,491,486,480,473,466,458,449, -440,431,420,409,398,386,374,361,347,334,320,305,290,275,259,244,228,211,195,178, -161,144,127,110,93,76,59,42,24,7,-9,-26,-43,-59,-76,-92,-107,-123,-138,-153,-168, --182,-196,-209,-223,-235,-248,-260,-271,-282,-292,-302,-312,-321,-329,-337,-344, --351,-358,-363,-369,-373,-377,-381,-384,-386,-388,-389,-390,-390,-389,-388,-387, --385,-382,-379,-375,-371,-367,-362,-356,-350,-344,-337,-330,-322,-314,-305,-297, --288,-278,-268,-258,-248,-238,-227,-216,-205,-193,-182,-170,-158,-146,-134,-122, --110,-98,-86,-74,-62,-50,-38,-26,-14,-2,9,21,32,43,54,65,75,85,95,105,115,124,133, -141,149,157,165,172,179,185,191,197,202,207,212,216,220,223,226,229,231,233,234, -235,236,236,236,235,234,233,231,229,226,223,220,217,213,209,204,199,194,189,183, -177,171,165,158,151,144,137,129,122,114,106,98,90,82,74,65,57,48,40,31,23,14,6,-2, --11,-19,-27,-36,-44,-52,-59,-67,-75,-82,-89,-96,-103,-110,-116,-123,-129,-135,-140, --146,-151,-156,-160,-164,-169,-172,-176,-179,-182,-185,-187,-189,-191,-193,-194, --195,-196,-196,-196,-196,-196,-195,-194,-193,-191,-190,-188,-186,-183,-180,-177, --174,-171,-167,-164,-160,-155,-151,-147,-142,-137,-132,-127,-122,-117,-111,-106, --100,-95,-89,-83,-77,-72,-66,-60,-54,-48,-42,-36,-30,-25,-19,-13,-8,-2,3,9,14,19,24, -29,34,39,43,47,52,56,60,63,67,70,73,77,79,82,84,87,89,91,92,94,95,96,97,98,98,98, -99,98,98,98,97,96,95,94,92,91,89,87,85,83,81,78,75,73,70,67,64,60,57,54,50,47,43, -39,35,32,28,24,20,16,12,8,4,0,-5,-9,-13,-17,-20,-24,-28,-32,-36,-39,-43,-47,-50, --54,-57,-60,-63,-66,-69,-72,-75,-77,-80,-82,-84,-86,-88,-90,-91,-93,-94,-96,-97, --98,-99,-99,-100,-100,-101,-101,-101,-101,-100,-100,-99,-99,-98,-97,-96,-95,-94, --92,-91,-89,-88,-86,-84,-82,-80,-78,-75,-73,-71,-68,-66,-63,-61,-58,-56,-53,-50, --47,-45,-42,-39,-36,-33,-31,-28,-25,-22,-20,-17,-14,-12,-9,-6,-4,-1,1,3,6,8,10,12, -14,16,18,19,21,23,24,25,27,28,29,30,31,32,32,33,33,34,34,34,34,34,34,34,34,33,33, -32,31,31,30,29,28,27,26,24,23,22,20,19,17,15,14,12,10,8,7,5,3,1,-1,-3,-5,-7,-9, --11,-13,-15,-17,-19,-21,-23,-25,-27,-29,-31,-32,-34,-36,-37,-39,-40,-42,-43,-45, --46,-47,-48,-49,-50,-51,-52,-53,-54,-54,-55,-56,-56,-56,-56,-57,-57,-57,-57,-57, --56,-56,-56,-55,-55,-54,-54,-53,-52,-52,-51,-50,-49,-48,-47,-46,-45,-44,-43,-42, --40,-39,-38,-37,-36,-34,-33,-32,-31,-30,-29,-27,-26,-25,-24,-23,-22,-21,-20,-19, --18,-17,-16,-16,-15,-14,-13,-13,-12,-11,-11,-10,-10,-9,-9,-8,-8,-8,-7,-7,-6,-6,-6, --5,-5,-5,-4,-4,-3,-3,-3,-2,-2,-2,-1,-1,-1,0,0,0, +131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,131072, +131072,131072,131072,131071,131071,131071,131071,131071,131071,131070,131070,131070, +131070,131069,131069,131069,131068,131068,131067,131066,131066,131065,131064,131063, +131062,131061,131059,131058,131056,131055,131053,131051,131049,131046,131044,131041, +131038,131035,131031,131028,131024,131019,131015,131010,131004,130998,130992,130986, +130979,130971,130963,130955,130945,130936,130925,130914,130903,130890,130877,130863, +130849,130833,130816,130799,130781,130761,130740,130719,130696,130672,130646,130619, +130591,130562,130531,130498,130463,130427,130390,130350,130308,130265,130219,130172, +130122,130069,130015,129958,129898,129836,129772,129704,129633,129560,129483,129404, +129321,129235,129145,129051,128954,128854,128749,128640,128527,128410,128289,128163, +128033,127898,127758,127613,127463,127308,127147,126982,126810,126633,126450,126261, +126066,125864,125657,125443,125222,124994,124759,124518,124269,124013,123749,123478, +123199,122912,122617,122314,122003,121683,121355,121017,120672,120317,119953,119579, +119197,118805,118403,117992,117570,117139,116698,116246,115784,115312,114829,114336, +113831,113316,112790,112253,111705,111145,110575,109992,109399,108794,108177,107549, +106909,106257,105594,104918,104231,103532,102821,102098,101363,100616,99858,99087, +98304,97510,96703,95885,95054,94212,93358,92493,91616,90727,89827,88915,87992,87058, +86113,85157,84190,83212,82224,81225,80216,79196,78167,77128,76079,75021,73953,72877, +71792,70698,69596,68485,67367,66241,65108,63967,62820,61666,60506,59339,58168,56990, +55808,54621,53429,52234,51034,49832,48626,47417,46206,44994,43779,42563,41347,40130, +38913,37696,36480,35265,34052,32841,31632,30426,29223,28023,26828,25637,24451,23270, +22095,20926,19764,18609,17461,16321,15190,14067,12953,11849,10755,9671,8598,7537, +6487,5449,4423,3410,2411,1425,453,-504,-1447,-2375,-3287,-4184,-5064,-5928,-6775, +-7605,-8417,-9212,-9989,-10747,-11487,-12208,-12910,-13592,-14255,-14898,-15521, +-16124,-16706,-17268,-17809,-18329,-18829,-19306,-19763,-20198,-20612,-21004,-21374, +-21723,-22050,-22355,-22639,-22900,-23140,-23358,-23555,-23729,-23883,-24014,-24124, +-24213,-24281,-24328,-24353,-24359,-24343,-24307,-24251,-24175,-24079,-23964,-23830, +-23677,-23505,-23314,-23106,-22879,-22636,-22375,-22097,-21804,-21494,-21168,-20827, +-20472,-20102,-19718,-19320,-18909,-18486,-18050,-17603,-17144,-16674,-16194,-15705, +-15205,-14697,-14181,-13657,-13125,-12587,-12042,-11491,-10936,-10375,-9810,-9242, +-8670,-8096,-7520,-6942,-6363,-5783,-5204,-4625,-4047,-3471,-2897,-2325,-1756,-1191, +-630,-74,477,1023,1563,2096,2623,3142,3654,4157,4652,5138,5614,6081,6537,6983,7418, +7842,8255,8655,9044,9420,9783,10134,10471,10795,11105,11401,11684,11952,12205,12444, +12669,12878,13073,13252,13417,13567,13701,13820,13924,14012,14086,14144,14187,14215, +14228,14226,14209,14178,14132,14071,13996,13907,13805,13688,13558,13415,13259,13089, +12908,12714,12508,12290,12061,11821,11570,11309,11038,10756,10466,10166,9858,9542, +9218,8886,8547,8201,7850,7492,7129,6761,6388,6011,5631,5247,4860,4471,4080,3687, +3294,2899,2504,2110,1716,1323,931,541,154,-231,-613,-991,-1365,-1736,-2101,-2462, +-2817,-3166,-3510,-3847,-4177,-4500,-4816,-5124,-5424,-5716,-5999,-6273,-6539,-6795, +-7042,-7279,-7506,-7722,-7929,-8125,-8310,-8485,-8649,-8802,-8943,-9074,-9193,-9300, +-9397,-9481,-9555,-9617,-9667,-9706,-9733,-9749,-9754,-9748,-9730,-9701,-9661,-9610, +-9548,-9476,-9393,-9300,-9196,-9083,-8960,-8827,-8685,-8534,-8373,-8204,-8027,-7842, +-7648,-7447,-7238,-7023,-6801,-6572,-6337,-6096,-5849,-5598,-5341,-5080,-4815,-4545, +-4273,-3997,-3718,-3436,-3153,-2867,-2581,-2293,-2004,-1715,-1425,-1136,-848,-560, +-274,11,293,574,852,1127,1399,1667,1932,2192,2448,2699,2946,3187,3423,3653,3877, +4095,4306,4511,4709,4900,5084,5261,5430,5591,5744,5889,6026,6155,6276,6388,6492, +6587,6673,6750,6819,6879,6931,6973,7007,7031,7047,7055,7053,7043,7024,6997,6962, +6918,6866,6805,6737,6661,6577,6486,6387,6281,6168,6048,5922,5789,5650,5504,5353, +5196,5034,4866,4694,4517,4336,4150,3960,3767,3571,3371,3168,2963,2755,2546,2334, +2122,1907,1692,1477,1261,1044,828,612,397,183,-30,-241,-451,-659,-864,-1067,-1268, +-1465,-1659,-1850,-2037,-2221,-2400,-2575,-2746,-2912,-3073,-3230,-3381,-3527,-3667, +-3802,-3931,-4054,-4172,-4283,-4388,-4487,-4579,-4665,-4745,-4818,-4884,-4944,-4997, +-5043,-5082,-5115,-5141,-5160,-5173,-5179,-5178,-5171,-5157,-5136,-5110,-5076,-5037, +-4991,-4940,-4882,-4819,-4749,-4675,-4594,-4509,-4418,-4322,-4221,-4116,-4006,-3891, +-3772,-3650,-3523,-3393,-3259,-3123,-2983,-2840,-2694,-2546,-2396,-2244,-2090,-1934, +-1777,-1619,-1459,-1299,-1139,-978,-817,-655,-495,-334,-175,-16,141,298,452,605,757, +906,1053,1197,1339,1478,1615,1748,1878,2004,2127,2247,2362,2474,2582,2685,2785, +2880,2970,3056,3137,3214,3286,3353,3415,3473,3525,3572,3615,3652,3684,3711,3733, +3750,3762,3769,3771,3768,3760,3747,3729,3707,3680,3648,3611,3570,3525,3476,3422, +3364,3302,3236,3166,3093,3016,2936,2852,2766,2676,2583,2488,2390,2290,2187,2082, +1976,1867,1757,1645,1532,1418,1303,1187,1070,952,835,717,599,481,363,246,129,13, +-102,-216,-329,-440,-550,-659,-766,-871,-974,-1075,-1174,-1270,-1364,-1456,-1544, +-1630,-1714,-1794,-1871,-1945,-2016,-2084,-2148,-2209,-2267,-2321,-2372,-2418,-2462, +-2502,-2538,-2570,-2599,-2624,-2645,-2662,-2676,-2686,-2693,-2695,-2694,-2690,-2682, +-2670,-2655,-2636,-2614,-2589,-2560,-2528,-2493,-2455,-2414,-2370,-2323,-2274,-2221, +-2167,-2109,-2050,-1988,-1923,-1857,-1789,-1719,-1647,-1574,-1499,-1422,-1345,-1266, +-1186,-1105,-1023,-941,-858,-774,-690,-606,-522,-438,-354,-270,-187,-104,-21,61,142, +222,301,379,456,532,606,679,750,820,888,954,1018,1081,1141,1199,1255,1309,1361, +1410,1457,1502,1544,1584,1621,1655,1687,1717,1743,1768,1789,1808,1824,1838,1849, +1857,1863,1866,1867,1864,1860,1853,1843,1831,1816,1800,1780,1759,1735,1709,1681, +1651,1619,1585,1549,1511,1472,1431,1388,1344,1298,1251,1202,1153,1102,1050,997,943, +889,833,778,721,664,607,549,491,433,375,317,259,201,143,86,29,-27,-83,-138,-193, +-246,-299,-351,-402,-452,-501,-548,-595,-640,-684,-726,-767,-807,-845,-882,-917, +-950,-982,-1012,-1040,-1067,-1091,-1115,-1136,-1155,-1173,-1189,-1203,-1215,-1226, +-1235,-1241,-1246,-1250,-1251,-1251,-1249,-1245,-1239,-1232,-1223,-1213,-1201,-1187, +-1172,-1155,-1137,-1117,-1096,-1074,-1051,-1026,-1000,-973,-944,-915,-885,-854,-822, +-789,-755,-720,-685,-650,-613,-577,-539,-502,-464,-426,-387,-349,-310,-272,-233, +-194,-156,-118,-80,-42,-4,33,69,105,141,176,210,244,277,309,341,372,401,430,458,485, +512,537,561,584,606,626,646,665,682,698,713,727,740,751,762,771,778,785,791,795, +798,800,801,800,799,796,792,787,781,774,766,757,747,736,724,711,697,682,667,650, +633,616,597,578,558,538,517,496,474,452,429,406,382,359,335,311,286,262,237,213, +188,163,139,114,90,65,41,17,-6,-30,-53,-75,-98,-120,-141,-162,-183,-203,-222,-241, +-260,-277,-295,-311,-327,-342,-357,-371,-384,-396,-408,-419,-429,-439,-448,-456, +-463,-469,-475,-480,-484,-488,-490,-492,-493,-494,-493,-492,-491,-488,-485,-481, +-477,-472,-466,-460,-453,-445,-437,-428,-419,-410,-399,-389,-378,-366,-354,-342, +-329,-316,-303,-290,-276,-262,-248,-233,-218,-204,-189,-174,-159,-144,-129,-114,-99, +-84,-69,-54,-39,-24,-10,4,18,32,46,59,73,85,98,110,122,134,145,156,167,177,186,196, +205,213,221,229,236,243,249,255,260,265,269,273,277,280,282,284,286,287,288,288, +288,287,286,285,283,281,278,275,272,268,264,259,254,249,244,238,232,225,219,212, +205,198,190,182,175,167,158,150,142,133,125,116,107,98,90,81,72,63,54,46,37,28,20, +11,3,-5,-13,-21,-29,-37,-45,-52,-59,-66,-73,-79,-86,-92,-98,-104,-109,-114,-119, +-124,-128,-132,-136,-140,-143,-146,-149,-152,-154,-156,-158,-159,-160,-161,-162, +-162,-163,-162,-162,-161,-161,-159,-158,-157,-155,-153,-151,-148,-146,-143,-140, +-137,-133,-130,-126,-122,-118,-114,-110,-106,-101,-97,-92,-88,-83,-78,-73,-68,-64, +-59,-54,-49,-44,-39,-34,-29,-24,-19,-14,-9,-5,0,5,9,14,18,22,26,30,34,38,42,45,49, +52,55,58,61,64,67,69,72,74,76,78,79,81,82,84,85,86,86,87,88,88,88,88,88,88,88,87, +87,86,85,84,83,82,80,79,77,75,74,72,70,68,66,64,61,59,57,54,52,49,47,44,42,39,36, +34,31,28,25,23,20,17,15,12,9,7,4,2,-1,-3,-6,-8,-10,-12,-15,-17,-19,-21,-23,-25, +-26,-28,-30,-31,-33,-34,-36,-37,-38,-39,-40,-41,-42,-43,-43,-44,-45,-45,-45,-46, +-46,-46,-46,-46,-46,-46,-45,-45,-45,-44,-44,-43,-42,-42,-41,-40,-39,-38,-37,-36, +-35,-34,-33,-32,-30,-29,-28,-27,-25,-24,-23,-21,-20,-18,-17,-16,-14,-13,-11,-10,-9, +-7,-6,-5,-3,-2,-1,1,2,3,4,5,7,8,9,10,11,12,13,14,14,15,16,17,17,18,19,19,20,20,21, +21,21,22,22,22,22,22,23,23,23,23,23,22,22,22,22,22,21,21,21,20,20,20,19,19,18,18, +17,16,16,15,15,14,13,13,12,11,11,10,9,9,8,7,7,6,5,5,4,3,3,2,1,1,0,-1,-1,-2,-2,-3, +-3,-4,-4,-5,-5,-6,-6,-7,-7,-7,-8,-8,-8,-9,-9,-9,-9,-10,-10,-10,-10,-10,-10,-10, +-10,-11,-11,-11,-11,-10,-10,-10,-10,-10,-10,-10,-10,-10,-9,-9,-9,-9,-8,-8,-8,-8,-7, +-7,-7,-7,-6,-6,-6,-5,-5,-5,-4,-4,-4,-3,-3,-3,-2,-2,-2,-2,-1,-1,-1,0,0,0,0,1,1,1,2, +2,2,2,2,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,4,4,4,4,4,4,4,4,4,4,4,4, +4,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,-1,-1,-1,-1,-1, +-1,-1,-1,-1,-1,-1,-1,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2, +-2,-2,-2,-2,-2,-2,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, +1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0, }, { -131072,131070,131069,131067,131065,131064,131062,131060,131059,131057,131055, -131054,131052,131050,131049,131047,131045,131044,131042,131040,131039,131037,131035, -131034,131032,131030,131028,131027,131025,131023,131021,131020,131018,131016,131014, -131012,131010,131008,131007,131005,131003,131001,130998,130996,130994,130992,130990, -130988,130985,130983,130980,130978,130975,130973,130970,130967,130964,130961,130958, -130955,130952,130949,130945,130942,130938,130934,130930,130926,130922,130917,130913, -130908,130903,130898,130893,130887,130881,130875,130869,130863,130856,130849,130842, -130834,130826,130818,130810,130801,130792,130783,130773,130762,130752,130741,130729, -130718,130705,130693,130679,130666,130651,130637,130621,130605,130589,130572,130554, -130536,130517,130497,130477,130456,130434,130412,130389,130365,130340,130314,130288, -130261,130232,130203,130173,130142,130110,130077,130043,130008,129972,129935,129897, -129857,129816,129775,129732,129687,129642,129595,129547,129498,129447,129395,129341, -129286,129230,129172,129112,129051,128989,128925,128859,128791,128722,128652,128579, -128505,128429,128351,128272,128190,128107,128022,127935,127846,127755,127662,127567, -127470,127371,127270,127166,127061,126953,126844,126732,126618,126502,126383,126262, -126139,126014,125886,125756,125624,125489,125352,125212,125070,124926,124779,124629, -124477,124323,124166,124007,123845,123681,123514,123344,123172,122997,122820,122640, -122458,122273,122085,121895,121702,121506,121308,121107,120904,120698,120490,120279, -120065,119848,119629,119408,119184,118957,118728,118496,118261,118024,117785,117543, -117298,117051,116802,116550,116295,116038,115779,115517,115253,114986,114718,114446, -114173,113897,113619,113339,113056,112771,112485,112195,111904,111611,111316,111018, -110719,110417,110114,109809,109502,109193,108882,108569,108255,107939,107621,107301, -106980,106657,106333,106007,105680,105351,105020,104689,104356,104021,103686,103349, -103011,102672,102331,101990,101647,101304,100959,100613,100267,99920,99572,99223, -98873,98522,98171,97819,97467,97114,96761,96406,96052,95697,95342,94986,94630,94273, -93917,93560,93203,92846,92488,92131,91773,91415,91058,90700,90343,89985,89628,89271, -88913,88557,88200,87843,87487,87131,86776,86420,86066,85711,85357,85003,84650,84297, -83945,83593,83242,82891,82541,82191,81842,81494,81146,80798,80452,80106,79761,79416, -79072,78729,78386,78044,77703,77363,77023,76684,76346,76008,75671,75335,75000,74665, -74332,73999,73666,73335,73004,72674,72345,72016,71689,71361,71035,70710,70385,70061, -69737,69415,69093,68772,68451,68131,67812,67494,67176,66859,66542,66227,65912,65597, -65283,64970,64657,64345,64034,63723,63413,63103,62794,62486,62178,61870,61563,61257, -60951,60646,60341,60036,59732,59429,59126,58824,58522,58220,57919,57618,57318,57018, -56719,56420,56121,55823,55525,55228,54931,54634,54338,54042,53747,53452,53157,52863, -52569,52275,51982,51689,51396,51104,50813,50521,50230,49940,49650,49360,49070,48781, -48493,48204,47917,47629,47342,47056,46770,46484,46199,45914,45629,45346,45062,44779, -44497,44215,43933,43652,43372,43092,42813,42534,42256,41978,41701,41425,41149,40874, -40599,40325,40052,39780,39508,39237,38966,38696,38427,38159,37891,37625,37359,37094, -36829,36566,36303,36041,35780,35520,35260,35002,34744,34488,34232,33977,33724,33471, -33219,32968,32718,32469,32221,31974,31729,31484,31240,30997,30755,30515,30275,30037, -29800,29563,29328,29094,28861,28629,28398,28169,27940,27713,27487,27262,27038,26815, -26594,26373,26154,25936,25719,25503,25288,25075,24862,24651,24441,24232,24024,23818, -23612,23408,23204,23002,22801,22601,22403,22205,22009,21813,21619,21426,21233,21042, -20852,20663,20475,20289,20103,19918,19734,19551,19370,19189,19009,18830,18652,18476, -18300,18125,17951,17778,17605,17434,17264,17094,16925,16758,16591,16425,16259,16095, -15931,15769,15607,15445,15285,15125,14967,14808,14651,14494,14338,14183,14029,13875, -13722,13569,13418,13267,13116,12967,12817,12669,12521,12374,12227,12082,11936,11792, -11647,11504,11361,11219,11077,10936,10795,10655,10516,10377,10239,10101,9964,9828, -9692,9556,9421,9287,9153,9020,8888,8755,8624,8493,8363,8233,8104,7975,7847,7719, -7592,7466,7340,7215,7090,6966,6843,6720,6598,6476,6355,6235,6115,5996,5877,5759, -5642,5525,5409,5294,5179,5065,4952,4839,4727,4615,4505,4395,4285,4177,4069,3961, -3855,3749,3644,3540,3436,3333,3231,3129,3028,2928,2829,2731,2633,2536,2439,2344, -2249,2155,2062,1970,1878,1787,1697,1607,1519,1431,1344,1258,1172,1088,1004,921,838, -757,676,596,516,438,360,283,207,131,57,-17,-91,-163,-235,-306,-376,-446,-514,-583, --650,-717,-783,-848,-913,-976,-1040,-1102,-1164,-1225,-1286,-1346,-1405,-1464,-1522, --1579,-1636,-1692,-1748,-1803,-1857,-1911,-1965,-2017,-2069,-2121,-2172,-2223,-2273, --2322,-2371,-2420,-2468,-2516,-2563,-2609,-2655,-2701,-2746,-2791,-2836,-2880,-2923, --2966,-3009,-3052,-3093,-3135,-3176,-3217,-3258,-3298,-3338,-3377,-3416,-3455,-3493, --3532,-3569,-3607,-3644,-3681,-3718,-3754,-3790,-3826,-3861,-3896,-3931,-3966,-4000, --4034,-4068,-4101,-4135,-4168,-4201,-4233,-4265,-4297,-4329,-4361,-4392,-4423,-4454, --4484,-4514,-4544,-4574,-4604,-4633,-4662,-4691,-4719,-4748,-4776,-4803,-4831,-4858, --4885,-4912,-4938,-4964,-4990,-5016,-5041,-5066,-5091,-5116,-5140,-5164,-5188,-5211, --5234,-5257,-5280,-5302,-5324,-5345,-5367,-5388,-5408,-5429,-5449,-5468,-5488,-5507, --5526,-5544,-5562,-5580,-5597,-5614,-5631,-5647,-5664,-5679,-5695,-5710,-5724,-5739, --5753,-5766,-5779,-5792,-5805,-5817,-5829,-5840,-5852,-5862,-5873,-5883,-5892,-5902, --5911,-5919,-5928,-5936,-5943,-5951,-5958,-5964,-5970,-5976,-5982,-5987,-5992,-5996, --6001,-6005,-6008,-6011,-6014,-6017,-6019,-6021,-6023,-6024,-6026,-6026,-6027,-6027, --6027,-6027,-6026,-6026,-6025,-6023,-6022,-6020,-6018,-6016,-6013,-6010,-6007,-6004, --6001,-5997,-5993,-5989,-5985,-5981,-5976,-5972,-5967,-5962,-5957,-5951,-5946,-5940, --5934,-5928,-5922,-5916,-5910,-5903,-5897,-5890,-5884,-5877,-5870,-5863,-5856,-5848, --5841,-5834,-5826,-5819,-5811,-5804,-5796,-5788,-5781,-5773,-5765,-5757,-5749,-5741, --5733,-5725,-5717,-5709,-5701,-5693,-5684,-5676,-5668,-5660,-5651,-5643,-5635,-5626, --5618,-5610,-5601,-5593,-5584,-5576,-5567,-5559,-5550,-5542,-5533,-5525,-5516,-5508, --5499,-5490,-5482,-5473,-5464,-5455,-5447,-5438,-5429,-5420,-5411,-5402,-5393,-5384, --5375,-5366,-5357,-5347,-5338,-5329,-5319,-5310,-5300,-5291,-5281,-5271,-5262,-5252, --5242,-5232,-5222,-5211,-5201,-5191,-5181,-5170,-5159,-5149,-5138,-5127,-5116,-5105, --5094,-5083,-5072,-5060,-5049,-5037,-5025,-5013,-5001,-4989,-4977,-4965,-4953,-4940, --4928,-4915,-4902,-4889,-4876,-4863,-4850,-4837,-4823,-4810,-4796,-4782,-4768,-4755, --4740,-4726,-4712,-4698,-4683,-4669,-4654,-4639,-4625,-4610,-4595,-4580,-4565,-4549, --4534,-4519,-4503,-4488,-4472,-4456,-4441,-4425,-4409,-4393,-4377,-4361,-4345,-4329, --4313,-4297,-4281,-4264,-4248,-4232,-4215,-4199,-4183,-4166,-4150,-4134,-4117,-4101, --4084,-4068,-4051,-4035,-4019,-4002,-3986,-3969,-3953,-3937,-3920,-3904,-3888,-3872, --3855,-3839,-3823,-3807,-3791,-3775,-3759,-3743,-3727,-3712,-3696,-3680,-3665,-3649, --3633,-3618,-3603,-3587,-3572,-3557,-3542,-3527,-3512,-3497,-3482,-3467,-3452,-3437, --3423,-3408,-3394,-3379,-3365,-3351,-3337,-3322,-3308,-3294,-3280,-3267,-3253,-3239, --3225,-3212,-3198,-3185,-3171,-3158,-3144,-3131,-3118,-3105,-3092,-3079,-3066,-3053, --3040,-3027,-3014,-3001,-2989,-2976,-2963,-2951,-2938,-2925,-2913,-2900,-2888,-2875, --2863,-2851,-2838,-2826,-2813,-2801,-2789,-2777,-2764,-2752,-2740,-2727,-2715,-2703, --2691,-2678,-2666,-2654,-2642,-2629,-2617,-2605,-2593,-2580,-2568,-2556,-2543,-2531, --2519,-2506,-2494,-2482,-2469,-2457,-2444,-2432,-2420,-2407,-2395,-2382,-2370,-2357, --2345,-2332,-2320,-2307,-2295,-2282,-2269,-2257,-2244,-2232,-2219,-2206,-2194,-2181, --2168,-2156,-2143,-2130,-2118,-2105,-2092,-2080,-2067,-2054,-2042,-2029,-2016,-2004, --1991,-1978,-1966,-1953,-1941,-1928,-1915,-1903,-1890,-1878,-1865,-1853,-1841,-1828, --1816,-1804,-1791,-1779,-1767,-1755,-1743,-1730,-1718,-1706,-1694,-1683,-1671,-1659, --1647,-1635,-1624,-1612,-1600,-1589,-1577,-1566,-1555,-1543,-1532,-1521,-1510,-1499, --1488,-1477,-1466,-1455,-1445,-1434,-1424,-1413,-1403,-1392,-1382,-1372,-1362,-1351, --1341,-1331,-1322,-1312,-1302,-1292,-1283,-1273,-1264,-1254,-1245,-1235,-1226,-1217, --1208,-1199,-1190,-1181,-1172,-1164,-1155,-1146,-1138,-1129,-1121,-1112,-1104,-1095, --1087,-1079,-1071,-1063,-1055,-1047,-1039,-1031,-1023,-1015,-1007,-1000,-992,-984, --977,-969,-962,-954,-947,-939,-932,-925,-917,-910,-903,-896,-889,-881,-874,-867, --860,-853,-846,-839,-832,-825,-818,-811,-804,-798,-791,-784,-777,-770,-763,-757, --750,-743,-736,-730,-723,-716,-710,-703,-696,-690,-683,-677,-670,-663,-657,-650, --644,-637,-631,-624,-618,-611,-605,-598,-592,-586,-579,-573,-566,-560,-554,-547, --541,-535,-529,-522,-516,-510,-504,-498,-491,-485,-479,-473,-467,-461,-455,-449, --443,-437,-432,-426,-420,-414,-408,-403,-397,-391,-386,-380,-375,-369,-364,-358, --353,-347,-342,-337,-331,-326,-321,-316,-311,-306,-301,-296,-291,-286,-281,-276, --272,-267,-262,-258,-253,-248,-244,-239,-235,-231,-226,-222,-218,-214,-210,-205, --201,-197,-193,-189,-186,-182,-178,-174,-170,-167,-163,-159,-156,-152,-149,-145, --142,-139,-135,-132,-129,-126,-122,-119,-116,-113,-110,-107,-104,-101,-98,-95,-92, --89,-87,-84,-81,-78,-76,-73,-70,-68,-65,-62,-60,-57,-55,-52,-50,-47,-45,-43,-40, --38,-35,-33,-31,-28,-26,-24,-21,-19,-17,-15,-12,-10,-8,-6,-4,-1,1,3,5,7,9,11,13,15, -18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,51,53,55,57,59,61,63,65,66,68, -70,72,74,75,77,79,81,82,84,86,87,89,91,92,94,95,97,99,100,102,103,105,106,107,109, -110,112,113,114,116,117,118,120,121,122,123,125,126,127,128,129,130,131,132,134, -135,136,136,137,138,139,140,141,142,143,144,144,145,146,147,147,148,149,149,150, -150,151,152,152,153,153,154,154,155,155,156,156,156,157,157,157,158,158,158,159, -159,159,159,160,160,160,160,161,161,161,161,161,161,161,162,162,162,162,162,162, -162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162, -162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,161,161,161,161,161, -161,161,161,161,161,161,161,160,160,160,160,160,160,160,160,160,159,159,159,159, -159,159,159,158,158,158,158,158,158,157,157,157,157,157,156,156,156,156,155,155, -155,155,154,154,154,154,153,153,153,152,152,152,151,151,151,150,150,150,149,149, -148,148,148,147,147,146,146,146,145,145,144,144,143,143,142,142,141,141,140,140, -139,139,138,138,137,137,136,135,135,134,134,133,133,132,131,131,130,130,129,128, -128,127,127,126,125,125,124,123,123,122,122,121,120,120,119,118,118,117,116,116, -115,114,114,113,113,112,111,111,110,109,109,108,107,107,106,106,105,104,104,103, -102,102,101,101,100,99,99,98,97,97,96,96,95,94,94,93,93,92,91,91,90,90,89,88,88,87, -87,86,86,85,84,84,83,83,82,81,81,80,80,79,79,78,77,77,76,76,75,74,74,73,73,72,72, -71,70,70,69,69,68,67,67,66,66,65,64,64,63,63,62,61,61,60,60,59,58,58,57,57,56,55, -55,54,54,53,52,52,51,50,50,49,49,48,47,47,46,45,45,44,44,43,42,42,41,41,40,39,39, -38,37,37,36,36,35,34,34,33,33,32,31,31,30,30,29,28,28,27,27,26,25,25,24,24,23,22, -22,21,21,20,20,19,18,18,17,17,16,16,15,15,14,13,13,12,12,11,11,10,10,9,9,8,8,7,7, -6,6,5,4,4,3,3,2,2,1,1,0,0, +131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,131072, +131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,131072,131072, +131072,131072,131072,131072,131072,131072,131072,131071,131071,131071,131071,131071, +131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071, +131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071,131071, +131071,131071,131071,131071,131071,131070,131070,131070,131070,131070,131070,131070, +131070,131070,131070,131070,131069,131069,131069,131069,131069,131069,131068,131068, +131068,131068,131068,131067,131067,131067,131066,131066,131066,131065,131065,131064, +131064,131064,131063,131062,131062,131061,131061,131060,131059,131058,131058,131057, +131056,131055,131054,131053,131052,131051,131049,131048,131047,131045,131044,131042, +131040,131039,131037,131035,131033,131031,131028,131026,131024,131021,131018,131015, +131012,131009,131006,131003,130999,130995,130991,130987,130983,130978,130974,130969, +130964,130959,130953,130947,130941,130935,130929,130922,130915,130908,130900,130892, +130884,130876,130867,130858,130848,130838,130828,130817,130806,130795,130783,130771, +130758,130745,130731,130717,130702,130687,130671,130655,130638,130621,130603,130585, +130566,130546,130526,130505,130483,130461,130437,130414,130389,130364,130338,130311, +130283,130255,130225,130195,130164,130132,130099,130065,130031,129995,129958,129920, +129881,129841,129800,129758,129715,129671,129625,129578,129531,129481,129431,129379, +129326,129272,129216,129159,129101,129041,128980,128918,128853,128788,128721,128652, +128582,128510,128437,128362,128285,128206,128126,128045,127961,127876,127789,127700, +127609,127517,127422,127326,127228,127128,127026,126922,126816,126708,126598,126486, +126371,126255,126137,126016,125894,125769,125642,125513,125382,125248,125112,124974, +124834,124691,124546,124399,124250,124098,123944,123787,123628,123467,123303,123137, +122969,122798,122625,122449,122271,122090,121907,121722,121534,121343,121150,120955, +120757,120557,120354,120149,119941,119731,119519,119304,119086,118866,118644,118419, +118192,117962,117730,117495,117258,117019,116777,116533,116287,116038,115787,115533, +115277,115019,114759,114496,114232,113965,113695,113424,113150,112874,112597,112317, +112035,111750,111464,111176,110886,110594,110300,110004,109706,109406,109105,108801, +108496,108189,107881,107571,107259,106945,106630,106313,105995,105675,105354,105032, +104708,104382,104056,103728,103398,103068,102736,102403,102070,101735,101398,101061, +100723,100384,100044,99704,99362,99020,98676,98333,97988,97643,97297,96950,96603, +96256,95908,95559,95211,94861,94512,94162,93812,93461,93111,92760,92409,92058,91707, +91356,91005,90654,90303,89952,89601,89250,88899,88549,88199,87849,87499,87150,86801, +86452,86104,85756,85408,85061,84715,84369,84023,83678,83334,82990,82646,82304,81962, +81620,81279,80939,80600,80261,79923,79586,79249,78914,78579,78244,77911,77578,77247, +76916,76585,76256,75927,75600,75273,74947,74622,74297,73974,73651,73329,73008,72688, +72369,72051,71733,71417,71101,70786,70472,70159,69847,69535,69225,68915,68606,68298, +67990,67684,67378,67073,66769,66466,66163,65861,65560,65260,64960,64661,64363,64066, +63769,63473,63178,62884,62590,62296,62004,61712,61421,61130,60840,60550,60262,59973, +59686,59399,59112,58826,58541,58256,57972,57688,57405,57122,56840,56558,56277,55996, +55715,55436,55156,54877,54599,54321,54043,53766,53490,53213,52938,52662,52387,52113, +51839,51565,51292,51019,50747,50475,50203,49932,49661,49391,49121,48852,48583,48314, +48046,47778,47511,47244,46978,46712,46446,46181,45917,45653,45389,45126,44864,44601, +44340,44079,43818,43558,43299,43040,42782,42524,42267,42010,41754,41499,41244,40990, +40737,40484,40232,39980,39729,39479,39230,38981,38733,38486,38239,37994,37749,37504, +37261,37018,36777,36536,36296,36056,35818,35580,35343,35108,34873,34639,34405,34173, +33942,33712,33482,33254,33026,32800,32574,32349,32126,31903,31682,31461,31242,31023, +30806,30589,30374,30160,29946,29734,29523,29313,29104,28896,28689,28483,28278,28074, +27872,27670,27470,27270,27072,26875,26678,26483,26289,26096,25904,25713,25524,25335, +25147,24961,24775,24591,24407,24225,24043,23863,23684,23505,23328,23152,22976,22802, +22628,22456,22285,22114,21945,21776,21608,21442,21276,21111,20947,20784,20622,20460, +20300,20140,19981,19823,19666,19510,19355,19200,19046,18893,18741,18589,18438,18288, +18139,17990,17843,17696,17549,17403,17258,17114,16970,16827,16685,16543,16402,16262, +16122,15983,15845,15707,15569,15433,15296,15161,15026,14891,14758,14624,14492,14359, +14228,14097,13966,13836,13707,13578,13449,13321,13194,13067,12941,12815,12689,12565, +12440,12317,12193,12071,11948,11826,11705,11584,11464,11344,11225,11107,10988,10871, +10753,10637,10521,10405,10290,10175,10061,9948,9835,9722,9610,9499,9388,9278,9168, +9059,8950,8842,8735,8628,8522,8416,8311,8206,8102,7998,7896,7793,7692,7591,7490, +7390,7291,7192,7094,6997,6900,6804,6709,6614,6520,6426,6333,6241,6149,6058,5968, +5878,5789,5700,5613,5526,5439,5353,5268,5184,5100,5017,4935,4853,4772,4691,4611, +4532,4454,4376,4299,4222,4146,4071,3997,3923,3849,3777,3705,3634,3563,3493,3423, +3354,3286,3219,3152,3085,3020,2954,2890,2826,2762,2700,2637,2576,2515,2454,2394, +2335,2276,2218,2160,2102,2046,1989,1934,1878,1824,1769,1716,1662,1610,1557,1505, +1454,1403,1352,1302,1253,1203,1155,1106,1058,1011,963,917,870,824,778,733,688,643, +599,555,512,468,425,383,341,299,257,216,175,134,93,53,13,-26,-65,-105,-143,-182, +-220,-258,-296,-333,-370,-407,-444,-480,-516,-552,-588,-623,-659,-694,-728,-763, +-797,-831,-865,-898,-932,-965,-997,-1030,-1062,-1094,-1126,-1158,-1189,-1220,-1251, +-1282,-1312,-1343,-1373,-1402,-1432,-1461,-1490,-1519,-1547,-1575,-1603,-1631,-1659, +-1686,-1713,-1739,-1766,-1792,-1818,-1844,-1869,-1894,-1919,-1944,-1968,-1992,-2016, +-2039,-2063,-2086,-2108,-2131,-2153,-2175,-2196,-2218,-2239,-2259,-2280,-2300,-2320, +-2339,-2359,-2378,-2396,-2415,-2433,-2451,-2469,-2486,-2503,-2520,-2536,-2552,-2568, +-2584,-2599,-2614,-2629,-2644,-2658,-2672,-2686,-2699,-2712,-2725,-2738,-2750,-2762, +-2774,-2786,-2797,-2808,-2819,-2829,-2840,-2850,-2860,-2869,-2878,-2888,-2896,-2905, +-2914,-2922,-2930,-2938,-2945,-2953,-2960,-2967,-2973,-2980,-2986,-2992,-2998,-3004, +-3010,-3015,-3020,-3026,-3030,-3035,-3040,-3044,-3048,-3053,-3057,-3060,-3064,-3068, +-3071,-3074,-3077,-3080,-3083,-3086,-3089,-3091,-3094,-3096,-3098,-3100,-3102,-3104, +-3106,-3108,-3109,-3111,-3112,-3113,-3115,-3116,-3117,-3118,-3119,-3120,-3120,-3121, +-3122,-3122,-3123,-3123,-3123,-3124,-3124,-3124,-3124,-3124,-3124,-3124,-3124,-3123, +-3123,-3123,-3122,-3122,-3121,-3121,-3120,-3120,-3119,-3118,-3117,-3116,-3115,-3114, +-3113,-3112,-3111,-3110,-3108,-3107,-3105,-3104,-3102,-3101,-3099,-3097,-3096,-3094, +-3092,-3090,-3088,-3086,-3083,-3081,-3079,-3076,-3074,-3071,-3069,-3066,-3063,-3061, +-3058,-3055,-3052,-3049,-3045,-3042,-3039,-3035,-3032,-3028,-3025,-3021,-3017,-3013, +-3010,-3005,-3001,-2997,-2993,-2989,-2984,-2980,-2975,-2971,-2966,-2961,-2956,-2951, +-2946,-2941,-2936,-2931,-2925,-2920,-2915,-2909,-2903,-2898,-2892,-2886,-2880,-2874, +-2868,-2862,-2856,-2850,-2843,-2837,-2830,-2824,-2817,-2811,-2804,-2797,-2791,-2784, +-2777,-2770,-2763,-2756,-2749,-2742,-2734,-2727,-2720,-2713,-2705,-2698,-2690,-2683, +-2675,-2668,-2660,-2653,-2645,-2637,-2630,-2622,-2614,-2606,-2599,-2591,-2583,-2575, +-2567,-2559,-2551,-2544,-2536,-2528,-2520,-2512,-2504,-2496,-2488,-2480,-2472,-2464, +-2456,-2448,-2440,-2432,-2424,-2416,-2408,-2400,-2392,-2384,-2376,-2368,-2360,-2352, +-2344,-2336,-2328,-2321,-2313,-2305,-2297,-2289,-2281,-2273,-2266,-2258,-2250,-2242, +-2234,-2227,-2219,-2211,-2203,-2196,-2188,-2180,-2172,-2165,-2157,-2149,-2142,-2134, +-2127,-2119,-2111,-2104,-2096,-2089,-2081,-2074,-2066,-2059,-2051,-2044,-2036,-2029, +-2021,-2014,-2006,-1999,-1991,-1984,-1976,-1969,-1962,-1954,-1947,-1939,-1932,-1925, +-1917,-1910,-1902,-1895,-1888,-1880,-1873,-1865,-1858,-1851,-1843,-1836,-1829,-1821, +-1814,-1806,-1799,-1792,-1784,-1777,-1770,-1762,-1755,-1747,-1740,-1733,-1725,-1718, +-1711,-1703,-1696,-1689,-1681,-1674,-1667,-1659,-1652,-1644,-1637,-1630,-1622,-1615, +-1608,-1600,-1593,-1586,-1578,-1571,-1564,-1556,-1549,-1542,-1535,-1527,-1520,-1513, +-1506,-1498,-1491,-1484,-1477,-1469,-1462,-1455,-1448,-1441,-1433,-1426,-1419,-1412, +-1405,-1398,-1391,-1384,-1377,-1370,-1363,-1356,-1349,-1342,-1335,-1328,-1321,-1314, +-1307,-1300,-1293,-1287,-1280,-1273,-1266,-1260,-1253,-1246,-1240,-1233,-1226,-1220, +-1213,-1207,-1200,-1193,-1187,-1181,-1174,-1168,-1161,-1155,-1149,-1142,-1136,-1130, +-1123,-1117,-1111,-1105,-1099,-1093,-1087,-1081,-1074,-1068,-1062,-1057,-1051,-1045, +-1039,-1033,-1027,-1021,-1015,-1010,-1004,-998,-992,-987,-981,-976,-970,-964,-959, +-953,-948,-942,-937,-931,-926,-920,-915,-910,-904,-899,-894,-888,-883,-878,-873, +-868,-862,-857,-852,-847,-842,-837,-832,-827,-822,-817,-812,-807,-802,-797,-792, +-787,-782,-777,-772,-768,-763,-758,-753,-748,-744,-739,-734,-729,-725,-720,-715, +-711,-706,-702,-697,-692,-688,-683,-679,-674,-670,-665,-661,-657,-652,-648,-643, +-639,-635,-630,-626,-622,-617,-613,-609,-605,-600,-596,-592,-588,-584,-579,-575, +-571,-567,-563,-559,-555,-551,-547,-543,-539,-535,-531,-527,-523,-519,-516,-512, +-508,-504,-500,-497,-493,-489,-485,-482,-478,-474,-471,-467,-463,-460,-456,-453, +-449,-446,-442,-439,-435,-432,-428,-425,-422,-418,-415,-412,-408,-405,-402,-399, +-395,-392,-389,-386,-383,-379,-376,-373,-370,-367,-364,-361,-358,-355,-352,-349, +-346,-343,-340,-338,-335,-332,-329,-326,-323,-321,-318,-315,-312,-310,-307,-304, +-302,-299,-296,-294,-291,-289,-286,-283,-281,-278,-276,-273,-271,-268,-266,-264, +-261,-259,-256,-254,-252,-249,-247,-245,-242,-240,-238,-236,-233,-231,-229,-227, +-224,-222,-220,-218,-216,-214,-212,-209,-207,-205,-203,-201,-199,-197,-195,-193, +-191,-189,-187,-185,-183,-181,-180,-178,-176,-174,-172,-170,-168,-166,-165,-163, +-161,-159,-157,-156,-154,-152,-151,-149,-147,-145,-144,-142,-140,-139,-137,-136, +-134,-132,-131,-129,-128,-126,-124,-123,-121,-120,-118,-117,-115,-114,-113,-111, +-110,-108,-107,-105,-104,-103,-101,-100,-99,-97,-96,-95,-93,-92,-91,-89,-88,-87,-86, +-84,-83,-82,-81,-80,-78,-77,-76,-75,-74,-73,-71,-70,-69,-68,-67,-66,-65,-64,-63, +-62,-61,-60,-59,-58,-57,-56,-55,-54,-53,-52,-51,-50,-49,-48,-47,-46,-46,-45,-44, +-43,-42,-41,-40,-40,-39,-38,-37,-36,-36,-35,-34,-33,-32,-32,-31,-30,-30,-29,-28, +-27,-27,-26,-25,-25,-24,-23,-23,-22,-21,-21,-20,-19,-19,-18,-18,-17,-16,-16,-15, +-15,-14,-14,-13,-12,-12,-11,-11,-10,-10,-9,-9,-8,-8,-7,-7,-6,-6,-5,-5,-5,-4,-4,-3, +-3,-2,-2,-1,-1,-1,0,0,0,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,7,8,8,8,9,9,9,9, +10,10,10,10,11,11,11,11,11,12,12,12,12,12,13,13,13,13,13,14,14,14,14,14,14,14,15, +15,15,15,15,15,15,16,16,16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,17,17,17, +17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18, +18,18,18,18,18,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16, +16,16,16,16,16,16,16,16,16,16,16,15,15,15,15,15,15,15,15,15,15,14,14,14,14,14,14, +14,14,14,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,10, +10,10,10,10,10,10,9,9,9,9,9,9,8,8,8,8,8,8,8,7,7,7,7,7,7,6,6,6,6,6,6,5,5,5,5,5,5,4, +4,4,4,4,4,3,3,3,3,3,2,2,2,2,2,2,1,1,1,1,1,1,0,0,0, }, { -131072,131070,131067,131063,131059,131055,131049,131043,131036,131029,131020, -131010,131000,130988,130975,130960,130945,130928,130909,130889,130867,130843,130818, -130790,130760,130729,130694,130658,130619,130577,130533,130486,130435,130382,130325, -130265,130201,130134,130063,129987,129908,129824,129736,129644,129546,129444,129337, -129224,129106,128982,128853,128718,128576,128429,128275,128114,127946,127771,127590, -127400,127203,126999,126786,126566,126337,126099,125853,125598,125333,125060,124777, -124484,124182,123869,123546,123213,122869,122515,122149,121773,121385,120986,120575, -120152,119717,119271,118812,118340,117856,117359,116850,116327,115792,115243,114681, -114105,113516,112913,112296,111665,111021,110362,109690,109003,108302,107587,106857, -106113,105355,104583,103796,102994,102178,101348,100504,99645,98772,97884,96983,96067, -95137,94194,93236,92265,91280,90281,89270,88245,87207,86156,85092,84016,82927,81826, -80713,79589,78453,77306,76148,74979,73800,72610,71411,70202,68983,67756,66520,65276, -64024,62765,61498,60224,58944,57658,56366,55069,53767,52460,51150,49836,48518,47199, -45876,44553,43227,41901,40575,39249,37923,36598,35275,33954,32636,31321,30009,28701, -27398,26100,24807,23521,22241,20969,19704,18447,17199,15960,14731,13512,12303,11106, -9920,8747,7586,6438,5304,4184,3078,1988,912,-147,-1190,-2216,-3225,-4217,-5190, --6146,-7082,-7999,-8897,-9775,-10633,-11471,-12287,-13082,-13856,-14609,-15339, --16047,-16732,-17395,-18035,-18652,-19245,-19815,-20361,-20884,-21382,-21857,-22307, --22733,-23135,-23513,-23866,-24194,-24498,-24778,-25034,-25265,-25471,-25654,-25812, --25947,-26057,-26144,-26208,-26247,-26264,-26257,-26228,-26176,-26102,-26006,-25887, --25748,-25587,-25405,-25203,-24980,-24738,-24476,-24195,-23896,-23578,-23242,-22889, --22519,-22133,-21730,-21312,-20879,-20431,-19969,-19494,-19006,-18505,-17992,-17468, --16933,-16388,-15833,-15268,-14696,-14115,-13527,-12932,-12331,-11724,-11112,-10496, --9876,-9253,-8627,-7998,-7369,-6738,-6107,-5477,-4847,-4219,-3592,-2969,-2348,-1731, --1119,-511,92,689,1279,1862,2438,3007,3566,4117,4659,5191,5713,6224,6724,7212,7689, -8154,8606,9045,9471,9883,10281,10666,11035,11390,11730,12055,12365,12659,12937, -13199,13445,13675,13888,14085,14265,14429,14576,14707,14820,14917,14998,15061,15108, -15139,15153,15150,15132,15097,15046,14980,14898,14800,14687,14559,14416,14259,14087, -13901,13702,13489,13263,13024,12773,12510,12234,11948,11650,11342,11023,10695,10357, -10010,9655,9291,8920,8541,8156,7764,7366,6963,6555,6142,5725,5305,4881,4455,4027, -3597,3166,2735,2303,1871,1440,1010,582,156,-268,-688,-1106,-1519,-1928,-2332,-2732, --3125,-3513,-3894,-4269,-4637,-4997,-5349,-5693,-6029,-6356,-6674,-6982,-7281,-7569, --7848,-8115,-8373,-8619,-8854,-9078,-9290,-9490,-9679,-9855,-10019,-10171,-10311, --10438,-10553,-10655,-10745,-10821,-10885,-10937,-10976,-11002,-11015,-11016,-11005, --10981,-10945,-10896,-10836,-10764,-10680,-10584,-10477,-10358,-10229,-10088,-9937, --9776,-9605,-9423,-9232,-9032,-8822,-8604,-8377,-8142,-7900,-7649,-7392,-7127,-6856, --6579,-6296,-6008,-5714,-5416,-5113,-4807,-4496,-4183,-3867,-3548,-3227,-2905,-2581, --2256,-1931,-1605,-1280,-956,-632,-310,10,329,645,958,1268,1574,1876,2174,2468,2757, -3041,3319,3591,3857,4117,4370,4617,4856,5088,5312,5528,5736,5936,6127,6310,6483, -6648,6804,6950,7087,7214,7332,7439,7537,7626,7704,7772,7830,7878,7916,7944,7962, -7970,7968,7956,7935,7903,7862,7811,7751,7681,7602,7514,7418,7312,7198,7075,6944, -6805,6658,6504,6342,6173,5997,5815,5626,5431,5230,5023,4811,4594,4373,4147,3916, -3682,3444,3203,2959,2713,2464,2213,1960,1707,1452,1196,940,683,427,172,-83,-336, --588,-839,-1087,-1333,-1576,-1816,-2053,-2287,-2517,-2743,-2964,-3181,-3393,-3601, --3803,-3999,-4190,-4375,-4553,-4726,-4892,-5051,-5204,-5349,-5488,-5619,-5742,-5859, --5967,-6068,-6161,-6246,-6324,-6393,-6454,-6507,-6552,-6589,-6617,-6638,-6650,-6654, --6651,-6639,-6619,-6591,-6555,-6512,-6461,-6402,-6336,-6262,-6181,-6093,-5998,-5897, --5789,-5674,-5553,-5425,-5292,-5153,-5009,-4859,-4704,-4545,-4380,-4211,-4038,-3861, --3680,-3496,-3308,-3118,-2924,-2729,-2531,-2331,-2129,-1926,-1722,-1516,-1310,-1104, --898,-692,-486,-280,-76,127,329,529,727,923,1117,1308,1496,1681,1862,2041,2215,2386, -2552,2714,2872,3025,3173,3316,3454,3586,3713,3835,3951,4060,4164,4262,4353,4439, -4518,4590,4656,4716,4769,4815,4854,4887,4914,4933,4946,4952,4952,4945,4931,4911, -4884,4851,4812,4766,4715,4657,4593,4523,4448,4366,4280,4188,4091,3988,3881,3769, -3653,3532,3407,3277,3144,3008,2867,2724,2577,2427,2275,2120,1963,1804,1643,1480, -1316,1151,985,818,650,483,315,147,-21,-188,-354,-519,-683,-846,-1007,-1166,-1323, --1478,-1631,-1781,-1928,-2073,-2214,-2352,-2487,-2618,-2746,-2869,-2988,-3104,-3215, --3321,-3423,-3521,-3613,-3701,-3784,-3862,-3934,-4002,-4064,-4121,-4172,-4219,-4259, --4295,-4324,-4349,-4367,-4381,-4389,-4391,-4388,-4379,-4365,-4346,-4322,-4292,-4257, --4217,-4172,-4122,-4067,-4007,-3943,-3874,-3800,-3723,-3641,-3555,-3465,-3371,-3274, --3173,-3068,-2961,-2850,-2737,-2620,-2501,-2380,-2256,-2131,-2003,-1874,-1743,-1610, --1477,-1343,-1207,-1071,-935,-798,-661,-525,-388,-252,-117,18,152,284,416,546,674, -800,925,1047,1167,1285,1400,1513,1622,1729,1833,1933,2031,2124,2215,2301,2384,2463, -2538,2609,2677,2739,2798,2853,2903,2949,2990,3027,3060,3088,3111,3131,3145,3155, -3161,3162,3159,3151,3139,3122,3101,3076,3047,3013,2975,2934,2888,2839,2785,2728, -2668,2604,2536,2465,2391,2314,2234,2151,2066,1977,1887,1794,1698,1601,1502,1401, -1298,1194,1089,982,874,766,656,546,436,325,214,103,-7,-118,-228,-338,-446,-554,-661, --767,-872,-975,-1077,-1177,-1275,-1371,-1465,-1557,-1647,-1735,-1820,-1902,-1982, --2059,-2134,-2205,-2273,-2338,-2400,-2459,-2515,-2567,-2616,-2661,-2703,-2741,-2776, --2807,-2835,-2859,-2879,-2895,-2908,-2918,-2923,-2925,-2924,-2918,-2910,-2897,-2881, --2862,-2839,-2813,-2784,-2751,-2715,-2676,-2633,-2588,-2540,-2489,-2435,-2379,-2320, --2258,-2194,-2128,-2059,-1988,-1916,-1841,-1765,-1687,-1607,-1526,-1444,-1360,-1276, --1190,-1104,-1016,-928,-840,-751,-662,-573,-484,-395,-306,-218,-130,-43,44,130,215, -299,382,463,543,622,699,775,849,921,991,1059,1125,1189,1251,1310,1367,1422,1474, -1524,1571,1615,1657,1696,1732,1765,1795,1823,1848,1870,1888,1904,1917,1928,1935, -1939,1940,1939,1934,1927,1917,1904,1888,1870,1849,1825,1798,1769,1738,1704,1668, -1629,1588,1545,1500,1452,1403,1352,1299,1244,1188,1130,1071,1010,948,884,820,755, -688,621,553,485,415,346,276,206,136,65,-5,-75,-145,-215,-284,-352,-421,-488,-554, --620,-685,-749,-811,-873,-933,-992,-1049,-1105,-1159,-1212,-1263,-1312,-1359,-1405, --1448,-1490,-1530,-1567,-1603,-1636,-1667,-1696,-1723,-1747,-1769,-1789,-1806,-1822, --1835,-1845,-1853,-1859,-1863,-1864,-1863,-1859,-1853,-1845,-1835,-1822,-1808,-1791, --1772,-1751,-1727,-1702,-1675,-1646,-1615,-1582,-1548,-1511,-1473,-1434,-1392,-1350, --1306,-1261,-1214,-1166,-1117,-1067,-1016,-964,-911,-857,-803,-748,-693,-637,-580, --524,-467,-410,-352,-295,-238,-181,-124,-68,-12,44,99,154,208,261,314,365,416,466, -514,562,609,654,698,741,782,822,861,898,934,968,1000,1031,1060,1088,1114,1138,1160, -1181,1200,1217,1232,1245,1257,1267,1275,1281,1285,1287,1288,1287,1284,1280,1273, -1265,1256,1244,1231,1217,1200,1183,1163,1143,1121,1097,1072,1046,1018,990,960,929, -897,864,830,795,760,723,686,648,610,571,531,491,450,410,369,327,286,245,203,161, -120,79,38,-3,-44,-84,-124,-163,-202,-240,-278,-315,-351,-387,-422,-456,-489,-521, --552,-582,-611,-639,-666,-692,-717,-741,-763,-784,-804,-823,-840,-856,-871,-885, --897,-908,-917,-926,-932,-938,-942,-945,-947,-947,-946,-943,-940,-935,-929,-921, --913,-903,-892,-880,-867,-852,-837,-820,-803,-785,-765,-745,-724,-702,-680,-656, --632,-607,-582,-556,-529,-502,-475,-447,-419,-390,-361,-332,-302,-273,-243,-213, --184,-154,-124,-95,-65,-36,-7,22,51,79,107,134,161,187,213,239,263,288,311,334,356, -378,398,418,437,456,473,490,506,520,534,547,559,571,581,590,598,606,612,617,622, -625,628,629,630,629,628,626,623,618,613,608,601,593,585,576,566,555,543,531,518, -504,490,475,459,443,427,409,392,374,355,336,317,297,277,257,236,216,195,174,153, -132,110,89,68,47,26,5,-16,-37,-58,-78,-98,-118,-137,-156,-175,-193,-211,-229,-246, --263,-279,-294,-310,-324,-338,-351,-364,-376,-388,-399,-409,-419,-428,-436,-443, --450,-457,-462,-467,-471,-474,-477,-479,-480,-481,-481,-480,-479,-477,-474,-470, --466,-462,-456,-451,-444,-437,-429,-421,-413,-403,-394,-384,-373,-362,-350,-339, --326,-314,-301,-288,-274,-260,-246,-232,-218,-203,-189,-174,-159,-144,-129,-114,-98, --83,-68,-53,-38,-24,-9,6,20,34,48,62,75,88,101,114,126,138,150,161,172,183,193,203, -212,221,229,237,244,251,258,264,270,275,279,283,287,290,292,294,296,297,298,298, -297,296,295,293,291,288,285,281,277,272,267,262,256,250,244,237,230,222,214,206, -198,189,180,171,162,152,143,133,123,113,102,92,81,71,60,50,39,28,18,7,-3,-14,-24, --35,-45,-55,-65,-74,-84,-93,-103,-112,-120,-129,-137,-145,-153,-161,-168,-175,-181, --188,-194,-199,-205,-210,-215,-219,-223,-227,-230,-233,-235,-238,-239,-241,-242, --243,-243,-243,-243,-242,-242,-240,-239,-237,-234,-232,-229,-226,-222,-219,-214, --210,-206,-201,-196,-191,-185,-179,-173,-167,-161,-155,-148,-141,-135,-128,-121, --114,-106,-99,-92,-84,-77,-70,-62,-55,-47,-40,-33,-25,-18,-11,-4,3,10,17,23,30,36, -42,48,54,60,65,70,75,80,85,89,94,98,101,105,108,111,114,117,119,121,123,124,126, -127,127,128,128,128,128,128,127,126,125,123,122,120,118,116,113,111,108,105,102,98, -95,91,87,83,79,75,70,66,61,57,52,47,42,37,32,27,22,17,12,7,2,-4,-9,-14,-19,-24, --29,-34,-38,-43,-48,-52,-57,-61,-66,-70,-74,-78,-81,-85,-89,-92,-95,-98,-101,-104, --107,-109,-111,-113,-115,-117,-118,-120,-121,-122,-123,-124,-124,-124,-125,-125, --124,-124,-124,-123,-122,-121,-120,-118,-117,-115,-114,-112,-110,-107,-105,-103, --100,-98,-95,-92,-89,-86,-83,-80,-77,-73,-70,-67,-63,-60,-56,-53,-49,-45,-42,-38, --35,-31,-28,-24,-21,-17,-14,-10,-7,-4,-1,2,5,8,11,14,17,20,22,24,27,29,31,33,35,37, -38,40,41,43,44,45,46,46,47,47,48,48,48,48,48,48,47,47,46,46,45,44,43,41,40,39,37, -36,34,32,30,28,26,24,22,20,17,15,13,10,8,5,3,0,-2,-5,-8,-10,-13,-15,-18,-21,-23, --26,-28,-31,-33,-35,-38,-40,-42,-44,-47,-49,-50,-52,-54,-56,-58,-59,-61,-62,-63, --64,-66,-66,-67,-68,-69,-69,-70,-70,-71,-71,-71,-71,-71,-70,-70,-70,-69,-68,-68, --67,-66,-65,-64,-63,-62,-60,-59,-58,-56,-55,-53,-52,-50,-48,-47,-45,-43,-42,-40, --38,-36,-35,-33,-31,-30,-28,-26,-25,-23,-22,-20,-19,-18,-16,-15,-14,-13,-12,-11, --10,-9,-8,-7,-7,-6,-6,-5,-5,-4,-4,-4,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-3,-2,-2,-2, --2,-2,-2,-2,-1,-1,-1,0,0,0,1,1,2,2,2,3,3,3,3,3,3,2,0, +131072,131072,131072,131072,131072,131072,131072,131072,131071,131071,131071, +131071,131071,131070,131070,131070,131069,131069,131068,131068,131067,131066,131066, +131065,131064,131063,131061,131060,131058,131057,131055,131053,131051,131048,131046, +131043,131040,131037,131033,131029,131025,131021,131016,131011,131005,130999,130993, +130986,130978,130970,130962,130953,130943,130933,130922,130910,130897,130884,130870, +130855,130839,130822,130804,130785,130765,130744,130721,130697,130672,130646,130618, +130589,130558,130525,130491,130455,130417,130377,130336,130292,130246,130198,130147, +130095,130039,129982,129921,129858,129792,129723,129651,129576,129497,129416,129330, +129242,129149,129053,128953,128849,128741,128628,128512,128390,128265,128134,127998, +127858,127712,127561,127405,127243,127076,126903,126723,126538,126346,126148,125944, +125733,125515,125290,125058,124818,124572,124317,124055,123785,123508,123222,122927, +122624,122313,121993,121664,121326,120978,120622,120255,119880,119494,119099,118693, +118278,117852,117415,116968,116510,116042,115562,115072,114570,114057,113532,112996, +112448,111889,111317,110734,110139,109532,108912,108280,107636,106980,106311,105630, +104936,104229,103510,102778,102034,101276,100506,99724,98928,98120,97299,96466,95620, +94761,93889,93005,92109,91200,90279,89345,88400,87442,86472,85490,84497,83492,82475, +81447,80408,79358,78297,77225,76142,75050,73947,72834,71712,70580,69439,68289,67130, +65963,64787,63604,62413,61215,60009,58797,57578,56354,55123,53887,52646,51401,50151, +48897,47639,46378,45115,43848,42580,41310,40039,38767,37495,36223,34951,33680,32410, +31142,29877,28614,27354,26098,24846,23598,22355,21118,19887,18662,17444,16233,15030, +13835,12649,11472,10304,9147,8001,6865,5741,4629,3529,2442,1368,308,-738,-1769,-2786, +-3787,-4772,-5741,-6693,-7628,-8546,-9447,-10329,-11192,-12037,-12863,-13669,-14455, +-15221,-15967,-16692,-17396,-18079,-18741,-19380,-19998,-20593,-21167,-21717,-22245, +-22750,-23232,-23690,-24126,-24538,-24926,-25291,-25632,-25949,-26243,-26513,-26759, +-26981,-27179,-27354,-27505,-27633,-27737,-27818,-27875,-27910,-27921,-27909,-27875, +-27818,-27739,-27638,-27516,-27371,-27206,-27019,-26812,-26584,-26336,-26069,-25782, +-25476,-25151,-24808,-24448,-24070,-23674,-23263,-22835,-22391,-21933,-21459,-20972, +-20470,-19955,-19428,-18888,-18337,-17775,-17202,-16619,-16027,-15425,-14816,-14199, +-13574,-12943,-12306,-11663,-11016,-10364,-9709,-9051,-8390,-7728,-7064,-6400,-5735, +-5071,-4408,-3747,-3088,-2432,-1779,-1131,-486,153,786,1413,2034,2647,3253,3850,4439, +5018,5587,6147,6696,7233,7759,8274,8776,9265,9741,10204,10652,11087,11507,11912, +12303,12677,13037,13380,13707,14018,14313,14590,14851,15095,15321,15531,15723,15897, +16055,16194,16316,16420,16507,16577,16628,16663,16679,16679,16661,16627,16575,16507, +16422,16320,16203,16069,15920,15755,15575,15380,15170,14946,14708,14456,14191,13913, +13622,13319,13004,12678,12340,11992,11633,11265,10887,10501,10106,9703,9292,8875, +8451,8021,7585,7145,6699,6250,5797,5341,4883,4422,3960,3497,3033,2570,2106,1644, +1183,724,268,-186,-636,-1082,-1524,-1961,-2393,-2820,-3240,-3654,-4061,-4460,-4852, +-5236,-5611,-5977,-6334,-6682,-7019,-7347,-7664,-7970,-8265,-8549,-8822,-9082,-9331, +-9567,-9791,-10002,-10200,-10386,-10558,-10718,-10864,-10997,-11116,-11222,-11314, +-11393,-11458,-11510,-11548,-11573,-11584,-11582,-11566,-11537,-11496,-11441,-11373, +-11293,-11200,-11095,-10978,-10849,-10708,-10556,-10392,-10218,-10032,-9837,-9631, +-9415,-9190,-8955,-8712,-8460,-8200,-7931,-7656,-7373,-7083,-6787,-6485,-6177,-5864, +-5547,-5224,-4898,-4568,-4235,-3899,-3560,-3220,-2878,-2535,-2191,-1847,-1502,-1158, +-816,-474,-134,204,540,872,1202,1528,1849,2167,2480,2788,3091,3388,3678,3963,4241, +4512,4776,5033,5281,5522,5754,5979,6194,6400,6598,6786,6965,7134,7293,7443,7582, +7711,7830,7939,8038,8126,8203,8271,8327,8373,8409,8434,8448,8452,8446,8429,8403, +8366,8319,8262,8195,8119,8033,7938,7834,7721,7599,7469,7330,7183,7028,6865,6695, +6518,6334,6143,5946,5743,5534,5319,5100,4875,4646,4412,4175,3934,3689,3442,3192, +2940,2685,2429,2172,1913,1654,1394,1135,875,616,359,102,-153,-406,-657,-906,-1152, +-1394,-1634,-1870,-2101,-2329,-2552,-2771,-2985,-3193,-3396,-3594,-3785,-3971,-4150, +-4323,-4490,-4649,-4802,-4947,-5086,-5217,-5340,-5456,-5564,-5665,-5757,-5842,-5919, +-5987,-6048,-6101,-6145,-6181,-6209,-6229,-6241,-6245,-6241,-6229,-6210,-6182,-6147, +-6104,-6053,-5996,-5930,-5858,-5779,-5693,-5600,-5501,-5395,-5283,-5165,-5041,-4911, +-4777,-4637,-4491,-4341,-4187,-4028,-3865,-3699,-3528,-3354,-3177,-2998,-2815,-2630, +-2444,-2255,-2064,-1872,-1680,-1486,-1292,-1097,-902,-708,-513,-320,-127,64,254,442, +629,813,995,1174,1351,1525,1695,1862,2026,2185,2341,2493,2640,2783,2921,3054,3183, +3306,3424,3537,3645,3746,3843,3933,4018,4097,4170,4237,4298,4353,4402,4445,4482, +4512,4536,4555,4567,4573,4573,4566,4554,4537,4513,4483,4448,4407,4361,4309,4252, +4190,4122,4050,3973,3891,3805,3714,3619,3520,3417,3310,3200,3086,2969,2849,2726, +2600,2472,2341,2209,2074,1938,1800,1660,1520,1378,1236,1093,950,806,663,520,377,235, +93,-48,-187,-325,-462,-597,-730,-862,-991,-1118,-1242,-1364,-1483,-1599,-1712, +-1822,-1929,-2032,-2132,-2228,-2320,-2409,-2494,-2575,-2651,-2724,-2792,-2856,-2916, +-2971,-3022,-3069,-3111,-3148,-3181,-3210,-3234,-3253,-3268,-3278,-3284,-3285,-3282, +-3275,-3263,-3247,-3227,-3202,-3174,-3141,-3104,-3064,-3019,-2971,-2919,-2864,-2805, +-2743,-2678,-2610,-2539,-2464,-2387,-2308,-2226,-2142,-2055,-1966,-1876,-1783,-1689, +-1594,-1497,-1399,-1299,-1199,-1098,-996,-894,-791,-689,-586,-483,-380,-278,-176,-75, +26,126,224,322,418,513,606,698,788,877,963,1047,1129,1209,1287,1362,1434,1504, +1572,1637,1698,1757,1814,1867,1917,1964,2008,2049,2086,2121,2152,2180,2205,2227, +2245,2260,2272,2280,2286,2288,2287,2283,2276,2265,2252,2236,2216,2194,2169,2142, +2111,2078,2042,2004,1963,1921,1875,1828,1778,1727,1673,1618,1561,1502,1442,1380, +1317,1253,1187,1120,1053,984,915,846,775,705,633,562,491,419,348,277,206,135,65,-5, +-74,-142,-209,-276,-341,-406,-469,-531,-592,-651,-709,-765,-820,-873,-924,-974, +-1021,-1067,-1111,-1153,-1193,-1231,-1267,-1301,-1332,-1362,-1389,-1414,-1437,-1457, +-1476,-1492,-1505,-1517,-1526,-1534,-1538,-1541,-1542,-1540,-1536,-1530,-1522,-1512, +-1500,-1486,-1470,-1452,-1432,-1410,-1387,-1362,-1335,-1306,-1276,-1245,-1212,-1178, +-1142,-1105,-1067,-1028,-987,-946,-904,-861,-817,-772,-727,-681,-635,-588,-541,-494, +-446,-399,-351,-303,-255,-208,-160,-113,-66,-20,26,72,117,161,205,248,290,331,371, +411,449,486,523,558,592,624,656,686,715,743,769,794,817,839,860,879,897,913,928, +941,953,963,972,979,985,989,992,993,993,992,989,984,979,972,963,954,943,931,917, +903,887,870,852,833,813,792,771,748,724,700,675,649,623,596,568,540,512,483,453, +424,394,363,333,302,272,241,210,180,149,119,88,58,28,-1,-30,-59,-88,-115,-143,-170, +-196,-222,-247,-272,-296,-319,-341,-363,-384,-404,-423,-441,-459,-476,-491,-506, +-520,-533,-545,-557,-567,-576,-584,-592,-598,-604,-608,-612,-614,-616,-617,-616, +-615,-613,-610,-607,-602,-597,-591,-583,-576,-567,-558,-548,-537,-526,-514,-501, +-488,-474,-460,-445,-430,-414,-398,-382,-365,-347,-330,-312,-294,-276,-257,-239, +-220,-201,-182,-163,-144,-126,-107,-88,-69,-51,-32,-14,4,22,39,56,73,90,106,122,137, +152,167,181,195,208,221,233,245,257,267,277,287,296,305,313,320,327,333,339,344, +348,352,355,358,360,362,363,363,363,362,361,359,357,354,351,347,343,338,333,327, +321,315,308,301,293,285,277,268,259,250,241,231,221,211,201,190,180,169,158,147, +136,125,114,103,91,80,69,58,47,36,25,15,4,-7,-17,-27,-37,-47,-56,-66,-75,-84,-92, +-101,-109,-117,-124,-131,-138,-145,-151,-157,-163,-168,-173,-178,-182,-186,-189, +-193,-196,-198,-200,-202,-204,-205,-206,-206,-206,-206,-206,-205,-204,-203,-201, +-199,-197,-194,-191,-188,-185,-181,-178,-174,-169,-165,-160,-155,-150,-145,-140, +-135,-129,-123,-117,-111,-105,-99,-93,-87,-81,-74,-68,-62,-55,-49,-43,-36,-30,-24, +-18,-12,-6,0,6,12,18,23,29,34,39,44,49,54,58,63,67,71,75,79,82,86,89,92,95,97,100, +102,104,106,107,109,110,111,112,112,113,113,113,113,113,112,112,111,110,109,107, +106,104,103,101,99,97,94,92,89,87,84,81,78,75,72,69,66,63,60,56,53,50,46,43,39,36, +32,29,25,22,18,15,12,8,5,2,-1,-5,-8,-11,-14,-17,-19,-22,-25,-27,-30,-32,-35,-37, +-39,-41,-43,-45,-46,-48,-50,-51,-52,-53,-54,-55,-56,-57,-58,-58,-59,-59,-59,-59, +-59,-59,-59,-59,-58,-58,-57,-57,-56,-55,-54,-54,-53,-51,-50,-49,-48,-46,-45,-44, +-42,-41,-39,-37,-36,-34,-32,-31,-29,-27,-25,-23,-22,-20,-18,-16,-14,-12,-11,-9,-7, +-5,-4,-2,0,1,3,5,6,8,9,11,12,13,15,16,17,18,19,20,21,22,23,24,25,25,26,27,27,28, +28,29,29,29,29,29,30,30,30,30,29,29,29,29,29,28,28,27,27,27,26,25,25,24,24,23,22, +21,21,20,19,18,17,16,16,15,14,13,12,11,10,9,8,7,7,6,5,4,3,2,1,0,0,-1,-2,-3,-3,-4, +-5,-6,-6,-7,-7,-8,-9,-9,-10,-10,-11,-11,-11,-12,-12,-12,-13,-13,-13,-13,-14,-14, +-14,-14,-14,-14,-14,-14,-14,-14,-14,-14,-14,-13,-13,-13,-13,-13,-12,-12,-12,-11, +-11,-11,-10,-10,-10,-9,-9,-9,-8,-8,-7,-7,-6,-6,-6,-5,-5,-4,-4,-3,-3,-3,-2,-2,-1,-1, +-1,0,0,1,1,1,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, +6,6,6,6,5,5,5,5,5,5,5,4,4,4,4,4,4,3,3,3,3,3,2,2,2,2,2,2,1,1,1,1,1,0,0,0,0,0,0,-1, +-1,-1,-1,-1,-1,-1,-1,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-3,-3,-3,-3,-3,-3, +-3,-3,-3,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-1,-1,-1,-1,-1, +-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, +1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, }, }; -- 2.47.3