Index: sys/dev/cp/cpddk.h =================================================================== --- sys/dev/cp/cpddk.h +++ /dev/null @@ -1,365 +0,0 @@ -/*- - * Cronyx Tau-PCI DDK definitions. - * - * Copyright (C) 1999-2003 Cronyx Engineering. - * Author: Serge Vakulenko, - * - * Copyright (C) 2000-2004 Cronyx Engineering. - * Author: Roman Kurakin, - * - * This software is distributed with NO WARRANTIES, not even the implied - * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * Authors grant any other persons or organisations a permission to use, - * modify and redistribute this software in source and binary forms, - * as long as this message is kept with the software, all derivative - * works or modified versions. - * - * $Cronyx: cpddk.h,v 1.8.4.20 2004/12/06 16:21:06 rik Exp $ - * $FreeBSD$ - */ -#define NBRD 6 /* the maximum number of installed boards */ -#define NCHAN 4 /* the number of channels on the board */ -#define NRBUF 64 /* the number of receive buffers per channel, - min 2 */ -#define NTBUF 4 /* the number of transmit buffers per channel */ -#define BUFSZ 1664 /* i/o buffer size (26*64, min 1601) */ -#define QSZ 128 /* intr queue size (multiple of 32, min 32) */ - -#ifndef CPDDK_COBF_SAFE -#pragma pack(4) - -typedef struct { - unsigned long bpv; /* bipolar violations */ - unsigned long fse; /* frame sync errors */ - unsigned long crce; /* CRC errors */ - unsigned long rcrce; /* remote CRC errors (E-bit) */ - unsigned long uas; /* unavailable seconds */ - unsigned long les; /* line errored seconds */ - unsigned long es; /* errored seconds */ - unsigned long bes; /* bursty errored seconds */ - unsigned long ses; /* severely errored seconds */ - unsigned long oofs; /* out of frame seconds */ - unsigned long css; /* controlled slip seconds */ - unsigned long dm; /* degraded minutes */ -} cp_gstat_t; - -typedef struct { /* cross-connector parameters */ - unsigned char ts [32]; /* timeslot number */ - unsigned char link [32]; /* E1 link number */ -} cp_dxc_t; - -typedef struct { - unsigned long len; /* data buffer length, fe, hold, hi */ -#define DESC_FE 0x80000000 -#define DESC_HOLD 0x40000000 -#define DESC_HI 0x20000000 -#define DESC_LEN(v) ((v) >> 16 & 0x1fff) - - unsigned long next; /* next descriptor pointer */ - unsigned long data; /* pointer to data buffer */ - unsigned long status; /* complete, receive abort, fe, len */ -#define DESC_RA 0x00000200 -#define DESC_C 0x40000000 - - unsigned long fe; /* pointer to frame end descriptor */ -} cp_desc_t; - -typedef struct { - cp_desc_t tdesc [NTBUF]; /* transmit buffer descriptors */ - cp_desc_t rdesc [NRBUF]; /* receive buffer descriptors */ - unsigned char tbuffer [NTBUF] [BUFSZ]; /* transmit buffers */ - unsigned char rbuffer [NRBUF] [BUFSZ]; /* receive buffers */ -} cp_buf_t; - -typedef struct { - unsigned long iqrx [NCHAN] [QSZ]; /* rx intr queue */ - unsigned long iqtx [NCHAN] [QSZ]; /* tx intr queue */ - unsigned long iqlx [QSZ]; /* LBI intr queue */ -} cp_qbuf_t; - -typedef struct _cp_chan_t { - unsigned char *regs; /* base addr of channel registers */ - volatile unsigned long *RXBAR, *TXBAR, *CFG; - volatile unsigned long *BRDA, *FRDA, *LRDA, *BTDA, *FTDA, *LTDA; - unsigned char CCR, CSR, GMD, GLS, E1CS, E1CR, E1EPS; - - unsigned char num; /* channel number, 0..1 */ - unsigned char type; /* channel type */ -#define T_NONE 0 /* no channel */ -#define T_SERIAL 1 /* V.35/RS */ -#define T_G703 2 /* G.703 */ -#define T_E1 3 /* E1 */ -#define T_E3 4 /* E3 */ -#define T_HSSI 5 /* HSSI */ -#define T_DATA 6 /* no physical interface */ -#define T_T3 7 /* T3 */ -#define T_STS1 8 /* STS1 */ - - struct _cp_board_t *board; /* board pointer */ - - unsigned char dtr; /* DTR signal value */ - unsigned char rts; /* RTS signal value */ - unsigned long baud; /* data rate, bps */ - unsigned char dpll; /* dpll mode */ - unsigned char nrzi; /* nrzi mode */ - unsigned char invtxc; /* invert tx clock */ - unsigned char invrxc; /* invert rx clock */ - unsigned char lloop; /* local loopback mode */ - unsigned char rloop; /* remote loopback mode */ - unsigned char gsyn; /* G.703 clock mode */ -#define GSYN_INT 0 /* internal transmit clock source */ -#define GSYN_RCV 1 /* transmit clock source = receive */ -#define GSYN_RCV0 2 /* tclk = rclk from channel 0 */ -#define GSYN_RCV1 3 /* ...from channel 1 */ -#define GSYN_RCV2 4 /* ...from channel 2 */ -#define GSYN_RCV3 5 /* ...from channel 3 */ - - unsigned char scrambler; /* G.703 scrambler enable */ - - unsigned long ts; /* E1 timeslot mask */ - unsigned char higain; /* E1 high gain mode */ - unsigned char use16; /* E1 use ts 16 */ - unsigned char crc4; /* E1 enable CRC4 */ - unsigned char phony; /* E1 phony mode */ - unsigned char unfram; /* E1 unframed mode */ - unsigned char monitor; /* E1 monitoring mode */ - unsigned char dir; /* E1 direction mode */ - cp_dxc_t dxc; /* E1 cross-connect params */ - - unsigned char ais; /* E3 AIS */ - unsigned char losais; /* E3 AIS on LOS*/ - unsigned char ber; /* E3 BER */ - unsigned char cablen; /* E3 cable length */ - unsigned char e3cr1; /* e3cr1 clone */ - - unsigned char scc_ien; /* SCC Interrupts enabled */ - unsigned char ds_ien; /* DS Interrupts enabled */ - - unsigned long imr; - unsigned char ccr; /* CCR image */ - unsigned long ccr0; /* CCR0 clone */ - unsigned long ccr1; /* CCR1 clone */ - unsigned long ccr2; /* CCR2 clone */ - unsigned char gmd; /* G.703 MDi register image */ - unsigned char e1cr; /* E1 CR register image */ - unsigned char ds21x54; /* new tranceiver flag */ - - unsigned long rintr; /* receive interrupts */ - unsigned long tintr; /* transmit interrupts */ - ulong64 ibytes; /* input bytes */ - ulong64 obytes; /* output bytes */ - unsigned long ipkts; /* input packets */ - unsigned long opkts; /* output packets */ - unsigned long underrun; /* output underrun errors */ - unsigned long overrun; /* input overrun errors */ - unsigned long frame; /* input frame errors */ - unsigned long crc; /* input crc errors */ - - unsigned short status; /* E1/G.703 line status bit mask */ -#define ESTS_NOALARM 0x0001 /* no alarm present */ -#define ESTS_FARLOF 0x0002 /* receiving far loss of framing */ -#define ESTS_AIS 0x0008 /* receiving all ones */ -#define ESTS_LOF 0x0020 /* loss of framing */ -#define ESTS_LOS 0x0040 /* loss of signal */ -#define ESTS_AIS16 0x0100 /* receiving all ones in timeslot 16 */ -#define ESTS_FARLOMF 0x0200 /* receiving alarm in timeslot 16 */ -#define ESTS_LOMF 0x0400 /* loss of multiframe sync */ -#define ESTS_TSTREQ 0x0800 /* test code detected */ -#define ESTS_TSTERR 0x1000 /* test error */ - - unsigned long totsec; /* total seconds elapsed */ - unsigned long cursec; /* current seconds elapsed */ - unsigned long degsec; /* degraded seconds */ - unsigned long degerr; /* errors during degraded seconds */ - cp_gstat_t currnt; /* current 15-min interval data */ - cp_gstat_t total; /* total statistics data */ - cp_gstat_t interval [48]; /* 12 hour period data */ - unsigned long e3status; /* E3 status */ -#define E3STS_LOS 0x00000002 /* Lost of synchronization */ -#define E3STS_TXE 0x00000004 /* Transmit error */ -#define E3STS_AIS 0x00000008 /* Transmit error */ - unsigned long e3csec_5; /* 1/5 of second counter */ - unsigned long e3tsec; /* total seconds coounter */ - unsigned long e3ccv; /* E3 current 15-min cv errors */ - unsigned long e3tcv; /* E3 total cv errors */ - unsigned long e3icv[48]; /* E3 12 hour period cv errors */ - - unsigned long *iqrx; /* rx intr queue */ - unsigned long *iqtx; /* tx intr queue */ - int irn, itn; - - unsigned char *tbuf [NTBUF]; /* transmit buffers */ - cp_desc_t *tdesc; /* transmit buffer descriptors */ - unsigned long tphys [NTBUF]; /* transmit buffer phys address */ - unsigned long tdphys [NTBUF]; /* transmit descr phys addresses */ - int tn; /* first active transmit buffer */ - int te; /* first empty transmit buffer */ - - unsigned char *rbuf [NRBUF]; /* receive buffers */ - cp_desc_t *rdesc; /* receive buffer descriptors */ - unsigned long rphys [NRBUF]; /* receive buffer phys address */ - unsigned long rdphys [NRBUF]; /* receive descr phys addresses */ - int rn; /* first active receive buffer */ - - void *tag [NTBUF]; /* system dependent data per buffer */ - void *sys; /* system dependent data per channel */ - unsigned char debug; /* debug level, 0..2 */ - unsigned char debug_shadow; /* debug shadow */ - - void (*transmit) (struct _cp_chan_t *c, void *tag, int len); - void (*receive) (struct _cp_chan_t *c, unsigned char *data, int len); - void (*error) (struct _cp_chan_t *c, int reason); -#define CP_FRAME 1 -#define CP_CRC 2 -#define CP_UNDERRUN 3 -#define CP_OVERRUN 4 -#define CP_OVERFLOW 5 -} cp_chan_t; - -typedef struct _cp_board_t { - unsigned char *base; /* base address of adapter registers */ - unsigned char num; /* board number, 0..5 */ - unsigned char type; /* board type Tau/TauE1/TauG703 */ -#define B_TAUPCI 1 /* 2 channels V.35/RS */ -#define B_TAUPCI_E3 2 /* 1 channel E3 */ -#define B_TAUPCI_HSSI 3 /* 1 channel HSSI */ -#define B_TAUPCI_G703 4 /* 2 channels G703 */ -#define B_TAUPCI_E1 5 /* 2 channels E1 */ -#define B_TAUPCI4 6 /* 4 channels V.35/RS */ -#define B_TAUPCI4_G703 7 /* 2 channels G.703 + 2 channels V.35/RS */ -#define B_TAUPCI4_4G703 8 /* 4 channels G.703 */ -#define B_TAUPCI_2E1 9 /* 2 channels E1, 4 data ports */ -#define B_TAUPCI4_E1 10 /* 2 channels E1 + 2 channels V.35/RS */ -#define B_TAUPCI4_4E1 11 /* 4 channels E1 */ -#define B_TAUPCI_L 12 /* 1 channel V.35/RS */ - - unsigned long osc; /* oscillator frequency */ - char name[16]; /* board version name */ - cp_chan_t chan[NCHAN]; /* channel structures */ - unsigned char mux; /* E1 mux mode */ - unsigned char dxc_cas; /* CAS cross-connection */ - unsigned char bcr; /* BCR image */ - unsigned char e1cfg; /* E1 CFG register image */ - unsigned char gpidle; /* idle bits of gp port */ - unsigned char E1DATA; - unsigned long intr; /* interrupt counter */ - unsigned long *iqlx; /* LBI intr queue */ - int iln; - unsigned char fw_type; /* firmware type */ -#define FW_TAUPCI_NONE 0 -#define FW_TAUPCI_E3_B 1 -#define FW_TAUPCI_2E1_B 2 -#define FW_TAUPCI_2E1_A 3 -#define FW_TAUPCI_4E1_B 6 -#define FW_TAUPCI_4E1_A 7 - unsigned char *firmware[8]; /* external firmware */ - void *sys; -} cp_board_t; - -#pragma pack() - -/* PCI device identifiers. */ -extern unsigned short cp_vendor_id; -extern unsigned short cp_device_id; - -/* Initialization. */ -unsigned short cp_init (cp_board_t *b, int num, unsigned char *base); -void cp_reset (cp_board_t *b, cp_qbuf_t *buf, unsigned long phys); -void cp_hard_reset (cp_board_t *b); -unsigned long cp_regio (cp_chan_t *c, int op, int reg, unsigned long val); -#define REGIO_INB 0 -#define REGIO_IN 1 -#define REGIO_INS 2 -#define REGIO_INX 3 -#define REGIO_INB_OUTB 4 -#define REGIO_OUTB 5 -#define REGIO_OUTX 6 -#define REGIO_R_W 7 -#define REGIO_OUT_IN 8 -#define REGIO_OUTB_INB 9 - -/* Callback registration. */ -void cp_register_transmit (cp_chan_t *c, void (*func) (cp_chan_t*, void*, int)); -void cp_register_receive (cp_chan_t *c, void (*func) (cp_chan_t*, - unsigned char*, int)); -void cp_register_error (cp_chan_t *c, void (*func) (cp_chan_t*, int)); - -/* Data transmittion. */ -void cp_start_chan (cp_chan_t *c, int tx, int rx, cp_buf_t *cb, unsigned long phys); -void cp_stop_chan (cp_chan_t *c); -void cp_start_e1 (cp_chan_t *c); -void cp_stop_e1 (cp_chan_t *c); -int cp_transmit_space (cp_chan_t *c); -int cp_send_packet (cp_chan_t *c, unsigned char *data, int len, void *tag); - -/* Interrupt control. */ -int cp_interrupt (cp_board_t *b); -int cp_interrupt_poll (cp_board_t *b, int ack); -void cp_handle_interrupt (cp_board_t *b); -void cp_enable_interrupt (cp_board_t *b, int on); - -/* G.703 timer. */ -void cp_g703_timer (cp_chan_t *c); - -/* E1 timer. */ -void cp_e1_timer (cp_chan_t *c); - -/* E3 timer. */ -void cp_e3_timer (cp_chan_t *c); - -/* LED control. */ -void cp_led (cp_board_t *b, int on); - -/* Modem signals. */ -void cp_set_dtr (cp_chan_t *c, int on); -void cp_set_rts (cp_chan_t *c, int on); -int cp_get_dsr (cp_chan_t *c); -int cp_get_cd (cp_chan_t *c); -int cp_get_cts (cp_chan_t *c); -int cp_get_txcerr (cp_chan_t *c); -int cp_get_rxcerr (cp_chan_t *c); - -/* HDLC parameters. */ -void cp_set_baud (cp_chan_t *c, int baud); -void cp_set_dpll (cp_chan_t *c, int on); -void cp_set_nrzi (cp_chan_t *c, int on); -void cp_set_invtxc (cp_chan_t *c, int on); -void cp_set_invrxc (cp_chan_t *c, int on); -void cp_set_lloop (cp_chan_t *c, int on); - -/* Channel status, cable type. */ -int cp_get_rloop (cp_chan_t *c); -int cp_get_lq (cp_chan_t *c); -int cp_get_cable (cp_chan_t *c); -#define CABLE_RS232 0 -#define CABLE_V35 1 -#define CABLE_RS530 2 -#define CABLE_X21 3 -#define CABLE_RS485 4 -#define CABLE_NOT_ATTACHED 9 -#define CABLE_COAX 10 -#define CABLE_TP 11 - -/* E1/G.703 parameters. */ -void cp_set_gsyn (cp_chan_t *c, int syn); -void cp_set_ts (cp_chan_t *c, unsigned long ts); -void cp_set_dir (cp_chan_t *c, int dir); -void cp_set_mux (cp_board_t *b, int on); -void cp_dxc_cas_enable (cp_board_t *b, int on); -void cp_set_dxc (cp_chan_t *c, cp_dxc_t *param); -void cp_set_higain (cp_chan_t *c, int on); -void cp_set_use16 (cp_chan_t *c, int on); -void cp_set_crc4 (cp_chan_t *c, int on); -void cp_set_phony (cp_chan_t *c, int on); -void cp_set_unfram (cp_chan_t *c, int on); -void cp_set_scrambler (cp_chan_t *c, int on); -void cp_set_monitor (cp_chan_t *c, int on); - -/* E3 parameters. */ -void cp_set_rloop (cp_chan_t *c, int on); -void cp_set_ber (cp_chan_t *c, int on); -void cp_set_cablen (cp_chan_t *c, int on); -void cp_set_losais (cp_chan_t *c, int on); - -#endif /* CPDDK_COBF_SAFE */ Index: sys/dev/cp/cpddk.c =================================================================== --- sys/dev/cp/cpddk.c +++ /dev/null @@ -1,6260 +0,0 @@ -/*- - * Low-level subroutines for Cronyx Tau-PCI adapter. - * - * Copyright (C) 1999-2003 Cronyx Engineering. - * Author: Serge Vakulenko, - * - * Copyright (C) 2000-2004 Cronyx Engineering. - * Author: Roman Kurakin, - * - * This software is distributed with NO WARRANTIES, not even the implied - * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * Authors grant any other persons or organisations a permission to use, - * modify and redistribute this software in source and binary forms, - * as long as this message is kept with the software, all derivative - * works or modified versions. - * - * $Cronyx: cpddk.c,v 1.13.4.37 2004/12/11 16:14:39 rik Exp $ - */ -#include -__FBSDID("$FreeBSD$"); - -#include - -#define CPDDK_COBF_SAFE -#include - -#pragma pack(4) -typedef struct{unsigned long l47;unsigned long l112;unsigned long l121 -;unsigned long l103;unsigned long l101;unsigned long l89;unsigned long -l117;unsigned long l108;unsigned long l119;unsigned long l110; -unsigned long l120;unsigned long l100;}l166;typedef struct{unsigned -char j[32];unsigned char l40[32];}l72;typedef struct{unsigned long w; -unsigned long l88;unsigned long l99;unsigned long t;unsigned long l915 -;}l128;typedef struct{l128 l42[4];l128 l32[64];unsigned char l589[4][ -1664];unsigned char l751[64][1664];}l211;typedef struct{unsigned long -l155[4][128];unsigned long l97[4][128];unsigned long l94[128];}l172; -typedef struct l181{unsigned char*x;volatile unsigned long*l123, * -l124, *l82;volatile unsigned long*l130, *l102, *l135, *l75, *l132, * -l147;unsigned char l73,l81,l62,l44,l48,l64,l34;unsigned char p; -unsigned char f;struct l612*d;unsigned char l193;unsigned char l218; -unsigned long y;unsigned char l146;unsigned char l145;unsigned char -l164;unsigned char l177;unsigned char l53;unsigned char l156;unsigned -char l61;unsigned char l134;unsigned long j;unsigned char l186; -unsigned char l46;unsigned char l58;unsigned char l52;unsigned char -l31;unsigned char l167;unsigned char v;l72 o;unsigned char l86; -unsigned char l122;unsigned char l178;unsigned char l169;unsigned char -l669;unsigned char l144;unsigned char l133;unsigned long l70;unsigned -char l33;unsigned long l35;unsigned long l43;unsigned long l36; -unsigned char l41;unsigned char l26;unsigned char l38;unsigned long -l635;unsigned long l614;ulong64 l571;ulong64 l620;unsigned long l592; -unsigned long l301;unsigned long l261;unsigned long l200;unsigned long -l591;unsigned long l556;unsigned short t;unsigned long l161;unsigned -long l55;unsigned long l105;unsigned long l109;l166 n;l166 l29;l166 -l118[48];unsigned long l95;unsigned long l148;unsigned long l616; -unsigned long l142;unsigned long l621;unsigned long l184[48];unsigned -long*l155;unsigned long*l97;int l608,l104;unsigned char*l151[4];l128* -l42;unsigned long l197[4];unsigned long l154[4];int l51;int l45; -unsigned char*l136[64];l128*l32;unsigned long l207[64];unsigned long -l67[64];int l28;void*l79[4];void*l700;unsigned char l914;void( *l187)( -struct l181*a,void*l79,int w);void( *l171)(struct l181*a,unsigned char - *l99,int w);void( *l65)(struct l181*a,int l916);}e;typedef struct -l612{unsigned char*g;unsigned char p;unsigned char f;unsigned long l80 -;char l39[16];e k[4];unsigned char l30;unsigned char l174;unsigned -char l125;unsigned char l116;unsigned char l137;unsigned char l83; -unsigned long l563;unsigned long*l94;int l115;unsigned char l180; -unsigned char*l71[8];void*l700;}s; -#pragma pack() -extern unsigned short cp_vendor_id;extern unsigned short cp_device_id -;unsigned short cp_init(s*b,int p,unsigned char*g);void cp_reset(s*b, -l172*l60,unsigned long l69);void cp_hard_reset(s*b);unsigned long -cp_regio(e*a,int l194,int z,unsigned long r);void cp_register_transmit -(e*a,void( *l85)(e* ,void* ,int));void cp_register_receive(e*a,void( * -l85)(e* ,unsigned char* ,int));void cp_register_error(e*a,void( *l85)( -e* ,int));void cp_start_chan(e*a,int l208,int l191,l211*l49,unsigned -long l69);void cp_stop_chan(e*a);void cp_start_e1(e*a);void cp_stop_e1 -(e*a);int cp_transmit_space(e*a);int cp_send_packet(e*a,unsigned char - *l99,int w,void*l79);int cp_interrupt(s*b);int cp_interrupt_poll(s*b -,int l217);void cp_handle_interrupt(s*b);void cp_enable_interrupt(s*b -,int m);void cp_g703_timer(e*a);void cp_e1_timer(e*a);void cp_e3_timer -(e*a);void cp_led(s*b,int m);void cp_set_dtr(e*a,int m);void -cp_set_rts(e*a,int m);int cp_get_dsr(e*a);int cp_get_cd(e*a);int -cp_get_cts(e*a);int cp_get_txcerr(e*a);int cp_get_rxcerr(e*a);void -cp_set_baud(e*a,int y);void cp_set_dpll(e*a,int m);void cp_set_nrzi(e - *a,int m);void cp_set_invtxc(e*a,int m);void cp_set_invrxc(e*a,int m -);void cp_set_lloop(e*a,int m);int cp_get_rloop(e*a);int cp_get_lq(e* -a);int cp_get_cable(e*a);void cp_set_gsyn(e*a,int l78);void cp_set_ts -(e*a,unsigned long j);void cp_set_dir(e*a,int v);void cp_set_mux(s*b, -int m);void l195(s*b,int m);void cp_set_dxc(e*a,l72*l917);void -cp_set_higain(e*a,int m);void cp_set_use16(e*a,int m);void cp_set_crc4 -(e*a,int m);void cp_set_phony(e*a,int m);void cp_set_unfram(e*a,int m -);void cp_set_scrambler(e*a,int m);void cp_set_monitor(e*a,int m); -void cp_set_rloop(e*a,int m);void cp_set_ber(e*a,int m);void -cp_set_cablen(e*a,int m);void cp_set_losais(e*a,int m);static void -l189(e*a);static void l141(long l199,long y,int*l50,int*l54);static -void l165(e*a);static void l210(e*a);static void l179(e*a,l72*l149); -static void l168(s*b);unsigned short cp_vendor_id=4362;unsigned short -cp_device_id=8450;static const unsigned char l527[]={79,231,255,255, -98,255,57,0,0,213,255,255,255,255,255,255,255,255,255,255,255,255,255 -,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,192,9,52,1,38,64,6,154,0,0,19,0,0,25,96,6,76, -128,140,134,85,6,200,0,0,25,96,2,100,128,97,144,1,0,15,12,48,1,50,0,0 -,178,76,70,19,112,2,76,128,9,48,137,38,208,4,64,22,152,104,2,100,128, -12,52,1,56,252,0,0,21,160,2,84,0,0,11,80,1,42,128,10,80,0,0,26,64,5, -180,0,0,10,96,1,44,64,5,176,0,0,45,192,2,0,15,18,160,2,88,0,0,21,192, -2,42,64,5,168,0,0,21,160,3,84,128,10,160,2,52,64,5,176,0,0,22,160,2, -80,252,0,11,64,0,5,2,0,31,64,0,21,152,249,0,74,152,255,0,4,128,0,5,64 -,1,0,3,128,2,16,128,2,0,1,8,0,1,40,0,19,4,0,1,80,0,7,4,0,4,64,0,1,2,0 -,3,96,254,0,4,32,2,0,4,68,0,5,10,64,2,8,0,1,8,0,12,64,0,8,144,0,1,16, -0,6,16,1,0,3,64,0,7,8,254,0,2,128,2,0,0,8,0,13,64,1,0,26,80,0,8,4,134 -,32,2,4,130,16,0,1,64,0,2,20,32,208,248,0,3,4,0,0,64,0,14,2,0,26,128, -0,8,16,0,0,2,0,0,64,16,0,8,32,252,0,2,128,5,240,32,0,13,192,130,0,26, -176,0,11,224,0,0,4,16,0,0,24,0,3,48,0,0,240,254,0,2,128,2,208,8,0,13, -64,1,0,26,80,0,8,48,18,70,18,132,18,0,1,8,0,4,32,0,0,254,0,3,131,0,0, -8,1,0,12,128,1,0,26,96,68,0,7,32,17,68,16,2,10,8,0,1,128,0,2,144,0,0, -72,249,0,3,4,240,0,14,64,2,2,0,25,128,0,8,28,128,3,52,64,4,0,1,24,0,3 -,44,8,64,253,0,3,4,0,15,128,2,0,26,128,0,8,48,16,6,4,0,0,10,0,1,96,0, -3,48,0,1,249,0,3,34,193,32,0,14,145,0,26,64,36,0,7,48,0,0,38,192,8,3, -0,1,96,17,0,2,48,10,192,253,0,2,128,0,1,8,0,10,16,40,10,64,0,6,2,0,16 -,4,32,0,0,16,0,6,160,1,1,128,16,8,128,10,0,1,96,2,0,2,132,32,160,252, -0,5,64,0,12,16,0,7,16,0,16,16,0,9,128,1,0,1,2,0,1,16,0,2,32,0,2,16,0, -0,208,254,0,2,128,5,240,32,0,10,176,32,22,192,130,0,4,60,8,0,19,176,0 -,6,128,128,0,2,242,32,22,8,0,0,112,0,5,32,254,8,0,1,128,2,208,4,0,11, -4,10,64,1,0,4,180,0,17,176,16,0,0,80,0,7,9,0,1,38,208,2,10,1,0,0,104, -8,0,2,48,16,146,255,0,3,131,0,0,8,1,0,9,16,2,140,144,1,0,5,66,0,16,32 -,16,0,0,96,68,0,7,2,0,0,4,0,0,68,12,3,0,0,8,17,0,2,32,2,48,248,0,3,4, -240,0,11,48,128,18,64,2,2,0,3,60,0,17,28,0,1,128,0,6,224,1,0,0,128,3, -241,0,0,16,0,1,120,0,3,28,32,32,255,4,0,2,4,0,0,32,0,11,32,16,128,2,0 -,23,48,0,1,128,0,7,128,0,1,6,2,64,20,0,1,96,64,0,2,48,32,121,252,0,3, -2,193,2,0,10,80,2,8,4,129,0,4,176,8,0,16,176,64,0,0,64,32,0,6,5,0,1,7 -,192,0,0,8,4,0,0,96,1,0,2,48,1,248,248,0,1,4,129,0,1,64,0,10,208,2,3, -64,2,8,0,4,2,0,16,4,2,0,0,16,0,6,160,9,0,0,128,128,0,0,4,2,0,1,96,2, -33,32,4,165,0,0,24,253,0,1,16,16,0,13,192,0,2,1,2,32,0,3,16,0,16,16, -16,0,8,128,129,0,1,2,192,64,0,2,96,32,4,132,0,1,16,128,248,0,2,128,5, -48,0,11,192,128,22,192,2,0,4,60,8,0,19,176,0,6,128,0,3,224,64,22,8,0, -0,112,64,12,8,0,0,32,0,0,104,250,4,0,1,133,2,16,0,11,192,8,10,64,1,64 -,132,0,2,52,1,0,16,48,34,0,0,80,0,7,5,1,0,0,70,212,2,10,1,0,0,8,4,140 -,128,129,0,0,4,122,254,12,0,1,6,131,192,40,0,10,192,8,141,144,162,0,0 -,64,0,3,66,0,16,32,2,0,0,96,68,0,7,2,0,0,68,209,32,12,3,0,0,104,20,72 -,0,0,5,16,1,200,248,0,1,12,0,0,4,240,0,11,112,0,0,18,64,2,56,0,3,60,0 -,17,28,8,0,0,128,0,6,224,1,0,0,128,3,48,0,0,16,0,1,120,0,0,15,232,0,0 -,61,32,112,255,8,0,1,32,4,192,0,11,192,0,0,16,0,0,2,32,64,0,21,48,8,0 -,0,128,0,7,128,0,1,6,193,128,20,0,3,12,136,1,0,1,201,249,0,1,136,0,0, -18,193,0,11,192,32,72,4,2,32,0,3,48,10,0,16,56,1,0,0,64,34,0,6,5,0,1, -39,192,8,72,4,0,0,96,130,78,128,145,144,32,232,251,0,1,4,132,0,1,8,0, -4,140,4,0,3,208,0,0,2,0,1,104,0,4,2,0,16,4,65,0,0,16,0,0,26,33,0,3, -160,49,0,0,128,64,0,0,128,2,0,2,64,129,4,0,0,164,0,0,40,254,0,1,16,0, -2,64,0,10,192,0,3,96,64,0,3,16,0,16,16,0,3,24,0,4,128,1,0,2,2,0,5,4,0 -,2,16,248,254,0,2,160,5,240,0,5,15,0,4,192,0,0,22,0,1,96,0,3,12,0,20, -176,0,0,24,4,0,3,128,128,0,2,240,0,0,22,8,0,0,120,16,12,4,0,0,32,16, -208,250,8,0,0,128,128,2,208,4,1,0,3,129,16,0,3,192,0,0,10,0,2,128,0,2 -,4,0,17,48,33,0,0,80,0,0,136,0,5,1,0,1,16,210,34,10,1,0,0,104,0,0,140 -,0,2,1,211,253,0,2,34,131,0,0,8,1,0,10,8,140,16,0,0,96,1,0,3,66,0,16, -160,8,0,0,96,68,16,0,6,2,0,0,32,4,68,12,3,0,1,128,8,16,0,0,16,1,33, -251,0,1,12,0,0,4,240,0,5,14,0,4,48,32,18,0,1,120,16,0,2,12,0,17,28,0, -1,128,0,0,14,8,0,3,224,1,0,0,128,1,240,0,0,16,0,1,120,0,0,15,0,1,60, -32,240,255,4,0,2,4,0,12,192,0,0,16,0,1,32,64,0,2,48,8,0,16,48,8,0,0, -128,0,0,16,0,5,128,0,1,4,0,1,20,0,3,12,0,3,105,249,0,2,4,66,193,36,0, -4,12,0,4,192,64,8,5,0,0,96,4,0,2,48,0,17,56,0,1,64,40,8,2,0,4,5,0,1, -38,196,32,8,5,0,0,96,18,14,8,0,0,16,18,64,253,0,1,52,128,132,192,64,0 -,10,208,0,0,2,64,139,8,132,0,3,2,0,16,4,34,0,0,144,68,0,4,137,168,17, -1,128,32,2,128,18,67,2,2,64,45,16,0,0,132,32,136,255,0,1,48,0,0,2,192 -,0,11,192,0,2,3,0,5,16,0,19,64,0,6,128,1,0,1,2,0,1,8,0,3,12,0,1,16,0, -0,240,249,0,2,128,5,224,0,13,22,192,1,0,0,32,0,2,60,32,0,17,16,0,0, -176,0,5,12,128,128,0,2,240,32,22,8,2,120,0,0,8,0,3,72,248,4,0,1,128,2 -,16,16,0,12,10,64,2,2,4,0,2,52,2,0,17,2,0,0,80,0,5,8,1,17,0,1,16,212, -4,10,1,64,104,16,68,4,0,0,48,16,2,252,4,0,0,48,2,5,208,0,0,1,0,10,8, -140,16,147,96,16,0,3,66,0,17,4,0,0,160,0,5,32,0,1,2,0,1,8,68,20,0,0, -17,2,128,44,8,0,0,32,17,224,251,0,1,60,16,4,240,0,11,48,32,18,192,3, -56,0,3,60,0,17,12,0,1,128,0,5,7,232,1,0,0,128,1,240,0,0,16,192,3,120, -0,0,15,0,1,28,0,0,120,253,4,0,0,48,0,0,4,0,0,128,0,12,16,4,3,64,0,22, -32,16,0,0,128,0,6,8,128,0,2,4,0,0,20,0,3,12,0,1,48,16,41,254,0,1,48, -33,4,192,4,0,11,64,8,1,10,36,10,0,2,48,8,0,16,176,0,1,128,0,5,36,0,0, -5,0,1,17,192,40,16,0,0,33,97,20,0,0,1,0,0,48,0,0,232,250,0,2,128,64,1 -,8,0,0,64,0,8,64,0,0,147,80,96,8,0,4,16,0,16,4,32,0,0,16,32,0,4,137, -40,4,2,128,16,0,0,4,130,68,2,2,2,0,2,132,64,176,248,0,5,64,0,10,128,0 -,0,8,0,1,96,64,0,2,48,0,17,16,0,9,128,0,2,2,4,64,0,3,32,0,2,16,0,0, -176,250,0,4,240,32,0,10,176,0,0,22,192,0,5,8,0,27,8,4,0,3,52,0,0,14,0 -,0,2,24,0,5,176,250,8,0,2,64,209,0,11,80,68,10,64,16,4,34,0,2,52,66,0 -,16,176,16,0,1,40,0,4,64,128,17,1,0,0,16,16,0,1,5,16,10,0,3,48,64,226 -,253,0,3,128,0,0,8,1,0,0,16,1,0,6,96,0,0,20,0,1,96,1,0,2,52,33,0,16, -160,0,2,68,0,4,36,8,17,0,1,64,196,2,2,0,0,17,98,34,0,2,32,2,120,251,0 -,2,128,1,240,0,1,192,0,8,128,0,0,18,192,0,0,58,32,0,2,12,0,17,28,32,0 -,0,48,0,5,15,224,64,0,0,128,1,240,32,4,196,3,120,0,3,28,8,16,251,4,0, -3,1,64,0,1,3,0,7,160,0,0,16,0,6,48,0,17,48,0,2,32,0,5,128,65,0,2,192, -0,0,2,0,1,98,0,3,48,8,113,249,0,3,68,192,0,2,19,2,0,6,64,0,0,16,0,0, -34,34,68,0,21,48,18,0,0,128,8,0,4,132,196,17,0,1,32,200,0,0,82,4,1,96 -,0,3,56,2,40,254,0,2,128,0,0,192,64,26,0,11,3,65,11,9,0,1,128,129,0,0 -,16,0,16,4,32,0,2,128,80,8,2,0,0,1,32,32,0,0,128,32,2,128,2,65,32,1,2 -,0,2,4,4,120,249,0,4,193,0,0,24,0,11,8,4,3,0,0,64,0,2,48,0,17,16,0,3, -24,0,0,1,0,1,12,136,0,2,2,0,2,4,3,0,0,32,0,2,16,0,0,56,253,0,2,128,3, -224,0,1,16,0,8,176,0,1,4,3,98,0,1,224,129,56,0,22,28,8,0,2,8,0,4,240, -0,1,4,2,26,0,5,224,252,8,0,3,17,20,24,0,9,80,68,0,0,1,33,0,0,34,0,0, -32,0,0,180,16,0,16,176,16,0,2,26,0,0,3,1,0,0,44,144,9,1,0,0,70,210,36 -,0,0,1,11,8,0,3,48,33,58,248,0,2,128,0,0,209,32,24,33,0,8,96,0,0,128, -0,0,11,66,65,0,2,52,8,0,16,32,0,3,26,1,34,1,0,0,44,0,0,5,0,1,20,2,68, -128,0,0,3,97,4,0,2,32,0,0,224,254,0,3,1,240,0,0,6,0,9,128,0,0,6,196,3 -,24,0,1,224,1,12,0,17,28,16,0,2,6,200,1,0,1,11,228,64,0,0,128,3,240,0 -,0,6,196,2,120,16,0,2,28,16,88,248,4,0,1,128,0,2,24,16,0,8,160,0,2,3, -64,0,3,48,16,0,16,48,0,3,24,8,3,0,1,12,128,1,0,1,6,0,0,32,0,1,3,96,0, -3,48,32,73,252,0,2,128,20,193,0,0,1,1,0,8,64,0,0,68,4,83,96,8,0,0,128 -,1,176,0,17,48,4,0,2,152,0,0,67,0,1,14,196,81,0,1,70,200,8,80,132,3, -97,0,3,56,2,192,248,0,2,128,0,0,2,64,0,2,8,0,6,128,0,0,131,68,0,0,72, -130,1,0,2,16,0,16,4,32,0,0,16,0,0,130,32,0,2,37,36,16,0,0,128,32,2,4, -90,68,17,4,64,137,1,0,0,4,34,248,252,0,3,4,0,12,64,0,0,8,0,25,16,0,2, -32,8,0,5,128,0,1,2,0,0,64,0,4,4,0,3,24,250,0,3,1,48,0,4,32,0,5,176,0, -2,128,96,16,0,2,12,0,20,112,0,0,14,0,3,12,4,0,3,48,0,0,30,4,3,120,16, -8,8,0,2,112,253,8,0,1,128,68,18,0,4,4,0,5,80,68,64,4,11,64,1,76,8,0,0 -,4,0,17,176,16,0,1,32,128,2,0,4,136,0,1,70,18,0,0,146,0,0,8,106,1,44, -0,2,65,114,255,0,2,128,66,200,36,0,3,64,0,5,96,0,0,64,4,144,96,2,140, -16,0,0,176,8,0,16,32,2,0,0,16,8,18,5,0,2,68,2,16,2,0,0,4,192,0,1,2, -145,0,0,128,8,4,0,1,65,184,255,0,3,1,240,0,3,24,0,6,128,0,0,6,192,0,0 -,120,16,15,0,1,60,0,17,28,32,0,0,32,64,6,0,3,11,96,0,1,128,3,242,32,6 -,192,2,120,0,0,15,0,1,12,0,0,24,249,4,0,1,128,2,192,0,11,96,0,2,3,96, -16,12,4,0,0,48,0,17,48,16,0,0,16,0,1,16,0,2,12,2,1,0,1,6,192,0,0,8,16 -,131,0,0,16,12,0,1,32,16,129,255,0,2,128,0,0,192,0,3,96,34,0,5,128,0, -1,5,11,100,0,0,140,0,1,48,0,17,48,0,1,144,34,82,0,3,44,128,1,1,0,0, -134,192,0,0,80,0,0,11,96,4,14,4,0,0,176,0,0,208,251,0,3,16,8,0,44,8,0 -,13,1,0,7,16,255,32,0,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0, -2,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,1,128,0,0,64,0,0,8,0, -0,1,32,0,0,4,128,0,0,16,0,1,80,0,0,8,0,0,1,32,0,0,4,0,0,184,252,0,65, -16,0,7,136,255,36,0,0,4,0,0,64,18,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0 -,0,16,16,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,1,72,66,80,0,0 -,8,0,0,1,32,0,0,4,128,0,0,16,0,1,64,0,0,8,0,0,1,32,0,0,4,0,0,51,249, -12,0,2,16,2,0,5,32,0,5,8,0,30,4,5,0,12,9,0,7,1,251,32,0,0,4,0,3,2,64, -0,0,8,0,1,36,0,0,4,128,0,1,64,0,2,8,0,0,1,0,18,32,0,0,4,128,0,3,64,0, -0,8,0,0,1,32,0,0,4,128,0,3,64,0,2,1,32,0,0,4,0,0,204,254,8,0,73,144, -255,32,0,0,4,0,0,32,18,68,2,64,0,0,8,0,1,33,0,0,4,128,0,0,16,128,130, -72,16,9,0,0,1,32,136,4,17,0,14,32,0,0,4,128,0,1,68,2,64,0,0,8,0,0,1, -32,0,0,4,128,0,0,16,68,128,72,0,0,8,34,1,32,0,0,4,0,0,248,254,0,4,16, -0,61,8,0,0,1,0,3,24,255,0,28,4,0,27,4,0,15,216,251,0,11,1,0,8,64,0,0, -16,0,2,16,0,24,64,0,2,128,0,0,4,0,0,128,4,0,0,4,0,5,32,0,0,4,40,251,2 -,0,3,16,0,16,8,32,0,2,32,0,32,2,128,0,5,8,0,1,64,0,0,80,250,0,3,2,0, -53,2,0,1,8,0,1,2,0,8,24,253,0,7,2,0,0,1,0,10,64,0,0,8,0,21,128,0,2,1, -0,11,17,0,2,128,0,3,128,0,0,233,250,0,1,16,0,1,32,128,0,4,1,0,2,32,2, -0,1,8,4,0,22,32,0,1,32,0,0,64,32,2,0,7,8,0,0,16,0,0,8,0,2,64,4,2,0,2, -144,249,0,1,4,0,0,2,65,0,1,16,0,3,8,0,0,4,128,0,45,65,0,10,88,253,0,1 -,12,128,0,0,52,64,0,0,16,0,0,192,0,0,2,8,0,0,4,144,1,0,1,4,8,0,22,64, -5,0,0,16,0,0,32,64,4,0,1,192,0,4,16,0,0,52,20,4,0,1,64,33,66,5,0,2, -112,250,0,2,8,134,192,0,2,65,0,1,12,0,2,4,20,192,128,192,0,0,130,0,0, -8,8,0,0,1,0,17,4,0,0,4,0,0,81,32,2,0,0,1,64,0,5,160,0,0,4,24,64,4,96, -0,0,64,2,0,1,10,56,249,0,2,32,1,16,0,1,64,0,2,4,0,4,16,0,2,128,0,26, -68,32,0,1,2,0,9,8,0,1,8,0,1,8,0,1,8,160,249,2,0,2,2,65,0,3,2,0,0,8,0, -2,32,4,64,0,1,64,0,1,64,1,32,0,20,32,0,5,8,0,6,4,0,0,2,0,1,16,0,5,72, -253,0,1,4,4,0,0,8,0,16,8,0,26,64,0,1,4,0,4,1,0,4,136,0,2,2,0,0,2,64,0 -,0,96,250,0,7,16,0,14,64,0,27,16,0,2,8,0,16,208,255,0,10,1,0,7,1,0,1, -2,9,0,21,136,0,4,2,0,3,64,0,3,2,0,6,12,0,1,24,168,249,0,9,160,0,0,2,0 -,7,64,0,0,64,0,27,2,0,8,1,1,0,10,208,248,0,5,2,0,61,8,0,0,1,0,2,160, -253,0,1,4,0,43,32,0,3,1,0,13,64,0,6,152,248,0,21,1,0,34,16,0,3,64,0, -10,200,255,2,0,5,64,0,17,64,0,41,8,2,0,1,32,128,88,253,0,22,4,0,32,2, -0,8,8,0,2,16,0,0,8,0,0,248,252,0,23,128,0,21,4,0,19,1,0,1,1,0,2,88, -255,0,1,32,0,56,32,0,0,4,0,11,248,253,0,2,128,0,1,128,0,11,128,0,5,8, -0,1,32,0,34,2,0,7,64,48,249,0,74,152,255,0,46,64,0,4,128,0,2,2,64,0,2 -,8,0,11,240,253,0,63,2,0,3,1,0,4,136,252,0,74,152,255,0,17,16,0,28,8, -0,9,64,0,1,1,0,11,144,251,0,4,4,0,46,4,0,10,8,0,8,24,255,0,21,128,0, -27,1,0,4,1,0,7,64,0,5,4,0,0,208,251,0,2,16,0,14,32,0,2,32,0,1,4,0,35, -32,0,0,1,0,7,128,80,255,0,5,1,0,13,64,0,5,64,0,17,32,0,10,1,0,11,1,0, -1,136,249,0,4,32,0,12,16,0,31,4,2,0,4,2,0,1,20,8,0,1,128,0,0,36,0,6, -251,0,18,64,0,26,64,0,11,2,0,1,8,0,9,64,240,249,0,3,8,0,0,1,0,12,32,0 -,0,4,0,3,2,64,0,35,32,0,8,96,252,0,4,1,0,13,4,0,4,128,0,1,8,0,19,4,32 -,2,128,0,0,1,0,0,1,8,0,0,4,128,0,1,128,0,3,64,0,0,64,0,2,176,253,0,0, -32,0,0,8,0,1,32,8,16,0,8,1,128,0,0,4,0,0,66,64,0,0,8,0,0,17,0,15,64,0 -,7,1,0,6,4,0,1,8,128,0,7,160,252,0,1,1,32,160,130,150,2,16,0,8,4,128, -4,16,0,0,10,74,0,0,72,0,0,165,16,0,14,32,0,3,2,84,4,192,0,0,1,0,0,6,4 -,0,0,8,128,1,128,66,2,64,1,0,0,32,0,0,64,0,2,200,248,0,0,1,32,132,0,0 -,1,88,1,4,66,96,0,3,32,4,32,0,1,128,2,163,0,0,8,4,1,32,32,80,0,14,128 -,0,1,8,64,139,0,0,28,4,160,34,0,2,32,0,1,64,17,1,20,16,133,64,0,0,4,0 -,2,32,24,250,0,4,1,0,1,16,0,0,8,0,9,128,128,0,1,4,0,18,32,0,1,4,0,0,4 -,0,0,4,2,128,16,0,6,1,0,2,1,1,0,0,4,0,3,24,255,0,0,1,4,4,0,1,64,0,1, -130,32,0,3,4,32,0,3,8,1,0,0,32,0,0,8,0,0,9,0,20,64,0,0,2,0,5,64,0,4,8 -,0,1,32,0,5,152,252,16,0,56,1,0,14,32,204,248,16,0,10,8,0,60,4,132, -251,0,4,32,0,19,64,0,0,8,0,22,4,0,5,128,0,6,64,0,4,16,0,0,200,248,0, -12,16,0,6,2,0,24,16,0,4,32,0,8,2,0,1,2,0,7,168,255,0,3,4,0,13,128,0, -29,128,0,5,16,0,8,6,0,1,16,0,3,24,252,0,46,8,64,0,8,34,4,8,128,0,7,4, -0,1,12,8,48,255,0,1,64,0,15,1,0,27,80,0,2,2,0,5,4,0,1,18,1,0,5,32,0,1 -,128,0,0,144,250,0,18,1,0,8,64,0,17,24,0,2,32,0,4,128,192,16,0,3,4,0, -0,128,0,3,64,16,16,40,252,0,3,1,0,0,128,0,39,16,0,8,8,0,10,64,0,0,2,0 -,0,32,0,0,80,253,0,1,128,0,19,128,1,0,24,64,0,8,1,0,0,128,64,0,0,64,0 -,0,8,0,1,16,0,3,200,254,0,22,1,0,22,4,0,3,32,64,0,2,4,32,0,1,128,0,0, -128,0,1,2,0,0,64,0,5,32,249,0,8,1,0,12,1,0,0,4,0,30,32,0,5,64,0,8,32, -248,252,0,1,4,129,16,208,64,2,0,1,8,0,0,141,36,8,53,146,6,208,72,0,2, -104,0,1,160,145,0,29,160,33,52,65,0,5,72,2,9,1,0,0,52,32,232,255,0,2, -8,0,0,193,0,5,12,128,0,0,48,0,0,6,192,0,3,96,0,1,128,1,0,31,48,0,6,32 -,64,4,0,1,48,0,1,253,0,1,28,0,3,22,0,1,88,0,0,12,72,0,0,48,160,7,128, -0,3,120,0,1,128,1,0,29,128,1,48,0,6,96,0,0,8,8,0,0,16,0,0,208,255,0,1 -,132,32,0,0,129,72,10,0,1,40,0,0,76,160,16,50,129,6,64,66,0,2,104,0,1 -,128,133,0,29,128,1,50,4,0,5,96,66,44,0,1,32,18,192,249,0,1,128,16,32 -,193,66,12,0,1,48,0,0,8,32,145,32,1,6,192,130,0,2,96,0,2,9,0,30,68,32 -,0,6,64,2,136,4,0,1,1,208,249,0,1,12,128,1,240,0,0,18,0,1,72,0,0,7, -104,0,0,28,32,7,240,0,3,112,0,1,224,128,0,29,96,1,28,32,0,5,24,32,15, -0,1,60,32,120,251,0,4,192,0,0,16,0,1,64,0,0,12,4,1,48,160,6,192,0,3, -96,0,1,128,1,0,29,128,1,48,16,0,5,96,32,12,4,0,2,232,248,0,1,4,17,68, -65,4,9,0,1,32,0,0,64,0,1,128,128,6,0,0,20,0,2,96,0,3,1,0,29,145,128,0 -,6,64,2,142,0,1,32,32,64,254,0,1,148,128,68,0,1,2,0,1,8,0,1,32,32,0,0 -,128,6,0,1,130,8,0,2,137,16,0,0,4,18,0,6,34,0,6,17,0,1,128,0,8,32,8,2 -,0,8,5,168,1,52,4,24,249,0,2,16,2,1,0,6,128,0,2,6,0,6,12,0,1,16,0,7, -12,0,6,6,0,24,128,1,48,0,0,40,248,0,1,56,136,3,0,1,22,0,1,88,0,1,64,0 -,1,128,7,0,1,6,4,0,2,2,0,1,32,0,7,12,0,6,6,0,3,1,0,18,12,128,1,16,16, -152,250,8,0,0,20,128,4,0,1,10,0,1,40,0,1,160,0,0,1,128,6,0,1,130,0,3, -9,4,0,0,144,16,0,6,10,0,6,5,0,12,72,0,9,128,132,1,160,0,0,203,251,0,1 -,4,16,4,0,1,12,0,1,48,0,1,32,5,0,1,6,0,2,1,0,2,77,0,1,128,16,0,6,10,0 -,6,5,0,2,16,1,0,7,72,0,9,36,128,9,2,1,89,249,0,1,44,128,2,0,1,18,0,1, -72,0,1,96,128,0,1,7,0,1,6,16,0,2,7,4,0,0,12,0,18,128,1,0,7,224,0,10, -11,226,1,60,32,64,251,4,0,0,32,16,2,0,1,16,0,1,64,0,2,1,0,1,6,0,6,4,4 -,0,1,32,0,18,6,1,0,6,128,0,10,12,2,0,0,1,0,0,9,250,0,1,176,0,0,4,0,1, -8,0,1,32,0,5,6,0,1,144,8,0,2,32,0,1,16,2,0,18,32,0,7,128,69,0,9,140,0 -,0,4,32,32,208,254,176,1,20,130,0,0,80,2,2,0,1,8,0,0,5,33,9,1,0,4,64, -0,0,1,0,33,160,33,0,9,137,0,1,52,6,40,249,128,1,0,0,32,0,0,192,64,0, -14,1,0,34,128,1,0,10,8,0,0,48,0,0,88,248,224,1,56,136,5,0,1,22,0,1,88 -,0,0,12,68,1,0,54,8,0,1,16,16,56,254,172,1,20,130,2,192,16,10,0,1,40, -0,0,32,32,16,2,0,5,11,1,0,33,128,1,2,0,9,4,0,0,32,0,0,234,255,132,1,4 -,1,3,192,66,12,0,1,48,0,0,36,40,0,0,2,0,5,8,1,0,33,128,64,0,9,4,0,2,1 -,48,253,192,1,44,160,4,240,0,0,18,0,1,72,0,0,11,224,0,6,192,0,22,2,0, -11,224,1,0,9,15,4,0,0,60,32,208,251,132,1,32,16,4,192,128,16,0,1,64,0 -,0,12,4,0,7,1,0,21,8,0,11,128,0,0,1,0,9,8,0,2,217,252,128,1,176,0,0,2 -,64,8,8,0,1,32,0,0,140,128,0,7,32,1,0,20,8,0,12,8,0,9,132,0,1,32,32, -96,251,0,1,4,130,0,2,2,0,1,72,0,0,141,160,16,4,1,0,5,72,68,0,19,1,0, -11,32,0,0,52,2,0,7,41,0,1,52,0,0,88,249,0,1,32,32,0,5,32,0,0,8,4,64,0 -,0,32,0,27,4,0,13,32,16,0,7,4,4,0,2,128,252,0,1,40,128,5,0,1,22,0,1, -88,0,0,15,96,0,0,48,32,0,5,96,0,20,1,0,12,64,60,16,0,7,12,0,1,48,0,0, -152,248,8,0,0,52,146,2,0,1,10,0,1,40,0,0,140,40,128,176,0,7,34,0,19,1 -,0,13,48,1,0,7,76,16,0,0,48,16,226,249,0,1,20,66,3,0,1,12,0,1,48,0,0, -133,2,8,2,34,0,5,96,20,0,19,16,0,12,64,148,8,0,7,8,4,0,0,48,8,48,252, -0,1,12,128,4,0,1,18,0,1,72,0,0,15,96,0,0,12,0,6,56,0,20,1,0,11,96,0,0 -,60,0,8,3,0,1,60,0,0,96,253,4,0,0,48,16,4,0,1,16,0,1,32,0,0,12,0,1,33 -,16,0,5,96,64,0,19,8,0,12,64,48,0,8,12,2,0,0,48,16,97,254,0,1,144,0,0 -,2,0,1,8,0,1,64,0,0,12,48,16,48,2,0,5,96,4,0,32,128,5,52,17,0,7,32,0, -1,48,1,232,251,0,1,4,128,0,2,2,0,3,13,32,0,0,4,1,0,2,66,0,1,40,12,0, -19,4,0,1,128,0,3,64,19,72,129,0,1,4,1,0,1,208,0,0,82,0,3,137,0,1,4,2, -56,251,0,11,12,0,0,64,0,0,16,0,3,8,0,22,4,0,7,2,1,0,1,128,1,0,2,192,0 -,1,8,0,3,8,0,0,16,16,232,249,0,2,128,5,0,1,22,0,3,15,96,0,0,48,0,6,96 -,32,0,24,1,0,3,64,0,1,224,1,0,2,192,0,0,16,0,3,8,8,0,1,16,224,248,4,0 -,0,48,133,2,0,1,10,0,3,13,32,128,48,32,0,2,128,16,0,14,128,0,6,8,0,7, -8,1,68,0,0,128,41,0,2,192,0,1,17,0,5,48,1,217,252,12,0,2,3,0,1,12,0,3 -,12,0,0,8,2,65,0,3,3,0,0,32,2,0,12,2,0,9,16,1,0,2,1,32,32,0,0,160,9,0 -,2,192,2,73,0,3,4,0,1,32,0,0,11,253,0,1,60,160,4,0,1,18,0,3,14,96,1, -12,0,3,6,0,1,88,64,0,22,128,7,0,2,64,3,120,0,1,96,0,0,1,0,1,240,0,0, -30,16,0,2,15,4,0,0,28,8,240,249,8,0,0,48,0,0,4,0,1,16,0,3,12,0,1,33,0 -,4,8,0,0,96,32,0,11,192,0,11,1,0,6,128,1,0,12,48,0,0,130,255,0,1,48, -16,2,0,1,8,0,3,12,32,16,48,10,0,2,144,0,1,96,4,0,12,1,0,9,32,0,4,32, -128,0,0,128,137,0,3,132,8,32,0,2,4,16,0,0,184,64,136,254,0,1,132,128, -0,2,2,64,3,0,1,69,32,0,0,4,1,0,2,130,0,1,96,4,1,2,0,9,64,0,10,34,8,0, -0,26,33,0,0,72,129,13,160,0,0,48,0,3,82,64,0,2,13,8,0,0,4,65,88,253,0 -,2,8,0,4,3,0,1,8,130,128,0,0,32,0,3,8,0,1,32,0,11,64,0,10,4,0,1,24,0, -1,1,0,0,12,0,0,1,48,16,0,3,8,0,2,12,0,1,16,0,0,16,252,0,1,12,128,5,0, -1,22,192,3,0,1,12,64,128,48,32,0,5,112,64,3,0,11,4,0,8,128,5,0,1,24,0 -,0,3,64,0,1,96,1,56,16,0,2,16,0,0,3,0,1,4,0,3,208,254,4,0,0,132,160,2 -,0,1,10,64,3,0,1,76,176,4,176,0,3,128,2,0,0,104,1,65,4,0,9,64,0,9,128 -,34,8,0,0,8,33,2,1,65,0,0,176,132,132,0,4,8,3,0,1,136,4,0,0,48,33,194 -,253,12,0,0,128,16,3,0,1,12,0,0,3,0,1,36,32,17,2,34,0,3,16,0,0,8,128, -32,4,0,10,2,0,9,3,0,1,24,0,1,32,32,12,192,0,0,54,64,0,2,72,0,0,96,0,1 -,32,16,0,0,32,2,152,251,0,1,12,128,4,0,1,18,128,3,0,1,15,104,0,0,12,0 -,3,6,0,1,120,0,0,11,0,22,4,0,1,22,16,0,0,120,0,0,3,40,1,60,0,3,30,208 -,0,2,15,0,1,28,8,120,249,8,0,2,4,0,1,16,0,0,3,0,1,12,0,0,1,48,32,0,5, -96,0,13,1,0,9,5,0,1,16,8,1,0,0,64,12,72,65,0,5,16,0,3,4,0,0,48,0,0, -137,254,0,1,36,17,2,0,1,8,0,0,3,0,1,12,1,0,0,16,2,0,2,16,32,0,0,104, -132,33,4,0,10,1,0,9,2,0,1,80,0,0,3,32,1,64,128,4,48,33,0,2,8,1,8,2,0, -0,40,0,1,184,8,192,255,0,1,4,128,0,2,2,64,9,4,0,0,128,48,68,4,1,0,0, -208,0,0,2,81,33,73,4,129,0,22,32,216,66,0,1,32,12,0,0,141,36,0,3,80,4 -,66,16,0,2,69,160,8,4,34,32,250,0,15,16,0,0,192,0,3,96,64,0,0,2,0,10, -2,0,10,192,0,3,96,64,12,0,5,128,24,0,4,8,0,0,1,0,0,160,250,0,2,128,5, -0,1,22,0,0,3,0,1,14,104,0,0,48,0,1,240,0,2,3,88,64,7,0,21,128,5,64,64 -,0,1,3,64,0,0,4,100,1,0,2,64,0,0,16,0,3,4,128,0,2,240,250,8,0,0,48, -133,2,0,1,10,0,0,32,1,0,0,1,32,4,49,32,0,0,208,0,0,64,32,0,0,2,4,65,4 -,0,17,4,0,1,128,34,136,0,2,10,100,36,136,160,132,0,2,128,130,24,33,0, -2,40,8,5,129,32,234,253,0,3,3,0,1,12,0,0,17,0,1,1,0,0,132,0,0,65,0,0, -192,0,0,128,32,17,104,17,32,4,0,21,3,0,0,2,0,2,96,36,64,192,0,0,2,0,2 -,66,24,8,0,3,8,32,0,0,17,64,253,0,1,60,160,4,0,1,18,192,2,2,0,0,3,100 -,1,12,0,1,224,0,0,6,192,2,58,0,0,3,0,22,4,240,64,0,2,88,0,0,15,40,1,0 -,2,240,0,0,22,0,3,15,224,1,12,0,0,112,254,4,0,0,48,32,4,0,1,16,0,0,3, -1,0,3,48,8,0,0,192,0,1,8,3,1,32,0,23,5,0,0,128,0,1,1,96,32,0,0,64,65, -0,2,192,64,24,8,0,2,12,128,129,32,32,145,253,0,1,48,0,0,2,0,1,8,0,0, -35,0,1,141,36,136,144,0,1,192,0,0,80,0,0,35,32,1,33,4,0,21,2,128,4,0, -1,3,112,4,8,136,0,3,224,0,0,28,1,0,2,142,196,5,48,2,136,252,0,1,4,130 -,0,2,2,64,35,0,1,45,36,4,52,6,0,2,130,4,0,0,104,36,33,160,1,0,20,36,8 -,0,2,67,40,33,37,34,1,22,1,0,0,208,4,11,2,0,2,77,176,129,52,65,88,254 -,0,2,8,0,4,3,2,0,0,12,0,0,64,48,0,6,96,0,0,8,136,1,0,20,2,0,3,2,0,2, -128,0,0,32,8,0,0,192,0,5,12,128,1,32,0,0,56,254,0,1,12,128,5,0,1,22,0 -,0,3,1,0,0,12,224,0,0,48,0,4,4,0,0,96,0,0,10,232,1,0,16,3,0,1,128,5,0 -,3,3,96,0,0,4,96,1,48,32,0,0,192,64,24,8,0,2,8,128,1,48,0,0,208,254,8 -,0,0,4,132,2,0,1,10,0,3,64,33,128,128,64,0,6,8,141,160,1,0,1,4,0,5,16 -,2,0,5,8,0,1,128,34,8,0,2,18,4,34,40,168,0,0,48,2,0,0,192,4,64,0,3,4, -129,33,32,33,42,252,0,1,128,16,3,0,1,12,0,0,9,0,1,36,0,0,8,146,0,4,1, -0,0,32,1,37,144,1,0,1,2,0,5,16,1,0,5,8,0,2,3,0,3,1,32,17,128,68,5,144 -,0,1,128,2,73,4,0,2,44,8,9,18,64,0,0,250,0,1,12,128,4,0,1,18,192,2,1, -0,0,11,100,0,0,44,16,0,2,6,8,0,0,88,32,3,192,1,0,1,7,0,5,144,3,0,5,8, -0,2,4,0,3,3,88,0,0,15,32,129,60,32,0,0,112,0,0,22,0,3,15,224,0,0,60,0 -,0,152,248,4,0,2,4,0,1,16,0,1,1,0,3,1,16,0,3,4,0,1,32,12,132,1,0,0, -128,5,0,5,208,2,0,5,8,0,2,3,0,3,1,96,16,12,4,1,48,0,1,192,0,0,24,4,0, -2,12,128,1,49,0,0,121,248,0,1,36,17,2,0,1,8,128,18,0,1,10,40,16,40,1, -0,2,80,0,1,80,2,36,128,1,0,1,4,0,5,8,2,0,5,4,0,2,4,0,3,3,96,4,142,0,0 -,1,176,16,0,1,132,24,1,0,2,64,1,4,48,17,144,249,0,1,8,0,8,2,64,0,2, -128,0,4,16,0,0,2,0,3,4,0,6,2,0,35,144,254,32,0,1,128,0,0,16,0,0,2,64, -0,0,8,0,3,4,0,1,16,0,0,2,64,0,3,32,0,0,4,0,7,2,0,6,33,0,0,4,128,0,0, -16,0,0,2,64,0,0,8,0,0,1,32,0,1,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0 -,4,0,0,48,250,0,74,152,255,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1, -32,0,0,4,128,64,20,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0, -0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,192,0,0,16,0,0,2,64,0,0,8,0,0,1,32 -,0,0,4,0,0,163,248,0,0,8,8,0,0,1,0,1,4,0,0,96,16,0,0,128,80,0,4,8,4,0 -,2,4,2,0,0,128,0,20,32,0,9,8,0,13,1,251,0,1,5,0,1,16,0,6,32,0,0,4,0,1 -,4,64,0,0,64,0,1,32,1,0,1,4,0,15,32,0,0,4,0,1,20,0,0,2,64,0,0,8,0,0,1 -,0,2,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,136,252,4,0,0,1,0,5 -,128,0,13,16,0,1,128,0,21,2,0,7,128,0,14,97,250,32,16,4,128,0,0,16,0, -0,2,64,0,0,8,0,0,33,34,0,0,4,128,0,0,24,136,2,64,0,0,8,4,1,32,16,4,0, -15,32,0,0,4,0,0,64,16,0,0,2,64,0,0,8,0,0,1,32,16,4,128,0,0,16,0,0,2, -64,0,0,8,0,0,1,32,0,0,4,0,0,176,253,0,15,16,0,9,128,0,27,8,0,7,4,0,8, -200,254,0,17,16,0,29,2,0,4,16,32,0,0,128,0,4,64,0,0,2,0,2,19,1,0,2, -240,250,0,8,128,0,2,1,0,6,32,128,0,0,16,0,33,64,1,0,13,48,251,0,2,32, -0,4,1,0,1,4,0,0,1,0,6,1,160,0,28,96,0,5,2,0,11,64,4,80,249,0,22,128,0 -,50,16,255,0,12,4,0,1,4,0,20,1,0,1,4,0,18,16,0,10,128,0,0,208,254,128 -,0,3,65,32,8,4,1,34,16,0,0,128,0,1,16,0,0,1,32,0,36,1,0,2,8,0,0,4,0,2 -,2,0,2,2,0,0,1,0,1,255,0,0,64,0,2,32,0,0,4,16,0,5,17,0,3,8,64,0,34,2, -0,12,4,0,2,120,255,64,64,17,0,1,50,64,6,152,0,0,17,48,0,0,64,0,0,21, -21,0,0,2,64,2,64,80,0,1,24,0,30,3,0,1,160,21,0,0,2,0,1,128,0,1,16,0,0 -,12,128,0,1,88,255,128,8,52,80,0,0,129,0,1,4,74,32,16,2,2,0,0,208,1,0 -,1,4,64,2,16,32,8,20,10,0,1,80,0,17,4,130,5,32,16,4,0,0,32,0,1,128,0, -0,132,13,130,0,0,32,0,1,1,32,0,0,4,2,96,33,8,8,255,0,0,1,32,0,1,4,0,1 -,4,0,0,32,16,0,0,8,0,0,16,0,6,32,0,0,4,8,0,20,128,0,0,4,128,0,0,16,0, -0,8,0,1,64,0,1,32,4,0,0,64,0,0,128,0,0,64,0,0,4,4,64,0,0,160,0,0,248, -8,0,0,16,0,1,16,0,1,64,0,0,2,0,9,16,0,1,64,0,22,32,0,0,1,0,0,16,0,7, -16,0,0,4,0,8,17,0,0,160,253,0,74,152,255,0,74,152,255,0,1,32,16,0,0, -160,0,1,128,0,3,4,0,0,8,0,1,1,0,0,34,128,2,16,0,31,16,32,0,7,4,0,0,64 -,0,5,80,250,0,13,32,3,0,3,8,0,36,36,0,1,4,0,6,32,32,0,3,8,254,0,8,2,0 -,1,2,0,1,4,0,2,16,0,39,16,0,8,8,1,0,0,32,0,0,96,248,0,12,32,0,60,184, -253,0,14,32,0,10,1,0,26,64,0,2,32,0,4,1,0,1,16,0,5,248,249,0,49,8,0, -23,24,255,0,1,20,0,1,64,0,5,32,128,0,0,128,0,3,16,8,1,32,0,0,4,16,0,0 -,16,0,20,1,0,3,2,0,12,16,0,0,4,0,2,40,254,0,1,128,0,2,16,0,10,128,0,0 -,2,8,0,1,1,16,1,1,0,0,4,0,34,16,0,6,16,0,0,248,254,0,54,4,0,18,152, -251,0,17,2,0,8,8,0,30,64,0,13,112,253,0,1,64,0,9,8,0,9,32,16,0,12,4,0 -,1,16,0,11,16,0,18,36,251,8,0,21,16,0,0,8,0,23,32,0,3,128,0,1,8,0,3, -32,0,8,8,0,0,48,252,0,50,2,8,0,12,64,0,2,4,0,3,112,249,0,0,32,64,8,0, -7,32,0,0,66,0,4,32,0,32,4,0,3,1,0,5,4,0,7,160,255,0,25,64,0,10,4,0,1, -16,0,17,8,0,11,8,0,0,88,250,0,14,128,64,0,57,88,251,0,15,8,0,21,1,0,1 -,4,0,10,4,0,4,4,0,1,32,0,5,1,32,0,2,96,249,0,23,128,0,12,8,0,1,32,0, -12,32,0,8,8,32,0,2,4,0,1,2,0,0,24,249,0,4,16,0,8,1,0,2,32,0,4,8,0,31, -4,4,0,3,32,0,5,2,64,0,0,16,32,250,0,1,36,16,0,0,128,0,2,2,0,1,8,8,0,0 -,32,0,3,64,0,1,64,0,1,130,0,0,32,0,25,2,0,18,72,255,0,7,64,0,2,1,0,5, -1,0,20,32,0,17,64,0,9,8,0,0,64,160,128,255,0,12,2,0,22,64,0,2,2,0,17, -32,8,0,4,128,0,1,8,0,3,208,249,0,1,8,0,0,2,0,0,32,8,4,0,1,16,0,1,64,8 -,0,0,2,4,0,1,64,0,6,32,0,18,2,20,64,0,4,4,128,128,0,2,1,0,3,8,0,2,1,0 -,1,152,249,0,4,2,64,0,0,16,1,2,0,1,128,128,0,3,128,0,0,2,1,0,0,32,4,2 -,0,0,8,0,15,32,0,11,8,0,0,8,0,1,2,0,0,16,0,8,72,249,0,0,48,8,0,0,15,4 -,192,52,88,0,0,2,32,40,32,192,169,8,1,2,128,0,0,211,0,0,64,65,41,10,0 -,0,4,16,0,12,8,0,0,32,0,0,96,0,0,1,34,64,0,1,128,32,0,0,2,72,192,4,0, -1,71,0,0,10,0,1,16,0,0,4,192,64,0,1,176,251,32,3,36,36,2,0,0,4,8,4, -130,0,0,2,1,35,101,4,86,22,1,0,0,16,0,0,128,8,0,0,70,149,32,16,4,0,12 -,32,0,1,64,16,8,16,17,1,0,0,4,64,64,0,0,12,22,16,33,0,0,32,128,0,0,8, -2,66,0,2,128,8,32,0,0,96,249,0,3,2,0,1,8,4,128,0,2,8,64,0,0,128,0,0,4 -,0,3,1,0,0,4,128,0,0,4,0,13,32,0,2,5,32,0,0,2,0,1,4,0,2,4,2,0,5,4,0,4 -,32,0,2,184,251,64,0,0,16,8,0,4,1,0,2,130,32,0,0,8,4,0,1,2,0,4,2,0,0, -1,4,0,24,17,0,0,2,0,1,16,0,1,128,0,1,144,128,0,4,8,0,0,240,252,16,0,4 -,128,0,67,76,251,0,17,4,0,23,8,0,16,32,0,12,112,249,0,1,8,0,8,8,0,0,2 -,0,4,64,0,32,2,0,14,2,0,2,64,16,255,8,0,10,2,0,1,8,0,1,32,0,6,64,0,28 -,64,0,0,2,0,4,32,0,0,16,0,3,10,64,0,1,106,255,16,0,14,4,0,6,8,0,13,16 -,0,2,16,0,21,2,0,3,16,32,0,1,128,249,0,7,128,0,6,128,0,3,128,0,3,8,0, -10,128,0,2,2,0,6,128,0,5,2,0,15,64,24,251,0,0,64,0,7,5,0,0,20,2,0,1, -64,0,5,1,0,40,8,0,3,32,192,0,0,144,0,0,232,251,0,11,1,0,43,4,0,2,64,0 -,2,3,0,4,48,0,0,4,16,184,248,0,2,8,0,15,12,0,28,4,0,7,1,0,15,255,0,12 -,64,0,5,16,48,0,1,8,0,27,24,2,0,3,2,1,0,12,8,240,248,0,13,128,0,7,8, -64,0,24,64,0,3,32,128,0,0,2,0,1,32,0,0,64,0,0,32,0,3,16,0,1,4,8,136, -254,0,11,16,0,1,16,0,5,2,0,32,16,0,17,152,252,0,7,64,1,0,4,52,18,0,1, -8,0,2,104,130,0,2,52,64,0,17,128,6,0,9,4,2,0,12,176,250,0,8,2,0,4,48, -0,2,64,0,2,96,0,3,16,0,19,6,0,9,48,16,0,12,248,249,0,7,192,2,0,4,44,0 -,1,240,64,0,2,120,64,0,2,56,16,0,18,6,0,9,48,0,13,160,250,0,7,64,1,0, -4,48,32,0,0,208,2,0,2,32,2,0,2,20,0,19,16,2,0,8,48,34,0,12,88,254,0,7 -,128,17,2,0,3,52,10,0,1,68,0,2,104,17,0,2,36,34,0,18,22,8,0,8,48,6,0, -12,136,248,0,8,2,0,4,60,0,1,240,0,3,112,0,3,60,0,18,128,7,0,9,28,0,13 -,80,250,0,8,2,0,4,48,0,6,64,32,0,2,32,0,19,6,0,9,48,32,0,12,152,255,0 -,7,64,145,0,4,148,16,0,0,192,34,0,2,96,4,0,2,48,0,19,70,8,0,8,24,0,13 -,144,252,0,7,64,0,2,65,0,1,180,32,0,1,8,74,32,8,73,36,37,164,5,0,19, -128,16,0,4,104,0,3,52,1,0,7,77,176,1,0,1,136,249,0,11,4,4,0,0,48,0,2, -64,0,2,32,0,1,128,1,1,0,19,2,1,0,3,96,0,3,48,32,0,7,12,128,1,0,1,64, -250,0,7,192,2,0,1,8,0,1,48,8,0,0,240,0,0,24,192,0,0,88,0,0,12,224,1,0 -,20,4,2,0,3,96,0,3,16,0,8,15,0,3,120,251,8,0,6,64,1,0,1,4,4,0,0,48,1, -0,0,208,40,64,72,0,0,40,0,0,64,132,40,0,20,18,0,4,96,0,3,48,33,0,7, -132,4,0,2,234,251,0,7,128,17,2,0,0,76,0,1,48,2,0,1,68,136,32,147,64,0 -,0,36,160,5,0,20,6,1,0,4,66,0,2,16,32,0,7,77,128,1,0,1,240,253,0,8,2, -0,1,15,2,0,0,60,16,0,0,240,0,0,22,192,3,48,0,0,11,200,129,0,19,128,7, -0,4,24,0,3,60,0,8,15,226,129,0,1,56,248,4,0,7,2,0,1,12,8,0,5,24,0,0,3 -,64,0,0,12,36,1,1,0,19,6,4,0,3,96,32,0,2,16,16,0,7,8,128,1,0,1,65,254 -,0,7,64,129,0,1,44,0,1,16,34,0,0,192,66,28,8,3,32,0,0,76,160,1,0,20, -22,0,4,96,1,0,2,32,2,0,7,141,136,129,0,1,16,252,0,7,64,0,5,52,33,0,1, -128,138,0,0,8,0,2,160,1,20,2,0,17,128,6,0,1,2,64,8,2,12,0,0,32,0,3, -144,66,0,4,1,4,0,2,48,253,0,14,32,0,3,16,4,0,0,1,0,1,128,1,48,32,0,18 -,6,0,1,8,8,1,96,0,1,128,128,0,2,64,0,10,248,251,0,7,192,2,0,5,16,0,0, -48,0,0,8,208,131,0,2,96,0,0,24,0,25,112,0,6,176,0,5,12,0,3,152,255,12 -,0,6,64,1,0,5,2,0,0,16,0,0,64,64,19,0,2,32,0,0,52,34,0,21,24,32,11, -105,10,0,0,128,1,2,0,1,80,0,5,12,8,0,2,58,254,4,0,6,128,17,2,0,3,16,0 -,1,192,32,136,8,16,1,0,2,128,52,0,19,198,0,1,144,4,18,104,0,2,9,0,2, -128,0,6,8,0,2,72,251,0,8,2,0,4,52,0,1,240,0,0,22,192,3,0,2,64,0,0,40, -32,0,17,128,7,0,1,14,192,1,25,32,0,0,224,64,0,2,96,0,5,3,0,3,48,248,4 -,0,7,2,0,7,192,0,0,8,0,0,128,0,2,160,65,48,0,19,6,0,1,24,4,3,98,32,0, -0,128,65,0,2,128,0,5,8,0,3,209,254,0,7,64,137,0,7,192,0,0,144,2,3,0,2 -,160,5,36,0,19,6,4,0,0,152,0,0,19,96,0,1,128,5,0,2,64,0,5,12,2,0,2, -176,253,16,0,3,16,2,1,64,0,2,77,16,0,1,6,0,1,8,26,0,0,8,8,32,0,0,32, -48,52,0,18,128,6,2,0,0,26,66,0,0,104,4,0,0,160,33,52,0,4,64,0,0,104,0 -,0,32,0,3,184,248,0,4,64,0,5,12,0,5,64,24,0,1,1,0,24,2,0,1,24,0,0,1, -97,32,0,0,128,1,48,0,5,1,97,0,0,12,4,0,2,24,254,0,7,192,2,0,1,12,0,1, -48,32,0,0,240,0,0,24,208,3,96,64,0,0,96,1,13,16,0,18,6,2,0,0,8,0,1, -121,32,0,0,128,0,10,14,0,3,192,252,12,0,3,192,20,0,0,64,1,0,1,12,4,0, -0,32,1,0,0,208,36,0,0,64,139,96,0,1,128,5,4,1,0,18,6,0,1,80,16,3,32,1 -,0,1,5,177,64,0,4,3,100,33,77,1,0,2,226,252,4,0,3,128,40,0,0,128,17,2 -,0,0,72,2,0,4,68,152,0,0,16,1,2,0,0,32,72,48,0,19,4,4,0,0,64,8,18,104 -,1,0,1,4,50,1,0,4,162,96,132,13,16,0,2,208,248,0,4,112,0,2,2,0,1,3,0, -4,240,0,0,30,200,3,24,32,0,0,64,0,0,60,8,0,17,128,7,0,1,30,192,1,121, -16,0,0,224,1,12,32,0,3,192,1,24,0,0,3,0,3,224,248,4,0,3,192,64,0,1,2, -0,1,8,8,0,0,16,0,2,32,24,0,0,128,64,0,1,160,1,48,0,19,4,2,0,1,16,3,66 -,64,0,2,49,0,5,131,96,64,12,0,3,1,255,0,4,224,2,0,0,64,161,0,1,132,0, -1,48,0,1,192,4,24,16,11,96,18,0,0,160,16,6,17,0,18,23,0,1,144,0,0,19, -104,4,0,1,9,0,0,33,0,4,19,0,0,4,76,8,0,2,56,250,0,3,22,18,2,0,0,64,18 -,2,0,0,13,1,0,1,16,0,1,8,26,0,0,8,41,1,0,0,160,136,52,0,18,128,38,8,0 -,0,26,67,98,104,0,1,160,5,53,0,6,104,0,0,41,0,3,240,248,0,3,6,0,0,64, -0,1,1,0,1,4,0,5,64,24,16,3,96,64,0,2,48,0,19,2,0,1,8,0,0,1,96,0,1,128 -,0,0,48,0,6,96,0,0,4,4,0,2,168,248,0,2,128,7,192,128,0,0,192,2,0,1,12 -,4,0,0,48,0,1,240,32,16,128,0,0,26,0,1,192,128,12,0,19,6,2,0,0,24,0,1 -,96,64,0,0,128,1,0,14,112,253,8,0,1,128,6,192,4,0,0,64,1,0,1,140,0,1, -160,32,0,0,208,2,128,96,16,40,16,0,0,32,0,0,4,0,19,22,0,1,136,2,9,98, -1,0,0,128,40,176,64,0,5,96,33,36,8,0,2,42,250,0,3,192,0,0,72,0,0,128, -2,0,1,8,8,0,4,68,24,64,163,64,36,0,0,32,4,0,20,36,2,0,1,1,19,96,64,0, -1,8,48,66,0,5,96,2,44,2,0,2,48,252,0,2,128,1,48,0,2,2,0,1,15,0,4,240, -0,0,26,192,0,0,24,0,1,64,65,8,8,0,17,128,3,0,1,6,208,131,24,0,1,96, -128,12,0,6,24,32,15,0,3,160,251,4,0,3,128,32,0,1,2,0,1,8,0,1,16,0,6, -96,16,0,0,32,0,0,48,0,19,6,0,1,16,0,0,3,96,0,2,1,48,32,0,5,96,0,0,12, -8,0,2,49,253,0,4,192,4,0,0,64,2,0,1,14,4,0,0,48,0,1,192,130,8,0,0,64, -64,0,1,32,1,52,17,0,18,22,8,0,0,88,16,80,96,64,0,0,128,5,1,2,0,6,66, -32,0,3,96,254,16,0,10,141,160,1,48,194,2,4,8,16,3,8,9,8,0,0,160,17,4, -4,0,17,128,66,212,0,0,26,81,3,10,128,0,0,160,17,5,144,198,0,1,138,16, -0,0,8,33,129,8,0,2,56,248,0,11,4,136,1,32,0,2,64,0,2,64,0,1,128,0,0, -49,0,20,64,128,24,0,0,3,0,2,128,1,16,0,0,6,0,1,24,0,1,32,0,0,4,0,3,80 -,248,0,11,12,128,1,48,0,0,6,240,0,0,24,128,3,16,64,0,0,192,1,48,0,19, -6,192,0,0,8,8,1,0,2,128,128,48,0,0,2,0,1,6,8,0,0,96,16,0,4,248,251,12 -,0,10,12,132,1,32,66,64,210,0,0,88,80,8,73,1,0,0,160,144,48,66,0,18, -160,192,0,0,17,1,34,1,20,0,1,17,48,10,36,2,0,0,74,0,1,96,4,12,16,0,2, -162,248,4,0,10,136,4,4,17,0,0,18,192,68,0,0,64,0,0,44,16,0,0,32,1,176 -,0,19,34,128,0,0,64,8,8,1,1,0,1,4,34,2,16,2,0,0,16,8,0,0,64,4,72,0,3, -152,254,0,11,7,96,0,0,48,128,5,244,0,0,8,192,0,0,16,0,1,192,129,28,32 -,0,17,128,5,242,64,30,192,3,56,64,0,0,224,1,60,160,7,0,1,6,0,1,120,64 -,7,4,0,2,216,252,4,0,10,12,128,129,16,0,0,6,194,32,24,0,1,32,0,1,32,1 -,48,32,0,18,6,0,0,128,0,0,16,0,0,1,0,3,49,16,0,0,2,0,0,24,4,0,0,96,0, -0,12,0,3,217,252,0,11,12,129,5,48,0,0,38,192,0,0,24,0,0,35,2,0,1,160, -1,24,1,0,18,23,193,8,144,0,0,34,96,128,0,1,9,184,0,0,68,0,1,144,0,1, -112,10,44,16,0,2,152,250,0,4,208,0,1,64,162,40,68,13,0,1,48,64,0,0, -192,128,16,8,8,105,4,0,0,32,0,0,54,65,0,16,52,129,2,0,1,2,64,98,8,129 -,141,40,4,5,18,0,2,26,72,19,8,36,45,4,0,2,232,254,0,4,192,0,2,1,0,1, -12,4,0,0,48,0,1,192,0,3,32,32,0,2,48,0,17,16,16,4,1,0,0,8,8,1,32,0,0, -4,128,0,0,16,0,3,8,0,0,1,33,0,0,12,0,3,208,254,0,4,192,0,1,192,1,96, -32,4,0,1,56,0,1,32,0,0,24,192,0,0,112,32,0,2,16,32,0,16,48,0,0,2,0,6, -12,0,1,48,8,0,2,24,0,0,3,96,0,0,4,0,3,176,254,8,0,3,192,0,1,64,2,0,0, -4,40,8,0,0,4,33,0,0,208,8,153,66,0,0,40,1,0,1,64,48,2,0,16,16,4,0,0,2 -,0,0,24,32,9,98,33,4,129,145,48,2,0,2,24,9,81,96,20,72,4,0,2,11,255,0 -,5,132,0,1,2,32,1,64,8,0,0,52,0,1,208,2,0,1,139,72,0,2,8,17,34,0,16, -128,32,66,2,0,0,144,0,0,139,64,4,128,16,137,32,64,0,2,80,4,8,66,128, -64,8,0,2,33,253,0,4,48,0,1,64,1,88,64,15,0,1,60,16,0,0,240,128,8,192, -3,112,64,0,0,224,0,0,60,0,17,12,128,5,0,1,14,196,3,56,16,3,224,0,0,60 -,0,3,30,192,0,0,120,0,0,15,0,3,8,249,4,0,3,192,0,2,1,96,32,0,0,8,0,3, -192,0,0,24,0,0,3,64,0,2,128,16,0,17,32,0,0,2,2,0,0,24,4,3,96,0,0,8, -128,1,49,0,5,2,96,0,5,241,253,0,4,192,68,0,1,2,96,2,42,0,1,48,18,0,1, -64,24,0,0,3,96,0,1,128,5,32,10,0,16,48,17,36,0,1,88,0,0,32,114,128,76 -,132,1,56,17,0,2,24,32,11,114,65,10,1,0,2,24,255,160,32,0,2,208,0,1, -64,2,0,1,77,4,0,0,52,4,0,1,128,16,33,8,104,0,1,160,1,52,0,15,160,5,1, -128,38,0,1,2,67,98,8,68,0,0,32,0,0,180,0,3,130,72,16,104,2,141,4,0,2, -168,250,0,4,192,0,2,1,0,1,12,0,1,48,0,1,192,0,3,97,0,3,48,0,15,128,0, -2,6,2,0,0,8,0,0,1,0,2,128,128,48,16,0,2,16,0,0,1,97,64,12,0,3,216,255 -,128,129,0,2,192,128,0,0,192,2,0,1,4,0,1,48,0,1,32,0,0,16,192,3,24,0, -1,224,65,12,0,15,128,1,0,1,6,2,0,3,96,0,3,48,0,3,4,0,1,98,0,0,4,0,3, -96,251,4,4,0,2,192,2,0,0,64,1,0,1,8,1,0,0,48,9,0,0,208,128,0,0,80,35, -9,0,1,160,9,4,0,15,128,32,0,1,22,0,1,24,16,9,98,36,0,0,128,1,50,66,0, -2,18,16,11,96,34,40,16,0,2,18,251,140,4,0,2,192,4,0,0,128,1,0,1,128,4 -,0,0,176,64,0,0,208,2,0,1,16,1,36,0,1,16,2,0,16,8,0,1,36,0,1,144,8,11 -,0,0,34,0,1,73,32,1,0,2,74,0,0,18,65,130,64,0,3,8,253,96,1,1,0,1,48, -64,0,0,64,2,0,1,15,0,1,60,0,1,48,64,8,192,3,16,0,1,192,1,8,16,0,14,96 -,128,0,0,128,1,1,0,0,14,192,131,24,0,1,224,0,0,28,16,0,2,4,208,1,56,0 -,0,15,8,0,2,64,253,136,129,0,2,192,128,0,1,1,0,2,8,0,0,32,16,0,0,192, -0,2,128,96,0,3,48,0,16,1,0,1,4,4,0,0,24,16,3,64,16,0,0,128,65,48,0,3, -8,0,0,3,98,64,0,0,8,0,2,177,252,128,9,0,2,192,0,2,2,0,1,72,0,1,176,0, -3,8,0,0,35,96,130,0,0,128,17,181,8,0,14,128,137,0,1,66,0,1,24,0,0,16, -98,4,0,0,128,1,128,32,0,4,3,0,0,1,72,0,3,120,252,0,26,4,2,0,45,216, -249,32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,1,128,0,0,16,0,0,2,64, -0,0,8,0,0,1,0,18,32,0,0,4,128,0,0,16,0,0,2,64,0,2,1,32,0,0,4,128,0,0, -16,0,0,2,64,0,0,8,0,1,32,0,0,4,0,0,80,248,0,15,32,0,9,128,0,42,4,0,2, -120,253,36,0,0,4,128,0,0,16,0,0,2,64,0,0,9,0,0,1,32,0,0,4,128,0,0,16, -0,0,2,64,0,0,8,0,0,1,0,1,4,64,0,14,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8 -,132,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,129,32,0,0,4,0,0,9,253, -12,0,7,16,4,0,3,8,0,7,129,0,1,8,128,64,0,24,16,0,7,2,65,32,0,2,2,0,3, -75,252,32,0,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32,0,1,128,0,2,2,0,3,1,0, -0,64,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,2,1,32,0,0,4,128,0,3,64,0, -0,8,0,1,32,0,0,4,0,0,112,248,8,0,22,64,0,3,32,0,44,242,255,32,0,0,4, -128,0,0,18,0,0,2,64,0,0,9,0,0,1,32,0,0,4,128,0,0,16,132,2,64,0,0,1,1, -1,0,0,128,128,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4, -128,0,1,128,0,0,80,0,0,8,0,0,1,32,0,0,4,0,0,144,253,0,26,128,0,17,1,0 -,11,1,0,14,8,254,0,14,32,16,0,36,2,0,4,16,0,4,4,0,7,216,248,0,2,128,0 -,7,8,0,4,64,64,32,0,2,8,0,0,32,0,21,4,0,24,24,255,0,15,8,0,10,132,0, -25,9,16,0,17,144,251,0,11,16,4,0,6,8,0,0,16,0,24,1,0,14,8,0,3,2,0,4, -249,0,11,1,0,2,32,0,2,2,16,0,1,128,0,1,1,0,0,4,0,19,8,16,0,8,4,0,6,8, -0,0,16,0,2,208,248,0,4,32,0,8,16,0,0,1,64,0,2,128,0,0,16,8,128,0,1,8, -0,15,1,0,4,16,0,9,20,0,5,4,0,1,4,8,128,249,0,1,1,128,0,2,8,16,128,0, -17,17,0,30,4,0,1,64,0,3,16,0,1,4,0,2,80,251,0,0,3,1,128,0,0,32,0,0,2, -16,0,0,2,0,2,40,8,0,0,1,32,0,2,80,1,32,2,64,0,0,5,16,0,14,64,3,0,4,84 -,0,3,4,0,1,4,5,0,0,50,0,3,8,0,0,2,8,0,0,8,16,88,252,0,3,14,0,1,114,3, -64,0,1,12,2,8,0,0,92,4,64,32,0,1,145,32,168,8,10,69,128,0,15,128,0,0, -32,8,128,11,0,0,8,4,2,64,0,0,160,1,0,0,32,34,0,0,1,0,0,34,0,1,208,0,1 -,11,0,0,32,1,160,255,0,3,1,0,6,1,2,0,1,8,0,0,128,32,0,1,129,32,0,1,2, -64,0,16,32,0,1,32,0,0,1,0,0,2,16,0,8,4,0,6,2,0,2,184,251,12,0,2,2,0,1 -,8,4,0,0,2,0,0,8,0,2,32,4,0,5,64,1,32,0,19,4,0,1,4,0,2,2,8,0,1,2,0,0, -4,0,6,64,0,1,2,0,0,32,0,0,216,248,0,4,128,16,0,4,32,0,7,2,0,0,64,128, -0,2,2,64,0,18,24,0,5,9,0,2,4,0,3,1,32,0,2,32,0,3,216,248,0,27,2,64,0, -20,128,0,8,32,0,6,64,0,4,120,251,0,14,4,0,3,2,0,1,2,0,36,32,0,6,64,0, -0,2,0,2,152,249,16,0,13,128,0,2,32,0,2,8,0,36,16,0,3,16,0,1,32,0,0,4, -0,2,140,248,2,0,10,1,0,2,16,4,0,1,16,0,4,64,0,25,8,2,64,0,3,8,0,1,64, -0,0,4,0,1,32,0,0,8,0,2,128,16,252,0,4,48,16,0,4,2,1,0,1,64,0,2,16,0,1 -,32,0,2,4,0,19,128,130,0,4,96,8,0,0,8,0,8,64,0,1,9,0,2,216,252,8,0,13 -,32,0,10,1,0,31,32,0,13,162,252,2,0,3,128,0,13,64,0,1,16,0,24,4,0,0, -64,0,3,1,0,2,8,0,6,16,0,4,128,224,253,0,26,32,0,17,32,0,6,64,0,3,32, -128,8,0,2,16,0,1,64,0,5,208,250,0,9,4,0,6,64,0,0,1,0,0,1,0,0,32,0,1, -32,1,0,25,16,0,9,2,0,2,1,0,3,248,249,72,0,8,16,0,5,1,0,6,2,0,21,4,0, -17,64,0,0,16,0,4,192,252,0,14,8,0,35,32,128,0,4,2,32,0,5,4,0,6,56,249 -,0,14,16,0,35,8,0,0,1,0,6,2,0,11,48,254,4,0,10,16,0,11,16,0,1,8,0,16, -2,64,0,8,16,0,1,64,8,8,0,11,8,252,0,3,2,0,13,2,0,1,1,0,28,2,0,5,4,0, -14,216,252,0,26,2,0,28,32,0,11,32,0,3,184,255,0,74,152,255,0,74,152, -255,0,14,128,0,4,16,0,5,1,40,0,19,2,0,3,8,64,0,17,32,248,0,14,16,0,34 -,1,0,16,128,0,4,24,254,0,3,8,64,0,2,4,0,5,8,0,4,132,0,2,128,2,0,0,4,0 -,21,64,0,0,128,0,4,64,0,9,1,0,2,168,253,0,8,64,0,2,16,0,4,64,0,0,32,0 -,31,1,0,0,64,0,4,2,0,11,152,255,0,52,64,0,20,152,251,0,27,64,0,24,128 -,0,14,8,2,0,2,240,251,0,3,1,32,0,0,8,0,1,16,0,3,16,8,0,0,1,0,1,4,0,24 -,1,0,12,160,0,8,8,0,2,112,250,16,0,4,64,16,16,128,0,4,1,0,2,128,0,1, -128,64,0,0,8,136,0,0,8,0,19,1,0,4,32,0,1,8,0,9,8,0,4,224,249,0,0,48, -16,0,0,1,32,128,86,16,80,18,0,0,4,0,1,9,16,2,2,128,0,0,8,128,10,0,0,1 -,40,40,4,8,0,14,128,128,2,128,0,1,20,80,0,0,129,8,0,0,40,8,0,0,160,16 -,1,0,0,20,8,0,2,74,4,4,0,2,120,252,0,0,1,128,8,2,64,17,104,0,3,132,10 -,1,0,0,9,176,164,0,1,4,128,69,160,156,162,96,9,80,0,12,32,0,0,32,196, -0,0,8,128,0,0,132,36,4,64,64,8,0,1,48,161,0,2,4,18,0,2,74,4,0,0,64,48 -,8,64,250,0,2,16,1,64,0,0,8,0,3,2,4,0,1,32,0,3,8,128,0,1,8,130,128,0, -14,64,0,2,1,32,0,3,2,0,15,1,0,1,5,32,240,252,32,0,4,16,0,5,32,0,3,17, -0,3,8,0,0,4,0,0,64,0,21,2,0,3,17,16,0,1,32,8,0,3,4,0,2,32,0,2,8,0,0, -152,251,0,12,1,32,0,33,128,0,13,64,0,0,8,0,2,1,0,3,216,249,0,25,192,0 -,1,8,0,34,8,0,8,16,251,8,0,14,36,0,4,10,0,3,64,0,18,32,0,0,2,0,16,2,0 -,6,90,251,0,0,64,0,8,16,0,2,4,0,1,129,0,6,2,0,1,32,0,22,64,4,0,19,104 -,253,4,0,14,64,0,10,128,16,0,29,2,0,7,8,0,4,184,252,0,5,2,0,3,1,0,11, -1,0,23,1,0,1,64,16,0,4,4,1,0,5,8,2,0,0,6,0,4,255,128,0,4,2,0,7,8,0,0, -16,0,1,4,0,1,32,1,0,24,8,0,2,8,32,32,0,13,20,0,2,136,254,48,0,4,1,0,2 -,32,0,0,4,2,0,5,8,0,4,32,0,24,10,4,0,3,160,64,128,0,4,64,129,8,16,16, -0,0,2,0,1,208,254,0,14,64,0,2,1,0,0,64,0,1,64,0,2,8,0,31,16,0,6,32,0, -4,96,255,0,15,4,0,3,8,2,0,0,16,0,35,64,0,5,128,0,5,72,253,0,6,1,0,4, -128,0,6,32,0,0,128,0,0,4,0,18,32,0,0,4,128,0,5,128,128,1,0,1,16,192,0 -,7,4,8,2,0,1,176,249,0,14,64,0,4,4,0,4,64,0,0,16,0,18,16,0,4,128,128, -0,17,72,251,0,6,10,1,0,2,64,8,0,2,32,0,28,180,128,2,0,9,52,0,0,20,16, -132,0,4,129,1,0,0,4,17,160,251,0,7,4,0,2,12,0,4,2,0,28,8,4,0,9,48,32, -0,0,68,0,10,168,251,0,6,8,0,3,15,0,2,128,1,0,28,60,128,5,1,0,8,48,0,0 -,4,192,128,0,7,28,32,0,0,249,0,6,144,32,0,2,140,16,0,1,128,0,29,36, -137,34,0,9,48,16,0,0,196,4,0,4,136,16,0,0,128,0,0,128,250,0,6,64,0,3, -77,0,3,22,0,29,17,19,0,9,48,17,0,0,128,8,0,5,8,0,0,4,33,8,250,0,6,6,4 -,0,2,3,8,0,1,128,7,1,0,27,12,128,4,2,0,8,28,0,0,2,240,128,0,4,7,0,1, -12,0,0,96,248,0,7,16,0,2,12,0,3,6,0,28,16,0,0,5,0,9,48,0,1,192,128,0, -4,4,8,0,1,32,200,248,0,6,64,0,3,140,4,0,2,6,0,28,32,4,34,1,0,8,48,8,2 -,224,0,5,4,0,1,36,1,72,255,0,4,16,32,152,0,1,8,0,0,77,16,0,2,32,0,7, -160,5,0,0,1,0,6,40,0,6,20,0,0,52,128,0,7,13,0,1,4,138,20,20,72,0,4,65 -,0,3,88,252,0,6,24,8,0,7,6,2,0,7,129,0,0,16,0,6,12,0,6,6,0,0,48,0,14, -64,0,6,8,0,2,120,253,0,6,6,8,0,1,64,12,0,3,1,0,7,128,1,12,0,7,12,0,6, -6,0,1,128,5,1,0,5,15,4,0,0,44,8,4,192,32,0,9,16,254,8,0,4,4,25,1,0,1, -2,76,4,0,1,128,22,2,0,6,128,17,5,0,7,10,0,6,5,0,1,128,34,0,6,129,0,2, -1,0,0,194,2,0,4,128,4,0,2,195,248,0,5,34,90,8,0,1,1,32,0,2,128,70,0,7 -,128,133,48,9,0,6,10,0,6,5,0,0,48,18,19,0,6,140,0,1,132,16,18,128,2,1 -,0,3,76,2,0,2,201,255,0,4,48,0,0,30,0,1,24,64,11,2,0,1,128,1,2,0,6, -224,1,60,0,17,60,128,4,2,0,5,15,2,0,0,12,128,7,242,0,5,7,0,3,64,254,4 -,0,4,32,24,0,3,12,0,3,6,0,7,128,129,48,0,17,48,0,0,5,0,7,2,0,1,8,0,0, -196,64,0,4,8,8,0,2,49,249,0,4,64,0,0,64,32,0,0,96,10,40,8,0,11,192,1, -48,0,17,48,9,2,1,0,5,140,0,1,148,0,0,66,224,8,0,4,132,0,3,64,253,0,4, -80,0,0,130,4,0,2,5,0,3,32,16,0,6,32,1,48,1,0,16,4,138,20,0,7,32,0,0, -54,0,0,22,216,130,26,0,3,13,1,0,0,4,1,176,255,0,4,128,0,0,16,0,3,8,0, -4,2,0,6,128,129,48,16,0,6,4,0,6,2,0,2,2,2,0,8,48,0,0,6,192,0,0,24,0,3 -,12,0,2,16,152,255,0,4,176,0,0,6,8,0,2,11,0,2,128,1,0,0,32,0,6,1,60,0 -,7,8,0,6,4,0,0,28,136,5,0,7,128,129,0,1,1,192,0,5,12,0,1,12,0,0,248, -253,4,0,3,80,136,146,0,3,5,8,0,1,128,0,8,128,132,52,0,17,128,128,2,0, -7,128,9,0,0,128,166,192,68,24,8,0,2,128,8,0,0,4,33,34,254,12,0,3,96,0 -,0,72,0,3,38,0,3,70,4,34,0,6,145,0,0,17,0,6,18,0,6,9,0,0,4,0,0,5,1,0, -7,48,0,0,130,6,128,0,0,153,0,3,12,0,1,128,0,0,224,252,0,4,144,0,0,4,4 -,0,2,9,4,0,1,128,7,240,0,6,224,0,0,12,0,17,12,160,4,0,7,96,0,0,12,136 -,7,114,0,0,6,16,0,2,15,2,0,0,12,16,120,251,8,0,3,160,0,0,26,0,3,10,0, -3,6,0,0,32,0,6,1,0,8,4,0,6,2,0,1,8,4,0,7,128,1,0,0,16,6,194,64,24,0,3 -,4,0,3,137,254,0,4,64,0,0,24,32,0,2,36,2,0,2,6,0,0,4,0,5,128,16,1,0,7 -,16,0,6,8,0,0,36,2,4,0,7,128,80,0,3,4,128,16,0,2,76,8,0,0,32,9,136, -253,0,4,144,0,0,2,0,3,1,0,2,128,32,1,0,3,8,2,0,2,4,0,7,2,0,6,1,0,0,20 -,0,1,192,132,0,2,104,0,1,160,33,0,0,128,134,16,64,0,4,1,1,0,0,36,1, -224,255,0,4,64,0,16,96,64,0,11,10,0,6,5,0,0,32,0,1,192,0,3,96,0,1,128 -,1,0,1,6,192,0,5,12,0,2,32,216,252,0,4,176,0,5,11,0,3,2,4,0,3,96,64,0 -,3,16,0,16,44,0,1,240,0,3,120,0,1,96,1,0,0,128,7,130,0,8,8,32,152,248 -,8,0,3,80,136,128,32,0,2,5,8,0,2,32,0,4,96,4,0,3,2,0,16,20,5,0,0,208, -0,3,104,0,1,128,129,0,1,2,192,4,1,0,4,1,0,0,4,0,0,138,248,0,4,96,0,0, -128,32,0,2,38,0,4,8,0,3,64,68,0,2,48,10,0,6,4,0,6,2,0,0,24,66,0,1,34, -0,2,96,0,1,160,73,0,0,128,22,192,2,0,4,44,0,1,4,18,112,249,0,4,144,0, -0,30,0,3,9,4,0,1,128,1,0,4,24,0,3,60,0,7,2,0,6,1,0,0,32,0,1,48,0,3, -112,0,1,224,1,0,0,128,7,177,64,0,4,7,4,0,0,28,0,0,232,254,4,0,3,96,0, -0,24,16,0,2,10,0,4,1,0,3,64,0,3,48,32,0,6,16,0,6,8,0,0,40,0,6,96,0,1, -128,1,0,1,4,192,64,0,9,121,251,0,4,128,0,0,88,0,3,132,2,0,2,16,0,4,32 -,65,0,2,128,0,0,1,0,5,136,0,6,4,0,0,16,10,0,5,96,0,1,160,16,2,128,70, -232,2,0,4,4,16,0,0,132,64,72,252,0,2,128,128,0,0,4,66,4,0,2,41,0,2, -128,64,17,0,9,1,2,0,5,2,1,0,5,1,0,0,4,0,1,144,8,0,4,64,136,1,52,128,0 -,0,88,136,0,4,73,16,0,0,180,0,0,16,254,0,3,6,0,0,64,0,4,4,4,0,13,48, -16,0,6,32,0,6,16,0,3,192,64,0,5,128,1,49,0,11,48,8,216,255,0,3,4,48,0 -,0,14,4,0,2,11,0,5,32,0,7,8,144,4,0,5,66,2,0,5,1,0,0,44,0,1,160,128,0 -,4,3,66,128,48,0,0,6,194,64,0,4,12,0,1,28,0,0,168,255,8,0,2,66,18,0,5 -,5,0,3,64,4,0,8,52,2,0,6,4,0,6,2,0,0,20,5,0,0,208,4,0,4,44,160,9,48,0 -,0,22,0,0,8,0,4,136,2,0,0,164,32,187,249,0,3,20,200,32,2,3,0,2,138,0, -3,64,0,0,34,0,7,180,0,0,1,0,5,144,0,6,8,0,0,24,66,0,0,208,4,0,4,65, -176,1,0,0,2,192,64,40,0,4,44,0,1,48,9,9,253,0,2,128,3,240,0,0,6,0,3,9 -,8,0,1,128,5,50,0,8,12,8,4,0,6,2,0,7,32,0,1,112,32,0,4,3,224,129,12, -136,1,176,0,5,15,2,0,0,60,0,0,222,252,4,0,2,4,192,0,1,4,0,2,8,0,4,192 -,32,0,7,48,128,0,6,64,0,8,40,8,0,0,192,0,5,12,130,1,48,16,4,192,32,0, -4,12,2,0,0,48,16,72,251,0,3,2,212,0,0,144,0,3,8,0,4,1,4,0,8,128,2,0,5 -,64,1,0,7,16,2,0,0,80,0,5,1,0,0,8,50,0,0,70,193,4,0,4,76,0,1,32,1,64, -252,0,4,192,4,10,64,3,0,1,1,0,1,52,132,0,0,65,4,10,64,34,0,2,32,128,4 -,0,17,4,128,2,80,66,2,0,3,41,162,9,16,134,20,212,0,1,64,16,0,1,129,0, -1,4,0,0,32,249,0,5,64,16,0,0,3,1,0,3,48,0,1,128,64,16,0,0,3,1,0,1,128 -,1,0,20,4,192,0,5,4,128,129,32,0,1,192,0,3,2,0,0,4,8,0,2,152,251,0,4, -224,64,22,0,0,3,2,0,4,32,2,176,64,22,132,2,2,0,2,1,60,0,0,1,0,5,128,0 -,8,44,128,5,0,0,64,0,4,7,0,0,1,44,32,4,0,2,128,2,2,0,0,7,4,0,2,56,250 -,4,0,3,16,0,0,10,0,0,1,0,1,128,2,0,0,48,1,32,81,0,0,138,64,19,0,2,128 -,136,52,128,0,6,64,0,8,20,133,162,64,8,0,4,9,0,0,4,22,0,0,64,196,64,0 -,0,64,0,2,128,0,1,176,8,186,250,12,0,3,16,0,0,12,1,35,0,1,32,0,1,32,6 -,64,100,0,0,12,64,131,0,3,9,48,4,4,0,6,2,0,7,24,66,3,192,64,0,0,3,0,2 -,8,128,1,24,0,0,18,192,8,1,64,0,0,2,0,0,9,4,0,1,9,168,250,0,4,240,64, -16,200,2,2,0,0,3,2,0,0,28,128,1,128,0,0,18,192,1,0,2,224,0,0,57,0,0,2 -,0,6,1,0,7,32,128,4,240,0,0,6,0,3,4,160,1,32,128,7,50,0,1,192,0,2,2,0 -,1,12,0,0,8,251,8,0,5,16,4,2,1,0,1,2,0,0,32,0,1,160,0,0,20,0,0,3,0,3, -1,48,136,0,6,64,0,8,40,8,5,192,0,0,24,0,3,4,0,1,40,0,1,192,0,3,1,0,3, -48,16,73,254,0,4,208,0,0,72,0,0,10,0,1,140,0,1,8,32,16,65,0,0,8,64,1, -0,2,128,132,176,0,0,8,0,6,4,0,7,144,0,0,2,224,0,0,153,8,0,2,8,128,0,0 -,16,0,0,2,8,136,0,1,33,0,1,72,4,0,0,48,1,152,253,176,1,0,3,4,2,0,3,77 -,16,0,0,180,0,0,32,0,0,4,18,64,139,0,4,20,136,0,6,64,0,6,32,0,0,36, -194,4,208,4,0,4,9,0,0,5,0,0,134,16,146,8,0,0,64,0,2,77,32,0,0,4,0,0, -144,251,128,1,0,3,64,0,4,12,0,1,48,16,0,0,2,64,8,0,0,3,0,6,1,0,5,128, -0,8,16,0,0,2,192,128,0,4,4,0,0,128,0,1,6,0,0,64,0,4,12,8,0,2,32,252,0 -,4,48,0,0,22,0,6,16,128,1,176,64,22,4,1,2,0,3,28,0,0,4,0,6,2,0,6,128, -44,128,5,192,0,5,11,128,1,45,32,4,128,0,2,3,2,0,0,12,130,129,0,1,96, -251,12,0,3,16,0,0,10,0,3,76,4,0,0,32,193,0,0,80,0,0,138,0,0,16,0,4,4, -4,0,6,12,0,6,137,17,20,133,162,192,4,1,0,3,5,128,5,20,0,0,38,8,16,0,4 -,36,0,0,16,0,1,67,255,4,32,0,2,192,34,12,1,0,2,68,2,0,0,48,18,6,97,0, -0,12,0,0,16,0,5,66,0,14,128,1,42,0,0,3,64,64,0,4,6,0,1,24,0,0,6,66,4, -1,0,0,96,0,1,40,132,17,1,0,0,49,251,96,0,3,240,0,0,16,8,0,2,15,0,1,12 -,128,7,128,0,0,18,192,0,0,2,0,3,40,0,15,224,1,32,128,4,176,0,5,8,128, -0,0,32,128,5,240,0,1,192,0,2,7,224,1,12,8,112,249,4,0,3,192,0,0,16,4, -0,2,4,0,1,16,16,6,160,0,0,12,0,1,1,0,3,52,0,15,128,1,40,0,0,3,0,6,4, -128,1,40,0,0,6,0,4,1,0,0,8,4,128,48,0,0,9,250,0,0,136,0,2,208,0,0,8,0 -,3,64,16,0,0,8,2,6,64,0,0,16,0,0,34,0,4,48,10,0,14,128,33,32,0,0,4, -192,8,1,0,3,8,128,1,16,0,0,39,68,130,0,1,8,0,1,4,128,5,176,16,224,252 -,16,0,0,36,66,0,1,4,18,8,0,2,129,8,0,0,4,2,32,128,4,26,0,0,35,0,4,132 -,0,17,4,129,22,208,36,0,0,64,0,4,133,32,134,66,148,8,0,0,64,18,0,1,1, -1,0,0,20,1,200,255,0,1,16,0,2,64,8,0,6,48,16,6,66,64,24,0,0,3,2,0,4,8 -,0,6,2,0,6,1,0,1,8,6,196,0,8,16,0,2,64,0,2,2,0,3,32,8,16,252,0,1,48,0 -,1,48,0,0,22,0,6,48,16,1,178,64,24,192,3,0,13,8,0,6,4,0,1,8,6,64,128, -0,1,3,1,0,1,128,1,44,32,6,130,0,2,130,0,1,12,0,3,72,251,12,0,0,48,34, -0,0,16,0,0,10,0,4,2,0,0,48,129,38,80,0,0,24,64,3,0,5,8,4,0,5,16,2,0,5 -,8,0,2,34,4,4,0,1,8,0,2,128,1,21,0,0,64,0,0,132,0,1,8,0,2,1,0,1,16, -170,253,4,0,0,160,32,0,0,192,0,0,13,0,6,16,162,6,96,0,0,24,16,0,6,17, -2,0,5,16,1,0,5,8,0,0,128,8,22,1,72,0,1,99,0,4,24,0,0,66,64,4,1,0,0,16 -,1,0,0,40,8,0,0,128,64,48,248,0,1,12,0,1,240,0,0,8,0,3,7,2,0,0,12,128 -,1,129,0,0,30,192,0,0,1,0,3,12,0,0,7,0,5,144,3,0,5,8,0,0,12,128,7,48, -0,1,192,0,3,128,0,0,32,128,5,241,0,1,192,0,2,3,0,1,60,0,0,32,254,4,0, -0,48,0,1,192,0,0,8,0,3,4,2,0,0,16,0,0,6,96,0,9,136,5,0,5,208,2,0,5,8, -0,1,8,6,1,0,2,3,0,2,128,1,24,0,0,6,1,0,2,2,0,1,8,0,3,97,253,0,1,32,17 -,0,0,208,0,0,8,0,3,12,0,1,160,32,0,0,128,0,1,8,0,5,32,2,4,0,5,8,2,0,5 -,4,0,0,32,2,6,128,128,0,1,83,0,2,128,1,32,0,0,22,64,72,0,1,33,4,0,0, -76,16,0,1,34,96,253,0,6,128,0,20,65,4,0,6,2,0,20,8,0,13,232,255,32,0, -0,4,128,0,2,2,68,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32 -,0,0,4,0,7,8,0,6,36,0,1,128,0,2,2,64,0,0,8,0,6,16,0,0,2,64,0,0,8,0,0, -1,32,0,2,104,248,0,59,1,0,1,4,0,9,32,200,248,36,0,0,4,128,0,0,16,2,1, -64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,64,8,0,0,1,32,0,17,32,0,0 -,132,160,0,0,16,130,2,64,0,0,8,0,0,65,36,0,0,4,128,32,16,0,0,2,64,0,0 -,8,0,0,1,32,0,0,4,0,0,225,255,12,0,17,8,1,128,0,6,1,0,17,2,0,0,32,0,4 -,68,130,64,0,1,18,1,0,6,32,16,0,2,75,250,32,0,0,4,128,0,3,68,0,0,8,0, -1,32,0,0,4,0,6,8,0,0,1,32,0,1,8,0,14,32,0,1,8,0,2,2,64,0,3,2,0,3,16,0 -,0,2,0,1,8,0,1,32,0,2,72,248,8,0,66,2,0,5,146,253,32,0,0,4,128,0,0,16 -,16,128,72,0,0,8,0,0,33,48,0,0,4,128,32,2,68,130,72,0,0,8,0,0,1,32,0, -1,17,0,14,32,0,1,145,32,18,0,0,2,64,0,0,8,65,0,0,32,0,0,4,145,0,0,16, -0,0,2,64,0,0,8,0,0,32,40,0,0,4,17,48,253,0,61,1,0,11,136,255,0,61,128 -,0,11,16,255,0,14,128,0,34,32,0,7,64,0,1,2,0,6,8,0,0,32,0,0,248,255,0 -,1,64,0,1,32,0,0,8,0,2,16,0,0,16,0,1,8,0,6,16,0,2,16,0,26,1,0,0,32,0, -1,128,0,1,16,0,1,8,0,2,16,0,0,128,4,96,250,0,2,8,0,10,8,0,6,1,0,35,1, -0,1,4,160,0,4,8,0,3,120,248,0,9,8,0,33,128,0,0,64,0,0,8,0,9,64,0,0,4, -1,0,8,64,0,0,12,250,0,6,8,64,0,1,16,1,0,2,32,2,0,4,2,0,20,32,0,2,2,1, -0,0,16,0,1,18,0,0,1,0,1,16,32,0,0,20,32,0,0,64,0,1,64,0,1,64,0,0,32,0 -,0,254,32,0,0,4,128,0,0,64,0,6,1,0,1,128,0,3,64,0,25,8,0,9,64,0,2,64, -0,10,120,254,32,3,4,128,0,0,144,2,84,128,0,1,32,66,9,0,1,144,21,0,2, -64,0,0,1,0,4,5,0,14,64,0,0,16,37,1,2,0,0,4,0,1,17,0,0,2,0,1,9,16,0,0, -50,64,0,0,128,0,1,32,0,1,128,0,0,16,240,251,0,2,136,8,128,32,8,4,2, -160,2,68,0,2,12,150,68,0,2,2,8,0,0,8,0,0,81,0,0,9,0,17,8,130,65,0,1,4 -,1,32,0,1,42,88,16,34,2,65,154,0,1,160,0,2,10,72,52,0,1,254,8,0,1,32, -0,1,32,2,4,0,0,32,0,0,1,0,2,16,2,16,0,7,64,0,0,32,0,17,160,0,0,33,0,1 -,16,2,32,0,1,2,64,4,0,0,4,68,0,2,128,0,2,2,32,32,128,144,250,0,4,16,0 -,1,64,0,6,32,4,4,0,1,64,0,2,1,32,0,21,128,0,13,32,0,7,16,0,0,192,252, -0,61,128,0,0,1,32,0,4,16,0,2,16,253,0,2,32,0,3,32,0,9,128,0,8,64,0,32 -,128,128,0,9,56,249,0,16,24,0,31,32,0,11,1,2,1,0,4,1,0,0,64,4,8,251,0 -,14,8,0,33,34,0,8,2,0,1,8,0,1,8,0,2,9,4,0,0,16,0,0,72,255,0,57,64,0,2 -,2,32,0,2,8,0,6,80,251,0,16,4,0,56,216,255,0,49,64,0,2,1,0,11,1,0,2, -128,0,3,251,2,0,61,32,0,6,1,0,0,8,128,136,253,0,7,32,0,0,1,0,1,10,0,3 -,1,0,9,4,0,14,32,0,0,4,0,3,2,0,5,2,16,0,2,16,0,0,4,0,2,32,2,0,0,128,0 -,0,72,250,32,0,6,16,8,0,1,32,0,14,4,32,0,19,1,0,5,4,0,3,1,0,0,64,0,8, -128,24,248,0,23,16,0,1,64,0,29,32,128,0,0,128,0,12,104,253,0,74,152, -255,0,72,8,0,0,16,255,0,2,128,0,54,1,0,14,8,255,0,6,8,0,7,16,0,10,4,0 -,36,64,0,3,4,0,3,250,0,5,1,0,19,1,0,32,16,0,2,1,0,7,16,152,255,0,3,4, -0,15,64,0,7,8,0,1,32,0,3,4,0,1,16,0,32,176,250,0,32,8,0,13,8,0,1,32,0 -,3,16,0,17,154,252,0,6,1,0,4,16,0,5,64,0,0,8,0,7,65,0,1,4,64,0,1,128, -32,0,1,2,32,8,0,5,2,0,10,16,0,10,88,252,0,6,32,0,8,8,0,0,1,32,0,6,64, -128,0,0,1,0,0,2,4,0,1,64,128,0,1,1,2,0,8,1,0,3,16,0,4,2,0,10,24,248,0 -,2,4,0,0,16,0,0,4,0,3,8,0,1,64,32,0,4,128,0,2,128,0,30,128,0,7,128,0, -5,8,176,252,0,0,2,0,12,16,0,0,16,0,28,8,0,2,16,0,0,64,0,5,8,0,8,54,0, -2,8,160,253,0,30,16,0,2,16,0,2,8,0,2,8,0,17,16,8,0,5,2,0,4,252,0,21,4 -,0,24,32,0,8,16,4,0,14,232,250,0,1,5,0,0,4,4,32,2,0,1,2,0,0,2,0,0,1,0 -,0,32,1,0,0,32,0,0,64,0,2,1,128,64,0,0,32,0,16,16,8,0,0,4,64,0,1,128, -0,1,4,0,0,64,0,0,128,0,0,4,0,3,8,8,2,128,0,1,8,0,0,253,4,0,0,8,0,1,64 -,0,12,128,0,0,16,0,0,2,32,0,2,8,16,0,19,1,0,1,64,0,0,64,16,0,3,8,0,0, -32,0,0,8,0,3,8,0,1,1,0,0,26,252,0,0,128,12,0,0,1,18,64,4,0,1,1,0,0,2, -64,0,1,16,1,0,0,212,80,144,10,194,64,2,64,128,4,56,0,3,16,0,11,8,16, -20,6,64,0,0,64,0,0,9,64,42,0,0,168,0,0,32,161,18,0,0,2,0,1,80,33,3,64 -,5,1,16,8,255,64,67,16,38,2,96,161,8,132,135,0,0,16,13,137,0,1,88,1,0 -,0,40,16,18,64,0,1,8,129,28,33,9,0,2,8,0,6,12,2,32,0,0,128,114,0,0,82 -,36,37,16,56,4,16,64,10,4,2,32,16,8,4,192,56,72,128,131,2,69,0,0,32, -87,0,0,6,80,251,0,1,9,0,0,1,32,32,2,144,128,0,0,64,4,64,0,1,16,0,1,32 -,0,5,32,0,1,16,0,2,16,0,6,8,2,64,0,0,128,64,0,2,1,0,0,2,2,0,2,1,2,0,0 -,8,32,0,0,32,32,2,64,128,0,3,64,0,2,248,128,0,1,4,0,4,1,0,1,1,8,0,5,2 -,4,128,0,1,8,8,0,0,4,0,11,8,0,3,128,0,0,128,0,1,32,8,0,1,8,64,0,1,64, -0,0,128,0,0,16,128,0,1,1,0,2,128,0,1,8,128,250,16,0,18,32,0,0,4,0,6, -16,0,1,64,0,3,8,0,1,32,0,8,1,0,22,12,254,0,30,8,0,1,32,0,3,4,0,1,16,0 -,4,128,0,2,32,0,18,4,0,1,128,255,4,0,3,2,0,0,32,2,1,0,0,1,0,38,192,0, -6,1,0,9,4,0,2,64,57,249,0,14,36,0,5,1,0,2,64,2,0,18,4,16,0,10,128,0,1 -,4,0,2,1,4,0,1,136,0,3,249,16,0,28,1,0,1,4,0,2,128,0,2,2,0,20,64,0,10 -,176,250,0,12,2,0,17,64,0,2,64,0,2,32,0,2,32,0,16,16,0,0,34,0,5,2,0,2 -,248,248,0,4,128,128,16,0,8,4,128,0,8,32,0,30,4,0,13,32,248,4,0,11,1, -0,43,1,128,0,1,2,64,0,10,48,251,8,0,3,8,0,0,2,16,0,3,4,0,3,4,0,6,64,0 -,19,1,0,10,32,2,0,1,128,64,0,4,1,0,3,160,253,0,8,4,0,1,24,0,1,128,0,1 -,32,0,4,9,0,21,16,0,0,4,0,9,16,0,2,1,0,7,32,0,0,72,252,0,5,32,0,7,4,0 -,0,1,0,34,64,0,7,8,0,11,104,255,0,34,128,0,6,64,0,5,64,128,0,6,2,0,1, -8,0,11,112,255,0,9,8,0,0,140,2,0,30,160,17,0,4,2,64,19,72,0,4,65,0,3, -64,3,0,0,128,0,5,254,0,11,12,0,31,128,65,0,6,128,32,16,0,17,176,253,0 -,11,15,0,31,128,65,0,7,58,0,3,12,0,5,131,120,64,0,4,24,252,0,10,65,13 -,0,31,128,17,0,5,8,16,72,0,3,4,0,5,8,104,2,0,4,112,250,0,44,128,81,0, -6,33,66,0,3,176,0,5,16,4,1,0,4,200,252,0,9,120,32,3,2,0,30,224,1,0,4, -6,200,2,40,0,3,60,8,0,3,192,3,120,64,0,4,192,248,0,44,128,65,0,7,33,0 -,3,48,0,7,16,0,4,88,249,0,10,8,0,33,5,0,4,24,9,32,64,0,3,48,0,6,98,2, -0,4,64,251,0,6,2,0,4,32,128,52,18,0,7,140,0,10,40,0,6,180,133,52,0,6, -8,0,3,132,0,3,1,0,2,129,0,4,8,249,0,14,48,0,9,8,0,9,12,0,6,134,1,48,0 -,12,8,0,12,200,255,0,7,4,0,5,48,0,8,14,8,0,9,12,0,6,102,1,12,0,6,88,0 -,3,16,16,0,0,240,0,3,24,0,6,255,8,0,5,128,0,5,32,48,4,0,7,13,0,10,10, -0,6,133,81,4,0,6,40,0,3,128,0,1,208,34,0,2,8,0,5,18,255,0,6,128,0,5,9 -,32,10,0,7,65,2,0,9,10,0,6,165,129,0,0,10,0,5,48,0,4,33,0,1,2,0,2,96, -17,0,4,128,249,0,6,30,8,0,3,96,128,60,0,8,15,0,18,192,1,8,0,6,72,0,3, -12,0,1,240,128,0,2,120,0,5,32,251,4,0,13,48,0,8,12,4,0,17,160,1,48,0, -6,64,0,4,32,0,1,32,0,2,96,0,5,209,254,0,7,2,0,4,8,49,33,0,7,76,0,18, -160,68,52,18,0,5,32,0,3,128,0,1,192,4,0,2,96,0,6,252,32,0,14,128,32,8 -,0,6,32,68,0,16,160,0,3,16,0,3,8,0,4,65,0,2,67,4,11,2,128,0,2,176,32, -176,253,0,36,4,0,6,2,1,0,12,48,0,5,3,0,4,48,0,0,184,248,0,16,2,4,0,7, -128,0,8,8,0,6,100,1,0,2,192,0,3,88,0,3,8,0,1,240,0,1,192,0,0,120,0,3, -60,0,0,128,255,8,4,1,0,13,66,0,7,128,8,0,8,16,0,6,168,0,3,192,64,0,2, -40,0,3,4,34,0,0,208,40,0,0,5,3,106,18,0,2,52,0,0,50,249,0,0,8,0,14,70 -,4,0,25,192,16,0,3,128,0,2,48,0,3,180,16,0,1,2,0,0,68,19,2,1,0,3,2, -176,253,96,128,0,13,128,7,0,7,96,0,0,1,0,7,4,0,6,2,1,1,0,1,240,0,3,72 -,0,3,12,0,1,240,128,6,192,3,120,64,0,2,12,32,160,250,4,0,15,4,0,18,16 -,0,6,8,1,0,7,64,0,7,32,0,0,4,3,0,6,177,251,128,33,0,14,20,2,0,7,32,0, -16,128,68,0,2,192,0,0,1,0,1,32,0,4,64,0,0,192,8,8,1,32,100,16,0,4,248 -,249,0,1,52,128,0,8,128,1,4,0,8,129,0,10,18,0,6,41,0,0,52,128,0,5,8,0 -,3,4,0,3,65,80,136,0,0,128,0,2,128,32,96,250,0,4,4,0,7,128,0,10,4,0, -26,3,1,0,4,8,0,12,168,253,0,2,16,0,8,224,1,1,0,8,8,8,0,9,4,0,6,98,1, -12,128,7,0,2,128,0,0,88,0,4,8,0,0,240,0,0,6,0,1,120,0,3,12,0,0,168, -254,8,0,1,1,128,0,7,32,16,0,0,33,0,7,64,0,18,160,0,0,4,193,6,0,2,64,3 -,44,0,3,128,0,1,208,0,0,2,0,0,8,106,17,0,2,4,0,0,26,253,0,2,6,130,0,9 -,48,10,0,7,12,2,0,9,34,0,6,209,16,48,10,22,0,2,64,11,48,0,4,10,0,0, -192,2,152,4,16,1,1,0,2,48,10,160,249,0,1,12,128,1,0,7,224,1,12,0,8,15 -,0,10,4,0,6,2,1,61,0,0,7,4,0,1,192,0,0,74,0,3,44,0,1,240,128,30,192,0 -,0,120,64,0,2,60,0,0,88,255,4,0,3,2,0,30,4,0,6,2,1,48,0,0,6,0,3,3,64, -0,4,8,0,0,192,32,24,0,2,16,0,2,48,0,0,113,255,0,2,33,32,0,7,128,1,0,0 -,4,0,7,132,4,0,2,1,0,5,136,0,6,132,80,4,18,70,1,0,3,32,0,4,2,0,0,192, -0,0,24,0,0,17,97,1,0,2,48,0,0,184,249,0,4,16,64,0,8,128,0,7,1,8,0,0,4 -,0,0,2,0,5,2,1,0,5,33,0,0,52,128,2,0,4,8,0,0,1,0,1,48,65,0,2,64,80,0, -0,1,128,0,2,132,0,0,176,255,0,29,4,0,5,2,2,0,5,1,0,0,48,0,0,4,0,9,48, -0,2,128,0,8,8,80,255,0,24,12,2,0,1,8,0,6,16,0,6,104,1,12,128,5,0,4,88 -,0,1,4,0,0,56,16,0,0,48,0,0,6,0,0,131,120,0,5,160,250,8,0,4,16,0,9,64 -,2,0,5,44,0,1,128,0,0,1,0,5,132,0,6,162,0,0,4,128,34,4,0,3,40,0,0,44, -0,1,4,0,1,16,0,0,2,0,0,10,104,20,0,3,10,97,251,0,5,4,0,9,22,0,6,36,16 -,0,1,8,4,0,5,32,2,0,5,208,16,0,0,1,3,0,4,48,0,1,1,0,0,52,10,0,0,192, -32,24,4,160,0,0,1,0,3,2,75,251,0,4,48,64,0,8,128,1,4,0,5,3,0,1,12,0, -16,1,9,144,4,0,4,72,0,0,15,0,1,60,0,1,240,0,0,30,192,0,0,120,64,0,2, -12,32,88,253,4,0,16,4,0,5,4,0,2,136,4,0,5,64,2,0,6,65,48,8,5,0,4,64,0 -,0,12,0,4,192,0,0,24,0,7,8,18,251,0,4,64,132,0,9,16,0,6,128,2,0,0,48, -0,15,128,16,52,1,2,0,4,32,0,0,12,4,0,0,48,4,0,0,192,0,0,24,0,0,136,96 -,66,0,2,32,0,0,88,253,32,0,0,4,8,0,0,16,0,0,2,64,0,0,8,0,6,208,0,0, -130,80,67,8,0,0,13,160,1,20,0,0,1,0,5,128,0,6,32,0,1,128,4,0,4,8,0,0, -1,0,2,65,0,2,65,80,1,4,129,0,2,4,2,64,253,0,7,16,0,8,192,0,0,24,0,0,3 -,0,1,12,136,1,32,0,19,2,0,14,24,0,1,96,0,4,32,232,252,0,5,128,0,12,24 -,0,2,32,4,128,1,44,128,8,0,5,64,4,0,5,96,1,0,0,128,5,0,4,88,0,1,4,0,0 -,12,0,1,240,0,0,4,192,1,16,0,3,44,0,0,160,254,8,128,0,0,18,0,1,4,0,0, -2,32,1,32,0,6,20,152,32,3,2,2,140,144,145,20,0,0,1,0,5,128,0,6,160,0, -1,128,34,4,0,3,40,0,0,44,0,1,4,0,1,208,32,90,96,160,8,128,0,2,48,66, -137,254,0,1,130,0,2,4,1,0,0,8,0,0,2,0,5,192,4,136,0,0,34,4,129,44,128 -,5,26,18,1,0,5,128,0,6,192,16,0,1,3,0,4,48,0,1,16,0,0,48,0,2,2,154,0, -0,8,104,0,3,4,2,67,253,224,1,12,32,0,0,48,0,0,22,200,3,26,32,0,5,240, -128,6,200,1,120,0,0,7,228,1,32,0,0,2,0,6,1,0,6,1,1,128,4,0,4,72,0,0, -15,0,1,60,8,0,0,240,128,6,132,2,25,64,0,2,8,16,224,254,4,0,0,16,32,0, -3,8,0,0,2,0,7,32,8,0,0,2,2,0,0,12,128,1,33,136,0,6,64,0,7,65,0,1,3,0, -4,64,0,0,12,0,1,48,0,3,24,0,0,3,0,4,52,0,0,106,251,0,0,32,128,0,1,192 -,130,128,0,0,8,96,8,0,5,192,0,0,80,144,0,1,66,130,8,4,144,128,0,6,64, -0,6,128,4,0,1,4,0,4,32,0,0,76,4,0,0,48,0,1,192,0,0,1,0,0,147,0,0,36,0 -,2,20,18,208,249,0,9,8,0,0,1,4,0,0,4,128,34,148,2,11,72,0,0,106,0,0, -13,160,69,4,0,0,4,0,6,2,0,5,32,17,4,66,0,5,8,0,0,1,128,1,0,0,65,0,2, -64,80,16,0,0,129,1,0,1,128,32,152,255,0,10,64,0,4,4,192,0,0,24,0,1,96 -,0,0,12,8,1,0,1,1,0,5,128,0,6,128,0,0,1,0,9,128,1,1,0,1,192,128,0,1,2 -,1,0,3,48,0,0,232,248,0,17,128,64,8,8,0,0,97,0,0,12,128,129,44,0,0,8, -0,6,4,0,5,96,1,8,32,0,5,88,0,1,228,1,12,0,1,32,0,0,6,192,0,0,24,0,0, -12,4,0,0,8,0,0,216,249,8,0,9,8,64,4,0,2,70,200,8,24,1,32,96,0,0,136, -144,9,20,0,7,12,0,6,169,0,0,36,0,6,40,0,0,44,160,1,4,0,1,208,66,2,64, -82,8,0,0,32,0,1,52,32,41,254,0,11,128,4,0,0,48,0,0,68,196,66,88,0,0,3 -,100,4,8,128,1,24,18,0,14,64,1,4,32,0,5,48,0,0,32,0,0,16,176,8,0,0, -208,36,88,4,161,96,16,76,0,1,180,0,0,67,253,0,9,56,32,3,0,1,60,144,3, -112,0,0,22,200,1,120,32,15,228,1,33,0,16,1,12,0,6,72,0,0,15,100,0,0, -61,0,1,48,0,0,30,128,0,0,120,0,0,3,8,0,0,12,8,104,248,4,0,9,32,0,0,8, -0,1,16,6,0,4,1,0,1,128,1,32,8,0,15,1,16,0,6,64,0,0,12,0,1,48,0,1,192, -0,0,24,64,3,96,0,0,12,0,1,48,0,0,170,250,0,10,2,8,0,2,1,16,34,128,132 -,130,0,1,64,12,129,33,16,0,16,1,0,0,17,0,5,32,0,0,140,4,0,0,48,0,3,24 -,0,0,11,97,0,0,44,4,0,2,136,251,48,0,0,4,128,2,18,0,0,2,64,3,0,1,1,36 -,0,0,52,65,0,0,16,2,2,65,3,9,0,0,37,164,17,164,0,15,160,1,36,0,1,16,0 -,0,2,64,0,0,73,0,1,160,1,52,192,0,2,64,80,136,96,129,0,0,160,1,52,0,0 -,136,249,0,3,4,0,9,48,0,1,192,64,0,0,16,1,0,2,128,129,16,16,0,6,10,0, -6,133,1,48,32,0,5,32,0,3,48,0,1,192,128,0,9,144,248,128,1,0,0,16,6, -192,128,0,4,3,0,0,128,48,0,1,192,0,1,8,3,0,0,32,15,132,1,44,0,15,128, -1,57,0,1,192,64,24,200,0,0,88,0,3,48,0,0,6,34,0,0,6,192,3,113,0,3,60, -8,208,251,12,128,0,0,1,38,194,0,3,1,0,0,65,132,5,48,4,0,0,192,16,24,0 -,0,9,98,1,132,128,5,21,0,0,4,0,5,16,2,0,5,136,5,52,64,0,1,2,64,64,16, -41,0,2,136,176,32,16,208,136,2,0,0,18,8,8,0,1,4,54,1,66,248,4,0,0,2,6 -,34,0,0,8,0,0,8,16,0,1,128,4,8,32,10,0,0,128,4,0,0,33,18,0,0,12,129, -128,1,24,0,0,2,0,5,16,1,0,5,8,16,52,4,0,0,192,0,0,89,0,0,32,49,0,2,48 -,48,0,0,134,208,8,25,80,96,8,4,0,1,16,129,0,0,232,254,96,0,0,12,128,1 -,242,64,6,192,0,0,1,0,0,3,224,1,61,0,1,48,64,6,192,3,121,0,0,11,226, -129,16,0,0,7,0,5,144,3,0,5,104,0,0,25,0,1,48,0,0,6,200,0,0,72,0,1,96, -0,0,60,144,1,48,0,0,30,192,0,0,120,16,0,0,224,1,56,32,200,254,4,0,0, -48,0,0,6,0,0,64,24,0,4,136,1,49,0,1,128,0,0,16,4,0,0,96,32,8,136,1,16 -,128,5,0,5,208,2,0,5,136,1,48,32,0,0,192,0,0,24,0,1,32,0,3,48,0,0,6, -192,0,0,24,0,0,1,0,2,128,129,0,0,16,241,249,0,0,32,0,0,33,16,196,2, -152,16,64,0,1,8,128,1,48,33,0,0,64,130,64,0,0,64,96,0,0,141,128,32,16 -,0,0,4,0,5,8,2,0,5,4,72,52,0,1,192,68,24,9,10,65,0,2,16,145,64,6,2,0, -0,24,64,35,98,0,1,128,5,176,0,0,248,255,0,29,4,0,6,2,0,6,4,2,0,18,128 -,0,4,128,64,216,251,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4 -,128,0,0,16,0,0,2,64,0,0,8,0,1,32,0,0,4,0,7,8,0,6,4,0,1,128,0,0,16,0, -0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,2,112, -254,0,47,32,0,18,2,0,4,32,152,253,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8, -0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,33,40,0,0,4,0,16,144,4, -128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1 -,32,0,2,89,249,0,24,2,0,2,2,0,17,2,32,2,0,15,16,0,4,128,8,51,255,32,0 -,0,4,128,0,0,16,0,0,2,64,0,0,8,0,3,4,128,0,0,16,0,0,2,64,0,0,8,0,1,32 -,0,1,16,0,16,5,32,0,0,16,0,0,2,0,3,1,0,2,128,0,5,2,0,0,1,32,0,3,254,4 -,0,27,16,0,15,128,0,0,16,0,0,2,0,7,128,0,0,16,0,1,64,0,0,8,0,0,1,32,0 -,3,16,34,252,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,33,40,4,5,128,0,0 -,16,0,0,2,64,0,0,8,0,0,1,32,0,0,128,0,15,32,16,0,1,16,16,0,0,2,64,64, -8,65,1,32,4,4,130,0,0,16,2,66,0,0,8,8,1,1,32,0,1,2,64,255,0,24,8,0,1, -16,0,19,2,0,7,128,0,3,64,0,0,8,0,0,1,32,0,5,200,255,0,44,128,0,13,16, -0,11,16,0,0,24,254,0,0,2,0,6,4,128,0,7,64,0,0,72,0,0,1,0,3,2,0,21,1, -16,0,3,8,0,2,4,0,1,128,64,0,2,64,0,4,136,255,0,2,8,0,0,1,0,2,128,0,7, -1,32,0,0,4,128,0,25,2,0,4,2,0,2,2,0,6,8,0,6,208,248,0,1,8,0,0,1,32,0, -0,4,0,1,16,0,1,64,0,0,8,0,4,128,0,0,16,0,1,68,0,33,8,0,12,8,248,0,14, -8,0,58,144,255,64,0,6,80,0,0,16,32,0,0,4,0,1,8,0,2,2,16,0,0,1,0,20,64 -,0,8,64,16,0,0,2,0,0,32,4,0,0,4,64,8,0,0,129,0,6,200,255,0,12,2,0,1,4 -,0,36,128,32,0,18,56,251,64,0,6,136,80,16,32,64,13,0,1,56,2,0,1,4,8,0 -,0,1,0,1,128,0,17,64,5,0,0,8,0,0,64,0,2,128,58,48,0,0,4,0,0,24,16,0,0 -,2,64,4,128,10,1,0,5,80,248,192,2,32,162,0,0,1,0,0,8,0,0,144,0,1,21,0 -,0,1,4,37,0,0,1,0,1,2,0,1,172,8,0,0,1,0,16,32,80,4,1,130,1,32,44,4,6, -64,0,0,64,2,0,0,16,8,2,128,0,2,1,0,4,48,0,0,56,255,32,0,3,4,0,0,16,0, -1,2,0,0,4,0,4,2,0,26,64,0,1,2,2,128,2,16,0,3,4,0,0,16,8,4,0,2,128,0,5 -,16,128,168,250,0,1,4,0,9,128,0,1,32,0,3,16,0,1,16,1,32,0,21,128,0,3, -1,32,0,6,128,0,8,8,0,0,192,253,0,46,2,16,0,24,64,168,251,0,60,32,0,12 -,184,253,0,26,2,0,16,128,0,5,32,0,3,16,0,3,8,0,2,64,0,5,16,0,0,216, -254,16,0,2,8,0,10,64,0,2,4,128,1,0,1,32,0,20,8,0,5,128,0,11,4,0,0,64, -0,4,164,248,2,0,10,2,0,39,128,0,14,128,0,3,128,24,255,0,27,32,0,29, -128,0,3,64,0,0,64,0,7,48,249,8,0,11,128,0,8,32,0,0,4,0,23,64,0,0,8,0, -0,8,0,1,4,0,0,64,0,1,2,0,2,2,64,0,1,4,128,0,1,4,242,253,0,5,2,0,4,32, -0,0,4,0,35,1,32,0,0,2,0,1,16,0,2,64,0,7,8,0,2,128,186,250,0,2,4,0,4, -64,0,6,128,0,6,2,0,0,32,0,18,128,32,0,16,32,128,64,0,3,96,0,0,208,251 -,0,13,32,0,1,4,0,9,8,0,17,64,0,18,1,0,6,80,248,32,0,0,37,128,0,0,16,0 -,0,2,64,2,72,0,1,32,0,0,4,0,0,4,16,0,1,16,0,1,128,0,0,32,1,0,32,64,0, -12,112,253,0,22,2,0,32,1,0,2,128,0,12,160,254,0,13,64,0,3,32,0,5,2,0, -43,2,0,2,184,249,0,59,8,0,13,144,255,0,4,64,0,11,64,0,38,32,0,8,8,1,0 -,4,104,248,0,17,128,0,2,8,0,22,128,0,0,16,0,17,128,0,6,128,255,0,29,8 -,0,1,32,0,3,4,0,1,16,0,10,64,0,20,240,250,0,11,2,2,64,0,7,16,0,1,2,0, -5,8,0,18,128,0,1,16,0,17,24,251,0,5,1,0,15,130,0,19,8,0,5,2,0,22,128, -252,0,0,64,0,0,16,0,0,2,64,1,8,0,1,48,0,1,128,0,0,16,0,6,32,0,0,16, -192,0,2,8,0,1,32,0,3,4,0,1,16,0,17,8,0,12,32,255,0,21,8,0,0,32,0,19, -64,0,12,128,16,0,2,32,0,2,3,0,4,16,248,252,0,16,128,64,0,0,8,0,39,4,0 -,1,32,0,1,66,0,0,16,0,3,8,32,255,0,24,16,0,4,20,0,0,8,16,16,0,2,10,0, -0,4,8,8,0,30,104,249,4,0,10,16,0,0,2,0,1,16,0,10,128,0,1,64,2,0,1,64, -64,0,1,32,1,0,1,32,0,8,4,0,19,48,252,0,4,1,0,10,2,1,0,3,1,0,20,128,0, -1,8,0,0,1,128,0,4,2,128,0,0,1,0,3,8,0,1,32,0,4,8,136,255,4,128,0,8,64 -,0,10,64,0,0,4,0,0,64,0,5,2,0,8,8,0,1,32,0,6,32,0,0,4,2,0,0,16,0,5, -128,0,4,16,0,0,120,250,0,1,161,8,0,0,67,0,2,80,224,64,0,1,3,0,1,3,3,0 -,0,8,0,1,9,16,1,128,0,0,17,0,4,4,0,5,2,0,1,16,192,64,4,16,0,0,3,64,0, -1,1,72,1,3,72,128,4,8,20,0,1,84,0,1,18,0,0,40,2,5,4,16,160,249,0,0, -208,146,9,41,65,50,18,64,82,37,176,2,128,1,32,0,0,64,4,0,3,5,162,161, -1,8,160,0,3,24,4,64,32,0,3,4,2,32,0,0,128,132,22,214,8,75,0,0,34,0,0, -8,72,168,25,1,0,0,136,128,16,160,32,72,106,162,64,0,0,81,128,87,128,8 -,232,252,0,0,64,8,32,128,128,128,0,2,16,16,0,0,64,0,18,16,8,128,16,0, -3,8,1,16,0,0,128,0,0,8,0,1,17,0,12,32,16,0,0,128,0,2,128,64,0,0,16,88 -,252,0,5,32,8,0,0,130,0,2,128,0,0,16,0,9,2,0,0,4,0,3,8,0,13,16,0,5,32 -,16,4,2,0,3,16,0,1,8,2,32,0,1,64,0,2,200,248,0,25,16,0,32,4,0,13,216, -250,0,5,32,0,17,4,5,0,3,1,0,1,4,0,2,128,0,2,2,0,10,8,0,16,4,0,1,8,248 -,0,0,1,0,2,128,0,0,16,0,5,1,0,4,4,0,24,32,0,18,128,0,5,2,0,0,240,255, -0,17,24,0,0,2,66,0,24,4,32,0,18,4,0,4,64,224,249,0,5,2,0,17,32,0,1,64 -,0,0,1,2,0,0,4,8,0,1,128,0,0,1,0,0,2,4,0,3,32,0,26,60,255,0,31,2,0,2, -2,0,2,1,0,2,1,0,29,136,252,0,60,32,0,12,184,253,0,2,128,0,2,32,0,1, -128,0,3,64,0,10,2,0,21,2,0,8,64,0,13,48,255,0,3,4,0,12,128,0,0,17,0,0 -,2,0,22,129,0,28,249,0,46,128,0,1,1,0,11,128,128,0,3,32,0,2,128,0,0, -160,255,0,22,8,0,0,1,0,24,128,0,5,8,0,7,2,0,6,16,252,0,19,16,16,0,2, -24,0,24,128,16,0,0,1,0,1,8,0,16,152,255,160,16,0,1,70,2,0,0,24,8,11,4 -,20,0,4,22,24,0,0,26,64,3,0,38,22,8,0,6,160,0,0,4,1,64,255,128,128,0, -17,24,0,0,3,0,48,1,16,8,16,253,96,1,0,0,128,7,0,1,30,208,3,24,0,4,128 -,7,48,0,0,30,192,3,0,37,128,7,2,0,6,96,1,0,0,8,96,254,160,0,1,128,160 -,0,1,2,64,8,9,0,4,128,160,16,0,0,26,64,3,0,37,128,0,8,160,0,2,224,248 -,64,1,0,8,2,0,5,192,64,0,0,32,8,4,0,46,192,16,130,8,128,252,0,0,1,1,0 -,0,7,0,1,28,128,3,16,32,0,4,7,240,0,0,4,128,0,39,7,0,8,1,12,0,0,16, -249,0,0,1,0,7,96,0,6,192,0,52,1,0,0,8,168,249,128,132,0,1,6,0,1,24,0, -0,3,96,8,0,4,6,208,0,42,6,0,7,128,132,8,2,104,253,32,16,48,6,0,0,192, -68,0,4,140,161,80,48,6,0,3,80,17,0,4,4,16,0,6,34,0,6,17,0,0,48,34,0,0 -,192,24,88,32,0,7,70,4,0,2,3,0,2,32,0,0,4,10,56,252,0,0,128,48,0,10,1 -,0,4,24,0,0,130,0,4,48,0,7,12,0,6,6,0,21,1,0,3,16,0,0,208,255,96,1,60 -,0,1,240,0,5,15,128,65,60,32,0,2,4,0,1,1,0,3,48,0,7,12,0,6,6,0,0,60,0 -,1,240,0,0,30,0,7,128,7,0,2,192,3,0,2,96,1,0,0,8,248,249,168,0,0,52,0 -,1,16,68,0,4,65,144,17,4,2,0,2,26,16,3,0,4,48,64,0,6,10,0,6,5,0,0,4,5 -,0,0,16,136,2,2,0,6,128,32,8,0,1,64,16,4,0,1,160,0,1,2,18,249,64,1,48 -,0,10,16,1,0,3,26,0,0,10,1,0,3,176,16,0,6,10,0,6,5,0,24,192,16,2,8,8, -253,0,0,1,57,0,1,224,0,5,14,96,1,56,0,3,4,208,1,0,4,44,0,17,56,0,1, -224,0,0,28,0,8,7,0,2,128,3,0,3,1,12,0,0,96,250,4,1,48,0,10,1,0,4,26,0 -,0,131,0,4,48,8,0,41,1,0,0,8,81,248,128,32,52,0,1,192,0,5,12,128,17, -49,0,3,2,0,6,48,0,17,48,0,1,192,0,0,24,0,8,6,0,3,3,0,2,128,32,128,0,0 -,64,248,48,16,48,6,70,2,0,0,24,8,0,2,44,16,0,0,180,128,0,0,208,72,0,0 -,64,3,0,1,140,1,0,17,128,145,0,9,12,4,0,0,48,0,1,16,34,0,0,64,131,0,2 -,32,0,2,112,251,0,0,128,48,0,11,32,32,0,0,128,0,2,3,0,1,12,0,34,16,0, -4,3,0,6,136,251,96,1,60,128,7,0,1,30,0,3,15,0,1,48,0,0,6,242,0,1,192, -3,0,1,15,0,18,224,1,0,9,15,0,1,60,0,5,131,0,2,96,1,0,1,104,250,172,0, -0,52,128,32,2,0,0,2,16,0,2,65,16,0,0,48,5,6,192,130,0,0,64,3,0,1,13,0 -,18,32,8,2,0,8,65,1,0,0,4,5,0,1,130,0,1,35,0,2,160,0,2,186,250,68,1, -48,0,11,48,18,64,80,36,0,1,32,0,1,12,0,38,1,0,0,19,1,0,1,192,16,2,0,0 -,232,250,0,0,1,57,0,0,7,0,1,28,0,3,14,0,1,60,128,7,242,0,1,128,0,0,1, -0,0,14,0,18,192,1,0,9,14,0,1,56,0,1,48,0,1,192,0,4,1,0,1,64,255,4,129 -,48,0,11,48,0,1,196,128,0,4,12,0,36,64,128,0,1,2,0,3,129,0,1,41,251, -128,0,0,48,0,0,6,0,1,24,0,3,12,0,1,184,16,70,208,0,5,12,0,18,128,1,0, -9,12,0,1,48,0,1,192,8,0,0,128,81,0,2,128,0,2,176,255,32,16,0,4,26,0,0 -,35,1,0,3,36,66,0,0,208,68,18,1,19,8,0,0,12,144,9,0,8,8,0,6,132,145,0 -,1,6,2,0,2,3,97,68,0,2,48,0,3,26,64,136,0,1,13,32,0,0,20,0,0,128,250, -0,0,128,0,4,24,0,6,48,0,1,128,0,0,8,4,0,0,1,0,2,128,0,8,10,0,6,5,0,14 -,16,0,4,3,0,1,12,0,1,32,0,0,136,249,96,1,0,4,30,192,3,0,4,32,0,1,192, -128,0,0,136,3,96,64,15,224,1,0,16,224,1,0,0,128,7,0,2,192,3,121,0,3, -60,0,4,8,2,0,2,100,1,44,0,0,64,251,168,0,5,26,64,16,4,0,3,144,32,0,0, -192,4,152,64,16,100,2,33,36,136,0,8,2,0,6,33,8,1,128,32,8,0,1,64,32,8 -,68,0,2,4,33,0,2,128,0,0,129,0,1,44,160,0,0,20,0,0,185,248,64,1,0,4, -24,0,6,160,0,1,192,2,8,64,64,0,0,65,0,11,16,0,6,8,0,19,16,19,1,0,0,76 -,192,16,26,33,19,253,0,0,1,1,0,3,30,128,3,0,4,28,16,0,0,240,32,22,136 -,3,120,0,0,14,192,1,0,8,4,0,6,200,1,0,1,7,0,2,128,3,112,0,3,56,0,3,6, -192,3,0,1,3,4,1,36,0,0,160,250,4,1,1,0,3,24,0,6,32,0,1,192,0,0,24,68, -0,0,96,16,1,32,0,9,4,0,6,1,0,20,3,0,1,12,0,0,129,32,0,0,42,248,128,0, -5,26,0,0,3,0,4,16,5,0,0,192,128,64,64,3,96,1,13,128,1,0,8,16,0,6,136, -1,0,1,6,0,3,3,96,0,3,48,0,4,9,83,0,1,64,136,16,16,10,112,255,32,16,0, -4,24,8,0,1,20,0,0,128,5,0,2,192,72,128,64,32,73,0,12,2,0,6,129,145,0, -0,128,0,7,140,1,0,0,48,0,5,3,0,2,32,0,0,4,0,0,40,255,0,0,128,0,11,128 -,0,4,24,8,0,1,64,0,35,16,0,5,1,0,5,208,255,96,1,0,4,30,0,1,24,0,1,224 -,1,0,2,224,128,4,8,1,64,0,12,10,0,6,229,1,0,1,6,0,6,15,0,1,60,0,4,192 -,3,0,2,96,1,44,0,0,96,250,164,0,5,130,8,0,0,8,0,1,32,40,0,2,208,8,26, -1,161,0,0,36,0,11,18,0,6,41,40,0,1,134,0,6,65,16,0,0,132,16,0,3,64,32 -,2,0,1,160,0,0,20,0,0,154,250,76,1,0,8,2,0,5,16,130,26,0,0,11,97,1,0, -24,4,0,19,192,16,26,33,208,248,0,0,1,1,0,3,28,0,1,16,32,0,0,192,1,0,2 -,224,0,0,4,208,3,120,32,0,19,192,1,0,0,128,7,0,6,14,0,1,56,0,4,128,3, -0,3,1,36,0,0,40,252,8,129,0,7,96,0,6,192,64,26,0,0,130,0,6,2,0,6,1,0, -32,1,32,8,65,255,128,16,0,4,24,0,1,96,132,0,0,128,1,0,2,192,2,2,0,0,2 -,32,129,0,3,128,2,0,5,64,1,0,5,128,1,0,1,6,2,0,5,12,0,1,48,0,5,3,0,2, -128,8,17,2,192,252,32,16,0,2,192,68,0,1,19,1,0,1,128,49,0,2,144,8,27, -0,1,104,4,0,0,128,1,4,6,0,14,128,145,0,12,52,9,0,1,24,2,0,0,3,0,1,1, -32,0,0,4,0,0,80,249,0,0,128,0,10,128,1,0,2,192,0,0,24,0,1,96,64,0,0, -128,1,1,128,0,6,64,0,21,48,0,1,192,0,3,1,0,5,56,252,96,1,0,2,240,0,1, -192,3,0,2,224,1,0,2,128,64,30,0,1,96,16,0,0,224,1,48,0,0,4,0,6,2,0,5, -224,1,0,12,48,0,1,32,64,24,192,3,2,0,1,96,1,44,0,0,32,253,168,0,3,16, -20,0,0,64,16,1,0,1,160,1,0,2,192,8,26,0,2,4,0,0,160,1,32,17,4,0,6,2,0 -,5,32,16,1,0,11,48,10,0,0,208,0,0,88,96,0,2,44,168,0,0,20,0,0,18,249, -64,1,0,10,128,1,0,2,192,0,1,2,0,0,96,32,0,0,128,1,0,0,129,0,6,64,0,21 -,48,17,0,0,208,68,0,0,16,0,2,44,192,16,26,33,88,252,0,0,1,1,0,1,224,0 -,1,128,3,0,2,192,1,0,2,112,64,4,0,1,120,0,1,192,1,12,16,4,0,5,34,2,0, -5,196,1,0,12,12,0,1,32,0,0,30,128,3,0,1,3,4,1,36,0,0,184,255,4,1,0,10 -,160,1,0,3,128,0,2,32,0,1,128,1,0,0,128,0,6,64,0,6,1,0,13,32,0,1,192, -0,5,12,0,0,1,32,8,97,248,128,136,0,2,192,0,2,3,0,2,160,1,0,2,32,4,0,2 -,96,130,0,0,128,1,0,0,66,0,14,128,1,0,12,24,34,0,2,24,2,3,0,2,144,16, -145,0,0,184,255,32,16,0,1,22,8,0,3,8,130,76,0,0,4,48,6,0,0,16,8,0,0, -16,19,72,66,0,2,20,132,2,0,5,70,1,0,5,162,73,0,2,208,0,8,4,8,0,0,16, -32,2,64,0,0,96,32,0,0,32,0,0,4,0,0,200,254,0,0,128,0,10,132,129,0,3, -128,24,0,1,97,0,3,32,128,4,0,5,96,2,0,5,128,1,0,2,192,0,8,48,0,13,8, -249,96,1,0,0,128,7,2,0,3,120,0,0,15,64,128,60,32,0,1,64,4,192,3,64,32 -,0,2,48,32,0,6,2,0,6,137,1,0,12,32,0,3,24,0,0,3,120,0,1,96,1,44,0,0, -152,255,168,0,1,128,64,0,4,64,8,65,176,9,4,0,1,192,0,0,26,66,16,97,4, -0,2,32,1,0,6,20,0,6,128,81,0,3,130,0,7,144,8,0,1,136,24,8,3,8,68,0,0, -160,0,0,20,0,0,178,251,64,1,0,7,8,16,0,0,160,1,2,0,2,4,27,17,0,0,96, -68,0,2,128,64,0,14,8,129,0,2,192,132,0,7,48,17,0,1,8,1,16,32,0,2,192, -16,26,33,32,251,0,0,1,1,0,0,7,0,4,16,0,0,14,64,0,0,56,0,1,48,0,0,4, -128,3,56,0,3,12,0,15,224,0,3,48,0,8,60,0,1,48,0,0,30,192,0,0,113,0,2, -1,36,0,0,216,248,4,1,0,7,32,0,0,1,128,1,0,2,128,0,0,26,64,0,1,64,0,19 -,128,129,0,2,192,0,8,48,0,1,64,64,0,0,8,0,0,2,0,2,1,32,8,105,251,128, -40,0,1,6,0,4,104,36,12,0,1,48,0,2,4,3,64,3,16,2,0,2,48,33,0,14,64,16, -0,3,8,1,0,6,48,34,0,0,192,4,88,0,0,16,96,0,1,128,40,16,0,0,184,249,32 -,17,4,0,1,192,68,0,2,40,8,0,4,198,208,0,0,146,4,16,8,4,13,32,0,0,176, -0,15,32,5,0,9,140,129,1,48,0,2,2,1,0,0,3,0,2,32,1,36,33,8,251,128,128 -,0,15,192,0,0,8,0,0,3,1,64,0,3,32,0,6,8,0,6,132,64,0,12,1,16,0,5,1,0, -1,128,0,0,16,0,0,128,255,96,1,0,2,240,0,3,48,64,0,3,128,7,192,0,1,136 -,3,97,0,0,12,4,0,0,60,0,16,64,0,9,15,224,1,60,16,0,0,32,0,1,192,3,0,2 -,96,1,44,0,0,96,250,168,0,3,16,128,0,2,8,1,0,3,128,16,194,20,152,64, -35,0,0,128,76,0,0,40,4,32,4,0,5,16,2,0,5,136,5,0,9,65,33,0,0,5,0,1,16 -,0,1,64,64,0,2,160,0,0,20,0,0,170,248,64,1,0,0,1,0,5,8,2,0,6,2,9,65, -35,2,12,128,128,5,0,1,2,0,5,16,1,0,5,136,129,0,15,16,68,0,5,192,16,42 -,0,0,248,250,0,0,1,13,16,0,0,224,0,3,80,64,0,4,7,48,0,0,22,136,0,0,24 -,0,0,3,228,129,56,0,0,7,0,5,144,3,0,5,232,1,0,9,14,224,1,56,0,1,32,0, -1,128,3,0,3,1,36,0,0,64,253,4,1,48,0,14,192,0,0,24,80,3,0,0,32,12,8, -128,0,0,128,5,0,5,208,2,0,5,136,129,0,23,128,0,0,32,0,0,249,253,0,0,1 -,49,66,0,0,192,0,3,72,0,5,6,0,0,40,64,64,19,34,0,0,76,128,9,48,0,0,4, -0,5,8,2,0,5,132,17,0,9,12,128,1,48,0,5,3,0,3,9,34,0,0,24,253,0,11,128 -,16,8,2,0,4,33,32,4,0,0,32,16,16,2,0,0,4,0,6,2,0,35,168,250,32,0,0,4, -128,0,0,16,0,1,64,0,2,1,0,1,4,128,0,5,8,0,1,32,0,0,4,0,7,2,0,6,33,0,0 -,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8 -,0,0,1,32,0,0,4,0,0,80,253,0,10,64,0,62,152,251,40,0,0,4,144,0,0,16,0 -,0,130,66,0,0,8,1,0,2,5,128,0,0,16,64,64,8,8,9,0,0,128,4,0,0,4,0,15, -32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64 -,0,0,8,0,0,1,32,0,0,4,0,0,113,255,0,0,4,130,0,0,64,0,0,2,64,32,32,0,0 -,129,128,0,0,4,130,64,64,0,0,2,0,0,5,128,0,1,64,16,0,0,130,0,16,16,0, -0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,2,2,64,0,0,8,0,1,32,0,0,4,0,1,16,0, -1,219,253,0,2,16,0,0,4,64,0,2,2,0,1,8,0,3,4,64,0,2,8,0,0,1,0,2,16,0, -16,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,1,32,0,0,4,128,2,0,1,2,64,1 -,0,1,1,0,0,208,252,4,128,0,20,1,0,50,226,249,0,0,8,128,32,64,2,72,0,0 -,9,32,1,33,32,4,144,0,0,18,64,2,72,2,66,32,8,0,0,64,36,132,0,0,18,0, -15,144,0,0,18,64,2,72,0,0,9,32,1,36,128,36,144,0,0,18,64,2,72,2,0,0, -32,1,36,1,0,0,136,4,17,168,255,0,3,4,128,0,0,16,0,0,2,0,3,1,32,0,0,4, -128,0,3,8,0,0,8,0,1,32,0,3,2,0,11,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0, -8,0,0,1,32,0,0,4,128,0,0,18,0,0,2,64,0,5,248,255,0,9,64,0,0,8,0,6,16, -0,0,2,64,0,2,1,0,3,16,0,6,8,0,2,8,0,24,8,0,3,64,252,0,1,64,0,7,8,0,5, -64,64,35,0,1,16,160,32,0,1,128,64,0,44,160,250,0,3,1,0,2,128,0,9,16,0 -,1,1,0,52,254,0,31,16,0,2,16,0,2,8,0,2,8,0,29,128,254,0,6,2,0,9,16,0, -0,8,0,4,32,0,0,4,0,21,16,0,20,64,0,0,88,255,128,64,4,8,0,0,32,0,2,65, -0,0,64,0,2,16,32,0,2,8,0,0,64,32,0,4,16,0,24,8,64,0,5,1,0,10,40,252,0 -,0,1,0,4,4,0,8,2,0,0,32,0,5,32,0,20,16,0,0,16,0,23,136,251,104,128,8, -16,20,32,24,130,130,90,1,48,40,0,1,8,152,0,1,128,212,2,138,17,0,0,40, -32,48,0,0,16,0,17,32,0,0,16,0,3,16,32,40,0,3,160,130,2,0,1,10,0,3,40, -160,5,8,254,160,85,16,15,70,85,1,16,64,105,2,0,0,4,8,0,0,16,45,16,16, -25,64,80,138,32,17,33,34,17,1,0,18,160,64,4,0,0,42,20,0,0,40,0,5,4,4, -0,0,16,4,0,0,136,0,3,129,34,208,250,0,0,65,32,4,1,65,0,2,1,0,1,1,0,1, -4,4,0,4,128,16,32,0,0,1,0,24,4,4,0,0,32,0,9,16,0,7,145,255,128,0,1, -136,0,2,16,0,0,128,0,5,8,0,1,32,0,1,1,0,2,128,0,34,4,0,1,8,0,8,224, -253,0,1,2,0,1,2,0,1,32,0,0,1,128,1,4,0,0,6,192,0,0,34,0,6,24,0,18,128 -,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,1,16,0,0,18,64,8,0,1,1,32,0,1 -,128,0,2,248,0,74,152,255,0,6,4,0,5,64,0,3,1,0,0,2,0,0,66,0,2,1,0,19, -128,0,15,32,0,8,8,251,0,2,8,0,5,8,0,6,32,0,9,16,0,40,4,0,2,120,254,0, -74,152,255,0,59,64,0,5,4,0,6,216,251,0,66,4,0,6,152,251,0,22,1,0,49, -128,0,0,255,0,10,16,0,6,128,0,1,4,4,0,39,128,0,1,8,0,1,12,0,3,216,254 -,0,13,4,32,0,3,34,0,2,64,16,0,2,32,0,44,136,254,0,74,152,255,0,32,4,0 -,6,2,0,8,32,0,10,32,0,10,248,251,0,74,152,255,0,51,1,0,21,152,254,0,9 -,8,0,16,4,0,45,16,251,0,0,128,0,14,128,0,0,32,0,8,8,0,44,184,253,0,29 -,8,0,1,32,0,3,4,0,1,16,0,6,1,16,0,1,128,0,2,3,0,9,16,0,5,72,252,0,0,4 -,0,1,2,0,11,1,0,1,64,0,0,8,0,17,4,0,11,1,0,7,64,0,2,8,0,2,128,0,2,16, -252,0,0,128,0,3,64,0,0,8,0,0,2,0,1,8,0,0,1,0,0,8,0,0,16,0,4,16,0,2,16 -,0,0,128,0,2,128,0,0,1,0,0,64,0,1,4,64,0,2,1,0,0,16,4,0,6,8,128,0,2,4 -,0,0,64,0,1,2,0,3,1,0,0,168,252,224,1,0,0,128,0,0,16,0,0,64,0,0,2,0,2 -,32,0,0,128,140,4,0,0,128,0,0,72,0,10,2,0,1,16,1,0,6,32,128,4,0,8,1,0 -,1,44,16,1,0,7,96,129,0,1,8,255,0,0,2,4,0,6,64,0,1,96,0,5,64,0,0,1,0, -1,1,0,37,32,0,9,216,249,0,4,64,0,11,64,0,1,128,0,0,32,0,4,64,0,33,16, -0,9,72,252,32,0,26,1,0,13,8,0,7,2,0,12,64,0,3,32,0,2,112,254,0,14,8,0 -,8,8,0,20,128,0,7,1,0,4,16,0,7,2,0,2,160,254,2,0,0,16,128,0,0,20,0,3, -64,0,0,8,0,2,160,0,0,4,64,0,2,16,0,4,4,0,19,64,0,3,64,0,0,2,0,6,4,0,1 -,16,0,5,120,249,0,1,32,32,0,4,64,8,0,3,32,0,1,32,0,5,2,32,0,22,1,0,13 -,16,0,0,129,0,6,104,253,0,0,64,172,32,3,34,0,0,128,2,0,0,58,10,42,0,0 -,64,20,16,1,18,84,128,2,90,80,1,25,32,0,1,21,0,2,2,16,16,128,0,3,1,8, -0,0,64,0,4,164,2,0,2,16,0,0,66,1,0,0,16,0,0,20,0,1,6,64,1,82,1,0,4,64 -,251,0,0,96,160,162,12,0,0,128,8,17,130,8,8,0,0,128,65,32,210,4,80, -128,18,4,163,64,16,4,128,1,36,33,0,2,8,0,0,64,0,5,2,40,0,3,82,0,0,1, -32,0,2,176,16,8,2,0,0,128,32,16,144,128,0,1,112,0,0,20,0,0,32,0,0,69, -34,200,251,0,1,1,0,3,4,0,1,2,0,1,64,64,0,2,32,0,1,4,129,0,0,64,4,128, -0,5,8,0,0,64,0,5,2,32,0,4,128,0,0,128,0,2,8,64,0,0,8,0,9,16,0,4,248, -248,0,0,64,16,0,0,4,0,2,64,0,1,64,0,0,32,0,0,8,0,0,1,0,1,4,128,0,0,16 -,0,1,64,0,0,16,0,27,1,0,4,64,0,2,128,0,6,104,249,0,27,16,0,12,2,0,2, -64,0,1,8,0,0,32,0,3,16,0,9,128,0,0,16,0,1,64,0,1,24,249,2,2,0,1,8,128 -,1,32,0,0,4,0,2,8,0,3,128,0,0,1,16,4,2,1,0,1,130,33,0,2,32,0,2,32,0,2 -,16,0,2,16,0,13,128,0,13,128,64,254,64,0,0,32,0,1,8,0,6,16,0,3,8,0,1, -16,0,22,64,0,14,8,0,3,32,0,7,184,252,2,0,0,32,0,5,1,0,4,2,0,6,16,40,0 -,0,16,0,36,32,0,0,64,0,6,132,8,254,0,9,4,0,7,2,0,3,1,2,64,0,0,8,0,1, -64,0,2,64,0,2,32,0,2,32,0,8,32,0,8,8,0,0,5,0,8,24,254,0,13,1,0,59,136 -,255,0,74,152,255,0,44,64,0,24,8,0,0,1,0,0,88,254,0,11,8,0,0,128,0,4, -20,0,0,2,0,0,64,0,37,32,0,10,56,252,0,2,64,0,6,128,0,2,4,32,0,1,2,0,7 -,64,0,15,128,0,13,16,0,2,128,0,1,1,0,3,2,0,1,200,252,0,20,8,0,1,8,0,4 -,16,0,1,64,0,3,8,0,1,32,0,32,72,253,0,18,1,0,54,152,254,8,0,2,2,0,6,1 -,0,1,128,8,16,1,32,2,0,0,128,8,0,4,8,0,16,128,0,1,68,2,72,0,1,10,0,0, -33,0,0,64,0,2,16,0,1,64,8,0,0,16,0,0,32,0,2,226,251,0,16,4,0,6,9,0,0, -65,32,0,17,164,0,0,4,128,0,0,16,0,0,2,0,9,4,0,0,8,0,6,152,248,0,56,32 -,0,16,184,255,0,14,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,0,18,128, -0,18,4,0,6,104,255,0,0,21,160,2,184,128,10,80,1,42,64,5,176,0,0,45, -128,2,80,0,0,10,64,1,40,0,0,5,160,0,0,20,192,2,0,15,22,128,2,88,0,0, -11,224,2,44,128,5,160,0,0,22,160,2,88,0,0,11,208,1,40,128,11,176,0,0, -22,160,2,112,248,160,9,52,1,146,213,4,154,64,19,104,2,100,160,97,149, -129,50,96,6,202,64,25,40,3,102,160,12,144,1,0,14,128,12,148,1,50,64,6 -,72,22,25,32,3,101,128,12,52,1,50,64,6,154,68,25,32,57,100,128,12,52, -1,160,252,255,255,0};static const unsigned char l565[]={79,231,255, -255,98,255,57,0,0,213,255,255,255,255,255,255,255,255,255,255,255,255 -,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,160,9,56,1,38,64,6,154,0,0,19,0,0,25,96,6 -,76,128,140,134,85,6,200,0,0,25,96,2,100,128,97,144,1,0,15,12,48,1,50 -,0,0,178,74,198,19,104,2,76,128,9,48,9,39,208,4,64,22,152,96,2,100, -128,12,56,1,152,255,0,0,21,160,2,84,0,0,11,80,1,42,128,10,80,0,0,26, -64,5,180,0,0,10,96,1,44,64,5,176,0,0,45,192,2,0,15,18,160,2,88,0,0,21 -,192,2,42,64,5,168,0,0,21,160,3,84,128,10,160,2,52,64,5,176,0,0,22, -160,2,80,252,0,11,64,0,5,2,0,31,64,0,21,152,249,0,74,152,255,0,4,128, -0,5,64,1,0,3,128,2,16,128,2,0,1,8,0,1,40,0,19,4,2,0,0,84,0,7,4,0,4,64 -,0,6,64,248,0,5,3,0,5,2,0,3,32,0,1,2,0,2,40,0,12,64,0,8,16,0,1,64,0,6 -,16,1,0,3,64,0,3,1,0,2,80,250,160,17,1,128,70,0,1,90,16,0,0,104,4,141 -,0,1,20,0,1,208,2,0,0,64,35,0,1,45,36,72,4,0,17,4,128,2,0,12,144,136, -152,64,0,0,8,129,64,0,1,180,16,224,254,0,0,1,0,1,4,2,0,0,16,0,1,64,32 -,8,4,0,0,32,0,1,192,64,0,1,2,1,0,0,12,0,22,4,0,12,192,0,1,8,0,3,4,0,0 -,48,0,0,96,252,128,1,0,1,6,4,0,0,24,16,0,0,96,64,12,8,0,0,44,0,1,128, -0,2,3,2,0,0,7,2,64,0,0,16,0,17,136,5,1,0,11,192,64,30,8,0,0,32,0,0,3, -0,1,48,0,0,8,253,128,1,2,0,0,32,0,1,128,0,2,2,64,0,1,20,18,0,0,64,132 -,0,1,16,0,1,73,0,0,8,0,0,2,0,17,130,34,0,12,192,8,2,0,0,16,68,66,1,0, -1,48,66,64,248,128,1,0,1,34,1,0,0,136,4,0,0,32,18,68,2,0,0,24,32,0,0, -192,8,1,0,0,145,0,1,12,0,0,80,0,0,8,0,16,128,8,3,0,12,192,4,0,1,16,1, -8,12,2,0,0,48,32,24,254,224,129,0,0,128,5,0,1,22,0,1,88,0,0,11,0,1,36 -,0,1,48,0,1,192,2,0,1,15,98,0,0,60,0,17,12,128,4,4,0,11,240,64,30,192 -,0,0,120,0,0,15,0,1,60,0,0,160,252,128,1,0,2,1,0,1,4,0,1,16,0,0,2,0,0 -,40,0,1,128,0,2,128,0,1,12,4,64,0,19,8,5,0,12,192,0,3,34,0,0,12,0,1, -48,0,0,48,249,128,145,0,12,16,9,0,0,32,2,1,0,3,136,0,0,5,0,0,18,0,16, -48,0,0,34,1,0,11,192,20,24,0,0,11,96,68,12,0,1,16,4,104,251,0,2,128, -32,8,0,0,2,64,0,0,40,8,5,1,0,0,4,0,1,208,130,0,0,64,64,8,0,1,32,0,0, -20,0,7,34,0,6,17,0,0,52,132,0,0,16,0,3,8,16,0,3,128,64,8,0,0,128,64,3 -,8,128,32,0,3,76,255,0,7,8,0,8,192,0,8,32,0,7,12,0,6,6,0,0,48,0,13,2, -0,2,8,3,32,0,1,4,0,2,120,253,0,3,2,0,1,8,200,0,0,32,0,0,4,0,1,44,0,1, -128,0,2,1,2,0,3,44,0,7,12,0,6,6,0,0,48,144,5,1,32,0,3,64,0,7,6,0,3,15 -,0,3,184,251,8,0,2,20,2,0,0,16,65,0,0,64,17,40,2,0,0,20,18,0,0,64,130 -,0,1,10,0,0,17,0,0,128,5,21,4,0,6,10,0,6,5,0,0,48,129,34,0,11,134,0,1 -,2,0,1,96,8,77,2,0,2,163,254,0,4,8,0,1,32,163,96,0,0,12,0,1,24,32,0,0 -,192,4,0,3,18,0,1,8,24,9,0,6,10,0,6,5,0,0,32,0,0,3,0,0,34,0,3,20,0,4, -68,0,1,24,0,1,66,0,1,4,0,2,65,252,0,2,128,7,0,1,30,192,3,120,16,15,2, -0,0,36,0,1,48,64,0,0,192,3,26,0,1,96,64,36,0,17,60,136,4,52,0,3,24,0, -4,128,3,2,0,0,30,196,0,0,56,32,15,0,3,104,255,4,0,2,2,0,1,8,0,0,3,96, -0,0,12,0,1,40,0,1,128,0,2,1,0,2,128,1,40,0,17,48,16,5,192,32,0,3,16,0 -,4,6,2,0,0,24,0,1,96,0,5,185,253,0,3,70,2,0,0,24,73,3,96,20,140,2,0,0 -,16,8,0,1,68,0,1,19,97,20,0,0,128,33,16,8,0,16,48,2,2,1,4,0,2,64,1,0, -4,7,0,1,24,0,0,80,112,32,12,8,0,2,32,254,32,4,0,0,128,16,4,32,2,17,0, -0,8,12,65,32,0,0,36,32,0,0,208,0,0,147,64,32,40,0,0,5,160,1,4,0,16,4, -4,136,4,208,0,0,138,64,3,40,0,0,13,160,128,52,194,0,2,2,0,1,8,129,32, -160,129,4,0,0,160,252,128,1,1,0,9,4,0,0,16,0,1,192,0,1,16,0,0,66,0,0, -8,128,1,0,17,128,0,1,2,196,0,1,16,3,64,0,0,12,0,1,32,0,0,2,2,0,3,32,0 -,1,132,1,0,1,248,250,0,1,1,0,0,2,48,0,0,8,0,1,32,0,0,4,0,1,44,0,1,128 -,0,0,24,4,1,88,0,0,11,130,1,44,0,15,96,0,0,12,128,5,192,0,0,8,4,3,88, -0,0,12,128,1,48,0,1,2,0,5,15,2,65,48,0,0,80,253,4,16,0,1,20,20,0,0, -144,2,0,0,64,130,72,16,144,20,0,1,64,128,16,0,0,18,44,0,0,5,128,1,20, -4,0,14,32,0,0,132,144,2,192,0,0,144,0,0,3,40,0,0,12,128,17,33,16,22,0 -,4,96,66,77,128,1,48,0,0,218,249,140,145,0,2,192,128,0,3,32,32,0,0,8, -41,1,0,0,192,8,153,4,16,52,66,134,1,132,24,9,0,15,4,0,1,5,1,4,152,32, -96,48,68,0,0,144,32,16,64,132,0,1,64,16,0,0,64,68,0,0,132,1,1,1,160, -249,224,0,1,128,7,244,0,0,30,16,0,0,120,0,0,15,104,0,0,36,16,0,0,48,0 -,0,30,192,3,64,0,0,8,96,0,0,36,0,15,100,0,0,13,136,4,48,128,30,192,0, -0,64,0,0,3,96,1,60,128,3,0,1,6,0,1,56,0,0,15,224,1,12,16,216,255,8,0, -2,2,192,0,0,8,0,1,32,64,4,0,1,33,0,1,128,0,0,24,4,1,64,0,0,10,128,1, -40,0,15,128,65,0,1,4,0,1,24,8,0,0,64,0,0,12,132,65,48,0,0,6,0,1,24,8, -0,0,96,0,1,128,1,0,1,161,252,128,8,2,0,0,22,200,0,0,88,32,0,0,96,4, -140,136,1,32,0,1,32,2,153,0,0,35,33,17,36,130,81,144,8,0,14,133,17, -160,64,4,0,1,24,1,0,0,32,17,140,128,9,176,32,38,4,0,0,152,0,1,96,128, -12,130,1,2,32,152,253,32,0,0,52,144,130,0,1,74,0,1,8,129,33,144,1,132 -,128,70,212,128,0,0,64,9,8,0,0,1,160,5,36,9,0,15,4,4,0,1,208,64,26,64 -,0,0,8,0,0,5,160,133,52,0,1,16,0,3,104,64,32,32,0,0,52,66,56,253,0,7, -8,0,5,1,32,6,192,0,3,1,0,1,128,1,17,0,15,2,128,0,2,192,0,0,24,0,3,8, -128,1,0,3,64,0,2,96,0,1,4,0,0,32,0,0,24,250,0,1,48,16,2,0,1,8,0,1,32, -0,0,4,224,1,48,16,4,128,64,0,1,1,88,0,0,11,226,0,0,44,0,15,226,65,0,2 -,192,0,2,128,88,0,0,11,128,1,48,0,1,64,0,5,15,2,128,48,0,0,168,253,8, -4,50,2,4,1,0,0,16,4,0,0,64,68,72,40,132,0,0,2,2,68,2,0,1,138,40,0,0,5 -,32,73,20,0,15,160,5,0,2,64,130,0,2,40,0,0,5,128,132,176,16,0,0,128, -130,0,2,32,132,13,0,0,8,0,0,5,163,253,0,0,32,128,0,0,6,0,1,24,0,2,130 -,128,1,0,0,160,0,0,22,200,4,0,1,3,48,66,134,129,9,40,6,0,14,16,4,0,2, -128,36,0,0,8,136,48,68,6,132,137,176,0,2,72,0,2,96,65,0,0,4,16,176,64 -,9,249,96,0,0,44,144,7,1,0,0,30,4,0,0,120,0,0,15,192,1,12,136,1,48,64 -,0,0,192,131,64,0,0,8,224,65,36,0,15,240,1,13,8,0,0,112,0,0,6,192,0,0 -,64,0,0,8,96,1,60,8,0,0,240,0,3,120,0,0,15,96,0,0,61,0,0,128,253,4, -128,48,16,6,0,1,24,0,1,32,0,0,4,32,0,0,32,0,0,4,128,0,2,3,64,0,0,10, -128,1,32,0,17,48,8,0,0,128,0,2,131,64,0,0,8,0,0,1,48,32,0,0,64,0,3,64 -,0,3,49,16,209,253,128,17,32,0,0,22,1,0,0,88,4,0,0,96,66,140,176,1,48 -,33,17,4,68,0,1,131,32,20,132,2,33,32,0,15,129,69,48,1,0,0,64,20,64, -16,16,32,20,132,2,17,50,1,0,0,192,136,0,2,112,8,44,130,17,48,0,0,72, -253,0,1,36,129,22,16,2,154,8,0,0,104,132,141,16,0,0,4,145,6,16,16,2, -64,3,12,0,0,1,160,0,0,4,0,15,16,8,20,128,2,16,0,0,26,67,3,8,0,0,1,160 -,17,52,194,0,0,82,0,0,1,64,3,104,36,32,32,8,0,1,32,253,0,2,32,6,2,64, -24,0,1,96,0,0,12,0,3,6,66,0,2,3,0,3,1,0,16,16,128,32,0,0,4,0,1,24,0,0 -,3,0,2,128,1,33,0,0,2,128,0,2,3,96,0,1,4,64,0,1,64,250,0,3,4,48,128, -16,0,1,64,64,8,8,0,1,16,4,0,3,2,88,0,0,11,98,1,48,0,15,97,0,0,44,160, -5,0,1,16,0,1,88,0,0,11,0,0,128,48,0,1,64,0,2,3,0,0,16,15,4,0,2,80,253 -,4,0,1,18,66,24,8,136,8,0,0,32,1,36,0,1,32,0,0,66,2,130,0,1,1,42,0,0, -5,160,64,48,0,8,1,0,5,32,0,0,20,130,162,0,1,88,32,0,0,40,0,0,5,128,5, -0,0,33,22,132,0,2,3,32,0,0,45,0,0,40,0,1,145,249,4,0,1,8,198,0,0,24, -24,3,0,0,96,66,76,0,2,2,198,0,0,4,65,4,99,48,66,134,193,4,0,0,1,0,14, -136,69,24,8,3,0,0,2,24,8,19,48,68,6,132,4,49,65,68,64,0,3,98,2,0,0,4, -8,0,1,3,255,0,1,28,128,1,48,0,0,6,0,1,24,0,0,3,8,0,0,28,136,1,48,0,0, -6,192,0,0,64,0,0,8,0,0,65,12,16,0,6,64,1,0,5,224,1,36,128,4,48,64,30, -192,3,66,0,0,8,224,1,60,128,3,178,0,1,192,0,0,120,32,15,96,0,0,1,0,0, -232,253,4,0,1,16,4,0,1,16,0,1,64,32,8,0,1,16,0,0,4,0,0,64,24,8,2,64, -16,10,66,65,0,0,16,0,14,128,1,40,8,5,192,128,24,0,0,3,64,16,8,130,0,0 -,48,0,0,6,66,0,2,3,64,0,1,2,0,2,58,253,0,1,16,1,1,136,64,4,32,0,0,16, -2,34,8,0,0,16,5,64,36,2,152,128,0,0,36,4,132,128,16,0,0,2,0,6,128,0,6 -,128,1,16,2,2,192,0,0,88,8,67,32,4,132,0,0,8,49,34,7,128,0,2,83,112, -130,44,0,0,145,0,1,48,254,0,1,132,128,22,212,0,0,26,81,0,0,104,36,141 -,164,128,4,128,70,20,2,66,80,67,8,0,0,137,33,0,9,128,0,7,8,4,128,4,64 -,2,26,0,0,9,8,0,0,1,32,16,52,194,32,4,2,27,64,0,0,8,0,0,32,32,8,6,33, -96,251,0,2,32,6,192,0,0,24,0,1,96,0,0,12,0,3,6,64,128,0,1,3,0,1,4,0, -10,128,0,7,128,0,1,2,128,32,0,1,130,0,4,33,0,0,2,0,1,24,8,0,0,32,64,0 -,0,4,0,2,56,251,0,3,4,240,0,0,16,192,0,0,64,32,8,228,0,2,4,0,0,64,0,1 -,2,90,0,0,11,98,1,0,9,2,0,5,96,0,0,44,160,5,176,32,24,192,2,88,0,0,11 -,0,0,128,48,0,1,48,0,0,24,16,0,2,15,96,0,0,12,0,0,240,251,8,0,1,10,18 -,212,0,0,136,66,0,0,32,1,36,32,40,0,1,2,4,2,16,17,9,40,0,0,5,160,64,0 -,9,4,0,5,32,0,0,20,130,162,80,8,0,0,66,1,44,0,0,5,128,8,0,0,32,22,24, -0,0,24,0,1,96,129,13,36,0,0,182,32,251,253,0,2,9,22,194,0,0,88,8,11, -98,130,140,1,132,0,0,9,38,4,24,0,0,3,11,49,66,10,192,4,0,16,128,81,24 -,8,3,96,0,0,152,128,1,48,68,6,4,8,176,64,132,192,128,24,8,16,64,1,0,0 -,4,136,144,0,0,81,251,0,1,28,128,1,224,0,0,6,192,3,24,0,0,3,64,1,12, -128,1,48,0,0,14,192,0,0,64,0,0,8,0,0,65,0,8,64,0,6,224,1,36,128,4,128 -,0,0,30,4,2,64,0,0,8,96,64,60,128,3,240,0,0,30,192,0,0,57,32,15,96,0, -0,44,16,176,255,4,0,0,16,8,4,194,0,0,16,8,3,64,0,0,8,128,1,48,0,0,4,2 -,0,0,8,8,2,65,16,10,64,65,0,9,4,0,5,128,1,40,8,3,160,0,1,132,2,64,16, -8,130,1,49,32,6,192,0,1,16,3,98,0,2,64,48,8,129,252,0,1,48,0,1,208,0, -2,3,0,0,66,128,144,129,176,32,33,0,0,8,9,0,1,32,1,8,128,4,0,9,4,0,5, -128,1,144,0,0,4,64,0,0,152,0,0,1,32,1,36,0,0,8,48,2,38,196,0,0,72,0,0 -,3,96,64,140,2,1,160,0,0,88,252,176,5,54,144,22,0,1,154,72,3,104,2,13 -,4,0,0,4,128,6,208,68,2,72,3,76,66,1,32,0,9,64,0,7,8,36,8,0,1,2,2,0,0 -,8,72,68,1,160,17,52,194,64,20,0,0,26,64,0,0,104,0,0,64,32,8,5,0,0,64 -,253,128,1,48,0,0,6,2,0,0,24,0,0,3,96,32,12,0,3,6,194,0,0,24,0,0,3,32 -,0,21,128,16,0,2,32,0,1,128,32,0,3,33,0,0,2,0,1,24,0,1,96,0,1,132,0,0 -,16,16,120,254,128,1,0,0,16,4,0,1,16,192,3,64,0,0,8,0,3,4,128,128,0,0 -,16,2,88,0,1,100,1,0,9,2,0,5,96,0,0,44,0,1,176,32,0,0,192,2,88,0,0,11 -,128,128,48,0,1,192,0,3,96,32,3,0,2,32,208,254,140,41,48,2,66,8,0,0, -136,72,3,32,65,68,4,0,1,9,66,66,0,0,64,0,0,1,42,0,0,44,160,64,0,16,36 -,0,0,20,0,1,80,8,0,0,64,1,44,0,0,5,0,0,4,0,0,18,6,196,0,3,96,2,1,0,1, -1,0,0,81,254,4,9,16,64,6,0,1,88,0,0,3,96,66,76,0,1,128,0,0,38,200,8, -89,0,0,11,80,0,1,192,4,0,16,128,129,40,33,0,0,96,0,0,128,128,1,80,0,0 -,6,132,9,48,0,0,68,0,0,130,24,1,0,0,96,1,140,0,0,8,0,0,16,131,249,96, -0,0,61,128,1,2,0,0,6,144,3,24,0,0,3,8,0,0,12,136,1,48,0,0,14,200,0,0, -66,0,0,3,2,65,0,16,224,1,36,0,1,128,0,0,6,4,2,64,0,0,8,224,129,60,144 -,3,50,0,0,30,208,128,24,64,15,100,128,12,0,0,8,254,4,128,16,32,4,2,0, -0,16,8,3,64,32,8,0,3,4,128,0,2,2,65,0,0,12,68,65,0,16,128,1,32,0,1, -160,0,0,24,128,2,64,0,0,8,130,1,48,16,6,2,0,0,24,0,0,3,0,0,32,12,0,3, -114,254,0,0,17,0,0,1,33,0,1,132,0,0,3,16,2,34,8,0,0,48,8,32,36,2,9, -137,16,64,0,0,140,128,0,17,128,1,32,0,1,64,0,0,24,8,1,64,0,0,4,0,0,9, -178,0,0,7,0,0,64,24,17,19,2,4,12,64,40,8,65,128,254,0,1,52,145,22,20, -136,26,81,3,104,0,0,77,40,0,0,36,146,0,0,208,132,2,72,67,8,4,33,32,5, -4,0,16,4,4,128,6,132,2,2,0,0,10,8,0,0,9,36,4,52,194,0,0,24,0,0,10,66, -3,72,1,64,32,16,4,34,168,254,0,1,48,0,0,6,0,1,24,0,0,3,96,32,12,128,1 -,0,2,192,0,2,3,0,0,16,0,0,130,64,0,16,2,128,0,1,6,64,32,0,0,16,129,0, -1,4,0,0,128,32,0,0,2,0,1,16,0,2,64,0,0,132,0,0,17,0,0,240,254,0,1,16, -0,0,4,48,128,16,0,0,3,64,0,0,8,0,1,48,160,1,128,0,0,24,16,2,2,64,0,0, -98,1,0,16,232,65,48,0,0,2,176,32,6,192,2,0,1,11,0,0,64,48,32,0,0,48,0 -,0,8,0,0,131,64,64,3,0,3,64,255,8,0,0,176,32,18,20,8,136,2,16,34,64,4 -,8,144,160,128,0,0,64,20,64,0,0,9,0,0,4,32,160,64,0,0,8,4,0,5,16,2,0, -5,168,1,48,0,0,38,88,8,26,66,1,4,17,5,0,3,70,18,0,0,16,0,1,32,4,1,0,0 -,40,0,0,65,122,253,0,1,32,0,0,70,0,0,24,24,1,139,96,130,140,1,8,177,8 -,70,200,4,80,8,11,4,20,64,66,1,0,0,1,2,0,5,16,1,0,5,8,4,0,0,16,38,97, -0,0,136,128,1,0,0,18,10,0,0,68,48,6,132,192,34,8,0,0,35,32,33,140,2,8 -,0,1,120,255,0,1,60,160,1,180,0,0,6,208,3,24,0,0,3,96,0,0,60,128,7,48 -,64,6,192,0,0,24,0,0,3,0,0,1,12,8,7,0,5,144,3,0,5,232,1,13,128,7,128, -0,0,22,4,2,24,0,0,8,224,0,0,60,128,3,240,0,0,22,192,131,120,0,0,15,96 -,0,0,13,32,112,248,4,0,0,32,0,0,4,4,0,0,16,16,0,0,66,0,0,8,0,1,49,0,0 -,6,128,0,0,16,0,0,2,2,16,0,0,64,1,0,0,128,5,0,5,208,2,0,5,8,0,2,6,97, -0,0,24,132,1,0,1,8,128,64,48,0,0,6,192,0,0,8,0,1,96,0,0,12,0,2,16,81, -250,0,1,32,16,64,0,0,64,0,0,1,16,0,0,66,128,144,1,48,10,6,0,0,68,152, -2,32,64,1,136,2,1,176,8,4,0,5,8,2,0,5,132,81,0,0,5,22,128,0,0,144,0,0 -,2,96,20,8,128,17,48,5,38,212,0,0,16,0,0,35,98,18,12,0,0,144,0,0,1, -232,248,0,7,128,0,4,16,2,0,13,4,0,6,2,0,35,20,252,32,0,0,4,128,0,2,2, -64,0,0,8,0,0,1,0,1,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,7,2,0 -,6,33,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,2,2,64,0,0 -,8,0,0,1,32,0,0,4,0,0,184,255,0,74,152,255,36,0,0,4,128,0,0,16,0,0,3, -64,0,0,8,0,0,1,0,0,32,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15 -,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,3, -64,0,0,8,0,0,1,32,0,0,4,0,0,219,249,12,0,3,32,36,0,1,32,4,0,5,1,0,5,8 -,0,0,1,4,0,22,16,0,1,16,0,0,12,32,0,4,32,0,10,9,252,32,0,0,4,128,0,2, -2,0,1,8,0,0,1,0,0,128,0,0,128,0,0,16,0,0,2,64,0,4,128,0,26,2,0,1,34,0 -,0,4,128,0,3,64,0,0,8,0,5,56,250,8,0,14,16,0,9,128,0,21,2,0,3,1,32,0, -8,4,0,6,16,96,248,32,0,0,4,128,0,0,16,0,0,2,64,32,9,0,0,1,0,0,8,6,129 -,0,0,16,0,0,2,64,0,1,32,64,8,16,4,5,0,14,32,8,5,160,64,16,132,2,80,32 -,0,0,4,64,40,0,0,4,128,0,0,16,0,0,130,64,0,0,8,0,0,65,40,8,5,2,52,249 -,0,0,64,0,44,8,0,5,128,0,6,8,0,9,128,0,0,80,251,0,1,8,0,49,4,0,13,128 -,8,0,4,216,255,0,8,64,0,2,32,0,0,33,0,2,64,0,2,1,0,36,16,0,1,32,0,3, -16,4,0,3,184,255,0,4,9,16,32,0,10,98,0,26,32,0,1,2,0,0,16,0,4,128,0,3 -,32,0,0,64,0,0,1,9,0,3,2,0,0,148,249,0,1,32,0,35,1,0,1,4,0,16,16,0,12 -,64,216,252,0,59,64,0,6,32,0,4,4,137,252,128,64,0,2,64,128,0,0,16,0,0 -,2,0,3,4,8,0,5,32,0,0,4,128,0,0,9,32,0,16,4,0,0,2,0,0,32,0,2,64,0,5,4 -,1,0,1,132,0,0,8,0,0,4,2,0,0,16,8,144,251,0,2,32,4,16,0,0,2,0,3,2,0,4 -,65,0,0,2,0,2,16,1,0,1,16,0,17,17,0,1,1,0,1,8,2,32,0,1,128,0,4,32,0,0 -,80,128,0,2,40,0,1,32,152,248,64,168,0,0,160,0,0,48,64,2,8,0,0,1,0,0, -1,0,1,8,16,0,0,20,0,0,2,0,1,16,64,3,64,168,14,16,0,16,13,0,0,1,4,64,0 -,0,80,0,0,24,0,1,32,0,2,1,2,128,0,0,216,0,0,18,0,0,2,44,0,0,8,48,224, -255,128,65,0,1,132,0,1,16,4,128,0,0,8,0,0,129,0,1,6,36,0,1,8,0,0,35, -162,2,36,128,254,144,8,0,14,160,82,0,2,16,36,8,2,163,98,64,8,0,0,3,0, -0,128,40,0,0,36,152,5,53,66,88,40,0,0,1,48,14,232,249,32,0,0,1,0,4,16 -,128,0,2,128,0,5,16,64,0,0,32,0,0,8,128,64,8,16,0,14,128,64,0,3,32,16 -,64,0,0,10,0,7,16,2,4,1,0,0,8,0,2,4,32,168,253,128,0,2,2,4,0,0,8,0,2, -16,0,0,2,0,1,8,2,0,3,1,0,4,1,0,23,16,1,32,0,0,4,128,0,5,4,0,1,8,64,1, -32,0,0,16,8,84,254,0,3,8,2,0,1,10,0,0,128,32,16,4,0,7,4,4,0,35,68,0,1 -,8,0,10,192,249,0,3,128,4,0,1,18,0,0,128,64,0,0,9,0,7,64,2,0,0,4,0,26 -,8,0,7,128,4,0,0,4,0,8,24,255,0,12,64,2,0,4,2,0,23,64,0,12,32,0,0,32, -0,4,72,0,3,4,4,0,0,48,255,64,0,4,2,0,2,1,0,1,32,0,32,4,0,11,128,0,1, -66,0,4,64,0,0,128,0,2,176,252,0,3,4,4,0,0,16,16,0,0,8,64,8,8,0,3,2,0, -2,2,0,2,128,0,24,4,0,9,2,0,3,8,64,16,0,3,152,248,0,1,1,128,8,0,1,80,4 -,0,0,8,16,17,0,5,144,0,1,130,4,0,35,32,0,1,1,0,7,32,0,1,88,248,0,0,1, -0,14,4,128,0,19,8,0,2,8,0,17,4,0,1,4,8,0,7,208,254,0,3,4,0,0,128,8,0, -9,192,0,7,64,0,21,16,0,12,128,0,0,64,0,5,200,0,0,152,254,0,5,1,0,8,4, -0,2,12,4,0,5,4,0,20,4,0,6,8,128,32,0,2,16,0,2,128,0,5,240,251,0,6,2,0 -,5,32,0,2,16,0,30,128,0,10,1,0,9,36,0,0,48,249,0,20,2,0,37,1,64,0,5, -34,0,5,200,250,0,59,4,16,0,6,128,0,4,72,250,2,0,73,184,253,0,3,1,0,1, -4,0,1,16,0,0,2,0,6,16,128,0,5,4,0,31,64,8,0,0,1,0,9,232,249,0,4,16,0, -45,2,0,4,128,0,11,4,0,2,208,252,0,23,8,0,30,1,0,1,1,0,14,144,255,0,2, -8,0,21,32,0,25,4,0,13,16,0,5,208,252,0,9,2,0,49,32,0,11,96,184,249,0, -4,8,0,1,32,0,1,128,0,0,16,0,3,1,0,19,34,0,1,8,32,0,24,128,0,1,64,0,1, -120,253,0,12,16,0,7,4,0,2,4,0,18,128,0,1,2,0,0,64,0,5,4,0,0,2,128,0,6 -,1,0,0,4,128,16,0,0,104,254,0,1,1,0,9,2,1,0,2,8,0,29,16,32,32,32,0,1, -8,0,1,64,68,0,5,4,128,0,4,16,16,80,248,0,4,128,0,7,130,0,7,8,0,3,16,0 -,18,128,0,7,4,0,5,2,0,1,8,0,0,16,0,4,52,252,0,1,64,0,15,2,0,17,128,0, -29,8,0,1,1,0,1,8,248,0,10,40,0,4,128,2,0,0,4,64,0,19,8,0,7,32,0,6,128 -,0,4,32,0,4,32,0,1,128,152,255,0,2,32,0,0,16,0,4,64,0,0,40,0,3,132,0, -0,2,0,1,32,16,0,0,130,0,0,16,0,17,16,0,1,17,32,8,2,1,8,8,0,0,64,0,0,1 -,0,1,4,128,8,0,4,2,0,0,16,0,0,112,254,8,0,0,8,0,2,32,2,0,9,64,0,4,64, -0,3,16,0,14,128,0,0,1,8,4,0,2,16,128,32,16,4,130,0,0,4,8,2,0,0,32,2, -132,128,8,0,1,8,0,0,1,128,172,251,128,3,4,16,0,0,32,148,2,0,2,32,0,0, -68,0,0,160,5,160,50,0,0,4,0,1,80,97,4,68,40,8,32,0,12,16,0,0,32,0,0,9 -,160,160,34,64,12,152,0,0,26,96,1,104,128,4,160,160,2,212,6,80,80,10, -0,1,12,40,9,0,0,40,252,0,0,48,32,0,0,66,129,16,8,64,0,0,32,0,0,12,128 -,65,8,1,166,1,0,2,1,64,80,36,2,72,128,8,0,12,64,0,0,128,68,128,12,132 -,0,0,4,0,0,18,14,192,24,4,1,52,32,132,24,64,24,210,7,241,32,0,0,12,1, -32,0,0,8,152,253,0,3,1,1,0,0,2,0,1,8,0,0,8,32,64,0,1,2,4,0,1,128,0,1, -16,8,2,64,0,0,16,0,14,32,0,0,1,32,0,6,64,8,0,4,16,0,1,16,1,33,0,0,8,0 -,2,8,48,248,0,0,64,4,0,1,64,128,0,4,1,128,0,2,1,1,0,3,8,0,18,32,0,3,8 -,4,2,0,1,16,1,32,16,0,0,2,64,16,32,0,1,32,8,4,128,0,1,1,4,64,0,1,96, -249,16,0,1,160,0,2,2,0,2,8,0,0,1,0,6,64,0,16,16,128,0,1,16,128,0,15, -136,0,6,32,0,4,140,249,2,0,1,16,0,8,2,0,0,1,0,1,1,0,5,1,0,26,32,0,19, -144,32,253,0,1,2,0,11,136,0,3,16,0,6,32,0,18,64,0,3,96,0,13,64,0,5,80 -,254,40,0,1,8,0,9,5,8,0,1,4,0,26,1,0,3,2,0,5,32,0,3,16,0,0,2,0,1,16,0 -,0,8,0,1,1,0,0,58,248,2,0,0,128,0,0,128,0,4,16,0,1,128,0,2,1,0,0,16,0 -,21,2,0,2,1,0,17,16,0,3,8,0,0,128,8,0,0,128,255,0,0,32,16,0,11,16,0,3 -,2,0,5,1,0,46,152,253,0,3,18,0,1,72,0,0,2,32,17,36,0,5,128,0,1,9,2,0, -0,1,0,21,16,0,3,8,0,5,128,0,0,2,0,1,1,0,7,32,176,255,8,0,0,32,0,1,2,0 -,1,8,0,3,4,0,8,1,0,1,128,0,12,128,0,2,128,0,8,1,32,0,7,32,0,3,32,0,4, -24,248,0,1,8,0,5,8,0,1,1,0,2,128,0,0,80,0,2,64,128,0,32,2,0,0,1,0,2, -128,128,0,0,2,2,0,0,1,2,64,0,0,32,0,0,56,253,128,64,0,8,128,0,2,4,24, -0,0,8,0,0,1,0,24,64,16,4,0,2,8,0,1,2,0,17,8,24,253,0,3,1,0,0,2,4,0,1, -64,0,0,2,0,6,1,128,0,2,4,0,35,1,4,3,0,9,24,253,0,0,6,0,14,24,0,0,1,0, -22,16,0,16,12,16,0,4,64,0,5,128,249,32,1,0,8,4,0,0,160,1,0,2,8,0,5,1, -32,0,0,4,66,0,14,32,0,0,21,0,1,16,0,0,130,72,35,1,0,1,32,0,0,36,144, -198,80,68,0,0,64,11,0,6,104,251,128,64,0,5,8,0,1,64,0,0,128,1,0,30,1, -32,0,5,2,0,6,6,128,0,2,3,1,0,5,16,253,224,0,5,6,0,1,24,0,4,128,7,2,0, -5,3,0,1,48,0,15,128,65,44,0,1,48,0,0,24,0,0,3,1,0,1,96,0,0,32,32,6, -192,0,2,2,0,6,224,251,32,1,0,4,2,0,1,8,0,4,128,70,0,6,1,0,1,32,4,0,14 -,128,1,20,0,1,16,0,0,64,32,32,0,2,32,0,0,16,1,38,132,64,0,1,1,4,0,5,8 -,252,0,0,1,0,4,152,8,0,0,96,20,0,1,80,0,1,16,2,0,5,140,2,8,2,1,0,14, -128,5,153,16,0,0,192,8,16,4,161,0,2,128,17,144,0,0,20,0,0,36,0,1,3,0, -6,48,253,160,0,5,30,0,1,120,0,1,96,0,1,128,7,0,6,15,96,0,0,12,8,0,14, -224,1,32,0,1,224,32,6,192,2,0,2,224,65,60,136,3,50,0,1,192,0,0,2,0,5, -96,253,128,0,5,24,0,1,96,0,2,64,0,2,1,0,5,12,128,129,0,16,128,1,32,32 -,0,0,192,0,0,16,0,4,128,1,48,0,0,6,2,0,2,2,0,6,48,254,32,1,0,4,24,0,1 -,96,0,2,8,0,1,22,0,6,12,128,5,0,0,66,0,14,128,65,16,0,1,192,0,0,24,17 -,136,0,2,128,1,48,8,65,192,68,0,0,128,8,2,0,5,128,249,32,0,1,128,64,1 -,0,0,130,8,0,1,4,0,0,32,0,2,64,0,1,2,64,128,0,2,160,16,4,0,7,48,0,6, -184,145,4,0,1,16,0,0,130,72,0,0,106,128,77,8,136,4,130,38,216,0,0,2, -64,19,104,36,129,168,1,52,66,244,253,0,10,64,0,5,4,0,7,1,1,0,7,12,0,6 -,6,1,0,4,24,0,0,2,96,0,0,12,0,2,16,6,192,0,2,3,66,0,0,8,128,1,32,0,0, -16,248,96,1,0,0,128,1,0,1,8,0,1,24,0,1,96,0,1,128,1,0,1,6,0,0,129,0,2 -,128,0,0,1,0,7,12,0,6,134,129,44,0,1,48,0,2,131,96,0,0,8,100,0,0,16,0 -,0,6,192,0,0,6,0,0,2,97,0,0,12,130,65,48,16,104,254,168,0,1,128,0,0,4 -,0,0,64,4,0,0,8,0,1,32,0,1,128,0,2,2,0,4,128,1,0,0,64,0,6,10,0,6,5,16 -,20,0,1,16,0,0,64,32,35,32,64,68,32,0,0,32,33,6,196,72,2,0,0,9,0,0, -132,12,128,5,0,0,2,51,251,192,0,6,2,0,0,96,0,1,128,81,0,1,38,0,1,24,2 -,8,0,2,128,0,0,130,0,7,10,0,6,133,72,152,16,0,0,192,36,88,4,35,100,1, -12,144,1,1,0,0,68,200,24,88,4,11,34,20,76,128,73,16,0,0,49,253,32,1,0 -,0,128,1,4,0,0,6,0,1,120,32,0,0,224,1,0,0,128,7,1,0,0,30,192,128,0,2, -224,1,60,16,0,14,96,1,32,0,1,224,0,0,14,192,3,88,64,3,224,1,60,144,3, -240,0,0,30,192,0,0,88,0,0,15,226,1,44,16,72,253,4,1,0,7,96,0,1,128,1, -0,1,6,0,1,24,0,0,128,0,2,128,1,48,0,17,32,0,1,192,0,2,3,64,64,8,132,1 -,16,0,0,6,192,0,0,24,0,0,2,0,0,32,12,136,1,0,0,8,25,249,160,0,1,128,4 -,2,0,0,128,4,0,0,96,0,1,160,1,0,1,6,0,1,24,0,0,8,0,2,128,9,49,4,0,6, -16,0,6,8,68,144,16,0,0,192,0,0,8,9,147,64,1,34,160,1,48,65,16,8,130, -26,0,0,64,0,0,4,76,0,0,80,0,0,2,240,249,48,0,1,128,32,17,0,3,2,4,13,0 -,1,52,0,0,64,0,1,130,8,0,0,8,0,1,160,4,4,0,15,160,49,4,128,22,212,0,0 -,26,64,11,104,34,77,32,8,53,128,68,82,68,0,2,8,64,0,0,160,9,20,0,0, -152,251,0,7,8,0,1,64,12,0,1,48,0,1,4,0,3,1,0,2,128,0,8,2,0,6,129,1,0, -1,6,192,0,0,24,0,0,3,97,0,0,12,132,0,0,48,0,1,128,0,3,64,0,1,128,1,33 -,32,40,250,96,1,0,0,128,1,0,1,6,192,0,0,24,0,0,12,0,1,48,128,1,0,2, -192,0,0,24,0,1,128,129,0,0,8,0,6,16,0,6,8,1,44,0,0,6,48,0,0,24,0,0,2, -0,1,8,0,1,48,0,0,6,192,0,3,96,0,1,128,1,0,1,176,251,172,0,1,128,0,0,4 -,0,0,2,64,0,0,8,0,0,12,0,1,48,128,0,3,73,0,0,8,130,0,0,128,17,128,0, -15,128,136,20,0,0,38,20,0,0,24,0,0,9,98,130,132,136,1,2,5,68,132,64,0 -,2,96,128,0,0,128,65,0,0,16,18,248,196,0,4,4,25,0,0,19,96,4,64,2,0,1, -2,134,0,1,24,32,3,0,0,1,0,0,128,32,0,0,8,0,6,8,0,6,132,17,154,16,0,0, -4,0,0,24,8,99,32,33,12,0,0,5,48,34,16,2,40,0,2,96,2,0,0,128,65,16,33, -208,253,32,1,0,0,128,5,52,0,0,30,196,3,122,16,3,0,1,12,160,7,0,1,30, -192,3,26,32,0,0,96,1,12,0,15,96,0,0,32,128,3,32,32,30,192,0,0,120,0,0 -,3,232,0,0,61,128,1,48,0,3,120,16,0,0,224,1,60,0,0,240,249,4,1,0,2, -192,0,0,24,0,0,3,96,0,0,12,0,3,6,0,1,24,16,3,0,0,16,0,0,128,1,0,0,8,0 -,6,18,0,6,9,1,33,32,2,192,32,0,1,2,34,0,0,8,128,1,0,1,2,4,128,0,2,96, -0,2,65,0,0,16,129,251,160,0,1,128,0,0,194,66,24,64,3,96,0,0,76,1,0,2, -6,0,1,72,0,0,3,104,2,0,0,128,145,48,0,7,8,0,6,68,16,16,2,38,200,0,1, -130,32,0,0,10,0,0,196,9,129,64,68,192,0,3,96,16,0,0,128,1,48,0,0,64, -254,32,1,0,5,64,8,0,0,128,1,0,3,64,0,1,154,64,8,8,0,0,13,0,1,132,0,7, -2,0,6,161,5,4,128,6,208,0,0,18,65,11,10,34,129,32,8,52,18,0,0,208,8, -66,80,32,40,68,133,164,0,0,4,32,184,251,128,0,4,64,0,0,8,0,0,1,0,6,4, -0,0,24,8,0,0,1,0,0,12,0,1,32,8,0,6,2,0,6,129,129,0,5,16,3,0,2,136,128 -,32,0,1,192,32,8,0,1,65,0,0,8,0,0,1,32,0,0,96,248,96,1,0,2,48,0,0,6,0 -,1,120,16,0,0,2,0,1,128,1,0,1,16,0,0,1,24,16,0,2,12,0,7,8,0,6,4,129, -44,0,0,6,48,0,0,24,0,0,2,0,1,4,8,128,48,16,0,0,192,0,2,1,0,1,12,96,1, -48,8,48,255,172,0,3,16,0,0,2,0,1,106,4,0,3,128,0,2,8,16,0,0,12,1,0,2, -36,32,0,6,12,0,6,134,4,20,0,0,22,18,130,16,4,81,32,33,40,128,5,0,0,2, -0,0,192,0,0,25,32,10,4,32,40,168,0,0,48,0,0,114,250,196,0,3,192,8,88, -0,0,163,0,0,33,32,2,0,2,22,0,1,152,32,8,1,16,128,4,0,0,16,1,0,14,128, -5,152,16,22,200,2,24,32,11,1,4,128,8,1,16,10,0,0,192,132,80,0,1,32,1, -64,194,0,0,177,0,0,160,254,32,1,0,2,240,128,30,196,3,120,0,0,3,0,2, -128,7,1,0,0,6,192,0,0,24,0,0,3,0,1,8,8,0,6,34,0,6,113,0,0,33,128,7, -240,64,30,192,0,0,24,16,15,224,128,44,0,1,240,0,0,14,208,3,121,32,3,0 -,0,1,60,8,96,250,132,0,3,192,0,0,24,0,0,131,0,1,12,2,0,2,6,0,1,16,16, -0,5,52,16,2,0,6,1,0,6,1,32,0,0,6,192,0,0,24,0,0,2,96,64,4,132,1,0,0,8 -,0,0,192,0,0,24,0,0,1,0,0,16,0,0,4,1,48,0,0,97,253,32,1,0,2,192,0,0, -24,0,0,9,96,17,64,0,3,6,0,1,68,0,0,128,104,64,128,16,0,0,176,128,0,6, -64,0,7,16,17,64,6,8,36,152,4,32,2,4,12,128,1,1,2,0,0,128,4,157,16,83, -96,4,140,128,80,48,8,240,249,32,64,128,160,0,3,64,3,0,0,128,1,0,4,8, -16,90,0,1,8,20,0,2,52,0,0,4,0,5,18,2,0,5,169,49,4,128,0,0,16,0,0,2,64 -,11,104,34,45,168,1,52,65,0,0,208,64,130,96,16,108,33,13,36,0,0,180,0 -,0,88,250,0,5,64,0,0,8,3,0,9,24,16,0,0,1,0,3,48,0,7,32,0,6,136,1,0,6, -3,1,0,0,12,128,1,48,0,1,192,0,0,8,0,1,96,0,0,12,0,1,48,16,216,251,224 -,0,0,13,128,1,48,0,0,6,192,3,120,16,0,0,2,0,1,128,7,49,0,0,16,192,0,0 -,56,16,0,2,48,0,0,1,0,5,128,0,6,1,1,44,128,1,48,0,1,4,2,32,0,0,8,224, -1,32,0,1,128,0,2,1,64,0,0,8,100,1,32,0,0,112,255,36,16,4,128,0,0,16,0 -,0,2,64,3,104,1,0,3,128,38,16,0,0,8,81,0,0,8,2,0,2,48,0,7,16,0,6,136, -136,20,128,0,0,16,0,2,9,2,130,4,168,1,16,64,0,0,64,130,24,9,34,33,64, -36,160,0,0,16,4,73,254,12,8,48,1,22,194,4,152,0,0,3,0,0,33,32,2,0,2, -16,194,128,88,32,131,0,0,36,0,3,130,4,0,5,66,2,0,5,129,17,152,16,134, -192,2,64,4,19,100,0,0,12,144,1,48,6,0,0,192,8,16,0,0,32,98,66,140,208 -,0,0,49,64,163,250,96,64,60,160,7,240,32,30,132,3,120,0,0,15,0,2,128, -7,240,0,0,6,192,3,24,0,3,12,32,2,0,6,1,0,5,96,0,0,33,128,7,224,32,6, -192,0,0,120,64,3,192,1,12,0,1,48,128,14,200,3,24,0,0,3,0,0,1,12,0,0, -128,255,8,0,0,48,0,0,6,192,0,0,24,0,0,3,0,0,16,0,0,2,0,3,192,0,0,16,0 -,0,3,0,5,128,0,6,64,0,7,1,32,16,6,192,0,1,4,2,97,0,0,8,132,1,32,0,1, -128,128,24,0,0,1,66,0,0,8,8,65,32,16,98,253,32,64,52,0,0,6,192,0,0,24 -,0,0,3,96,0,0,64,0,3,22,209,0,0,128,16,3,8,132,0,3,128,0,6,64,0,6,64, -8,18,2,6,192,0,0,152,128,16,64,32,34,128,1,136,16,0,0,32,2,24,16,19, -16,65,34,128,16,136,0,0,72,249,16,0,0,52,128,0,0,208,0,1,64,0,1,128,4 -,32,0,0,4,0,0,64,208,0,0,26,9,0,0,8,0,1,32,0,0,20,0,0,2,0,6,1,0,5,160 -,5,4,128,6,208,0,0,10,64,11,10,0,0,13,32,0,0,182,144,32,208,4,128,72, -19,104,0,0,13,33,0,0,52,1,248,253,0,1,48,0,4,8,0,2,8,4,0,3,196,0,0,24 -,0,1,1,0,3,32,0,0,3,0,5,128,1,0,5,128,129,0,2,192,0,0,16,0,0,3,0,1,12 -,132,0,0,48,0,1,194,128,0,1,3,97,32,12,0,1,48,32,56,249,0,1,60,128,1, -240,32,6,192,0,0,120,0,0,11,224,1,12,128,1,240,0,0,8,208,0,0,24,0,1, -96,0,0,44,0,16,129,44,0,0,6,52,0,0,22,0,0,2,0,1,8,0,0,128,32,0,0,2, -128,0,0,6,0,0,2,64,0,0,8,96,1,32,0,0,248,255,12,0,0,52,128,0,0,208,2, -2,64,0,0,104,0,0,69,161,1,4,128,0,0,208,0,0,24,65,0,0,8,0,1,32,0,0,20 -,128,8,0,5,64,4,0,5,128,4,20,0,0,6,16,0,0,74,4,81,0,1,36,144,9,16,34, -20,68,20,2,0,0,33,36,129,132,168,0,0,144,32,74,249,4,0,0,48,0,0,6,0,0 -,66,152,4,11,96,33,6,128,17,48,10,70,192,0,0,8,1,11,96,65,0,0,128,1, -24,9,0,14,128,1,152,16,38,2,2,12,8,11,4,20,76,0,0,5,176,0,1,192,2,25, -16,3,96,65,44,208,0,0,177,64,176,252,0,1,56,128,7,226,0,0,30,192,131, -120,0,0,8,192,1,61,128,7,225,0,0,30,200,131,120,0,1,224,129,32,0,15, -96,0,0,33,128,7,32,64,18,192,0,0,24,0,0,3,232,0,0,13,160,7,50,0,0,30, -192,0,0,26,0,0,3,0,0,1,12,0,0,40,253,4,0,0,48,0,0,6,0,1,24,0,0,3,96,0 -,0,10,128,65,48,0,0,6,192,0,0,8,0,0,3,96,0,1,128,1,32,136,4,0,5,64,2, -0,6,1,32,0,0,6,192,0,0,20,4,2,96,32,8,128,1,32,0,0,2,128,0,0,24,0,0,2 -,64,0,0,8,0,0,65,32,32,193,255,0,1,48,0,0,6,192,0,0,25,0,0,3,96,18,4, -160,5,52,0,0,6,192,0,0,20,2,3,96,0,1,160,1,144,0,0,4,0,6,2,0,6,128,16 -,17,6,194,36,72,0,0,32,97,4,128,196,9,1,18,166,0,0,8,25,128,8,2,8,64, -132,4,0,1,216,252,16,0,0,52,128,0,2,2,68,8,2,4,0,0,32,81,52,0,1,24,0, -0,18,9,0,0,8,0,0,128,16,48,4,128,0,6,64,0,6,160,49,4,128,38,16,0,0,2, -64,11,8,128,1,32,16,52,193,0,0,210,128,2,72,35,104,128,13,36,0,0,52, -16,88,255,0,1,48,0,2,64,0,3,64,0,0,132,0,0,48,0,3,8,0,1,1,0,5,4,0,6,2 -,0,5,128,1,0,1,4,1,0,2,3,1,0,1,132,128,48,0,1,192,0,0,8,0,0,3,97,0,0, -12,0,1,48,0,0,232,249,0,2,128,1,48,0,1,4,0,0,24,0,0,11,224,0,0,60,128 -,7,0,1,24,192,0,0,24,0,0,3,96,0,0,44,128,0,6,64,0,7,1,44,0,0,6,50,0,0 -,22,0,0,2,0,1,4,0,1,32,0,0,2,128,0,2,2,64,32,8,100,1,32,0,0,248,254, -12,0,1,128,0,0,16,0,0,64,0,0,8,10,0,0,69,33,1,52,128,38,1,0,0,152,72, -0,0,8,0,0,1,32,0,0,20,0,7,20,0,6,130,136,20,0,0,68,16,0,0,74,4,9,66, -64,40,144,17,17,64,36,72,16,24,2,9,36,2,36,160,0,0,16,66,49,252,4,0,1 -,32,38,194,36,128,0,0,131,96,1,6,0,0,1,48,0,0,16,194,72,88,0,0,139,96 -,66,12,136,5,26,9,0,14,144,9,154,16,18,192,32,12,8,35,0,0,2,32,0,0,1, -48,2,64,196,8,80,0,0,11,98,66,140,193,0,0,49,64,115,254,0,1,12,128,7, -240,0,0,6,196,3,120,16,8,160,0,0,56,128,7,240,0,0,14,196,3,120,0,0,15 -,224,1,32,0,15,96,0,0,32,128,7,228,0,0,18,192,0,0,58,32,15,232,128,12 -,160,7,48,128,14,208,0,0,24,0,0,3,0,0,1,12,0,0,8,255,4,0,2,6,192,0,1, -4,3,97,0,0,10,128,0,0,48,0,3,24,0,0,3,96,0,0,12,128,1,32,8,0,15,129, -32,0,0,6,194,0,0,20,4,2,32,32,4,128,1,32,32,2,132,128,24,0,0,2,64,0,0 -,8,0,0,65,32,16,122,255,0,2,32,6,192,0,0,8,1,17,96,0,0,4,0,0,1,48,0,0 -,6,1,8,73,8,3,96,0,0,13,128,1,16,0,15,64,8,16,34,38,192,0,0,8,128,16, -36,2,76,129,1,9,2,38,32,2,156,16,64,16,65,130,132,0,0,136,0,0,248,255 -,32,0,0,4,128,16,17,8,0,0,64,3,0,0,128,8,32,1,132,16,0,0,24,0,0,26,1, -0,0,104,0,0,13,0,1,36,2,0,14,160,5,36,128,22,16,0,0,18,72,11,10,4,73, -164,33,180,16,0,0,208,2,2,65,2,105,0,0,13,33,1,53,1,136,250,0,5,128,0 -,0,8,3,0,1,4,132,0,5,24,4,0,0,97,0,0,12,0,1,16,32,0,14,128,129,16,0,0 -,4,2,0,0,8,0,0,3,0,0,64,0,0,128,1,48,0,1,192,64,8,8,0,0,96,64,12,128, -0,0,48,16,232,255,96,0,0,12,128,3,0,1,6,0,0,3,120,0,0,11,96,1,48,128, -7,49,0,0,8,200,0,2,15,0,1,44,0,7,4,0,6,2,129,44,0,0,6,49,0,0,22,0,0,2 -,0,0,16,8,128,0,0,32,0,1,128,64,0,1,130,64,0,0,8,96,1,32,0,0,160,248, -40,0,0,4,128,0,0,4,40,2,0,0,67,104,20,69,161,0,0,48,145,6,16,0,0,128, -64,0,2,13,0,1,20,0,0,4,0,5,16,2,0,5,136,4,20,0,0,20,16,0,0,10,0,0,81, -0,0,4,132,2,133,16,34,0,0,64,2,88,32,33,32,68,132,168,0,0,16,32,10, -251,128,1,48,9,0,1,36,88,4,11,4,33,6,192,0,0,16,1,16,194,36,64,4,163, -0,0,33,12,0,1,24,0,0,2,0,5,16,1,0,5,136,5,154,16,18,192,34,84,0,0,3,0 -,0,2,132,1,8,48,0,1,192,2,17,0,0,17,98,65,140,64,1,176,64,64,252,224, -1,61,128,1,180,0,0,30,192,3,120,0,0,8,32,1,12,144,7,240,0,0,6,192,3, -24,0,0,14,0,1,16,0,0,7,0,5,144,3,0,5,104,0,0,32,128,7,228,0,0,18,196, -0,0,58,16,15,224,129,12,32,0,0,48,0,0,14,200,3,24,0,0,3,8,1,12,0,0,16 -,251,132,1,48,0,2,32,24,0,0,3,0,1,6,128,0,0,48,0,1,192,0,2,3,0,1,12,0 -,1,16,128,5,0,5,208,2,0,5,8,1,16,0,0,6,194,0,0,16,0,0,2,32,0,0,12,2, -128,32,0,1,128,0,0,24,0,0,3,64,0,0,8,0,0,1,32,32,137,248,128,1,48,128 -,0,0,2,0,0,24,0,0,16,98,16,8,0,0,1,48,4,70,193,0,0,16,5,3,0,0,32,12,0 -,1,16,0,0,4,0,5,8,2,0,5,4,144,32,32,6,192,0,0,16,0,1,97,17,12,64,5,0, -0,16,0,1,8,25,16,163,0,0,8,0,0,4,1,0,1,104,252,80,0,0,8,0,0,1,0,2,128 -,0,5,8,0,1,32,0,3,16,0,0,2,0,2,2,4,0,6,2,0,18,64,0,15,232,253,0,4,16, -0,0,2,0,1,8,0,0,1,0,1,4,128,0,2,2,64,0,5,4,8,0,6,16,0,6,40,0,0,4,128, -0,0,16,0,0,2,64,0,0,8,0,0,1,0,1,4,128,0,0,16,0,1,64,0,0,8,0,0,1,32,0, -0,4,0,0,80,249,0,74,152,255,44,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1, -32,136,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,2,0,15,32,0,0,4,128,0 -,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,69,0,0,8,0,0,1, -32,0,0,4,0,0,187,251,68,0,0,128,32,1,0,0,2,0,2,2,0,0,32,0,0,8,1,34,0, -1,16,0,2,16,0,0,128,16,0,19,128,0,2,136,0,6,136,0,4,4,0,5,48,0,1,241, -251,32,0,1,128,0,1,32,0,5,36,0,8,8,0,4,8,0,14,32,0,1,32,0,3,64,0,0,8, -0,0,1,0,1,4,128,0,0,16,0,1,64,0,0,8,0,0,1,0,1,4,0,0,56,253,4,0,1,16,0 -,1,128,0,0,16,0,1,64,0,0,8,0,1,16,0,5,2,0,1,4,0,0,1,0,20,2,0,1,16,0,4 -,64,0,14,129,250,32,0,0,4,130,0,1,4,130,64,32,9,2,64,0,0,136,4,129,32 -,18,68,2,96,16,8,0,0,129,32,8,0,0,17,0,14,32,0,1,132,16,0,0,72,130,64 -,0,0,8,0,0,1,32,4,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,136,4,0,0,80, -251,0,8,8,0,4,8,0,29,4,0,6,8,0,13,1,0,2,128,0,0,136,250,0,26,2,0,20, -16,0,8,64,0,5,4,0,2,32,0,3,200,254,0,1,128,0,10,128,0,0,16,0,9,128,0, -17,1,0,1,1,0,3,66,0,5,64,0,1,32,32,0,0,4,0,1,16,0,1,32,0,0,56,255,4, -32,0,4,1,0,9,32,0,3,80,0,0,2,128,0,0,2,64,0,15,32,0,6,64,0,3,32,36,0, -0,4,0,3,2,32,0,3,96,0,0,112,251,0,5,2,64,0,2,1,32,0,8,8,0,3,4,0,3,1,0 -,5,128,0,11,66,0,1,32,0,6,1,0,6,32,0,2,224,250,0,13,2,0,1,8,0,2,2,0,5 -,64,0,6,2,0,6,1,0,10,56,0,4,2,0,8,2,0,1,232,250,0,11,4,0,1,16,0,6,1, -16,0,1,64,0,18,8,8,2,16,0,1,16,0,5,4,8,2,1,0,2,128,0,1,1,40,0,1,32, -112,253,0,2,32,2,0,10,4,0,0,32,64,2,0,1,32,0,0,4,128,0,0,4,8,0,22,8,0 -,0,8,0,0,2,128,64,8,128,0,4,1,0,0,32,0,4,240,248,0,2,160,20,0,3,128,0 -,1,2,0,0,64,8,38,0,0,16,128,2,0,1,9,48,1,32,192,4,32,0,15,64,24,16,1, -32,0,1,24,0,0,8,0,0,1,32,64,13,144,1,2,0,1,64,0,0,33,64,2,68,0,1,16, -48,254,32,193,86,10,128,138,16,40,0,0,16,160,0,0,8,0,0,193,2,4,2,128, -16,44,0,0,2,64,2,166,1,32,16,1,0,15,80,16,8,14,1,0,0,16,2,128,69,0,1, -2,32,48,8,178,16,136,0,0,18,136,32,92,4,128,1,4,82,64,252,0,0,64,16,8 -,0,2,8,0,1,32,0,2,64,0,0,128,0,2,2,0,3,4,0,1,16,0,16,64,16,144,0,0,4, -0,3,1,0,1,2,0,0,4,144,0,5,9,64,1,128,0,2,208,251,132,0,3,33,128,0,4,1 -,32,0,1,32,0,0,128,64,0,0,64,0,0,8,0,1,2,32,0,20,2,0,1,8,16,0,0,16,0, -2,128,16,0,1,4,0,1,4,0,1,32,0,0,32,0,2,188,248,0,2,4,0,5,1,0,8,2,8,0, -0,32,0,22,2,0,0,8,0,4,4,0,9,160,0,0,4,0,0,32,4,0,1,16,216,255,0,4,2,0 -,2,2,0,16,128,0,19,8,0,0,2,2,0,9,128,0,11,152,255,0,45,128,0,1,16,0,2 -,32,0,0,1,64,2,64,0,0,16,16,1,0,1,2,0,1,16,0,0,1,0,0,4,0,1,144,250,0, -13,32,0,10,32,0,19,2,0,6,6,0,0,32,0,0,2,0,1,16,0,1,32,0,0,8,4,0,0,1,0 -,2,64,112,255,0,8,64,0,17,1,0,20,4,0,6,4,0,4,64,0,3,32,0,4,248,254,0, -17,16,0,29,4,0,7,2,0,0,64,0,0,8,64,0,0,8,16,68,0,1,2,8,0,1,16,88,250, -0,10,64,0,2,32,0,1,4,0,0,16,2,0,22,32,0,5,4,0,1,128,0,1,16,0,4,2,17,0 -,2,128,0,0,16,0,2,112,251,0,14,64,0,3,10,0,9,128,0,2,128,0,2,64,0,2, -64,0,12,4,0,16,184,255,0,2,16,8,0,2,128,0,11,16,0,0,128,0,1,32,0,1,16 -,0,14,128,96,1,0,5,128,2,0,2,1,33,0,0,4,84,0,2,128,0,0,64,0,3,8,216, -253,0,5,1,32,0,3,16,0,6,1,24,4,0,0,128,0,0,16,0,0,1,0,1,64,0,2,64,0,2 -,32,0,2,32,0,1,3,0,1,1,0,7,1,0,1,4,0,0,130,2,0,9,208,253,0,74,220,251 -,0,14,128,0,8,4,0,5,32,0,2,32,0,2,16,0,2,16,0,23,1,0,4,56,248,8,0,8,4 -,0,9,32,0,26,2,0,10,32,2,0,11,176,251,0,18,1,0,36,1,0,2,128,0,3,64,0, -7,192,255,0,3,2,2,0,8,4,0,7,32,0,21,4,0,11,128,0,13,24,249,0,19,16,0, -32,128,0,8,32,0,2,64,0,4,4,120,248,0,19,32,0,35,1,0,16,136,252,0,47, -128,0,13,8,0,10,16,255,0,7,64,0,20,16,1,0,0,64,4,0,2,136,0,1,32,2,0,4 -,16,0,10,8,0,13,248,254,0,46,16,4,0,10,128,0,13,88,250,16,0,4,64,0,14 -,1,0,2,128,0,0,4,0,16,2,0,5,20,4,64,0,0,16,2,130,64,0,4,72,0,0,8,0,0, -4,0,2,64,48,251,0,0,128,0,1,2,0,4,128,0,9,32,0,6,32,0,20,32,0,0,64,0, -6,32,0,0,16,129,0,3,32,4,0,3,128,252,0,14,16,0,10,1,0,20,128,0,12,8,0 -,7,64,0,1,216,254,8,0,4,128,0,19,4,0,16,128,0,0,32,0,0,2,0,3,1,0,2, -128,0,0,16,0,5,128,0,0,144,0,2,16,0,0,80,251,128,0,5,8,4,0,2,4,0,2,16 -,0,0,65,32,0,1,128,0,2,128,0,1,8,0,15,128,16,8,0,0,4,0,1,16,2,2,16,1, -2,0,0,4,160,0,2,16,0,1,10,0,1,64,0,2,72,248,26,64,4,32,0,0,64,64,0,0, -128,0,0,8,0,1,32,0,1,8,1,32,0,1,128,0,0,16,16,2,64,0,0,8,0,25,1,0,0,4 -,0,0,64,8,0,1,2,0,0,16,8,0,0,1,0,1,8,0,0,1,128,56,251,64,0,0,5,32,0,0 -,16,128,4,72,0,0,8,0,0,2,32,0,1,176,0,0,50,64,0,0,64,1,9,80,1,96,0,0, -4,16,0,15,128,8,16,20,2,0,0,128,138,0,0,3,32,3,4,0,0,13,16,1,4,20,6, -16,0,0,19,0,1,72,0,0,1,0,0,184,250,0,0,4,24,12,128,64,98,137,0,0,130, -2,0,0,40,0,0,33,48,9,76,129,4,16,2,10,64,8,4,128,0,1,1,0,4,16,0,6,72, -0,1,113,16,0,0,3,64,33,0,0,4,160,200,10,96,128,0,1,12,130,0,0,60,34,5 -,96,0,1,4,129,96,112,14,80,251,0,1,8,8,0,0,64,32,8,0,0,128,0,4,16,8,0 -,0,1,0,5,4,32,0,18,64,16,128,0,0,64,128,0,0,16,128,0,2,128,0,1,160,0, -1,32,0,0,4,0,2,1,128,64,16,8,104,248,0,2,32,128,0,2,128,0,2,2,32,0,0, -9,0,0,2,16,0,0,4,80,0,0,16,32,0,17,16,0,0,32,128,0,7,64,32,0,3,16,0,0 -,2,128,0,1,128,0,2,4,128,8,16,32,250,0,8,2,0,45,8,4,0,3,16,2,0,2,8,0, -4,16,0,0,192,251,0,43,128,0,1,64,32,0,9,128,0,5,8,0,7,176,251,0,19,4, -0,2,64,0,21,16,0,6,16,0,1,8,0,1,136,0,0,128,128,0,1,64,0,0,8,0,0,2,0, -1,32,96,249,2,0,15,2,0,1,32,0,0,2,1,0,25,128,0,0,8,0,1,32,0,12,64,0,3 -,128,96,255,0,4,64,0,3,32,0,5,2,0,9,16,0,0,1,0,1,5,0,2,129,0,1,128,2, -0,1,128,0,2,8,0,0,128,0,0,16,0,21,240,252,0,3,8,0,26,64,0,2,64,0,2,32 -,0,2,32,0,11,2,32,0,15,112,251,0,20,4,0,8,16,0,3,1,0,1,8,0,2,128,0,5, -8,0,2,1,0,2,128,64,0,6,1,0,0,16,2,0,3,80,253,0,4,128,0,2,128,1,0,0,8, -0,6,4,4,0,1,8,0,1,1,32,0,16,192,128,0,6,65,0,1,4,0,1,88,1,1,0,9,8,120 -,248,0,10,32,0,5,2,0,4,8,0,2,2,0,4,16,0,17,72,0,1,32,8,1,0,0,4,0,1,32 -,16,0,0,2,0,0,32,0,1,1,0,0,4,0,0,104,250,0,6,10,0,3,1,0,2,128,0,5,2,0 -,7,16,0,6,8,0,2,8,0,1,1,0,8,16,0,0,1,1,0,1,4,16,1,32,0,0,131,8,16,0,1 -,136,0,0,96,248,2,0,1,8,0,4,128,0,8,2,0,4,32,0,8,16,0,6,8,0,0,64,0,6, -128,0,4,4,0,3,1,68,0,0,2,128,0,0,8,0,1,72,128,16,255,0,1,16,0,22,8,0, -6,2,0,9,64,0,3,5,0,1,128,2,8,0,3,8,0,6,16,0,1,2,0,1,32,0,0,253,0,1,4, -6,0,3,81,0,0,8,33,0,5,16,8,2,65,35,1,0,0,1,36,132,0,0,32,0,22,64,3,40 -,4,1,0,2,128,0,0,80,2,26,0,6,4,2,120,248,0,18,64,0,0,8,3,0,30,3,64,16 -,0,4,6,192,64,24,0,7,16,192,250,0,6,6,192,0,0,32,0,6,64,64,8,0,0,3,1, -0,3,60,0,23,192,0,0,32,0,0,3,0,3,6,52,0,0,24,0,7,32,16,253,0,2,10,0,2 -,2,64,0,1,33,0,6,2,64,8,17,0,1,128,16,0,0,54,10,0,22,64,0,0,64,32,1,0 -,3,70,80,32,128,2,0,6,2,232,252,0,2,4,0,2,24,2,35,0,0,65,0,8,2,18,0,1 -,76,128,17,0,0,2,0,23,32,34,0,0,140,0,3,6,129,0,0,88,32,0,5,48,1,136, -254,0,1,12,0,3,30,128,131,24,0,6,48,64,6,192,129,0,1,15,226,65,60,32, -0,22,128,0,0,120,32,14,8,0,1,128,1,48,128,30,0,6,60,8,24,255,0,2,8,0, -2,24,0,0,3,32,64,0,5,64,0,0,8,0,0,2,2,0,0,12,128,1,0,0,8,0,23,131,32, -0,0,12,0,4,192,32,0,7,48,0,0,96,248,0,1,16,1,0,2,24,0,0,3,64,0,6,128, -128,16,9,1,0,1,68,129,16,178,0,24,19,64,33,13,0,3,64,130,0,1,33,0,5, -16,5,248,255,0,1,4,193,18,0,2,80,0,0,104,2,0,5,16,72,0,0,64,0,0,8,0,0 -,1,36,4,0,0,34,0,17,128,0,0,16,2,0,0,64,0,0,40,18,1,32,136,4,161,6, -144,0,1,64,0,0,104,0,3,4,2,128,253,0,3,4,1,0,3,96,64,0,15,1,0,21,64,0 -,2,64,0,5,6,64,128,0,2,96,0,4,16,192,251,0,2,8,2,0,1,6,192,0,0,32,0,6 -,64,64,0,1,128,24,0,1,4,0,0,12,0,19,6,0,0,128,0,0,192,0,0,32,0,0,3,0, -0,128,32,128,1,176,0,1,192,0,0,96,0,3,16,16,176,249,8,0,2,4,2,0,0,2, -64,0,0,96,36,0,6,2,0,2,8,0,0,32,0,0,136,4,0,19,6,0,0,8,0,0,64,0,0,64, -10,1,0,0,9,0,0,132,0,0,80,0,1,64,0,0,96,129,0,3,2,105,248,0,1,128,8,2 -,2,0,1,1,131,32,18,0,6,130,0,1,136,96,4,76,130,17,176,0,19,38,196,2,0 -,1,3,32,65,12,128,5,176,0,0,32,132,0,2,3,96,1,0,3,4,195,253,0,1,44, -128,7,0,1,6,144,3,120,0,6,48,0,1,192,0,0,120,64,15,224,129,60,8,0,17, -128,7,240,32,0,0,128,131,120,0,0,14,226,129,60,16,1,96,0,1,128,3,26, -32,0,2,12,0,0,224,252,4,0,1,8,2,0,1,24,4,3,32,0,6,64,0,2,131,96,0,0, -12,128,1,48,0,19,6,194,0,2,3,32,64,12,128,1,48,32,6,129,0,2,3,0,0,32, -0,2,16,32,106,248,0,2,2,20,2,0,0,152,0,0,3,80,130,0,5,128,72,0,1,16, -96,0,0,68,129,40,48,0,19,70,64,20,0,1,3,64,2,13,128,32,16,1,6,64,0,2, -3,0,0,1,0,2,32,2,120,252,0,1,4,128,2,17,0,1,80,3,72,2,0,2,4,17,0,0, -208,64,0,2,8,0,0,13,32,136,0,0,34,0,14,160,1,22,18,0,0,16,128,26,69,3 -,40,2,1,32,136,52,193,36,20,0,1,64,3,108,0,0,77,0,1,132,16,160,251,0, -2,32,4,0,3,3,32,64,0,2,1,0,8,12,0,19,1,32,0,3,16,0,1,64,16,0,2,48,0,0 -,2,0,3,3,96,0,0,12,8,0,2,120,253,0,3,2,48,0,0,30,196,0,0,96,64,0,0,96 -,0,1,32,0,0,192,32,0,2,24,0,0,12,0,1,12,0,15,128,1,28,0,2,64,24,196,0 -,0,34,0,0,3,0,1,16,144,5,48,0,2,1,96,0,0,8,0,1,16,16,56,248,4,0,1,8, -164,16,0,0,26,64,0,0,96,2,0,0,32,0,4,2,0,2,8,0,0,140,8,0,0,6,0,15,128 -,145,36,0,3,152,64,8,64,32,1,0,0,9,49,130,2,16,0,2,2,97,68,68,4,0,1,2 -,10,254,12,0,1,66,34,200,136,0,0,1,0,0,100,0,1,128,73,48,1,0,0,64,2,0 -,2,96,128,44,144,9,48,1,0,14,128,1,16,0,1,192,4,152,4,35,34,66,76,130 -,33,16,64,4,192,8,0,2,96,1,12,8,0,0,128,32,192,252,0,1,12,128,7,224,0 -,0,30,144,0,0,56,32,0,0,224,1,60,8,0,0,240,128,0,2,112,0,0,15,224,1, -61,8,0,14,224,129,44,0,1,240,32,30,192,3,120,0,0,14,224,1,60,0,0,3, -224,32,0,0,192,3,25,32,3,0,1,12,0,0,152,250,8,0,2,2,196,0,2,3,96,16,0 -,0,128,1,48,32,0,1,128,0,2,96,0,0,12,128,1,48,0,15,128,1,16,0,1,192,0 -,0,24,4,131,32,0,0,12,128,129,16,0,0,4,192,0,4,32,8,0,1,16,0,0,137, -255,0,1,16,9,36,192,0,0,24,4,147,32,1,0,0,128,1,144,0,1,192,4,0,2,104 -,0,1,129,16,50,0,15,128,17,33,0,1,64,128,88,0,0,16,64,33,13,128,4,168 -,32,2,192,0,1,128,34,1,4,66,8,0,0,32,66,192,248,32,0,1,144,16,16,0,1, -80,3,8,1,13,8,0,0,132,0,1,16,8,0,0,64,0,0,8,0,0,13,160,17,50,34,0,14, -32,0,0,148,0,1,208,0,0,2,64,0,0,40,17,13,160,1,36,193,0,0,16,0,0,26, -64,99,8,1,77,160,1,4,16,8,248,0,4,2,0,4,32,8,0,1,1,16,0,1,64,0,4,12, -128,1,0,18,33,16,0,0,192,0,3,64,0,0,12,128,1,16,0,3,24,0,0,3,0,0,32, -12,132,0,0,1,0,0,136,253,0,1,12,0,1,48,0,0,30,196,0,0,32,0,0,12,98,0, -3,192,0,3,24,0,0,12,0,0,1,60,0,16,129,28,0,1,192,64,24,192,0,0,32,0,0 -,3,128,1,48,160,1,48,0,0,24,0,0,3,0,0,64,8,128,129,0,0,16,16,254,12,0 -,0,4,0,0,16,20,0,0,90,64,16,1,65,12,32,0,1,18,0,0,192,66,0,2,8,0,0, -140,136,136,4,33,0,15,4,36,0,1,192,4,24,64,0,0,64,10,1,128,129,48,128 -,0,0,16,0,0,24,8,83,64,4,68,144,1,0,1,74,255,4,0,0,48,8,38,193,2,0,0, -1,3,4,129,32,128,5,48,9,0,0,64,8,0,1,64,96,18,44,144,33,0,16,128,33, -16,0,1,192,2,153,16,35,32,36,64,136,137,176,64,22,192,2,24,3,34,98, -130,140,4,17,178,8,144,249,96,0,0,61,128,7,224,32,30,208,3,24,0,0,15, -228,65,60,0,1,48,128,0,0,192,0,0,112,0,0,15,96,0,0,60,0,15,224,1,44,0 -,1,240,0,0,30,128,131,120,0,0,2,96,0,0,28,0,0,7,225,32,6,192,1,120,0, -0,3,224,1,60,0,0,64,248,132,1,49,0,0,6,192,0,2,3,0,1,12,130,1,48,0,1, -192,0,2,3,96,0,0,12,0,0,1,0,16,128,1,17,0,1,192,0,0,24,0,0,3,32,64,12 -,0,1,49,8,6,192,0,1,8,3,97,0,0,8,4,0,0,49,0,0,233,253,128,1,48,0,0,34 -,194,0,0,88,4,144,96,132,76,128,1,16,5,0,0,192,34,0,1,3,105,0,0,64,80 -,16,50,0,15,128,4,32,0,2,68,24,8,3,64,2,13,2,16,16,1,6,192,0,0,64,128 -,32,32,8,64,128,17,16,32,112,255,32,132,0,0,144,0,0,212,66,0,0,80,0,0 -,104,2,45,16,0,0,4,160,2,16,66,0,0,64,3,8,0,0,13,160,49,0,0,32,0,16, -20,33,0,0,16,68,66,64,3,8,0,0,1,160,1,0,0,128,2,210,0,1,64,19,12,1,0, -0,32,8,4,17,48,253,0,4,192,0,3,64,16,12,0,1,1,0,0,4,0,3,3,0,1,12,128, -1,0,18,32,0,4,16,3,0,2,128,1,0,2,192,0,2,3,0,0,32,0,1,128,0,1,16,254, -0,1,12,0,1,4,0,0,30,192,0,0,96,16,8,96,0,1,128,5,65,0,2,3,24,0,0,12,0 -,0,1,60,8,0,16,28,0,2,64,8,192,0,2,3,0,3,6,52,0,2,3,1,0,3,16,0,0,136, -252,4,4,6,0,0,16,192,68,154,68,0,0,96,2,4,33,0,1,194,2,0,0,136,0,1,3, -8,0,0,140,136,144,52,1,0,16,36,0,2,2,0,0,69,0,1,68,1,128,17,1,0,0,2, -16,0,2,3,64,66,0,1,8,2,34,129,251,140,9,176,8,70,129,132,0,0,1,11,96, -34,76,128,81,48,8,3,0,0,2,1,0,0,96,96,20,44,144,129,0,0,2,0,16,16,0,1 -,192,8,0,0,2,128,0,0,2,76,128,9,0,1,192,0,3,34,100,8,0,1,8,128,64,67, -253,224,129,60,128,7,112,0,0,30,144,131,120,0,0,3,232,1,60,128,4,48,0 -,1,192,0,0,112,0,0,15,96,0,0,60,32,0,16,44,0,1,240,32,6,128,0,0,120, -32,14,226,129,0,0,128,1,32,128,0,0,192,1,120,0,1,96,0,0,13,0,0,32,252 -,136,1,49,0,0,6,128,64,0,1,3,96,0,0,8,128,1,48,0,0,5,0,4,96,0,0,12,0, -0,1,0,0,32,0,16,16,0,1,192,0,0,8,0,0,3,0,1,12,0,0,128,0,1,4,192,0,2,3 -,96,0,1,128,0,2,170,250,128,4,48,0,0,2,36,8,24,5,3,96,18,66,136,1,16, -32,2,192,132,0,2,104,0,0,64,8,0,0,177,0,17,32,0,1,64,8,145,8,163,0,0, -8,13,0,0,16,0,1,35,193,40,0,1,8,36,32,0,0,128,81,48,17,40,248,16,0,1, -144,66,208,130,0,0,81,3,8,33,141,48,4,52,162,4,16,0,0,2,0,0,145,104,0 -,0,129,160,9,1,32,0,16,52,128,64,210,66,66,72,0,0,8,0,0,1,160,1,53, -128,68,16,0,0,2,64,3,105,64,141,160,1,54,0,0,192,249,0,3,4,193,0,2,3, -0,1,12,0,0,64,48,0,0,2,0,3,2,96,0,1,132,1,0,18,48,0,1,192,0,6,128,1, -48,0,0,2,4,0,2,1,96,0,0,12,132,1,48,0,0,16,251,0,1,12,0,0,2,130,0,0,6 -,192,0,1,64,8,136,64,32,128,5,1,0,0,24,192,2,24,0,1,128,0,0,60,0,17, -48,0,0,4,130,128,8,192,0,2,3,0,3,6,48,0,0,6,0,0,3,2,0,0,4,128,0,0,48, -0,0,216,255,12,0,0,4,0,0,20,64,8,3,64,0,2,4,0,0,16,16,146,2,0,0,136, -24,64,161,8,0,1,136,5,182,8,0,16,48,0,0,16,64,8,0,0,69,0,1,68,1,128, -80,0,0,33,38,24,0,0,2,0,0,35,32,16,40,4,133,48,34,186,253,4,0,0,48,10 -,66,196,72,24,0,1,96,12,140,4,64,48,4,3,0,1,24,137,1,0,0,1,140,128,0, -1,2,0,17,10,134,192,16,64,16,147,0,0,129,140,130,5,49,1,38,192,36,24, -32,162,96,68,0,2,176,64,160,251,0,1,60,128,7,48,0,0,30,132,128,120,0, -0,3,96,0,0,12,128,4,240,128,30,0,0,2,16,16,15,226,1,61,32,0,16,12,128 -,7,48,0,0,6,128,3,120,0,0,14,224,1,12,160,1,226,0,0,30,192,3,120,0,0, -15,228,129,60,0,0,72,255,4,0,0,48,0,0,2,130,0,0,24,0,0,131,96,64,8,4, -64,32,32,3,0,1,24,144,2,96,0,0,12,128,0,0,1,8,0,18,6,128,0,0,8,0,0,3, -0,1,12,0,0,1,48,16,6,192,0,0,24,0,1,66,0,3,48,0,0,249,255,0,1,48,0,0, -68,0,0,72,24,0,0,3,32,1,64,0,1,136,0,0,4,0,0,16,24,1,1,104,20,68,68,9 -,48,0,19,130,32,8,17,32,3,0,0,8,12,192,1,129,0,0,166,192,0,0,24,0,0, -19,112,65,138,72,5,2,17,112,255,160,1,0,0,144,6,208,0,1,81,0,0,8,0,0, -1,0,1,52,193,6,16,64,0,1,144,104,0,0,129,32,9,1,32,0,14,128,17,53,137 -,66,208,72,130,64,0,0,40,1,1,160,145,0,0,128,0,0,16,0,0,130,80,9,106, -36,141,161,49,52,9,208,255,0,3,6,192,128,0,5,4,0,0,49,0,0,6,0,2,16,0, -0,96,0,1,132,0,19,48,0,0,4,194,0,1,4,0,0,64,16,0,0,128,1,0,6,3,96,0,0 -,12,128,1,32,0,0,136,250,128,1,12,0,0,6,0,1,6,192,0,0,24,0,0,4,96,0,0 -,32,0,0,6,64,64,6,192,2,24,0,1,128,1,60,0,15,224,129,48,160,3,128,0,0 -,8,192,0,0,32,32,3,0,0,64,0,0,128,1,48,0,0,16,200,0,2,12,128,1,48,8, -56,253,4,0,0,5,0,0,134,192,2,3,64,0,0,8,0,0,136,36,0,0,16,65,6,0,0,2, -2,64,161,8,0,0,128,132,133,52,8,0,14,32,0,0,48,128,4,64,68,0,0,81,0,0 -,64,1,1,128,16,0,0,128,0,0,16,0,1,65,1,34,17,76,129,41,48,1,187,248, -140,33,48,65,22,136,132,88,4,147,96,18,128,132,65,176,64,22,0,0,16,24 -,145,1,0,0,4,12,128,5,0,0,2,0,16,32,2,2,192,2,65,32,139,32,130,12,130 -,1,0,1,38,192,32,88,0,0,2,97,2,8,16,129,48,2,41,253,224,1,60,128,7, -112,0,0,30,128,3,120,0,0,15,224,1,12,128,7,50,0,0,30,0,0,2,16,16,15, -226,64,60,32,0,14,224,1,28,144,5,48,0,0,6,128,3,120,0,0,14,224,129,0, -1,7,225,0,0,30,200,0,0,120,32,7,224,0,0,60,8,56,250,8,0,0,48,0,0,6, -128,64,24,0,0,3,96,0,0,4,132,1,32,0,1,64,0,0,24,128,2,96,0,0,12,128,1 -,0,0,8,0,16,48,0,0,2,128,0,2,3,32,32,12,0,0,1,1,0,0,6,192,0,0,24,0,0, -3,64,32,12,132,129,48,0,0,25,248,128,33,48,0,0,64,34,8,24,0,0,3,96,0, -0,76,128,1,0,0,32,64,130,130,24,0,0,1,104,17,68,132,72,48,2,0,14,128, -1,8,17,4,0,0,128,24,9,3,64,4,12,192,1,0,1,6,192,0,0,8,2,130,112,2,130 -,64,16,176,8,240,249,48,0,1,144,0,0,208,24,0,0,81,0,0,8,1,65,8,0,0,52 -,128,64,208,36,0,1,146,104,0,0,1,164,145,0,0,34,0,14,32,9,165,128,6, -208,4,130,64,0,0,40,0,0,1,32,4,6,146,2,16,0,1,64,8,8,4,77,176,9,6,16, -112,251,0,4,192,0,4,32,0,2,49,0,1,130,0,2,1,0,2,128,1,0,16,128,0,0,16 -,8,6,192,128,0,0,4,0,0,64,16,0,0,128,0,2,6,2,0,3,33,64,12,128,1,0,1, -128,249,128,1,12,0,1,128,0,0,6,192,0,0,32,32,4,96,0,0,48,0,0,2,196,32 -,0,0,192,2,24,0,1,136,0,0,13,0,15,96,1,0,2,68,128,8,200,0,0,32,32,3,0 -,2,128,1,48,0,5,12,128,1,16,16,176,249,140,1,4,0,0,64,68,4,3,64,0,1,2 -,8,40,0,0,48,4,20,192,0,1,64,161,8,8,32,0,0,4,4,0,15,160,0,0,48,10,32 -,0,0,2,128,64,0,0,64,1,1,128,17,2,145,18,17,0,3,97,34,12,136,1,1,2, -162,254,132,137,48,4,0,0,200,72,24,5,139,0,0,4,0,0,128,49,176,64,64, -196,0,1,128,1,96,4,44,0,0,68,48,2,0,15,1,48,2,38,2,24,0,0,1,163,32,4, -140,16,17,48,1,36,196,34,0,1,8,65,2,72,0,0,5,0,0,2,56,255,224,1,60, -128,7,48,0,0,30,128,3,24,64,15,232,1,60,128,7,240,32,0,1,2,120,16,15, -98,0,0,60,8,0,14,192,0,0,60,144,1,48,0,0,6,144,3,120,64,14,224,64,60, -144,1,224,0,1,192,0,0,56,16,7,228,0,0,13,32,136,254,132,1,48,0,1,128, -0,0,24,0,0,3,0,1,4,128,1,48,0,0,2,192,0,1,128,1,96,0,0,12,0,1,48,0,16 -,1,48,0,0,6,0,0,32,0,1,3,32,32,12,128,1,48,32,6,192,0,2,129,96,16,12, -128,1,16,16,17,253,128,17,49,0,0,128,0,0,72,24,0,0,3,96,128,140,136,1 -,0,0,65,70,196,32,0,1,2,8,17,68,1,81,48,0,15,160,0,0,48,17,16,132,2, -24,2,3,64,4,12,128,69,144,0,0,68,196,0,2,11,96,4,32,16,128,32,0,0,184 -,253,0,74,152,255,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4, -128,0,0,16,0,0,2,64,0,2,1,32,0,0,4,0,17,4,128,0,0,16,0,0,2,64,0,0,8,0 -,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,40,254,0,46, -1,0,26,136,255,36,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128, -0,0,16,0,0,2,64,0,0,8,34,1,32,0,0,4,0,15,32,8,4,128,0,0,16,0,0,2,64,0 -,0,8,0,0,129,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,73 -,248,12,0,4,2,0,1,32,2,0,10,32,2,68,0,20,4,0,6,8,0,1,128,8,0,2,16,0,0 -,136,0,1,8,0,6,235,251,32,0,1,128,0,1,128,0,4,1,0,1,4,0,1,16,0,5,1,32 -,0,19,1,0,1,16,0,0,2,0,1,10,0,1,32,0,0,4,0,1,4,0,3,10,0,0,1,32,0,0,4, -0,0,224,253,8,0,8,1,0,12,64,0,20,128,0,7,1,0,1,4,0,3,2,0,10,218,251, -32,0,0,132,144,0,1,72,66,8,0,0,8,10,1,32,132,4,128,32,18,0,0,130,72,8 -,1,2,1,32,0,0,132,16,0,15,8,4,161,32,20,0,0,2,0,0,32,8,0,1,32,0,0,4,0 -,2,4,3,9,32,10,0,0,1,32,0,0,4,0,0,232,252,0,4,1,0,12,32,0,3,32,0,0,2, -0,25,4,0,1,16,0,16,8,104,252,0,10,16,2,0,13,128,0,28,2,0,3,1,0,6,2,0, -3,8,252,32,0,10,32,0,7,64,4,0,0,64,0,1,64,0,22,32,0,5,32,0,0,36,0,5,1 -,8,0,5,56,252,0,1,4,0,42,32,32,0,9,9,0,1,12,0,2,10,2,0,0,1,8,0,2,16,0 -,0,112,249,0,9,80,0,6,32,0,5,2,0,25,4,0,5,1,0,0,8,4,0,0,128,0,7,8,0,0 -,176,252,128,128,0,0,128,0,8,4,0,6,2,0,32,8,0,10,3,32,0,0,4,132,32,0, -1,208,252,0,2,128,0,0,64,0,1,8,0,5,17,0,4,4,0,0,1,0,1,4,0,1,8,0,19,32 -,32,0,1,1,0,1,4,0,1,16,32,0,0,1,32,0,6,128,0,0,8,120,248,0,2,32,0,16, -16,128,0,0,64,0,20,128,0,5,8,0,0,8,0,3,1,128,0,0,16,0,1,64,0,3,40,0,0 -,32,32,8,252,0,0,5,0,0,32,1,32,0,1,8,0,3,2,128,8,0,4,24,0,0,3,64,0,0, -4,0,1,16,0,16,1,0,1,32,64,0,0,147,0,0,8,0,0,2,0,1,9,144,0,0,18,64,208 -,66,0,2,40,40,128,4,48,224,253,128,5,16,8,0,0,192,18,56,0,0,128,0,1, -65,128,0,1,132,12,0,1,8,0,0,128,2,16,0,1,64,16,0,15,32,0,0,16,90,0,0, -64,36,0,0,2,99,0,5,32,162,0,0,4,68,2,0,0,64,8,8,0,0,65,0,1,152,253, -136,0,0,16,16,0,0,64,0,0,8,0,1,2,0,1,128,0,5,4,0,1,1,64,0,2,5,0,17,4, -8,0,0,32,128,0,1,2,0,6,4,0,8,128,0,1,184,253,0,0,1,0,2,32,128,16,0,7, -32,4,0,34,16,130,0,7,4,0,1,2,0,0,8,64,1,32,0,2,104,249,0,12,4,0,4,64, -0,5,4,0,41,32,0,2,2,0,0,184,253,0,3,4,8,32,1,0,0,8,0,0,64,0,0,1,0,0, -32,64,0,0,128,0,4,1,0,0,16,0,18,64,0,2,128,16,0,1,128,64,8,32,0,2,16, -0,0,1,2,0,1,128,192,0,2,2,0,0,4,152,255,0,16,132,0,2,128,0,1,1,0,21, -64,0,16,16,0,8,192,251,32,0,8,32,0,5,16,0,2,64,0,27,1,0,21,1,0,0,200, -253,0,3,20,20,128,0,7,128,32,0,1,2,0,4,1,8,1,0,17,33,1,0,2,2,16,0,1, -64,33,0,0,64,128,128,0,4,128,0,2,8,8,64,0,1,168,249,0,4,1,0,4,128,16, -8,0,12,2,1,0,22,32,16,0,0,128,0,11,2,16,0,1,64,0,1,224,255,0,0,32,2,0 -,1,2,0,4,40,0,0,16,0,1,20,8,128,16,0,6,128,0,22,64,0,0,10,0,5,2,4,0,4 -,2,0,5,20,40,255,8,0,2,2,0,9,16,0,1,16,0,5,1,128,0,0,2,16,0,15,128,8, -0,0,1,64,0,0,1,0,1,32,0,1,128,128,0,3,64,0,3,32,0,1,128,0,0,128,88, -253,0,1,8,0,7,64,0,5,1,0,30,16,0,23,8,251,0,9,128,0,2,128,0,4,64,8,0, -24,128,0,26,152,251,0,64,8,0,1,32,0,5,24,253,0,2,16,0,22,32,0,24,2,0, -4,32,0,14,136,253,0,4,8,0,4,128,0,3,64,0,2,1,0,4,80,0,21,16,0,1,1,32, -0,5,16,0,1,4,0,1,32,0,6,64,160,252,0,1,32,0,2,1,0,6,1,0,34,32,0,3,16, -0,9,64,0,2,1,32,0,0,8,0,0,64,252,0,0,128,0,4,64,8,0,18,128,16,0,27,4, -0,8,1,0,5,72,254,0,2,64,0,2,64,0,3,8,0,3,8,0,1,32,0,6,128,0,17,64,0, -11,128,0,13,152,253,0,0,64,0,8,16,0,46,64,0,1,1,0,5,16,0,4,216,254,0, -67,4,0,1,16,0,0,2,0,0,216,252,0,2,128,0,2,1,0,6,4,0,1,16,0,7,32,0,19, -128,8,32,16,0,2,8,128,0,7,2,0,8,80,248,4,0,15,4,0,26,64,2,0,0,4,0,1,1 -,0,5,64,0,2,128,0,4,16,0,0,16,0,1,64,0,0,16,252,0,0,1,4,0,7,1,0,0,32, -0,12,2,0,16,64,0,16,1,0,2,8,0,6,16,255,0,2,32,0,0,32,0,0,2,128,0,0,64 -,0,8,16,0,0,8,0,21,32,0,1,144,2,2,0,2,8,0,2,32,0,0,16,0,1,128,0,3,8,0 -,5,80,250,128,0,2,2,0,4,32,0,14,128,0,0,2,0,22,40,0,1,32,0,2,34,0,4, -32,0,1,4,128,0,0,16,2,16,0,0,232,255,16,0,16,32,0,40,8,0,4,32,0,1,1,0 -,4,144,254,0,4,2,0,1,4,0,0,32,32,0,0,8,0,1,8,0,0,129,0,3,9,0,0,4,2,0, -0,16,0,17,16,0,3,16,0,0,2,0,0,8,0,5,1,64,0,0,16,128,0,2,128,0,1,128, -84,248,16,1,8,32,0,0,64,0,15,128,0,24,128,0,0,2,32,0,0,16,0,3,4,0,0,8 -,0,3,4,0,1,8,8,0,0,8,0,0,1,0,0,224,254,32,0,0,4,32,160,18,0,1,8,0,0, -16,42,0,0,4,0,1,16,160,162,2,0,2,19,0,0,2,4,0,0,8,0,16,5,8,128,0,0, -132,129,4,144,0,0,32,32,0,0,8,0,0,4,0,0,160,2,64,82,8,0,0,9,64,0,0,72 -,0,0,1,0,0,168,250,128,64,120,14,162,4,0,1,2,64,0,0,10,8,0,1,16,37,0, -0,20,2,0,0,4,240,32,0,0,68,2,33,144,0,16,209,130,128,2,26,72,17,4,0,0 -,16,0,1,2,0,0,1,88,130,0,3,17,0,0,64,12,9,4,81,0,0,224,254,128,0,0,33 -,8,1,0,9,32,0,4,16,128,32,0,0,4,2,0,0,16,0,17,1,0,0,2,0,2,16,0,3,2,0, -1,136,0,4,1,0,1,2,0,1,16,0,0,136,248,0,1,4,32,128,0,2,16,64,0,0,8,2,0 -,2,16,0,5,1,0,1,32,128,0,16,32,0,5,2,0,9,4,0,5,1,4,0,2,176,248,16,0,2 -,128,0,0,16,0,18,33,0,24,2,0,2,8,0,13,4,129,0,1,148,250,0,4,64,0,47,1 -,0,6,16,0,2,128,0,7,8,251,16,0,3,128,0,3,8,0,15,4,0,34,2,0,1,64,0,0, -66,0,0,17,32,0,0,1,0,0,220,250,0,5,18,0,15,128,0,34,3,32,0,3,16,0,2, -128,0,4,176,252,0,11,2,0,4,64,0,25,128,0,2,2,0,3,64,0,2,128,0,7,64, -128,0,0,2,0,3,248,249,0,60,128,0,12,144,255,0,4,64,0,18,4,0,19,64,0, -13,64,0,8,2,0,2,184,255,0,3,8,0,0,64,0,7,4,0,2,97,6,128,0,2,16,36,0, -22,16,0,0,2,0,17,64,0,0,4,0,0,192,252,0,9,2,0,11,8,0,4,4,0,28,4,0,0, -160,0,3,16,4,0,0,1,0,4,48,250,0,0,4,0,4,16,0,1,8,0,10,2,0,2,64,0,0,32 -,0,16,4,0,8,128,0,2,66,0,5,4,0,1,8,0,0,1,0,0,64,80,249,0,3,9,0,6,9,2, -0,0,32,0,2,1,48,0,3,24,0,19,4,0,2,64,0,3,128,0,1,2,0,7,128,16,0,0,32, -64,0,0,64,0,0,208,255,0,3,16,0,3,4,0,0,1,32,0,1,128,0,10,65,0,20,128, -0,2,4,0,4,4,0,0,64,8,0,3,72,0,6,40,251,32,72,164,16,0,2,26,0,4,32,8,0 -,2,80,0,5,1,0,1,4,0,15,160,8,4,0,1,192,128,0,13,8,0,3,32,1,36,0,0,152 -,252,0,4,2,0,0,24,0,5,128,0,2,128,0,5,12,0,19,64,0,2,192,0,19,128,64, -16,8,48,251,0,0,64,0,0,128,7,1,0,0,24,0,9,176,128,0,5,2,0,17,224,0,0, -48,16,0,0,240,0,13,30,16,0,3,224,0,0,28,0,0,208,251,0,0,8,0,0,144,70, -0,1,24,0,5,64,0,2,80,8,0,8,8,0,14,32,0,0,49,1,0,0,208,0,13,26,1,0,3, -32,1,36,0,0,40,250,0,0,80,128,8,16,0,2,9,0,4,16,2,0,1,96,36,0,4,64,2, -0,1,1,0,15,128,128,0,2,40,0,12,64,0,5,1,32,0,0,64,253,96,0,0,28,128,7 -,2,0,0,6,0,4,224,0,3,144,0,5,3,0,1,12,8,0,14,64,1,60,16,0,0,48,0,13, -30,16,0,3,128,0,0,20,0,0,144,251,0,0,64,0,0,16,0,8,128,64,0,2,160,0,6 -,2,0,17,160,1,0,23,128,0,0,16,0,0,120,255,0,0,5,16,1,6,1,0,6,128,5,0, -2,64,36,0,4,44,0,1,176,8,0,14,128,69,48,4,0,15,24,5,0,4,1,32,0,0,208, -254,32,0,0,128,64,0,3,64,1,104,4,1,160,1,0,2,16,0,0,2,17,0,2,65,0,1, -20,0,7,48,0,6,24,0,3,192,2,0,2,8,0,0,64,160,1,0,0,144,70,82,64,0,0,72 -,66,104,0,0,13,32,1,4,0,0,168,248,0,4,2,0,2,2,96,32,0,2,1,0,9,2,128, -32,0,7,12,0,6,6,0,3,192,128,0,5,2,0,2,6,128,0,3,96,0,0,12,128,0,2,104 -,252,0,0,64,12,128,7,1,0,1,192,2,32,0,1,128,1,0,2,176,128,6,16,0,3, -226,65,44,0,7,12,0,6,6,0,3,240,0,3,96,0,0,3,0,1,60,0,1,113,0,0,30,0,0 -,2,96,0,0,15,96,1,44,0,0,120,255,8,8,4,128,22,0,2,64,1,96,10,0,0,128, -41,0,2,80,8,26,1,0,3,160,17,20,0,7,10,0,6,5,0,3,208,0,4,34,1,0,0,128, -180,8,2,144,0,0,154,4,16,98,0,0,13,160,0,0,20,0,0,43,249,0,0,68,48,18 -,16,0,2,128,65,96,17,64,8,4,0,2,96,36,136,0,3,32,2,4,152,0,7,10,0,6,5 -,0,4,40,0,2,96,64,12,0,0,48,128,0,0,22,68,0,0,64,0,0,16,0,0,64,12,192 -,0,0,24,0,0,161,250,96,0,0,60,128,7,2,0,1,64,2,120,0,0,3,96,65,0,2, -144,0,0,22,4,0,2,3,224,129,32,16,0,19,48,0,3,24,0,0,15,228,1,60,160,7 -,176,0,0,30,208,0,0,26,0,0,14,0,0,1,36,0,0,168,249,4,64,48,0,5,2,96, -16,12,136,129,0,2,160,0,0,24,0,4,2,0,0,32,0,25,96,64,12,128,1,0,0,8,4 -,64,0,1,4,3,0,1,12,128,0,0,32,0,0,97,248,128,1,48,0,0,22,1,0,2,129,96 -,0,0,44,0,0,9,0,2,64,32,16,4,0,2,136,128,69,16,8,0,24,96,0,0,12,128, -137,176,0,0,135,128,0,0,24,1,163,0,1,12,0,0,1,16,0,0,120,253,160,1,0, -5,64,0,0,8,0,1,160,0,0,4,0,1,144,36,154,80,3,0,1,1,0,1,4,0,7,8,0,6, -164,1,176,128,6,16,0,0,26,0,0,32,8,0,0,128,33,0,1,144,22,16,0,1,72,0, -0,8,18,1,32,0,0,4,0,0,112,249,128,1,0,2,2,0,7,1,0,2,64,0,0,24,0,0,3,1 -,0,2,128,0,8,32,0,6,18,0,1,32,6,0,1,24,0,1,2,0,5,6,4,0,3,66,0,5,208, -249,0,2,128,7,1,0,1,192,2,0,2,96,1,0,2,176,0,0,16,0,0,130,0,2,226,65, -44,0,7,2,0,6,128,1,60,16,6,48,0,0,24,196,0,0,96,0,0,3,0,1,60,8,0,0,1, -0,0,30,0,0,131,24,64,3,0,1,44,0,0,8,252,4,0,1,128,38,0,2,64,1,0,2,160 -,16,1,0,1,80,0,0,24,9,3,0,2,160,1,20,0,7,8,0,6,4,72,4,0,0,6,16,0,1,65 -,0,1,34,1,128,137,52,1,34,0,0,72,26,4,3,72,2,1,0,0,64,20,0,0,202,248, -140,1,2,0,0,16,0,2,128,65,0,0,17,0,0,192,4,129,16,0,0,160,132,24,16, -11,0,1,64,2,4,152,0,16,48,0,1,192,192,36,24,1,3,96,34,12,0,0,16,129,0 -,0,6,0,0,4,65,0,0,33,32,1,140,0,1,24,0,0,200,248,224,1,0,0,128,7,2,0, -1,64,2,24,0,1,32,1,12,0,1,144,0,0,30,192,3,1,0,0,3,224,129,32,16,0,14 -,96,0,0,60,128,1,240,0,0,30,208,3,25,0,0,15,228,1,60,160,7,50,0,0,30, -208,0,0,18,16,15,98,0,0,37,0,0,40,254,136,1,1,0,5,2,96,16,0,0,64,1,48 -,32,0,0,128,0,0,24,0,0,3,0,2,2,0,0,32,0,7,4,0,6,2,0,0,1,0,0,6,194,0,2 -,3,96,0,0,12,128,1,0,0,8,4,0,2,4,1,104,32,12,0,1,32,0,0,9,252,128,9,0 -,1,166,0,3,137,96,0,1,128,68,176,0,1,128,0,0,24,16,3,4,0,0,44,128,81, -144,8,0,14,128,5,48,0,0,38,208,0,1,81,3,96,66,12,128,1,49,2,23,194,68 -,88,0,0,128,96,2,13,128,73,16,0,0,24,254,160,65,0,2,80,0,0,154,72,0,0 -,104,17,0,0,32,0,1,128,6,16,0,0,26,64,147,0,1,5,0,1,4,0,7,4,0,6,34,4, -177,128,6,0,1,18,73,8,8,0,0,1,32,0,1,132,16,82,8,0,0,66,0,0,8,0,0,1, -32,0,0,4,0,0,8,254,128,1,0,2,130,0,0,24,0,1,96,0,5,6,0,1,24,0,0,3,0,1 -,8,0,0,128,0,8,8,0,6,4,0,1,32,0,5,1,0,5,2,128,128,0,9,224,254,128,65, -0,0,128,7,176,32,8,192,2,96,16,0,0,96,1,0,1,6,0,2,192,1,0,1,11,96,0,0 -,44,0,7,2,0,6,1,64,60,128,7,0,1,16,0,6,12,0,1,112,0,0,6,0,0,3,0,1,12, -128,1,44,0,0,32,253,136,5,0,0,128,6,82,0,0,24,73,1,96,0,1,160,16,1,0, -0,6,0,0,36,0,0,64,18,2,0,0,133,48,0,0,20,0,7,4,0,6,2,8,4,194,70,1,0,0 -,136,2,8,98,34,32,4,0,0,4,0,0,70,146,0,0,2,0,0,16,1,34,0,0,4,8,21,0,0 -,177,255,0,0,1,2,0,0,16,96,0,0,24,128,65,96,66,0,0,192,4,1,0,1,4,8,0, -0,16,19,0,1,38,0,0,4,152,0,7,8,0,6,4,80,0,1,64,1,0,0,72,0,0,16,2,34, -12,0,1,48,9,68,72,0,0,152,4,99,0,1,140,1,4,26,0,0,19,249,96,0,1,128,7 -,146,0,0,30,80,2,88,0,1,32,1,0,0,128,1,48,32,6,192,131,0,1,8,100,128, -32,16,0,6,32,0,6,112,0,0,60,0,0,7,0,1,30,196,0,0,120,0,0,3,104,0,0,60 -,128,3,176,0,0,30,192,0,0,24,64,15,96,0,0,36,0,0,16,254,4,64,0,2,160, -0,0,24,16,2,96,0,1,64,1,0,5,4,3,0,1,10,128,65,32,0,0,2,0,6,1,0,6,64,0 -,4,24,0,1,96,0,3,48,0,0,6,64,0,0,24,0,0,3,96,0,3,32,0,0,178,254,0,0,1 -,0,1,38,65,0,0,24,0,0,161,96,33,0,0,128,80,0,2,192,34,64,0,0,138,0,1, -132,130,9,16,10,8,0,6,4,0,5,128,4,48,0,0,6,8,0,0,24,2,34,100,66,0,0,4 -,0,0,48,0,0,38,132,0,0,24,0,0,11,2,32,76,4,136,16,0,0,168,248,160,0,2 -,32,152,0,1,64,0,0,104,0,0,1,32,5,133,128,0,0,16,0,0,2,64,0,0,41,64,1 -,0,0,8,6,128,0,6,82,0,6,41,0,0,176,128,32,192,8,154,80,0,2,1,0,2,132, -22,82,128,0,0,66,3,8,0,0,1,0,1,4,0,0,148,254,0,0,1,0,2,64,0,3,96,0,1, -128,0,1,16,0,5,64,0,5,2,0,5,36,1,0,5,10,0,1,32,0,0,193,128,16,0,8,6, -128,0,10,16,250,96,1,0,0,128,1,176,32,0,0,192,2,96,0,0,3,96,1,12,0,1, -193,0,1,200,0,0,32,0,0,11,96,0,0,44,0,15,224,1,60,32,6,240,0,0,24,0,0 -,128,0,1,12,0,1,12,0,0,4,112,0,0,6,0,2,16,0,2,44,0,0,80,249,168,40,0, -0,128,0,0,80,0,1,64,1,96,0,0,1,160,0,0,132,32,0,0,192,0,0,88,64,0,0, -68,0,0,133,48,0,0,20,0,7,16,0,6,168,1,4,1,36,212,0,0,24,32,11,0,1,128 -,16,0,0,4,0,0,66,146,0,0,2,0,0,8,1,1,64,8,0,0,20,0,0,67,254,192,8,0,1 -,70,96,0,1,128,65,96,65,12,64,9,0,0,16,16,1,0,0,64,4,16,34,0,0,38,128 -,49,152,0,0,1,0,5,130,0,6,129,137,0,1,64,2,40,152,0,0,64,0,1,12,1,0,0 -,176,8,70,68,0,0,88,4,8,1,16,0,0,8,0,0,24,0,0,9,252,0,0,129,0,0,128,7 -,146,0,1,64,2,120,0,0,15,36,1,13,128,1,48,128,6,192,0,0,88,0,0,8,228, -1,32,16,0,14,192,1,60,128,1,48,0,0,30,200,3,0,1,3,0,1,60,128,1,176,0, -0,30,192,3,24,0,0,3,0,1,36,0,0,4,249,68,65,0,1,6,96,0,2,130,0,0,32,12 -,0,0,1,0,1,6,1,128,24,0,0,128,32,0,0,10,130,1,32,8,1,0,5,128,0,6,128, -65,0,4,24,8,3,2,0,0,12,8,0,0,48,0,0,4,64,0,0,24,0,0,3,0,0,16,0,0,8,0, -0,32,0,0,112,249,128,16,0,1,6,128,0,2,33,0,1,12,0,0,1,32,66,32,0,1,88 -,4,2,64,0,0,132,128,1,16,2,2,0,6,1,0,5,128,17,48,0,0,16,1,0,0,88,0,0, -35,0,1,140,0,1,48,0,0,33,136,0,0,24,0,0,19,97,0,0,12,0,1,16,0,0,248, -250,32,0,0,52,4,32,8,0,0,26,64,66,40,0,0,33,164,1,4,0,0,34,16,36,90, -72,0,0,104,0,0,1,0,1,164,128,0,6,64,0,7,4,2,132,0,0,192,24,26,0,0,19, -8,0,1,32,4,0,0,132,198,208,0,1,66,3,40,0,0,1,160,1,4,0,0,180,253,0,1, -48,0,5,1,64,0,1,128,1,1,0,0,4,1,0,0,24,0,1,96,0,2,128,16,16,1,0,5,128 -,0,11,192,0,0,24,0,0,131,0,3,128,0,1,6,192,0,2,3,64,0,5,16,254,96,1, -16,128,1,0,1,24,192,2,88,16,3,0,1,12,128,5,48,0,0,14,0,0,128,0,1,11, -224,1,44,0,0,2,0,6,1,0,5,96,0,0,12,0,1,240,0,0,24,196,3,0,2,96,0,0,12 -,0,0,4,192,0,0,6,0,0,3,88,0,3,44,0,0,72,249,164,40,48,146,0,2,64,72,1 -,40,4,33,136,41,4,128,34,18,136,18,17,35,0,1,133,176,33,20,0,0,8,0,6, -4,0,5,32,0,0,4,0,0,32,212,0,1,65,3,96,34,0,0,32,4,5,0,0,18,194,0,0,2, -0,0,3,40,0,2,8,21,0,0,219,249,204,8,32,1,38,1,0,0,88,136,2,48,0,1,132 -,72,48,34,3,0,0,4,88,4,16,0,0,1,38,0,0,4,40,0,15,128,81,176,32,32,4, -40,88,0,0,136,0,0,64,0,1,8,177,0,0,38,0,0,40,152,8,16,49,4,128,0,0,4, -26,0,0,209,251,0,0,129,60,160,7,0,1,30,64,2,72,0,0,3,224,1,60,0,0,4, -48,32,30,192,128,24,32,8,228,129,32,0,15,224,1,60,128,7,48,0,0,30,200 -,0,0,120,0,1,96,0,0,60,144,1,52,0,0,30,192,0,0,64,16,3,100,0,0,36,0,0 -,66,248,72,65,32,0,0,6,0,2,16,2,80,0,1,128,128,48,0,0,5,0,1,24,0,0,3, -0,0,32,10,2,0,0,32,128,4,0,5,64,2,0,5,128,1,48,0,0,6,0,4,96,64,0,2,48 -,0,0,4,4,0,0,24,0,0,3,64,16,12,0,1,32,0,0,104,248,128,4,160,32,6,0,1, -152,0,0,2,32,0,0,8,8,0,0,48,0,0,2,128,72,80,4,139,0,0,1,36,128,65,32, -0,0,9,0,5,128,4,0,5,128,1,52,0,0,70,1,0,0,128,16,0,0,96,0,2,1,49,0,0, -32,0,1,24,0,0,35,33,1,44,4,136,16,0,0,252,249,32,0,0,148,16,32,216,0, -0,2,64,32,72,0,0,13,32,0,0,52,0,0,32,16,0,0,26,64,32,106,0,0,41,0,0,8 -,54,0,16,4,6,161,6,208,0,0,18,73,8,8,0,0,1,160,9,0,0,144,6,208,24,0,0 -,72,35,10,0,0,1,0,1,4,0,0,4,251,0,4,192,0,2,129,32,0,0,12,0,1,48,16,0 -,0,1,0,0,24,0,0,1,96,0,0,4,4,0,0,48,0,0,4,0,6,2,0,7,48,0,0,6,192,64,0 -,2,1,0,1,128,129,0,1,6,192,0,2,3,0,6,176,250,96,1,48,128,1,192,0,2, -128,88,16,0,2,32,144,5,0,4,96,0,0,11,96,0,0,48,128,0,6,64,0,6,96,0,0, -32,0,0,6,192,128,16,196,0,0,96,0,0,12,128,0,0,60,0,0,6,192,0,0,30,0,0 -,1,90,0,3,44,0,0,16,249,164,40,16,132,0,0,192,0,2,32,40,4,0,1,68,16, -128,34,2,0,2,32,100,0,0,133,48,0,0,48,0,7,20,0,6,34,0,0,16,10,70,193, -2,136,64,8,2,34,128,144,9,53,8,22,200,32,90,4,19,40,0,0,32,4,0,0,20,0 -,0,99,249,204,8,0,1,6,193,2,64,0,0,16,48,0,0,44,0,0,8,48,4,3,0,0,4,88 -,4,32,1,1,10,128,73,0,0,4,0,14,144,65,176,64,32,194,4,72,4,16,98,36, -140,136,5,129,0,0,70,128,8,64,0,0,19,50,4,0,0,2,0,0,24,0,0,1,255,0,0, -129,12,144,7,240,64,6,208,128,72,0,0,15,100,64,12,0,0,4,48,32,30,192, -0,0,24,32,8,224,1,12,0,15,224,1,60,128,1,176,128,30,192,0,0,24,0,0,3, -224,1,60,160,1,114,64,30,208,1,64,16,15,0,1,36,0,0,96,255,72,65,32,16 -,6,0,0,64,24,0,1,48,0,0,12,0,0,64,32,0,0,5,192,32,24,0,1,98,32,10,128 -,1,48,0,15,128,1,48,16,6,132,0,0,24,8,0,0,96,0,0,12,128,1,0,2,196,0,1 -,8,3,64,16,0,2,32,0,0,201,254,128,0,0,24,2,6,0,1,24,144,136,64,0,0,76 -,144,17,8,4,2,192,8,24,132,16,96,1,8,128,1,48,16,0,14,128,1,184,0,1, -32,4,153,0,0,34,100,36,12,136,41,176,16,64,32,66,24,129,16,36,0,1,4,0 -,0,16,0,0,144,255,32,9,36,65,32,88,16,0,0,64,144,8,0,0,13,160,8,5,33, -36,144,136,26,64,16,12,36,1,0,0,8,6,0,16,4,182,128,0,0,80,16,2,97,0,0 -,8,0,0,32,160,1,0,0,144,6,208,2,0,0,66,35,74,64,13,32,0,0,36,0,0,88, -255,128,128,16,0,1,128,0,2,1,0,1,12,0,1,48,0,0,2,193,0,0,24,0,0,1,0,5 -,8,0,16,48,8,0,0,128,0,6,136,1,0,1,6,192,64,0,1,3,32,0,3,16,0,0,224, -253,96,1,48,160,1,64,0,3,96,0,0,12,128,0,0,1,128,5,192,0,0,24,0,1,26, -0,0,3,96,0,9,16,0,6,104,0,0,48,8,0,0,194,64,8,208,0,2,3,0,1,60,0,0,6, -194,0,0,6,0,0,3,90,0,0,15,128,1,44,0,0,248,254,164,40,48,130,0,0,128, -0,2,136,96,0,0,12,0,0,9,16,193,34,194,40,24,0,0,16,104,34,1,32,0,0, -128,16,4,0,5,16,2,0,5,40,0,0,48,2,32,0,0,8,16,65,0,0,96,34,1,0,1,52,0 -,0,38,64,64,2,0,0,18,40,0,0,33,2,64,20,0,0,50,250,76,1,48,2,22,65,0,2 -,136,0,0,17,64,128,1,48,2,3,192,0,1,16,16,32,17,140,144,81,128,8,2,0, -5,16,1,0,5,136,5,177,64,38,196,4,0,0,17,11,0,0,36,12,0,0,136,176,0,0, -70,64,36,152,0,0,34,48,0,0,12,130,133,24,0,0,112,248,0,0,1,12,144,7, -176,0,1,192,0,0,24,0,0,3,228,65,60,32,4,240,128,6,192,0,0,90,0,0,15, -224,1,12,0,0,7,0,5,144,3,0,5,232,1,12,128,7,240,128,30,192,131,120,0, -0,15,100,0,0,60,160,1,242,0,0,30,196,3,33,0,0,15,224,1,36,0,0,8,254, -72,1,48,32,6,64,0,4,16,12,132,1,32,0,0,3,192,0,0,24,4,0,0,97,16,12, -128,1,0,0,136,5,0,5,208,2,0,5,136,1,32,16,0,0,192,0,0,8,0,0,3,96,0,0, -12,0,1,49,0,1,2,0,0,24,0,1,32,0,1,2,0,0,16,0,0,161,254,0,0,1,176,0,0, -6,128,0,2,160,0,1,140,128,133,16,33,4,192,20,88,0,1,64,2,13,128,1,32, -2,4,0,5,8,2,0,5,132,1,144,0,0,134,192,64,152,32,3,96,36,12,0,0,8,48, -10,64,192,40,24,0,0,3,36,0,0,45,128,137,32,0,0,144,254,0,29,4,0,6,2,0 -,6,8,1,0,4,128,0,14,66,2,0,3,136,251,32,0,0,4,128,0,0,16,0,0,2,64,0,0 -,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,1,32,0,0,4,0,7,16,0,6, -40,0,1,128,0,2,2,0,1,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,1, -32,0,0,4,0,0,192,251,0,74,152,255,36,0,0,4,128,0,0,16,0,0,2,64,0,0,8, -0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,129,40,0,0,4,0,17,4,193, -0,0,16,66,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,2,1,32,0,0, -4,0,0,209,249,12,4,0,15,8,0,6,4,0,1,10,0,15,4,0,2,33,0,5,2,0,10,1,0,0 -,66,0,2,11,253,0,0,64,0,4,2,0,37,64,0,4,2,0,1,8,0,4,128,0,3,64,0,1,32 -,0,2,1,0,0,120,254,8,128,0,2,2,32,0,2,1,32,0,1,128,0,2,2,0,3,1,16,0,1 -,128,0,0,16,0,44,146,253,0,0,4,4,193,16,16,4,2,64,8,8,1,129,40,4,4, -162,16,16,66,66,72,8,8,4,0,0,36,4,128,0,16,40,4,34,160,16,0,0,2,64,32 -,10,0,0,1,32,16,5,193,0,0,16,132,130,96,0,1,10,129,8,0,0,132,16,152, -249,0,74,152,255,0,19,64,0,53,152,251,0,1,1,0,3,16,0,3,8,0,2,4,0,0,4, -0,2,8,32,0,26,2,0,2,64,0,2,32,0,2,129,0,10,168,249,0,7,4,0,5,1,0,5,8, -4,0,26,32,0,0,2,0,1,33,0,0,2,0,2,4,0,0,1,1,64,0,8,255,0,11,4,4,0,17,1 -,0,2,1,0,1,128,0,2,128,0,13,4,129,0,2,4,0,2,2,0,6,136,252,0,7,8,0,5, -32,64,0,1,64,0,5,8,0,26,2,4,0,2,1,0,1,2,0,3,128,0,6,228,253,64,64,0,0 -,136,0,0,68,0,0,2,16,0,0,32,0,1,8,0,0,17,0,8,1,0,0,32,16,0,16,64,0,4, -2,0,8,4,0,0,32,8,64,0,2,4,128,64,16,8,112,254,32,0,1,32,0,3,4,0,3,2,0 -,6,16,0,1,64,4,0,0,128,0,22,32,0,2,32,0,3,16,0,1,64,0,10,88,251,96, -128,0,0,48,1,34,0,0,132,26,0,0,80,1,40,12,128,8,0,1,128,22,0,0,16,80, -0,0,64,67,1,128,169,0,16,168,0,0,5,0,0,128,130,4,0,1,8,0,0,40,0,1,164 -,0,0,1,16,64,4,128,0,1,12,2,64,168,168,21,192,254,128,64,0,0,32,132, -144,2,24,4,0,1,20,96,128,32,0,0,8,128,0,0,128,10,4,145,0,2,2,32,20,40 -,0,15,1,0,0,8,0,1,48,8,0,0,128,40,8,4,1,0,0,129,42,2,65,4,72,0,2,16, -172,9,65,37,168,128,249,128,64,0,4,8,16,0,1,16,0,0,128,0,1,32,0,2,2, -16,1,2,0,1,2,0,0,16,8,0,17,32,0,1,128,8,0,1,65,0,0,4,0,2,32,1,20,0,0, -2,0,2,64,1,0,0,64,0,0,8,176,255,0,3,1,66,0,0,16,0,6,1,0,1,4,0,8,1,0, -15,32,0,4,32,0,3,16,0,0,2,0,10,4,130,0,0,16,128,200,249,0,33,8,0,6,4, -0,1,32,0,1,128,0,25,240,251,0,14,128,0,14,8,0,1,32,0,3,4,0,1,8,0,19,2 -,0,10,216,251,0,3,8,0,14,64,4,0,24,128,0,1,16,0,5,17,0,0,2,0,3,1,0,2, -128,0,0,16,0,3,96,255,0,4,56,0,3,16,0,0,8,0,1,64,0,1,16,0,3,1,0,3,2,0 -,20,2,0,0,64,0,0,4,0,1,16,32,0,15,80,253,0,63,2,0,9,152,253,0,6,4,0, -36,128,0,2,1,0,1,2,0,4,128,0,15,16,248,0,2,64,0,9,64,0,31,2,0,4,8,0, -20,120,251,0,30,64,0,2,64,0,2,32,0,2,32,0,30,216,253,0,1,40,4,0,9,1,0 -,8,1,0,26,16,0,8,12,0,0,64,0,7,2,0,0,200,255,0,1,68,0,3,8,0,1,64,0,0, -4,32,129,0,1,8,0,0,16,0,2,16,0,24,16,16,0,0,4,0,9,4,0,10,40,249,0,1, -16,0,9,2,0,1,8,0,8,2,0,3,16,0,2,16,0,2,8,0,2,8,0,1,128,0,0,8,0,4,128, -0,3,64,0,6,4,0,2,2,0,3,252,0,13,32,4,0,29,32,0,1,128,128,0,1,64,0,0, -48,0,0,1,0,3,128,0,4,2,0,3,32,0,0,208,255,0,2,32,0,43,32,0,11,32,0,3, -80,0,7,232,253,0,3,4,0,1,16,0,18,1,32,0,15,32,0,1,192,2,0,6,8,0,4,128 -,0,2,2,8,0,0,8,0,3,216,249,0,1,4,0,16,8,0,30,2,0,21,88,253,0,2,8,0,16 -,2,6,192,0,23,4,0,3,8,0,13,128,0,5,112,251,0,14,4,0,30,4,0,13,1,0,11, -136,251,0,2,64,0,42,8,0,26,88,255,0,7,8,0,1,8,0,0,8,0,1,32,0,12,16,0, -1,64,0,3,8,0,1,32,0,8,1,0,10,32,0,2,8,0,1,32,0,3,120,252,0,4,128,0,40 -,32,0,10,128,0,6,1,0,6,220,248,0,0,1,0,0,8,0,11,16,0,4,128,0,2,32,0, -24,4,0,9,16,0,10,186,251,0,7,64,0,3,64,0,1,16,0,3,128,0,29,16,0,4,4,0 -,4,64,8,0,2,32,0,1,128,0,1,56,255,0,1,64,0,6,128,0,0,2,0,1,8,0,11,64, -0,1,128,0,2,128,0,2,64,0,2,64,0,2,8,0,4,16,0,7,128,8,0,10,120,248,0, -11,16,0,15,128,0,2,2,0,2,64,0,2,1,0,11,64,0,2,1,32,0,14,48,250,0,4, -129,0,0,8,0,4,128,0,1,128,0,0,66,0,0,8,0,1,2,16,0,0,34,0,1,8,0,14,128 -,0,0,4,0,0,2,18,0,4,8,0,2,16,8,0,0,4,16,0,2,8,0,0,4,8,0,0,4,0,0,80, -249,0,1,16,0,1,4,128,0,14,1,0,3,128,0,5,4,16,0,5,1,64,8,0,0,64,0,0,8, -0,6,16,4,0,12,130,0,0,16,8,26,253,0,1,164,0,0,160,38,128,4,0,0,6,192, -10,40,64,64,16,0,0,1,98,0,0,4,64,80,1,42,0,0,68,0,0,97,21,0,3,4,64,0, -5,2,32,16,64,40,9,32,1,34,0,0,80,0,0,80,0,0,96,1,0,0,5,8,16,0,0,2,64, -208,2,0,0,16,0,0,66,45,5,12,32,160,248,0,1,32,132,42,1,40,64,4,34,34, -170,10,136,9,0,0,208,8,64,33,0,1,93,32,0,0,205,2,65,16,40,0,2,8,4,64, -32,0,3,4,2,32,0,1,116,0,0,1,0,0,65,49,100,5,160,48,66,129,129,0,1,1, -194,68,17,136,0,1,2,0,0,5,0,0,4,165,36,32,255,0,3,130,0,0,32,0,0,4,0, -0,32,0,1,64,0,3,64,32,0,1,1,32,0,0,8,2,64,16,8,0,2,16,2,128,16,0,3,8, -2,8,0,1,64,0,2,65,64,0,0,4,128,16,0,1,128,0,2,1,64,0,0,8,0,3,4,0,3,48 -,254,0,1,4,32,0,3,64,0,1,16,2,128,0,7,128,0,1,1,32,0,18,128,0,3,32,0, -5,2,0,3,1,128,0,7,16,8,120,249,16,0,46,64,0,6,1,0,9,1,2,0,1,128,0,2, -52,250,34,0,23,8,0,17,128,0,11,32,0,0,4,0,6,64,0,5,128,48,249,2,4,0,4 -,72,0,4,1,36,16,0,0,16,128,0,0,16,128,0,23,32,0,0,4,1,0,0,64,8,0,1,1, -0,5,2,0,10,128,32,248,0,2,132,0,10,8,0,9,16,0,22,64,0,10,8,1,0,3,64,8 -,0,4,200,251,2,0,11,64,0,47,16,0,10,128,52,252,0,30,32,64,0,1,32,64,0 -,1,16,32,0,1,16,32,0,22,1,0,1,4,0,2,136,250,0,30,4,0,1,16,0,3,2,0,1,8 -,0,15,4,0,8,1,0,4,240,249,0,1,8,0,9,2,0,1,12,0,13,4,0,1,16,0,3,2,0,0, -32,0,5,8,0,4,128,0,3,64,0,6,8,0,1,32,0,3,128,250,128,0,2,2,0,3,1,32,0 -,1,128,0,2,2,0,0,32,0,0,8,1,0,1,18,128,0,0,16,0,15,64,0,4,32,0,8,128, -0,4,128,16,0,5,192,254,0,1,16,0,0,8,0,1,64,0,1,8,8,0,0,1,0,3,128,2,16 -,0,0,64,2,0,2,2,4,0,17,4,0,2,1,0,0,16,0,0,128,0,1,16,2,36,8,17,0,1,2, -6,4,0,1,16,0,0,2,0,1,120,255,0,46,16,0,2,144,0,0,4,0,3,32,0,0,8,0,3,4 -,0,1,1,0,0,1,0,3,48,253,0,33,2,0,14,4,0,23,216,253,0,1,53,128,6,0,3,8 -,8,0,1,8,0,0,4,8,0,2,64,32,0,0,8,1,1,129,49,52,0,20,208,40,130,64,0,0 -,8,0,5,128,0,2,1,0,0,8,0,2,16,0,1,152,254,0,1,48,0,0,6,0,3,128,0,12, -64,16,0,2,48,0,20,192,0,0,8,4,0,11,16,0,5,1,16,104,249,224,1,12,0,0,6 -,2,0,1,192,0,2,15,0,1,16,8,0,2,6,0,1,24,32,0,0,228,129,0,0,16,0,19, -192,0,1,4,0,1,16,0,3,128,7,0,1,6,0,2,16,0,0,96,0,0,60,8,144,248,160, -69,4,0,0,6,0,2,64,0,1,36,13,2,0,5,2,0,1,72,0,1,32,8,176,0,20,192,40,0 -,1,80,0,5,128,6,1,0,0,2,0,2,1,0,0,32,0,0,52,2,24,253,0,0,132,0,0,16, -70,0,3,35,4,1,32,4,0,1,9,0,2,24,0,1,32,0,0,128,0,1,48,18,0,19,192,34, -64,4,3,0,0,17,0,4,32,8,0,0,88,4,0,1,16,0,0,128,137,0,0,6,240,248,224, -1,8,128,7,4,0,1,192,3,120,64,15,0,1,12,0,3,30,16,0,0,16,16,11,232,1, -60,0,20,240,0,0,6,192,0,0,121,0,4,128,7,0,1,30,0,1,24,0,1,224,1,60,0, -0,64,254,0,0,64,48,0,5,3,0,2,2,0,1,8,0,2,24,0,1,104,32,0,2,48,0,20, -192,32,0,0,4,0,0,1,16,0,5,1,0,0,24,0,2,16,0,0,128,1,0,1,128,248,128,1 -,48,8,166,0,3,3,0,0,66,140,0,1,128,0,3,24,0,1,96,1,0,0,132,1,176,64,0 -,19,128,8,4,1,32,0,0,2,0,4,6,0,1,24,0,1,96,0,1,128,1,48,8,72,251,0,0, -48,4,128,6,0,7,8,0,0,128,64,0,0,16,0,0,64,32,0,0,104,0,0,1,0,23,80,0, -0,2,5,0,0,104,0,5,128,0,2,1,0,0,8,0,2,16,0,1,32,253,0,3,6,0,17,96,0, -25,128,0,0,8,0,1,96,0,9,16,0,0,64,16,0,0,4,0,0,1,16,184,253,96,0,0,12 -,0,8,15,0,1,12,0,2,32,6,0,1,96,0,25,176,0,1,4,0,0,96,0,4,128,7,0,1,6, -0,1,24,32,15,98,0,0,60,0,0,72,250,40,0,0,4,0,8,45,2,0,0,4,0,3,2,0,1, -96,0,0,76,1,0,22,80,0,1,1,0,0,96,0,4,128,22,1,0,0,2,0,1,72,1,13,32,0, -0,52,10,129,253,128,65,176,0,0,16,0,6,32,4,0,0,48,8,0,1,34,24,0,2,36, -64,4,0,22,96,8,1,4,0,7,32,8,0,0,24,0,1,32,4,128,129,1,0,0,6,203,253, -224,1,56,136,1,2,0,5,15,0,1,60,0,1,48,0,0,30,4,0,0,24,0,0,3,0,23,128, -0,0,6,0,1,24,16,0,3,128,7,0,1,30,4,0,0,16,16,15,224,65,60,0,0,112,253 -,132,1,48,0,9,2,0,0,48,0,1,192,32,24,0,28,128,0,1,4,0,0,96,32,0,5,1,0 -,0,24,0,1,104,0,1,128,1,0,0,8,138,249,128,1,48,0,1,2,0,5,44,0,1,48,0, -2,4,24,0,3,32,16,0,22,64,32,64,0,1,96,4,0,4,70,0,1,24,0,1,96,33,76, -129,1,48,0,0,32,249,0,1,5,128,0,1,2,27,64,3,0,2,168,1,0,4,130,0,1,8,0 -,0,1,0,19,16,0,1,64,16,0,3,8,0,5,128,0,0,8,130,72,1,104,0,2,16,0,0,1, -224,248,0,8,3,0,2,128,1,0,5,4,0,24,1,0,1,4,0,12,128,0,1,2,96,0,1,4,0, -0,1,16,232,252,224,1,12,0,0,6,48,0,0,30,0,0,3,0,1,15,128,1,0,5,4,0,1, -16,0,0,4,0,17,96,0,1,128,1,176,0,4,32,0,3,128,7,48,0,1,196,130,96,0,0 -,15,98,0,0,12,0,0,232,249,164,81,4,0,0,64,24,0,0,90,4,3,0,1,13,128,1, -0,4,128,0,2,1,0,19,32,0,1,128,0,0,80,0,4,4,0,3,128,22,24,0,0,64,64,17 -,96,0,0,141,32,0,0,4,0,0,186,253,12,132,48,1,0,0,192,8,129,4,8,0,1,44 -,4,128,0,4,64,4,0,1,16,128,0,18,128,1,0,1,70,96,8,1,0,1,96,130,0,4,32 -,200,2,0,0,128,1,0,0,33,128,129,17,48,1,120,248,224,1,56,136,1,241,0, -0,28,192,0,0,1,0,0,15,96,0,5,6,0,1,24,0,0,3,8,0,17,224,129,0,0,128,7, -130,0,3,120,0,4,128,7,240,64,6,68,2,24,0,0,15,224,65,60,8,248,253,8, -64,48,0,1,194,0,0,2,4,0,2,12,130,1,0,5,4,0,1,16,0,19,128,1,0,1,6,128, -0,11,193,0,1,128,2,0,2,128,1,48,0,0,217,251,128,9,48,0,0,32,192,0,0, -24,0,3,76,128,1,2,0,3,8,0,1,96,0,0,12,4,0,17,128,1,0,1,6,64,34,0,2,96 -,18,0,4,22,192,0,0,8,4,1,0,1,12,130,1,48,0,0,120,250,0,1,37,144,0,1,2 -,91,4,0,0,104,0,0,64,164,0,1,128,0,2,64,96,0,0,8,68,0,0,160,1,0,17,16 -,20,16,0,0,16,0,0,10,0,1,8,0,0,13,0,3,128,0,0,8,0,0,65,2,8,4,0,1,16,0 -,0,1,220,255,0,1,16,0,3,24,0,5,1,0,10,128,1,0,18,33,0,3,16,0,3,12,0,5 -,128,0,0,16,1,0,0,32,0,0,4,0,0,1,16,184,248,224,129,44,0,1,48,0,0,24, -0,2,16,3,96,1,0,0,128,1,0,1,6,0,1,96,0,1,128,1,0,16,96,0,0,28,0,1,176 -,0,0,22,0,2,16,12,0,2,128,7,48,0,0,6,192,130,96,64,15,98,0,0,12,0,0, -120,252,168,17,20,0,0,64,24,0,0,24,8,0,1,4,1,160,0,1,128,0,2,2,0,0,80 -,64,32,0,0,128,1,0,16,32,0,0,36,0,1,80,0,0,10,0,3,12,0,2,128,38,17,0, -0,2,64,17,64,2,45,32,0,0,4,0,0,3,255,0,0,132,32,0,1,196,2,88,32,0,1, -34,140,208,0,2,38,2,0,0,24,4,0,4,68,0,16,128,5,16,0,1,96,8,77,0,2,17, -128,0,3,32,200,2,24,129,1,0,0,4,128,129,5,48,9,169,250,224,1,24,128,7 -,240,32,30,0,1,24,0,0,15,0,0,129,0,0,128,7,0,1,30,192,0,0,25,16,0,0, -96,0,17,224,65,44,0,1,128,0,0,18,8,0,0,24,0,0,3,8,0,1,128,7,240,32,30 -,68,2,24,16,15,224,65,60,0,0,128,253,4,0,0,32,0,1,194,0,0,24,16,0,2, -12,0,0,1,0,1,6,0,1,24,0,0,3,0,21,128,1,16,0,1,128,0,0,16,0,1,96,16,0, -5,193,0,0,24,128,1,0,2,128,1,48,0,0,65,255,128,65,16,0,0,32,192,0,0, -16,1,0,1,10,12,128,80,0,1,6,0,1,24,0,0,16,2,34,0,19,128,1,36,0,1,64, -40,8,5,0,1,2,0,4,38,192,0,0,24,0,0,2,0,0,36,44,130,1,48,0,0,176,249,0 -,0,48,4,0,2,2,27,64,3,8,0,0,64,36,0,0,128,192,6,16,0,0,2,97,33,8,0,2, -8,4,0,15,32,80,4,0,1,16,0,0,2,64,3,104,0,0,1,0,0,16,4,0,0,64,0,0,8,0, -0,65,0,0,8,0,0,64,0,0,32,0,0,1,88,253,0,6,24,0,0,3,0,7,2,0,2,2,1,0,2, -64,0,31,1,0,1,4,128,0,0,16,0,3,4,0,1,16,72,249,96,0,0,12,0,1,48,0,0, -24,0,3,3,96,1,12,0,2,32,0,2,2,0,1,224,1,0,16,128,64,0,2,176,0,0,22,0, -0,3,96,32,0,0,96,0,1,128,1,48,0,0,6,0,2,64,3,224,65,12,0,1,248,44,0,0 -,4,0,1,16,0,0,88,4,0,2,1,160,0,0,4,0,0,32,4,0,0,128,16,8,0,0,32,0,0, -32,40,0,0,18,0,15,4,0,2,80,0,0,10,0,0,35,1,1,0,0,160,145,0,0,133,0,0, -16,0,0,2,0,2,2,1,160,5,4,0,0,193,251,132,17,50,0,1,192,4,0,1,16,97,0, -0,76,192,0,0,48,4,34,0,0,34,0,1,33,2,1,0,1,136,48,0,16,4,0,0,65,0,0, -96,8,77,0,0,19,1,0,0,32,0,0,136,0,0,32,70,193,4,152,0,0,8,0,0,130,44, -2,8,178,8,43,252,224,1,56,8,0,0,240,32,6,200,0,0,120,64,15,2,129,60, -128,7,242,0,0,6,196,3,120,32,0,0,64,0,0,12,32,0,14,96,64,12,0,1,128,0 -,0,18,200,3,24,16,3,68,0,0,12,128,7,240,32,30,196,128,120,0,0,15,224, -1,60,0,0,88,250,132,1,48,0,1,192,0,0,24,0,3,12,0,0,65,48,0,0,2,0,0,32 -,0,2,96,64,0,21,48,0,1,128,32,16,4,3,0,0,32,12,32,0,0,48,0,0,6,192,0, -0,24,0,0,3,96,0,0,12,0,1,48,0,0,74,252,128,1,48,0,1,192,0,1,5,16,2,65 -,12,128,16,48,0,0,4,4,4,8,4,3,98,0,1,32,4,2,5,0,15,80,48,34,0,0,64,8, -8,1,83,96,4,140,36,40,128,16,6,192,0,0,24,0,0,163,96,32,12,128,65,48, -0,0,112,251,0,1,5,0,1,16,32,26,64,0,2,64,36,0,0,128,192,34,68,2,65,96 -,0,0,40,0,0,129,161,8,4,0,16,16,0,0,128,6,144,8,3,0,1,32,4,1,160,1,4, -0,0,64,80,2,0,0,1,0,0,40,0,0,64,0,0,32,0,0,1,56,255,0,6,24,0,8,4,128, -0,3,64,0,0,12,128,129,0,18,1,0,0,6,64,0,3,64,64,0,5,4,128,0,0,16,0,0, -64,0,1,4,0,1,16,24,252,224,1,12,0,2,32,24,4,0,2,3,96,1,12,0,1,176,0,0 -,6,0,0,3,89,0,1,128,1,12,0,15,96,0,3,176,0,0,22,0,1,88,32,0,0,224,65, -0,0,128,1,112,32,6,0,1,88,0,0,3,224,65,12,0,0,184,251,168,73,4,0,3,24 -,0,0,8,4,0,0,1,160,0,0,4,0,0,32,82,0,0,3,0,0,3,40,0,0,64,129,41,4,0, -15,32,0,3,80,0,0,10,0,1,40,4,128,168,5,0,0,128,0,0,16,4,2,0,1,40,0,0, -1,160,1,4,0,0,113,254,0,0,132,48,9,0,1,4,152,32,8,1,0,0,76,194,0,0,48 -,9,194,96,0,0,24,1,0,0,50,4,140,128,1,48,17,0,14,128,9,0,2,162,0,0,76 -,0,1,48,0,0,32,0,0,4,0,0,65,38,1,4,153,8,0,0,48,1,76,0,0,8,50,66,67, -255,224,1,56,0,1,48,64,30,192,3,0,1,15,0,0,129,60,128,7,128,0,0,30, -196,3,64,16,11,98,128,60,0,15,224,65,0,0,128,1,128,0,0,18,8,0,0,64,0, -0,3,200,129,12,128,7,160,0,0,30,0,1,64,16,15,232,1,60,0,0,64,255,4,64 -,48,0,2,128,24,0,1,1,0,0,12,0,0,65,48,0,1,160,0,0,24,0,0,131,64,16,4, -128,1,48,0,15,128,1,0,2,130,0,0,16,4,0,0,80,0,1,4,0,0,48,0,0,6,192,64 -,24,0,1,64,16,12,0,1,48,0,0,138,249,128,17,48,0,1,64,4,0,0,16,0,2,12, -128,4,48,0,0,6,68,0,0,24,0,0,35,32,1,8,200,9,49,0,15,128,1,0,1,16,128 -,0,0,72,0,1,32,0,0,140,128,5,49,18,6,192,0,0,24,0,1,32,1,12,128,69,48 -,0,0,64,249,16,48,20,66,0,0,16,8,3,0,1,8,0,1,40,0,0,128,192,66,0,0,2, -65,96,11,10,0,0,1,32,33,4,0,16,16,176,144,0,0,208,0,0,2,64,131,0,0,4, -1,32,0,1,2,64,16,2,2,0,1,8,0,0,64,0,0,32,0,1,160,253,0,1,48,0,13,4,2, -0,2,3,0,2,128,1,48,0,17,1,0,1,192,0,2,3,0,0,64,0,3,32,0,0,4,64,0,0,8, -0,3,4,0,1,16,144,255,96,0,0,12,0,3,30,0,2,16,15,96,1,12,0,0,6,178,0,0 -,6,0,0,2,89,0,2,1,48,16,0,14,96,0,0,60,160,7,192,0,0,22,0,0,3,88,32,0 -,2,12,128,1,0,2,4,0,0,88,0,0,3,224,1,12,0,0,48,252,44,0,0,20,10,0,1, -34,26,0,2,2,77,162,0,0,4,0,0,6,80,0,0,3,0,0,1,40,0,1,128,5,50,1,0,14, -32,0,0,4,129,6,192,130,10,0,0,35,44,4,64,8,0,0,4,133,0,1,34,128,0,1, -40,0,0,1,160,1,4,0,0,161,253,132,73,32,16,0,1,4,88,0,2,1,32,196,0,0, -176,8,2,104,0,0,88,4,19,49,4,44,144,137,48,2,0,14,128,69,0,1,6,194,8, -76,0,0,3,50,0,0,64,4,4,2,32,6,1,4,128,0,1,48,1,76,130,9,2,6,83,254, -232,1,12,0,1,176,32,28,8,0,0,120,64,15,0,0,129,60,128,7,128,0,0,30, -192,0,0,64,16,15,224,1,12,32,0,14,224,1,60,0,0,7,240,32,18,200,3,64,0 -,0,3,96,0,0,8,128,7,176,32,6,4,0,0,64,16,15,224,1,12,0,0,200,250,128, -1,48,8,0,1,32,24,4,0,4,65,48,0,0,6,161,0,0,24,0,0,2,66,16,0,0,128,1,1 -,32,0,14,128,1,0,1,6,193,0,0,16,4,3,80,0,0,12,128,1,0,1,6,0,0,32,0,0, -4,0,0,64,16,12,128,1,48,0,0,90,250,144,1,32,1,0,1,8,24,0,2,66,140,130 -,0,0,48,0,0,70,64,0,0,24,128,32,32,0,0,64,129,8,0,0,1,0,14,128,1,48,0 -,0,6,0,0,34,8,0,0,81,32,0,0,64,129,17,177,16,6,0,0,8,8,1,0,0,32,0,0, -12,128,81,176,8,152,255,0,0,48,4,128,0,0,80,136,2,64,0,0,8,8,64,36,1, -128,192,0,0,128,2,65,96,16,72,36,129,164,73,52,0,16,16,4,128,0,0,208, -0,0,82,0,0,32,64,4,13,32,0,0,52,10,64,16,34,0,0,65,3,72,33,0,1,32,0,1 -,160,250,0,12,128,128,0,2,64,0,2,3,34,0,1,128,1,0,18,1,0,1,192,0,0,8, -8,0,0,34,64,12,0,1,48,0,1,4,0,1,16,3,32,0,1,4,0,1,16,56,255,96,0,0,12 -,0,1,114,32,0,1,3,0,0,32,3,96,1,12,0,0,6,178,0,0,6,0,0,3,88,0,1,128,1 -,48,0,15,96,0,0,12,0,1,192,0,0,22,192,0,0,88,32,12,0,1,48,128,1,0,0, -32,6,0,0,3,88,0,0,15,224,65,60,8,24,249,36,0,0,4,0,0,32,16,2,0,0,32,3 -,0,1,1,160,0,0,4,0,0,6,80,0,0,3,0,0,83,40,0,1,132,17,2,16,0,14,32,0,0 -,4,0,0,64,194,64,10,64,80,40,4,12,0,1,48,194,0,2,2,0,0,3,40,0,0,141, -168,17,180,0,0,18,254,140,81,176,8,0,1,66,24,0,0,32,33,4,44,66,1,48, -10,64,100,0,0,24,5,18,48,0,0,128,128,1,1,0,15,128,81,48,17,0,1,8,21,0 -,1,48,0,0,44,136,5,49,32,38,2,4,152,4,11,48,0,0,128,1,8,2,6,120,253, -224,1,56,128,1,162,0,0,30,208,0,0,24,64,15,0,0,1,60,128,7,128,0,0,30, -192,0,0,33,0,0,3,232,1,12,16,0,14,224,1,60,128,1,52,0,0,18,128,3,65,0 -,0,15,224,1,60,128,7,48,64,30,192,3,33,0,0,15,224,1,60,0,0,240,251, -136,1,48,0,1,194,0,1,8,0,2,12,0,0,1,48,0,0,6,97,0,0,24,0,0,2,32,0,0,8 -,130,1,0,16,128,1,48,0,1,194,0,0,16,0,1,49,0,1,128,1,48,0,0,6,0,1,24, -0,1,32,0,5,33,251,128,1,48,0,0,70,192,20,152,0,0,8,4,32,12,0,0,1,48,0 -,0,22,128,0,0,24,0,0,1,34,0,1,128,40,48,64,0,14,128,1,48,0,0,70,0,0, -36,16,0,0,32,64,0,0,32,144,1,16,5,6,64,16,24,0,0,8,36,0,0,140,130,73, -48,9,224,249,0,7,4,0,14,18,0,33,16,1,0,7,18,0,4,200,255,32,0,0,4,128, -0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1, -0,1,4,0,15,32,0,1,128,0,0,16,0,0,2,64,0,0,8,0,0,1,0,1,4,128,0,0,16,0, -0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,248,255,0,74,152,255,40,0,0,4,128,0,0 -,16,0,1,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,2,1,32,0,0,6,0, -15,32,0,0,4,144,0,0,16,0,0,2,64,0,0,8,0,0,1,0,0,8,6,128,0,0,16,0,0,2, -64,0,2,1,32,0,0,4,0,0,17,254,0,2,34,0,1,2,0,0,2,0,4,132,0,3,2,0,3,2,0 -,1,16,1,0,19,64,2,8,0,1,32,2,130,0,1,8,2,34,0,1,132,0,3,2,0,4,27,255, -0,2,128,0,1,64,0,2,8,0,7,64,0,0,64,0,1,16,1,0,24,128,0,4,1,0,10,16,0, -4,64,251,4,0,0,1,0,2,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,1,128,0,0,16,0 -,1,64,0,25,64,0,18,4,0,1,16,138,248,32,4,0,0,133,0,1,2,64,64,8,8,0,0, -33,32,4,132,128,16,2,2,66,64,0,1,1,1,0,0,128,132,16,0,14,32,0,0,134, -16,0,0,24,4,130,8,0,0,4,128,1,0,1,2,192,0,0,8,0,0,3,96,16,1,128,65,32 -,0,0,6,1,32,255,0,3,16,0,21,4,0,25,8,0,4,129,0,13,80,251,0,27,1,0,25, -2,0,4,32,0,12,184,254,32,0,5,1,0,7,64,0,2,1,32,0,23,128,0,2,34,0,4,32 -,0,6,64,0,0,8,0,0,64,0,5,168,250,0,3,4,0,1,16,0,0,2,0,1,4,8,0,32,1,0, -1,4,0,4,64,0,2,1,0,1,4,128,0,0,16,0,1,64,0,2,1,0,0,56,252,0,3,1,0,19, -1,0,48,152,255,0,9,8,0,9,64,0,2,1,32,0,0,4,0,23,64,0,2,1,32,0,0,4,0, -13,32,251,0,2,8,2,1,32,0,0,4,1,16,0,1,128,0,1,8,0,31,2,0,4,32,0,1,2,0 -,2,4,0,0,128,0,1,1,0,2,2,0,2,57,255,0,5,128,0,7,1,0,8,4,2,0,37,2,0,8, -8,250,0,2,16,3,3,192,0,0,136,0,0,16,16,0,0,64,0,0,1,16,0,0,64,0,5,5,8 -,40,0,0,8,0,18,1,64,0,0,128,2,0,0,208,0,1,4,0,2,1,0,0,64,3,128,1,0,1, -64,5,0,2,200,248,0,2,129,0,1,20,136,0,0,160,8,0,1,160,32,0,0,8,64,1,2 -,8,128,160,0,0,180,21,0,0,1,0,16,128,0,0,4,128,74,10,0,0,128,64,4,32, -16,68,0,3,1,128,64,34,0,0,160,0,1,64,0,3,64,255,0,6,2,0,0,128,0,2,128 -,0,1,8,0,0,1,0,0,8,0,0,128,0,0,16,4,0,18,64,0,2,1,0,4,32,32,4,0,8,128 -,0,6,56,253,0,5,128,0,7,1,0,9,128,0,35,128,0,10,17,255,0,54,1,0,2,128 -,0,0,16,0,13,255,0,1,128,0,23,4,0,25,8,0,3,4,128,0,13,152,251,0,4,128 -,2,0,14,64,0,2,32,0,21,1,0,7,4,0,15,112,254,16,0,8,32,0,3,4,0,0,8,0,5 -,1,4,128,0,18,2,0,12,2,128,0,1,32,32,0,4,32,0,2,188,250,2,0,8,64,0,37 -,4,0,6,8,0,1,32,0,12,128,88,253,0,74,152,255,16,0,73,204,251,0,73,128 -,16,255,0,3,8,0,16,2,0,25,2,0,8,32,0,7,32,0,5,16,255,0,5,128,0,13,8, -64,144,0,50,216,250,0,74,152,255,0,16,4,0,9,32,0,17,32,0,26,248,255,0 -,57,16,0,8,4,0,5,200,254,0,51,16,0,21,136,254,0,27,128,16,0,20,64,0,2 -,32,0,12,1,1,0,1,4,0,0,224,248,0,4,128,0,1,40,0,8,128,0,3,64,0,50,16, -249,0,1,8,0,6,128,0,10,4,0,1,16,64,0,0,8,0,17,8,0,26,8,254,0,2,128,0, -0,8,0,21,2,0,18,64,0,5,4,0,4,64,0,12,152,253,0,7,8,0,3,128,0,13,16,0, -17,128,8,0,8,3,64,0,14,128,249,0,3,3,0,3,1,16,32,0,4,128,2,0,3,1,0,0, -2,0,0,128,0,0,16,0,18,2,0,3,1,0,1,4,128,0,7,2,0,6,248,250,0,4,2,0,0,4 -,0,1,4,32,0,0,64,0,2,12,2,0,3,1,0,1,4,0,1,64,0,16,64,0,14,18,0,5,2,0, -0,128,8,0,0,112,251,0,4,16,0,0,2,128,0,18,72,0,22,32,0,9,128,0,2,4,0, -1,1,128,0,2,240,255,0,8,1,0,16,1,32,0,24,2,0,3,1,0,14,136,255,0,57,4, -0,15,152,251,64,0,0,16,0,1,64,0,1,68,0,0,2,0,0,4,136,0,4,32,0,0,4,0,0 -,10,0,20,32,64,8,0,0,2,0,0,32,0,2,16,16,0,6,64,0,0,4,0,0,32,0,1,4,0,0 -,16,128,212,255,8,0,7,128,16,0,0,2,0,1,8,0,7,32,0,26,4,0,21,8,248,64, -0,0,8,0,1,160,2,0,0,136,0,0,11,0,0,3,196,0,0,4,0,2,64,0,0,8,10,17,64, -0,0,128,40,16,0,15,64,128,24,8,1,129,66,10,0,0,134,16,44,40,130,64,0, -0,5,0,1,64,48,12,0,0,16,0,1,4,0,0,8,0,0,8,249,0,0,129,18,8,10,1,2,42, -21,192,96,16,153,170,192,98,128,0,1,72,1,17,0,1,164,6,0,0,141,146,4,0 -,2,8,4,0,6,2,32,0,0,128,0,0,4,0,0,32,65,70,65,4,0,1,68,2,0,0,65,8,32, -128,1,32,136,0,0,160,0,0,1,6,0,1,144,0,0,24,249,0,1,4,32,2,4,0,0,8,4, -0,0,10,8,0,0,136,64,0,9,4,0,1,16,0,3,16,2,0,6,1,64,0,0,128,0,3,68,0,1 -,8,0,4,64,0,2,1,32,8,0,0,128,0,1,2,0,1,16,0,0,64,249,32,0,8,33,0,0,4, -0,1,16,0,9,32,0,1,8,0,27,128,0,3,4,0,11,254,16,0,20,8,0,51,68,251,2,0 -,8,1,16,0,4,16,0,31,2,0,6,2,0,14,128,16,254,16,36,0,3,16,32,2,64,0,1, -32,1,32,0,0,132,0,1,16,0,0,2,0,1,8,0,21,16,0,2,1,0,10,136,0,3,128,0,5 -,188,251,128,0,0,5,0,4,16,0,0,2,0,3,1,0,0,1,0,0,128,0,0,144,8,0,5,32, -0,20,128,0,6,1,0,2,8,0,0,1,0,1,64,0,3,2,0,0,208,249,12,0,24,16,0,0,2, -0,30,2,0,13,150,252,8,0,15,2,0,9,16,0,17,16,0,8,8,0,1,32,0,13,136,255 -,0,74,152,255,0,3,8,0,16,4,0,3,2,0,25,4,0,19,112,253,128,0,3,64,0,1, -32,0,2,4,0,8,128,160,0,3,64,0,19,8,0,19,8,2,0,0,32,0,0,152,249,0,2,32 -,0,1,2,32,2,0,4,2,0,33,1,0,0,32,0,2,32,0,2,64,0,1,2,32,0,0,8,0,3,16,0 -,1,64,32,104,255,0,17,4,0,7,2,0,46,248,249,0,21,1,0,32,128,0,6,16,0,3 -,128,0,4,128,255,0,1,48,146,36,16,0,0,24,65,9,106,34,0,2,48,18,0,2,2, -0,0,11,1,0,0,1,160,5,181,0,22,26,0,1,104,132,0,0,32,132,0,0,128,0,0, -16,0,0,10,0,1,8,0,0,1,0,3,64,253,0,3,6,2,0,1,8,1,0,15,128,1,48,32,0, -21,24,0,1,96,0,8,16,0,8,120,254,0,1,60,32,4,0,1,30,192,2,96,64,0,2,60 -,0,4,192,3,0,1,12,0,0,1,32,16,0,24,64,64,0,0,128,1,1,0,1,192,128,22,0 -,8,200,250,0,1,4,2,166,0,0,20,2,80,1,64,4,0,2,4,34,0,2,88,72,64,0,1, -128,144,16,18,1,0,24,32,0,2,8,0,3,4,10,0,8,232,254,0,3,38,200,4,0,0, -128,34,66,0,9,16,0,2,12,128,133,176,16,0,21,128,0,1,96,34,0,1,65,0,1, -128,192,66,12,9,0,0,96,18,64,2,0,2,24,251,0,1,56,128,3,240,64,28,0,0, -2,120,64,0,2,56,0,3,30,128,3,0,1,15,104,0,0,12,0,22,6,4,0,0,24,0,1,96 -,0,1,128,1,48,0,0,18,0,1,120,0,0,3,0,3,248,255,0,4,2,64,0,1,2,96,0,8, -24,0,4,2,1,32,0,23,4,0,0,64,0,2,1,0,1,6,194,128,16,0,2,16,12,2,0,2,8, -250,0,1,48,0,0,16,192,0,0,24,0,0,1,100,20,0,2,48,0,3,24,33,3,0,1,12,0 -,0,32,0,0,4,0,25,8,0,0,128,145,0,1,22,192,2,136,4,0,1,2,12,0,3,144, -253,32,0,0,48,192,16,196,8,24,65,8,10,0,1,32,0,0,176,144,2,192,24,2,0 -,1,72,64,133,32,0,0,52,1,0,6,34,0,6,17,0,0,180,8,0,2,2,0,4,32,5,0,1, -70,0,1,2,0,1,8,0,1,32,0,2,200,252,0,5,64,0,0,8,0,7,4,0,7,4,0,0,32,8,0 -,6,12,0,6,6,0,0,48,0,10,128,0,2,2,0,10,184,254,96,0,0,60,0,0,2,240,0, -0,30,192,2,96,32,0,1,64,60,160,5,240,0,0,24,0,1,64,0,1,130,1,48,0,7, -12,0,6,6,0,0,48,8,0,8,128,1,0,0,128,7,0,1,22,0,1,96,0,1,128,1,0,1,96, -254,40,0,0,4,64,4,24,68,130,96,1,0,2,128,5,4,130,2,16,4,1,2,0,1,66,32 -,0,0,32,176,8,0,6,10,0,6,5,0,0,48,1,0,9,81,0,0,128,32,2,0,0,10,0,1,96 -,0,1,128,1,0,1,57,254,128,81,0,1,192,0,2,128,34,98,0,2,16,0,1,195,0,1 -,24,0,1,96,2,12,128,1,0,0,65,0,6,10,0,6,5,0,0,160,32,0,2,128,0,4,128, -1,0,4,12,9,0,1,18,0,1,80,0,1,27,253,224,1,56,128,7,224,0,0,28,0,0,2, -24,64,0,0,224,129,56,128,4,224,0,0,6,16,0,0,120,32,11,98,0,0,61,0,17, -28,0,3,6,4,0,3,224,1,1,0,0,7,0,1,18,0,1,24,0,1,96,0,2,72,250,132,1,0, -1,2,17,0,2,2,96,0,1,128,1,0,1,4,0,1,24,0,3,12,130,1,49,8,0,16,48,0,3, -24,4,0,3,128,1,0,4,16,0,2,16,0,1,64,0,1,226,250,160,1,48,0,0,22,208,0 -,0,24,0,0,9,97,132,0,0,128,5,50,0,0,2,193,0,0,152,4,0,0,32,64,0,0,128 -,17,176,0,17,8,65,0,2,24,0,4,128,73,0,1,6,0,1,8,4,0,1,2,0,1,8,0,1,208 -,252,128,1,2,0,3,24,65,8,74,1,13,32,68,52,128,0,0,192,24,2,64,3,8,0,0 -,13,0,1,132,0,17,36,138,6,0,2,64,131,0,1,12,32,0,0,20,0,0,38,192,0,0, -3,64,18,2,0,1,32,0,0,48,16,168,251,0,7,8,0,1,32,12,0,1,48,0,12,32,0, -16,16,0,0,6,0,3,3,0,2,4,0,0,32,0,1,4,0,10,48,255,224,129,0,4,30,192,2 -,96,32,12,0,0,64,0,0,128,5,240,0,0,24,0,0,3,96,32,12,0,1,16,16,0,17,8 -,0,0,4,0,2,131,0,1,15,0,0,64,44,128,7,240,64,22,0,0,3,1,0,3,60,0,0,16 -,254,44,16,0,4,130,72,1,64,2,12,0,0,17,176,192,2,16,136,24,0,0,3,97,0 -,0,64,16,0,0,32,1,0,16,48,2,70,0,3,11,0,1,129,8,4,20,128,32,18,8,10,0 -,0,34,0,4,4,34,138,250,4,0,6,128,34,2,8,44,0,0,9,48,0,0,195,0,1,64,4, -35,1,129,32,2,0,1,18,0,16,176,32,70,1,0,2,3,4,0,2,64,152,0,3,12,9,16, -0,3,80,0,1,168,250,192,1,0,4,28,0,0,2,24,0,0,15,228,64,60,144,4,224,0 -,0,6,192,3,120,0,0,3,0,1,60,0,7,12,0,6,6,0,0,60,128,7,0,2,192,0,2,14, -96,0,0,32,32,7,224,0,0,18,192,0,0,1,0,1,96,0,0,56,0,0,192,248,36,0,7, -2,33,0,1,132,1,48,32,4,0,2,4,3,96,16,12,0,1,16,0,17,48,0,0,6,1,0,2,2, -0,3,64,32,0,3,16,0,0,129,0,2,128,65,0,1,169,251,128,1,0,4,24,0,0,1,64 -,18,64,128,0,0,49,1,18,193,0,2,35,98,4,76,1,0,0,48,17,0,6,2,0,6,1,0,0 -,48,65,38,0,2,128,9,4,0,0,12,128,1,144,8,6,192,0,0,72,4,2,0,2,128,9, -48,0,0,168,254,32,1,48,146,32,16,0,1,64,8,42,1,1,32,0,0,48,146,0,0, -192,24,2,64,0,0,96,128,69,162,49,52,16,0,6,16,0,6,136,1,0,0,128,0,0, -16,0,0,24,72,160,8,0,0,140,36,132,4,0,1,16,0,0,2,0,3,1,160,1,48,16,16 -,249,128,128,0,2,2,0,4,64,0,13,128,1,32,0,17,1,0,5,3,0,2,128,1,0,10, -128,1,0,1,40,250,0,0,1,60,0,0,2,0,0,32,0,0,192,2,0,0,16,3,128,65,60, -128,5,240,0,1,16,0,0,122,0,1,128,1,49,0,7,16,0,6,232,1,0,1,6,192,0,0, -30,0,0,130,0,1,15,0,1,45,0,3,22,0,6,60,0,0,160,252,136,0,0,4,64,68,8, -0,1,64,1,0,0,4,1,0,0,16,4,160,2,16,68,88,0,0,3,8,128,32,130,17,176,32 -,0,6,16,0,6,40,136,0,1,6,192,66,2,17,33,96,33,1,8,8,20,0,1,192,64,10, -0,6,4,33,209,249,0,0,1,0,1,192,0,0,34,0,0,128,34,66,17,76,136,1,0,1, -195,0,1,128,4,16,2,0,0,136,0,0,136,48,33,0,6,2,0,6,1,0,2,64,1,130,0,1 -,3,4,0,1,128,69,152,0,1,192,4,12,9,0,2,76,2,80,0,1,123,249,224,0,0,56 -,128,7,240,0,2,2,120,0,0,15,96,0,0,57,128,4,224,0,0,30,192,3,112,0,0, -15,98,1,60,0,7,32,0,6,196,1,0,0,128,1,240,0,0,28,192,3,120,32,14,224, -0,0,32,32,0,0,48,64,18,0,3,15,96,0,0,56,0,0,128,248,4,1,0,1,2,1,32,0, -1,2,65,32,12,128,1,0,1,4,0,1,24,0,0,3,0,1,8,2,1,48,0,7,2,0,6,1,0,3,1, -64,0,1,3,96,0,2,128,32,0,1,192,128,16,0,4,2,64,0,1,162,252,128,0,0,48 -,0,0,22,0,0,4,0,1,33,32,0,0,13,128,17,50,0,0,66,193,0,0,152,16,19,98, -0,0,4,128,9,177,64,0,14,128,1,0,1,32,192,0,0,24,0,0,11,100,32,12,128, -16,16,10,0,2,8,5,0,4,8,48,0,0,160,253,144,133,176,144,64,16,0,0,26,64 -,8,10,0,0,5,128,133,48,146,0,0,80,8,2,64,3,104,65,44,164,1,52,0,7,32, -0,6,144,17,50,145,6,16,0,0,2,0,0,3,9,0,0,140,36,0,0,5,0,0,70,2,0,0,18 -,73,3,98,4,140,36,0,0,48,16,104,250,0,4,4,0,5,8,0,5,32,0,1,3,0,2,128, -129,48,0,15,2,0,2,6,0,14,8,0,0,3,0,0,32,0,4,88,251,224,129,60,0,0,2,4 -,32,24,208,2,0,0,32,11,224,1,60,128,5,0,0,32,0,0,192,3,96,0,0,15,0,0, -129,48,0,7,8,0,6,232,1,60,0,0,6,192,0,1,192,3,0,1,15,8,0,0,44,128,7,0 -,1,22,0,0,3,122,0,0,15,0,1,60,16,200,248,44,16,4,4,4,0,1,88,64,1,96,1 -,37,34,136,4,193,2,0,0,4,88,72,3,96,66,1,136,0,1,33,3,0,5,132,1,0,5, -42,0,0,5,17,6,192,72,0,0,64,0,0,98,33,1,0,0,133,20,128,32,8,0,0,10,0, -0,11,8,68,129,8,0,0,4,0,0,194,254,4,0,2,192,0,0,34,64,128,34,2,4,6,0, -3,195,128,40,0,0,16,3,32,2,0,0,128,17,176,32,0,6,16,0,10,22,0,0,130, -152,0,5,80,152,0,3,20,0,0,32,4,0,1,128,81,0,1,40,248,200,1,56,128,7, -48,0,0,30,8,2,120,32,9,192,1,56,128,4,240,0,0,30,192,3,120,64,14,96,0 -,0,61,128,0,6,64,0,6,224,1,56,128,7,242,0,0,30,132,3,120,32,14,224,0, -0,32,32,7,0,1,18,192,2,112,0,0,14,224,1,56,0,0,160,252,32,0,2,2,193, -32,0,0,8,2,96,0,0,10,0,3,4,129,0,0,24,0,0,3,96,0,2,129,0,0,8,4,0,6,2, -0,13,4,0,0,96,0,1,128,0,0,32,8,0,2,16,0,0,2,0,3,64,0,1,25,251,144,1, -48,0,0,22,0,0,4,24,0,0,17,98,129,4,128,1,48,0,0,66,64,40,88,96,3,96, -10,12,64,8,0,16,128,1,48,0,0,16,200,8,1,0,0,3,96,10,12,128,32,16,2,6, -0,1,16,0,0,19,98,0,0,12,0,0,8,48,0,1,255,48,0,0,48,192,36,66,64,152, -64,8,10,33,9,128,133,48,146,196,16,0,0,10,64,67,40,4,44,36,33,4,33,4, -0,6,2,0,5,128,49,48,145,0,0,16,0,0,2,0,0,3,9,0,1,160,0,0,4,0,0,198, -192,8,3,64,0,0,104,0,0,13,0,1,48,16,208,249,0,4,128,0,1,16,0,2,4,0,3, -2,0,1,16,0,0,3,64,16,0,0,128,0,2,4,0,6,2,0,19,1,0,2,192,0,0,8,4,0,0, -97,0,0,12,0,4,254,96,0,0,60,32,6,180,0,0,30,200,2,0,0,32,11,224,1,60, -144,5,192,0,0,22,4,1,98,32,15,128,1,16,128,0,6,64,0,6,224,1,61,0,1, -193,0,0,24,192,3,0,0,64,0,0,96,1,45,128,7,240,0,2,1,0,4,60,32,136,248 -,44,0,0,4,2,36,80,136,2,65,1,64,0,0,37,34,16,5,130,2,0,0,40,138,0,0,8 -,96,0,0,129,136,5,161,64,2,0,6,1,0,5,32,16,4,34,32,192,128,24,64,16, -97,2,0,0,160,4,20,128,16,210,0,1,5,2,2,0,3,4,0,0,18,252,132,17,0,1,16 -,96,0,1,128,34,66,4,6,0,3,5,192,0,0,12,0,0,16,32,12,0,1,9,0,0,194,0,6 -,64,0,10,192,0,0,130,128,0,2,2,0,0,192,32,152,0,1,192,0,0,64,0,0,32,1 -,18,64,2,0,2,248,248,224,65,56,128,1,132,0,0,28,0,0,2,56,16,9,192,1, -56,128,4,48,128,18,192,0,0,121,0,0,14,96,128,60,0,7,20,0,6,208,1,56, -128,7,240,0,0,6,132,3,120,16,0,0,32,1,32,32,7,224,0,0,6,196,3,24,0,0, -3,0,1,56,0,0,8,251,132,1,0,1,2,161,0,2,2,96,0,0,6,0,3,4,192,0,0,20,0, -1,96,64,0,0,128,1,17,16,8,0,6,4,0,10,1,128,0,0,4,0,0,96,32,0,0,64,65, -32,8,0,0,208,0,2,1,0,0,16,0,0,2,0,2,25,251,160,1,48,0,0,4,64,0,0,24,0 -,0,17,33,64,8,128,1,48,0,0,4,192,8,9,0,0,18,100,4,12,0,1,48,2,0,6,12, -0,6,136,1,48,0,1,192,4,0,1,3,96,1,0,0,128,4,144,0,0,6,192,0,0,4,4,139 -,0,0,2,0,2,48,0,0,208,249,144,17,176,144,134,0,0,64,152,64,8,106,34, -13,128,133,0,0,128,64,80,2,18,0,0,11,100,4,44,164,1,52,1,2,0,6,1,0,5, -128,1,50,145,2,16,0,0,24,8,3,9,0,0,1,48,0,0,164,0,1,192,0,0,130,64,1, -9,0,0,140,132,9,180,8,16,252,0,0,128,0,5,16,0,0,96,0,5,2,1,32,8,0,2, -32,0,0,128,1,48,16,1,0,5,144,0,10,4,0,9,16,32,0,1,128,8,4,2,0,4,49,0, -0,40,250,224,1,60,0,0,6,178,0,0,30,192,2,96,0,1,224,1,0,2,1,0,0,22, -196,3,120,32,15,0,3,2,0,5,2,1,0,5,228,1,60,128,5,193,128,30,192,3,98, -32,4,96,1,45,0,1,240,0,2,3,2,0,0,15,224,1,48,0,0,208,248,44,0,0,6,64, -4,80,136,130,72,1,96,20,32,40,8,2,0,0,64,0,0,128,138,64,0,0,10,4,65,4 -,0,0,48,65,0,6,2,0,6,32,136,4,160,66,192,0,0,130,96,0,1,4,136,164,4, -20,0,1,16,136,0,0,4,18,0,1,65,48,8,50,10,17,255,4,0,2,4,96,0,1,128,34 -,2,0,0,32,0,3,32,128,34,12,0,5,4,32,66,0,6,32,0,6,2,0,2,3,0,0,130,0,2 -,96,33,0,0,193,32,40,0,3,128,4,3,0,0,18,0,2,48,64,27,250,192,1,56,128 -,7,132,0,0,28,0,0,2,88,32,3,196,1,0,0,128,1,241,0,0,18,128,3,112,0,0, -14,96,128,28,0,15,192,1,56,128,4,240,0,0,28,128,3,24,0,0,15,32,1,32,0 -,1,224,0,0,6,192,2,26,0,0,14,192,1,12,0,0,176,255,4,0,2,6,164,0,2,2, -64,0,6,128,0,0,12,0,6,32,16,0,18,5,0,4,96,16,4,72,65,32,0,5,3,98,16,0 -,2,32,0,0,250,249,128,1,48,0,0,70,64,0,0,24,0,0,33,98,66,128,132,1,0, -1,17,65,40,16,0,0,3,96,0,0,12,0,0,16,9,2,0,14,128,1,48,0,0,2,192,2,25 -,0,0,3,96,4,44,128,0,0,32,0,1,192,0,0,64,4,11,96,2,12,128,1,152,64, -184,252,160,9,48,146,0,0,128,64,152,64,10,10,0,0,1,160,80,0,0,128,32, -17,0,0,26,64,3,105,33,45,144,9,52,2,0,14,128,145,48,145,4,16,0,0,26,0 -,0,3,97,0,0,41,32,33,4,0,0,6,0,1,2,64,10,100,4,1,128,9,4,9,176,251, -128,1,1,0,1,66,0,1,16,1,0,6,2,0,1,24,0,0,3,96,0,0,12,0,0,128,48,32,0, -6,4,0,6,2,0,2,2,0,1,24,4,0,1,64,0,0,130,0,3,4,0,4,32,0,2,49,0,1,254,0 -,1,61,0,0,2,178,0,0,30,192,2,96,32,3,0,6,24,0,0,3,0,2,232,1,32,32,0,6 -,8,0,6,228,1,60,128,5,193,0,1,196,3,120,0,0,8,104,1,48,160,7,4,0,0,24 -,0,0,2,121,0,0,12,224,1,32,0,0,48,252,136,9,4,4,36,80,136,130,96,1,0, -0,4,1,0,0,64,0,1,16,193,34,24,0,0,19,97,34,140,32,8,18,0,0,4,0,5,16,2 -,0,5,40,136,4,161,66,192,132,88,64,64,8,130,68,160,0,0,48,130,0,2,24, -0,0,9,8,130,12,32,0,0,145,8,2,250,0,0,5,1,0,0,192,96,0,1,128,34,98,0, -0,140,4,5,0,1,16,1,8,88,0,0,144,64,68,40,8,0,0,48,18,2,0,5,16,1,0,5,8 -,0,2,3,0,0,130,80,16,0,2,4,68,5,129,0,4,1,65,0,1,64,2,0,0,48,64,144, -254,224,0,0,56,128,7,128,0,0,28,0,0,2,24,64,15,224,65,0,0,128,1,240, -64,30,200,1,56,0,0,7,192,1,12,0,0,7,0,5,144,3,0,5,200,1,56,128,4,240, -0,0,14,128,3,112,0,0,15,32,1,60,16,7,0,1,6,200,3,112,0,0,3,192,1,60,0 -,0,64,253,4,1,0,1,2,97,0,2,2,96,0,0,12,0,0,65,0,2,192,0,1,8,2,64,0,0, -8,8,0,0,32,128,5,0,5,208,2,0,5,8,0,2,3,0,1,16,16,0,2,12,2,1,0,5,16, -131,0,2,2,0,0,48,0,0,201,250,64,4,50,0,0,22,128,0,0,24,0,0,18,100,20, -13,128,16,0,1,64,193,2,129,0,0,137,16,20,66,128,1,0,0,17,4,0,5,8,2,0, -5,132,1,48,0,0,4,192,68,132,0,0,3,96,0,0,12,0,0,1,48,33,6,0,1,128,0,0 -,11,96,0,1,128,1,176,64,152,253,16,16,1,0,2,8,1,0,21,4,0,6,2,0,24,8,0 -,9,104,251,0,1,4,128,0,2,2,64,0,0,8,0,1,32,0,0,4,128,0,0,16,0,0,2,0,1 -,8,0,0,1,32,0,0,4,0,7,2,0,6,33,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1, -32,0,0,4,128,0,0,16,64,2,64,0,0,8,0,0,1,32,0,0,4,0,0,184,248,0,12,4,0 -,8,1,0,50,136,251,12,16,6,128,0,1,72,2,64,0,0,8,0,0,129,32,0,0,4,128, -0,0,16,0,0,2,64,16,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64 -,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,9, -251,4,4,0,0,34,0,1,68,0,0,17,8,0,3,16,1,34,0,1,136,0,1,8,0,0,1,128,8, -16,2,0,16,4,128,0,3,64,0,0,8,0,0,1,32,0,2,65,16,0,0,2,0,3,1,32,0,0,4, -128,0,0,139,249,0,0,128,0,0,128,0,5,10,0,11,2,64,0,2,4,0,17,1,32,0,0, -16,0,1,16,0,0,2,64,0,0,8,0,3,4,128,0,0,64,0,1,64,0,0,8,0,0,1,32,136, -248,4,0,11,8,0,6,16,0,27,2,0,7,128,0,14,202,249,0,0,144,0,0,146,0,1,4 -,1,9,64,8,0,0,33,0,0,144,0,0,146,0,0,2,72,130,0,0,8,1,36,128,4,132,4, -0,16,144,0,0,146,32,16,0,1,9,32,1,36,32,36,8,4,5,64,2,72,66,72,0,1,36 -,128,4,144,0,0,18,24,255,0,0,5,32,0,0,2,128,0,0,16,0,3,8,0,0,1,32,64, -0,0,128,0,0,2,0,1,64,0,0,40,160,0,0,20,0,16,1,32,0,3,80,0,0,2,72,1,0, -4,4,128,2,0,1,8,64,0,0,8,0,0,1,32,0,0,176,251,0,2,128,0,5,32,0,10,2,0 -,3,1,0,26,32,0,0,8,0,2,80,0,12,80,249,0,1,1,32,0,3,64,0,0,16,0,1,128, -0,7,3,0,25,1,128,64,0,5,65,0,15,56,253,2,0,9,8,0,38,66,0,4,1,0,7,128, -0,7,200,254,0,19,64,128,0,8,128,0,3,32,0,1,64,0,34,112,251,0,4,16,0, -19,32,0,2,1,2,0,0,4,8,0,1,128,0,0,1,0,0,2,4,0,0,8,0,9,128,0,18,176, -254,0,0,128,32,136,0,1,32,0,0,8,128,32,64,0,0,4,0,1,8,0,3,4,0,26,2,0, -2,2,0,3,128,0,1,8,2,1,32,0,1,1,0,2,1,128,8,16,120,250,0,8,1,0,4,1,0,8 -,4,0,0,128,0,19,16,0,3,4,0,5,8,0,9,130,0,1,8,104,251,128,128,8,21,1, -128,90,208,74,0,0,17,32,0,0,4,0,0,161,16,0,2,208,10,0,0,64,1,1,0,1, -161,0,17,16,32,1,0,1,80,28,0,0,64,1,0,0,64,0,0,164,21,21,130,86,0,0, -128,1,0,1,64,45,133,8,53,24,251,128,1,48,4,13,10,146,50,16,64,34,0,0, -4,0,0,64,16,32,0,2,130,80,131,168,16,36,0,0,32,133,4,0,16,128,32,3, -128,0,0,64,18,0,0,168,1,0,2,4,129,8,4,32,0,0,6,0,0,200,72,25,33,65,16 -,9,96,249,130,0,0,4,0,6,8,0,0,4,0,1,17,0,5,2,33,64,1,0,22,2,0,4,32,0, -7,16,0,0,16,0,4,128,8,16,217,248,34,0,0,16,136,0,1,32,8,0,0,128,0,11, -1,0,3,64,0,0,8,0,19,64,0,1,4,0,11,2,0,0,32,16,4,132,0,2,64,253,0,17, -16,0,4,80,0,0,16,0,1,64,0,14,32,0,8,32,0,4,128,0,0,64,128,0,2,1,0,5, -136,248,0,0,4,128,0,1,6,0,0,64,0,0,128,0,0,32,0,1,132,128,0,2,66,0,0, -8,128,1,16,32,5,128,2,4,0,15,64,0,0,8,0,0,32,0,1,4,128,0,0,16,0,0,2,0 -,3,1,32,0,0,64,4,1,16,0,0,2,64,0,0,8,16,249,0,2,128,0,2,32,2,0,1,128, -0,2,2,0,3,1,32,0,0,128,8,0,0,72,0,31,32,0,5,128,2,0,7,251,0,0,2,0,1,2 -,65,0,3,16,0,10,4,0,3,2,0,0,16,0,27,32,128,0,0,4,0,12,16,251,0,3,4,2, -0,22,16,0,44,184,250,0,3,9,8,0,22,8,0,25,64,0,17,16,250,0,26,128,32,4 -,0,26,8,0,16,112,253,0,73,128,16,255,128,0,0,16,0,1,32,0,8,16,0,5,128 -,0,1,4,0,0,1,0,19,128,0,3,128,0,3,128,0,2,2,0,1,64,0,1,4,0,3,8,0,0, -248,253,0,1,2,0,8,4,0,8,64,0,51,184,255,0,74,152,255,0,74,152,255,0,5 -,128,0,3,32,2,0,0,128,0,3,64,4,0,3,16,0,23,8,0,3,128,0,18,40,250,0,22 -,128,0,1,128,0,22,128,0,0,1,0,6,4,8,0,12,216,250,0,3,16,0,53,4,0,14, -200,254,0,8,8,64,16,0,11,8,0,23,128,0,8,1,0,14,192,250,0,9,128,0,2,2, -0,3,1,0,54,176,254,128,0,5,8,0,0,1,0,1,2,0,1,16,0,6,32,0,0,1,0,0,64,0 -,2,4,0,1,16,0,3,2,0,0,32,8,0,10,8,8,0,0,32,0,3,16,64,0,10,40,251,0,1, -2,0,2,32,0,0,8,0,0,2,0,3,1,16,0,1,128,0,1,64,1,0,1,4,0,0,1,0,12,8,0,2 -,128,0,0,16,0,1,16,0,0,16,0,0,1,64,0,0,4,0,7,1,0,0,64,0,0,8,128,0,1, -64,249,0,2,4,0,2,16,128,0,0,1,0,0,8,0,2,4,0,2,16,0,13,64,16,0,8,32,0, -0,16,4,0,4,64,0,3,32,0,11,8,16,128,249,16,2,0,3,1,0,0,4,0,0,32,0,3, -128,0,5,4,4,32,0,21,1,4,0,2,4,0,1,4,0,1,32,0,14,64,104,248,0,23,32,0, -1,4,8,64,0,16,1,0,8,18,0,3,1,0,0,128,0,1,1,0,6,72,252,2,32,4,0,17,66, -0,3,1,0,7,128,0,5,4,72,0,8,66,0,2,2,0,16,168,251,8,0,7,2,0,11,8,0,0,1 -,0,4,8,65,0,0,32,4,0,1,1,132,32,0,1,2,32,0,17,4,0,11,232,252,0,4,128, -0,1,4,0,3,2,0,0,16,8,0,0,20,0,2,128,0,1,8,0,0,32,0,18,8,32,0,0,132,0, -3,2,0,0,8,40,0,1,4,0,8,64,128,0,1,112,249,24,64,16,0,1,1,0,2,129,0,1, -4,0,3,1,33,0,4,64,2,64,0,1,8,0,5,32,0,11,2,64,32,4,4,0,12,1,32,0,1,2, -64,0,1,192,249,0,1,165,5,0,0,164,21,80,72,90,66,1,65,5,0,0,8,144,20, -54,0,0,80,0,0,80,69,65,67,33,168,2,32,0,2,2,16,16,160,0,3,1,8,8,64,0, -0,40,8,144,20,50,128,130,18,0,0,65,1,42,70,0,0,160,21,20,0,0,20,0,0, -64,81,72,1,64,73,168,161,0,0,144,254,32,32,20,40,6,64,0,0,24,84,192, -42,0,0,4,10,0,0,176,92,32,1,0,0,80,84,130,73,8,69,32,193,0,0,34,0,4, -64,0,4,4,0,2,32,64,1,42,0,0,133,48,2,18,2,64,80,41,0,0,3,80,168,144, -84,133,8,80,8,0,1,73,21,0,0,16,8,104,253,0,1,16,8,1,32,0,0,4,2,64,32, -0,0,4,1,0,0,32,32,0,0,4,0,1,4,128,0,1,8,0,1,1,0,5,64,0,4,4,0,3,64,0,0 -,8,0,0,1,128,0,3,8,0,2,16,4,0,0,64,0,0,4,0,6,8,16,144,248,0,0,64,0,1, -2,0,1,8,0,0,128,0,4,8,4,0,2,4,128,0,0,16,64,0,0,128,0,22,64,32,0,0, -132,0,0,16,0,0,2,128,0,3,1,0,5,4,2,0,2,48,254,0,3,128,0,10,8,0,6,128, -0,1,32,0,22,2,0,5,2,0,5,32,0,8,152,253,2,1,0,3,129,32,0,0,4,0,3,2,0,3 -,1,0,4,16,0,1,17,0,11,16,0,3,2,64,0,5,4,0,2,128,0,2,8,0,10,128,40,248 -,4,0,11,1,0,1,128,0,5,2,1,0,1,64,0,33,8,1,0,3,128,0,2,64,0,1,233,251, -0,4,32,0,0,4,0,2,128,0,0,2,0,0,66,0,3,1,160,0,0,16,0,1,80,0,0,64,32,0 -,14,64,0,0,16,0,15,2,0,2,2,0,0,2,0,3,224,250,0,7,16,128,0,3,64,0,0,32 -,0,1,32,0,5,2,0,6,32,0,12,8,0,2,1,4,0,8,4,32,0,3,16,0,0,2,0,0,1,8,162 -,252,0,12,1,0,6,64,0,52,216,254,0,0,64,0,20,32,0,7,2,0,2,2,0,2,1,0,2, -1,0,29,200,250,0,1,1,32,0,5,2,0,12,64,0,7,64,0,16,1,0,20,128,0,0,176, -252,0,8,64,0,6,8,0,29,32,0,5,2,0,2,1,0,13,32,104,255,0,1,8,0,0,128,0, -4,136,0,3,8,0,10,32,0,17,128,0,8,32,0,3,128,0,0,2,64,20,0,8,152,250,0 -,3,1,0,17,8,0,3,8,32,0,26,32,8,0,4,17,0,1,64,0,6,104,248,0,3,16,0,17, -8,0,3,128,0,26,1,0,9,64,0,6,80,250,8,0,9,17,0,1,4,133,0,0,2,0,0,32,64 -,68,8,0,2,8,0,0,1,8,0,16,16,128,0,0,64,0,0,72,0,1,32,0,0,4,0,0,64,0,4 -,16,0,0,1,0,0,16,0,1,64,0,1,194,249,0,9,64,0,2,5,128,0,0,20,128,2,80, -0,0,8,72,1,40,0,0,4,32,0,17,160,0,0,4,128,0,0,20,2,0,0,64,0,0,8,0,5, -32,0,0,2,10,0,6,232,249,0,14,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2 -,0,46,224,251,0,13,4,0,31,128,0,8,16,0,8,4,0,6,64,251,0,0,21,160,2, -180,128,10,80,1,42,128,5,168,0,0,44,128,2,80,0,0,10,64,1,40,0,0,5,160 -,0,0,20,192,2,0,15,22,128,2,88,0,0,11,224,1,42,128,5,160,0,0,22,160,2 -,88,0,0,11,208,1,40,128,11,176,0,0,22,160,2,232,254,128,9,48,1,134, -213,4,154,0,0,19,32,3,77,160,100,148,1,51,96,6,202,192,25,40,3,102, -192,12,144,1,0,14,128,12,152,1,50,64,6,200,68,19,32,3,100,128,12,56,1 -,50,64,6,152,4,25,32,57,100,128,12,48,1,16,249,255,255,0};static const -unsigned char l295[]={79,231,255,255,98,255,57,0,0,213,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,160,9 -,52,1,38,64,6,156,0,0,19,0,0,25,96,10,76,128,12,135,83,6,200,0,0,25, -96,2,100,128,97,144,1,0,15,12,48,1,50,0,0,178,76,70,19,104,2,76,128,9 -,48,9,50,224,4,192,0,0,152,104,2,100,128,12,52,1,176,254,0,0,21,160,2 -,84,0,0,11,80,1,42,128,10,80,0,0,26,64,5,180,0,0,10,96,1,44,64,5,176, -0,0,45,192,2,0,15,18,160,2,88,0,0,21,192,2,42,64,5,168,0,0,21,160,3, -88,128,10,32,1,52,64,5,176,0,0,22,160,2,40,255,0,11,64,0,5,2,0,31,64, -0,21,152,249,0,74,152,255,0,4,128,0,5,64,1,0,3,128,2,16,0,0,2,0,1,8,0 -,1,40,0,19,4,0,1,80,0,7,4,4,0,6,2,0,3,224,250,0,5,18,0,4,68,0,5,16,64 -,2,10,0,1,40,0,12,64,0,8,80,0,1,32,0,6,16,1,4,0,3,17,0,6,200,248,0,2, -16,0,3,64,160,0,1,1,16,0,3,208,8,0,2,96,2,141,1,0,43,160,0,2,72,248,0 -,18,32,0,2,96,64,12,0,45,128,0,1,240,255,0,1,60,8,0,4,128,0,7,240,0,3 -,112,0,0,12,2,0,43,128,129,0,1,144,254,0,1,52,0,5,32,0,1,64,8,0,3,144 -,36,0,2,8,34,68,0,45,8,0,1,72,248,0,2,64,0,5,4,0,0,140,0,6,1,0,1,104, -129,72,0,44,128,64,0,1,16,252,0,1,60,0,4,192,0,2,7,2,0,3,48,0,3,120,0 -,0,7,4,0,43,96,1,0,1,64,250,0,8,128,0,1,8,0,4,64,0,5,8,4,0,43,128,65, -0,1,64,254,0,1,48,17,0,4,10,0,1,4,1,0,3,128,132,0,2,96,130,68,0,44, -128,1,0,2,251,0,2,16,0,0,80,0,1,64,1,0,1,73,4,0,3,16,40,0,3,2,0,0,32, -0,0,4,1,0,6,40,0,6,20,0,0,52,128,2,0,10,128,16,1,0,10,104,251,0,4,128 -,0,2,2,0,13,64,0,2,16,8,0,6,12,0,6,6,0,0,48,0,0,4,0,24,8,249,0,1,60, -32,0,0,176,32,0,0,192,2,0,1,12,2,0,3,112,32,0,2,24,0,4,8,0,6,12,0,6,6 -,0,0,48,128,5,1,0,10,5,0,11,72,248,8,0,0,52,1,0,0,80,4,0,0,64,1,0,1, -40,0,5,2,0,2,8,0,12,10,0,6,5,0,0,48,128,34,0,10,128,160,0,11,226,255, -0,2,64,0,0,96,128,0,0,128,1,4,0,0,140,2,0,3,16,64,0,2,96,0,2,8,128,8, -0,6,10,0,6,5,0,1,9,3,0,10,128,0,0,2,0,10,48,255,0,1,60,0,1,144,0,2,2, -0,1,15,0,4,32,0,3,120,16,0,0,96,64,12,0,17,12,128,4,0,10,128,1,0,11, -168,249,4,0,3,160,0,2,2,0,1,12,2,0,3,16,32,0,2,96,0,1,128,1,1,8,0,16, -48,16,5,0,12,1,0,10,1,255,0,1,48,9,0,0,64,32,0,1,129,0,1,140,0,4,144, -8,0,2,96,0,1,128,9,8,2,0,16,48,1,2,0,10,128,2,0,11,224,251,0,2,1,0,0, -16,0,1,64,0,2,65,0,4,208,0,4,32,0,0,32,0,0,4,10,0,16,52,130,4,0,2,64, -0,13,104,0,5,232,251,0,2,32,0,7,4,8,0,3,192,0,8,16,0,7,4,0,6,2,0,0,48 -,16,2,0,17,96,0,5,144,251,0,1,12,0,1,176,32,0,0,192,2,0,12,120,16,0,1 -,64,0,0,8,0,6,4,0,6,2,0,0,48,128,5,1,0,2,3,0,19,136,254,4,0,0,4,0,1, -80,4,0,0,64,1,0,1,32,8,0,8,104,4,0,0,128,9,0,0,2,0,6,12,0,6,6,0,0,48, -133,34,0,3,80,0,12,96,128,0,4,250,252,12,0,0,48,10,0,0,96,128,0,0,128 -,1,4,0,0,32,4,0,3,192,132,0,3,128,0,1,68,0,0,8,0,16,48,64,3,0,3,8,2,0 -,11,96,4,0,5,253,0,1,60,0,1,144,0,2,2,0,1,3,0,4,240,0,3,120,0,1,96,0, -0,12,0,7,12,0,6,6,0,0,28,128,4,0,2,192,0,13,24,32,0,4,184,251,8,0,0, -48,0,1,160,0,2,2,0,2,8,0,3,192,0,6,128,1,0,0,8,0,16,48,8,3,0,17,96,0, -5,113,250,0,1,48,0,1,64,34,0,1,137,0,1,130,0,4,192,36,0,2,96,10,0,0, -128,1,129,0,7,10,0,6,5,0,0,48,2,4,0,3,32,2,0,12,34,0,4,32,249,0,2,16, -0,0,144,128,152,64,0,2,33,0,1,148,0,1,80,0,2,35,1,32,0,0,32,4,20,0,17 -,52,0,1,192,72,0,7,36,193,20,1,0,3,8,66,0,4,248,248,0,4,64,0,1,8,0,2, -4,8,0,1,32,0,0,128,0,2,3,0,4,33,0,7,32,0,6,16,0,0,48,0,1,192,0,16,32, -0,5,232,250,0,1,60,8,0,0,176,0,0,30,200,2,0,2,8,0,0,24,0,1,176,0,1, -192,3,120,0,1,224,128,44,0,20,240,0,8,32,32,1,0,4,96,0,5,48,249,8,0,0 -,52,1,0,0,80,0,0,2,64,1,0,1,128,0,1,4,33,0,0,80,8,1,64,3,104,18,0,1,4 -,20,0,7,18,0,6,9,0,3,208,0,9,129,160,0,4,96,17,0,4,107,254,0,2,64,0,0 -,160,32,0,0,128,1,4,0,0,64,16,0,0,132,0,1,96,24,0,1,16,4,128,0,0,32, -16,25,16,0,17,9,0,1,4,1,0,6,144,192,64,8,0,3,64,4,0,4,1,251,0,1,60,0, -1,144,0,0,28,0,0,2,0,1,3,0,1,44,16,0,0,128,0,1,192,0,0,120,0,1,96,0,0 -,36,0,17,12,0,1,48,0,8,60,128,3,0,4,120,64,0,4,128,251,4,0,1,8,0,0, -128,0,2,2,0,2,4,0,3,160,0,4,16,0,2,33,0,7,8,0,6,4,0,1,16,0,11,16,0,0, -1,0,3,96,64,0,4,97,253,0,1,176,0,1,128,0,0,24,0,0,161,0,1,32,0,1,32,0 -,1,64,40,0,2,96,0,1,32,5,16,10,0,17,1,0,10,16,128,0,5,112,0,5,176,248 -,0,1,48,1,0,3,64,0,2,1,0,1,52,0,1,16,0,1,64,10,4,2,0,2,4,128,4,0,5,72 -,2,0,5,4,0,0,4,10,0,0,144,2,1,0,1,72,130,73,16,0,1,128,20,1,0,0,82,96 -,10,12,1,9,16,0,2,16,254,0,2,32,0,8,4,0,7,3,96,64,0,4,3,0,5,162,1,0,5 -,17,0,3,192,0,16,32,32,4,0,3,88,254,0,1,56,0,4,192,2,0,1,12,0,1,12,0, -1,176,0,1,128,2,112,0,3,44,0,17,44,8,0,0,160,0,3,64,32,8,8,0,2,4,0,1, -16,8,2,97,16,12,0,3,104,254,4,0,0,4,4,0,3,64,1,0,1,32,4,0,0,4,16,0,0, -80,8,1,64,11,106,32,0,2,20,0,0,3,0,5,148,1,0,5,10,0,1,1,0,0,208,0,0,1 -,0,2,2,64,0,3,64,1,0,0,64,0,0,8,96,0,0,44,16,0,2,210,248,4,0,0,4,8,0, -3,128,1,4,0,0,8,1,0,0,48,1,0,0,96,24,0,0,64,19,104,1,0,2,24,16,0,16,4 -,33,0,0,208,4,0,2,32,65,4,1,0,2,64,1,0,0,72,0,0,17,66,34,72,4,0,2,112 -,250,0,1,60,0,5,2,0,1,3,0,1,60,8,0,0,128,0,1,192,129,24,32,0,2,36,128 -,2,0,5,64,1,0,7,12,0,1,112,32,0,2,120,0,0,15,0,2,128,1,0,1,30,208,3, -120,0,0,3,0,3,64,248,4,0,7,130,0,1,8,4,0,0,48,0,1,160,32,0,1,3,96,64, -0,2,32,8,0,17,8,0,0,192,0,6,4,0,2,4,0,4,96,32,12,4,0,2,25,251,0,1,48, -0,5,33,0,1,44,0,1,4,4,0,0,64,8,0,0,64,1,96,1,0,2,16,2,8,0,6,4,0,7,148 -,0,1,80,0,3,32,33,4,0,3,18,8,0,0,136,8,9,114,2,72,0,3,176,255,0,2,16, -0,0,80,0,1,64,2,4,0,0,1,0,1,52,0,1,16,0,0,10,64,35,4,32,0,0,160,65,4, -0,17,16,1,0,0,208,24,2,0,1,72,130,73,16,0,1,128,20,145,8,82,96,10,108 -,128,0,4,192,249,0,4,128,0,2,1,0,1,12,4,0,0,48,0,3,16,0,0,3,0,2,128,1 -,0,0,128,4,0,5,64,2,0,7,32,32,0,0,192,0,10,2,64,64,0,2,96,0,5,192,249 -,0,1,12,0,1,176,128,0,0,192,2,0,4,12,0,1,176,0,0,22,4,1,122,0,1,224,0 -,0,44,0,17,44,0,1,64,64,24,0,1,64,32,12,4,0,1,128,3,192,128,16,8,2,66 -,0,5,104,251,8,0,0,4,0,1,80,0,1,64,1,0,1,32,4,0,0,4,0,1,80,8,139,0,0, -10,104,129,0,0,32,133,20,0,17,20,18,0,0,128,2,0,0,17,0,1,1,40,0,2,128 -,4,192,2,128,0,0,16,32,132,0,4,26,255,0,2,64,0,0,96,0,1,128,2,0,1,12, -8,0,1,1,0,0,96,24,12,0,0,16,2,128,0,0,128,69,24,16,2,0,6,1,0,7,24,0,2 -,132,24,3,0,0,32,65,32,0,3,4,128,0,0,72,0,0,17,98,33,0,4,176,248,0,1, -12,0,1,144,0,2,2,0,1,7,0,1,8,8,0,0,128,0,0,18,192,3,120,0,1,224,1,36, -0,17,32,0,1,240,0,0,6,0,1,120,0,0,7,8,0,2,2,48,128,30,208,3,120,0,5, -120,249,4,0,0,48,8,0,0,160,0,2,2,0,4,48,0,1,160,32,20,0,4,128,1,32,8, -2,0,6,1,0,7,40,0,3,24,0,8,2,192,0,3,96,0,5,105,254,0,1,48,2,0,0,64,0, -2,2,0,1,4,8,0,0,52,4,0,0,64,2,8,128,82,96,20,0,1,1,145,128,8,0,5,64,4 -,0,7,16,0,1,160,20,88,8,0,0,32,34,68,1,0,2,4,128,72,72,8,1,2,66,0,4, -168,250,0,1,48,1,0,0,144,0,1,64,32,0,1,13,0,1,4,4,0,0,144,24,18,64,3, -2,32,140,4,0,0,4,0,18,1,0,0,208,2,0,0,64,0,0,8,12,129,33,9,2,128,4,0, -1,2,66,64,104,0,1,32,17,54,0,0,152,250,0,2,32,0,0,64,0,2,128,0,1,12,4 -,0,0,48,0,1,64,0,0,8,0,0,3,0,1,12,0,3,5,0,5,128,2,0,8,32,0,0,192,128, -0,2,96,0,0,12,0,3,2,0,1,24,0,0,3,96,0,3,48,0,0,224,248,0,1,56,0,1,176 -,128,0,0,192,1,0,1,12,0,1,48,0,1,176,0,0,22,4,1,121,0,0,2,0,1,44,0,17 -,44,0,1,64,0,2,3,64,0,0,8,0,0,129,0,0,128,5,0,1,16,8,2,1,0,2,1,1,0,0, -40,251,8,0,0,52,5,0,0,80,0,2,136,0,1,64,16,0,0,48,65,0,0,80,8,139,0,0 -,18,104,16,77,16,0,0,20,0,17,20,18,0,0,128,68,0,2,98,68,140,8,4,0,0, -128,2,0,1,24,0,0,3,96,128,0,1,8,48,66,90,250,0,1,4,32,0,0,96,0,1,64, -128,0,1,12,2,0,0,48,17,0,0,160,0,0,12,0,0,32,0,0,128,13,0,1,24,16,0,6 -,6,0,6,3,0,0,24,0,2,8,0,1,3,98,68,44,136,4,2,0,0,3,0,1,24,17,11,98,12 -,0,0,128,16,48,64,24,251,0,1,60,0,1,144,0,1,128,0,2,15,0,1,28,0,1,128 -,0,0,18,192,3,121,0,0,15,8,0,0,36,0,17,32,0,1,240,64,0,0,192,3,88,0,0 -,11,224,1,0,1,4,0,1,22,192,2,24,0,1,224,129,12,0,0,184,249,4,0,0,48, -16,0,0,96,0,1,64,0,2,4,0,1,48,32,0,0,160,0,0,12,0,1,2,0,0,12,8,0,0,32 -,8,0,16,40,0,2,128,0,2,96,0,0,12,0,3,2,0,1,24,0,0,3,96,0,2,128,48,0,0 -,89,252,0,1,48,0,1,128,0,1,64,162,0,1,44,16,0,0,24,2,0,0,128,0,0,16,0 -,0,2,96,8,32,0,1,16,0,17,16,0,1,128,0,2,35,114,64,142,132,144,0,1,4,0 -,1,28,144,35,1,129,0,0,128,0,0,128,64,248,254,0,2,1,0,0,208,0,1,64,0, -0,9,0,0,33,0,1,52,64,0,0,16,4,26,64,147,0,0,2,65,32,136,36,16,0,16,32 -,129,6,208,36,0,0,64,3,40,34,69,4,0,1,128,66,0,1,10,65,33,72,0,1,32, -17,2,0,1,251,0,2,32,0,0,192,64,0,1,2,0,2,4,0,0,48,0,2,32,24,0,0,3,0,0 -,64,4,8,0,0,16,0,7,4,0,6,2,0,0,16,32,6,192,0,10,4,1,0,1,8,0,0,33,64,0 -,4,144,254,0,1,12,0,1,192,0,1,128,0,3,4,0,0,16,0,2,32,24,0,0,1,24,0,0 -,7,104,0,0,44,0,7,16,0,6,8,0,0,44,0,0,6,64,0,3,96,0,0,12,0,6,24,16,3, -66,32,0,1,129,0,1,176,255,8,0,0,4,0,1,64,2,1,64,34,97,128,136,0,1,176 -,64,0,2,24,0,0,8,10,0,0,64,32,128,20,0,0,4,0,5,16,2,0,5,8,0,0,20,18,6 -,0,1,1,0,0,80,0,0,128,0,0,16,0,2,64,8,0,0,64,0,1,96,1,0,1,4,0,1,162, -254,0,1,48,1,0,0,192,34,0,0,64,1,98,128,32,8,0,0,144,0,2,34,88,0,1,96 -,18,137,2,0,0,41,0,0,2,0,5,16,1,0,5,8,0,0,24,0,0,22,0,0,4,0,1,8,34,17 -,36,2,0,2,64,1,0,0,136,4,145,64,65,0,0,128,16,0,1,112,251,0,1,60,16,0 -,0,240,0,1,128,0,0,120,0,0,7,0,1,60,16,0,0,48,0,0,30,208,0,0,122,0,0, -3,96,0,0,36,0,0,7,0,5,144,3,0,5,8,0,0,32,128,7,52,64,0,0,192,0,0,88,0 -,0,11,0,2,128,7,0,1,22,192,2,120,0,1,224,129,0,1,208,250,4,0,0,48,0,1 -,192,32,0,0,64,1,96,0,0,4,0,1,16,8,0,1,32,0,1,128,96,0,3,32,128,5,0,5 -,208,2,0,5,8,0,0,24,0,2,32,0,2,96,16,12,2,0,3,1,0,0,24,4,131,96,0,5, -57,253,0,1,48,0,1,192,0,1,64,0,0,96,66,132,16,0,0,32,2,0,0,128,8,64, -32,10,96,0,0,73,4,81,32,0,0,4,0,5,8,2,0,5,4,0,0,32,0,0,16,136,2,0,1, -32,98,4,140,0,3,16,0,1,88,0,0,11,112,36,0,0,128,144,0,1,192,250,0,8, -16,4,0,7,136,0,9,4,0,6,2,0,35,104,255,32,0,0,4,128,0,0,16,0,0,2,0,1,8 -,0,0,1,32,0,1,128,0,2,2,0,1,8,0,3,4,0,7,8,0,6,36,0,1,128,0,2,2,64,0,0 -,8,0,0,1,32,0,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,8,249,0,74 -,152,255,36,0,0,4,128,0,0,16,0,0,2,0,0,32,9,0,0,1,32,0,0,4,146,0,1, -128,2,64,0,0,10,0,0,129,48,40,4,0,15,32,0,0,4,194,0,0,16,128,2,64,0,0 -,8,0,0,1,32,0,0,4,128,160,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,171, -255,12,0,5,128,8,32,4,0,4,65,0,1,2,0,27,16,0,12,128,0,11,177,249,32,0 -,1,128,0,5,8,0,0,1,32,0,0,4,128,0,1,32,0,24,32,0,5,2,64,0,0,8,0,0,1, -32,0,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,192,252,8,0,4,64,0, -2,1,0,7,64,0,0,8,0,1,32,0,1,128,0,0,16,0,17,16,0,0,2,0,23,8,251,32,0, -0,4,192,0,0,16,0,0,2,2,0,0,8,0,0,1,32,0,1,160,0,2,2,64,8,9,0,0,33,48, -0,0,4,0,15,32,0,0,4,128,0,0,16,66,2,64,0,0,8,0,0,1,32,0,0,4,0,0,16,18 -,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,60,251,0,17,16,0,7,2,0,18,64,0,26, -168,249,0,1,8,0,61,4,128,0,7,216,255,0,6,18,0,0,8,0,2,1,0,12,32,0,21, -16,0,23,160,252,0,5,1,0,5,3,0,8,8,0,26,1,0,2,32,0,0,4,0,10,9,0,1,2,0, -1,64,249,0,22,1,0,26,64,0,13,32,0,0,4,0,5,168,255,0,25,16,0,20,64,0, -25,201,255,0,1,16,128,0,0,64,128,0,1,129,0,2,8,128,8,0,1,1,0,3,32,64, -0,0,128,0,20,128,0,5,8,0,4,144,0,5,2,0,0,4,0,3,232,253,0,10,64,4,2,0, -2,4,4,128,0,0,64,0,0,10,0,20,128,0,0,1,0,5,1,0,10,8,0,7,184,248,0,1,8 -,0,0,1,32,64,0,0,128,10,1,74,1,12,128,8,128,160,6,128,0,0,64,0,0,26, -42,64,65,0,17,32,0,0,1,0,0,1,0,2,64,0,0,16,0,4,16,1,0,2,16,0,0,1,0,0, -2,0,3,48,254,130,2,0,0,8,14,1,32,8,64,129,2,2,0,0,3,0,0,32,8,32,64, -128,16,2,0,1,16,0,1,33,16,4,0,15,7,0,0,4,0,0,5,136,8,0,0,129,64,0,1, -128,0,0,8,0,0,132,5,0,4,16,32,0,1,32,8,200,255,128,0,1,8,2,4,32,8,0,0 -,129,0,2,8,0,1,32,0,0,16,0,4,16,0,2,4,0,20,1,0,0,2,0,0,2,2,0,1,64,0,3 -,1,0,4,64,0,3,32,224,255,2,0,1,128,0,8,4,0,0,16,0,3,2,16,0,3,128,64,0 -,0,8,0,14,128,0,1,8,0,5,64,0,5,2,4,0,8,4,0,0,248,253,0,12,8,0,1,32,0, -7,9,0,9,32,0,6,16,0,1,32,0,13,1,8,0,3,8,0,1,8,0,1,32,128,253,0,10,32, -0,3,16,0,1,64,0,2,64,0,1,128,0,19,4,0,19,64,0,6,248,0,11,32,2,0,9,128 -,0,0,128,0,0,8,0,23,4,128,0,7,128,16,0,9,104,252,0,10,64,17,4,0,5,5,0 -,5,64,0,27,128,0,0,16,0,8,128,0,5,152,255,0,21,8,0,24,8,0,25,24,255,0 -,74,152,255,0,21,4,0,27,1,0,2,32,0,1,1,0,5,8,0,0,64,0,0,8,0,1,2,0,1, -64,255,0,20,128,0,2,2,0,0,4,0,46,88,249,0,1,36,0,8,1,0,4,32,0,36,24,0 -,0,2,0,15,104,255,0,9,4,0,0,4,0,1,32,72,0,1,2,0,2,128,0,23,4,0,0,32,0 -,3,64,0,8,16,0,8,184,250,0,26,128,0,46,24,255,0,21,64,0,2,4,0,23,16,0 -,3,1,0,5,12,0,0,64,0,0,64,0,6,144,255,0,2,32,0,5,2,64,0,6,128,0,3,64, -0,6,32,0,1,16,0,3,16,0,1,8,0,3,32,0,25,72,251,0,74,152,255,0,22,8,0,0 -,32,0,30,32,0,1,128,0,5,8,0,3,4,0,1,80,249,0,11,8,0,2,4,0,12,128,0,2, -2,0,2,64,0,2,1,0,8,16,0,12,4,0,7,80,249,0,53,64,0,19,216,255,0,6,8,0, -24,2,0,40,48,253,0,20,32,0,0,4,0,7,16,0,2,16,0,2,8,0,2,8,0,4,8,0,0,1, -0,21,96,255,0,20,4,128,0,7,32,0,2,32,0,2,16,0,0,1,0,0,16,0,5,1,128,0, -7,2,64,0,11,64,16,248,0,2,8,0,1,2,0,7,64,0,7,16,0,1,4,0,39,32,32,2,0, -3,128,249,0,5,2,0,5,16,0,12,1,0,20,1,0,13,64,0,9,248,248,0,12,4,0,7, -64,0,1,2,0,6,1,0,2,1,0,1,128,0,2,128,0,1,8,0,17,2,0,7,232,255,0,18,16 -,0,5,32,0,25,64,0,0,128,0,4,128,0,2,32,0,0,8,32,0,4,128,136,248,0,6,2 -,16,129,0,4,16,0,0,2,33,0,0,8,128,128,0,2,32,0,19,4,0,2,128,2,0,1,8,0 -,1,32,0,1,32,2,4,64,2,16,0,2,2,2,0,1,32,120,252,0,0,64,16,0,1,16,128, -0,2,2,0,1,8,0,4,128,0,2,1,16,0,3,8,0,14,32,0,5,8,8,0,11,128,0,3,8,0,0 -,1,128,248,248,0,1,165,0,0,20,16,128,4,136,90,3,0,1,8,0,0,8,0,0,1,34, -128,52,128,0,0,67,75,0,0,64,0,1,32,0,4,32,0,6,16,0,0,32,3,8,8,160,0,0 -,64,6,16,0,0,48,0,0,4,64,0,1,16,21,2,64,84,72,1,0,1,2,12,0,0,17,16, -168,251,0,0,72,0,1,16,0,0,144,16,128,193,98,16,0,3,40,58,64,32,16,82, -64,32,17,9,0,2,9,0,3,4,0,5,4,0,3,32,16,4,162,32,0,0,64,70,0,3,1,0,1, -210,132,148,33,0,1,2,96,0,0,4,0,0,1,0,1,224,248,0,1,1,0,4,64,128,32, -64,0,3,32,2,16,32,0,2,32,16,0,3,32,0,3,2,0,5,8,0,4,4,128,0,3,2,0,9,32 -,0,2,32,0,0,1,0,3,72,254,0,5,32,2,0,1,10,0,8,2,4,0,0,1,0,0,8,0,20,1, -32,0,0,4,0,1,4,0,3,1,0,2,2,68,0,2,2,8,0,1,32,0,2,88,254,0,18,64,0,10, -4,1,0,0,16,0,0,1,0,1,130,0,1,8,128,0,9,8,0,12,1,0,5,112,253,2,0,19,64 -,0,0,2,0,25,16,0,4,64,3,8,0,0,8,0,9,64,0,1,128,224,255,0,1,136,0,8,4, -0,1,4,0,6,144,0,1,8,0,27,8,0,0,13,128,0,7,3,64,0,1,128,0,2,200,252,4, -0,5,4,0,6,4,0,8,16,0,48,153,251,2,0,7,2,0,4,32,0,9,16,0,22,64,0,4,32, -0,1,1,0,4,32,8,4,0,3,1,0,0,128,56,255,0,21,2,0,7,64,0,2,64,0,2,32,0,2 -,32,0,5,128,0,6,2,0,2,4,0,3,128,0,6,24,253,0,6,1,0,4,16,0,1,80,0,12,2 -,0,1,8,0,3,1,0,1,4,0,26,128,0,0,16,0,1,64,32,253,0,1,4,0,61,2,64,0,2, -4,0,3,184,251,0,7,128,0,14,8,0,0,3,0,22,128,0,3,17,0,7,1,4,0,1,128,64 -,0,4,56,254,0,1,64,0,6,2,0,3,16,0,6,1,0,44,224,0,2,1,0,0,120,248,0,20 -,128,0,29,2,0,6,2,64,0,5,16,0,1,64,0,2,120,254,0,2,32,0,0,32,0,1,128, -0,8,32,0,2,8,20,0,1,64,0,0,8,0,0,8,0,1,32,0,3,4,0,1,16,0,4,8,0,2,34,1 -,0,21,184,250,0,1,4,160,70,0,5,64,0,3,128,22,0,31,208,0,3,8,65,0,0, -160,0,0,4,0,3,24,2,0,0,104,34,9,0,1,4,0,0,128,253,0,1,16,0,0,6,2,0,10 -,6,2,0,30,192,64,0,6,1,0,4,24,0,1,96,0,0,4,8,0,2,32,253,0,3,2,0,4,16, -0,5,6,2,0,30,192,0,3,88,64,0,0,96,1,0,0,8,0,2,30,0,3,8,4,0,2,72,252,0 -,1,48,4,4,8,0,3,8,0,5,66,0,31,192,4,1,0,1,96,0,1,160,0,5,26,0,1,96,33 -,44,0,2,17,88,252,0,1,160,8,64,0,4,8,20,0,4,22,0,31,128,136,0,2,8,130 -,0,0,192,16,129,8,0,2,64,16,0,0,32,1,136,8,0,1,6,224,250,0,1,28,128,7 -,4,0,3,24,0,4,128,5,4,0,30,112,0,3,24,0,2,1,12,0,3,6,0,1,120,64,15,0, -1,60,0,0,72,249,0,1,48,8,0,12,4,0,31,192,0,3,96,0,2,1,48,8,0,5,32,0,0 -,12,8,0,0,48,0,0,168,251,0,1,56,0,0,20,8,0,10,36,8,0,31,8,1,0,1,32,8, -0,0,128,72,0,0,1,0,6,36,46,0,1,48,66,56,250,0,1,4,128,70,0,2,1,0,1,4, -0,4,64,0,2,64,32,1,0,23,128,22,8,0,3,8,16,0,0,32,0,5,2,0,1,104,1,5,1, -0,0,48,4,80,254,0,1,16,32,6,2,0,1,8,0,1,32,0,4,6,4,0,2,1,0,25,2,0,17, -96,32,0,2,48,0,0,40,248,0,2,16,2,0,1,30,0,1,120,0,4,128,7,4,0,29,6,2, -0,4,32,0,0,96,1,0,5,16,0,0,96,0,0,12,4,0,0,12,32,208,255,8,0,0,48,0,0 -,4,8,0,0,90,4,0,0,104,132,0,4,22,0,3,11,4,0,24,18,0,7,160,0,5,64,0,1, -32,129,64,0,1,176,0,0,227,249,0,1,32,8,32,8,0,0,64,0,2,1,0,3,128,6,4, -0,2,34,4,0,24,64,8,0,4,2,0,0,192,16,1,0,3,88,0,1,96,33,68,0,1,52,0,0, -65,251,0,1,28,128,7,0,1,30,16,0,0,120,64,0,3,128,1,0,2,192,1,0,24,128 -,1,0,4,24,16,0,1,1,0,4,30,4,0,0,88,0,0,11,4,0,0,60,32,56,250,4,0,0,48 -,8,0,3,4,0,7,6,0,3,3,0,25,4,4,0,7,1,0,4,24,0,1,64,0,0,12,0,1,48,0,0, -137,252,0,1,56,2,68,2,0,0,24,0,1,96,18,0,4,38,1,0,2,3,1,0,24,6,0,4,32 -,17,0,0,128,64,0,5,8,0,0,64,32,44,8,0,1,16,216,250,0,1,4,128,22,0,2,1 -,0,1,4,0,3,128,22,4,0,1,64,0,0,2,0,23,128,128,0,1,26,2,0,1,8,0,0,32,0 -,0,4,0,3,10,5,0,0,104,34,0,2,4,1,224,253,0,2,16,6,4,0,1,8,0,1,32,0,4, -6,0,3,1,0,25,2,0,1,8,0,19,32,8,0,0,250,0,3,2,4,0,0,30,0,1,120,0,40,24 -,8,0,0,24,0,1,96,1,0,0,8,0,2,14,4,0,0,96,0,3,12,0,0,232,253,4,0,0,128 -,16,20,0,1,26,5,0,0,104,16,0,4,22,2,0,2,67,0,25,70,8,0,0,72,0,1,8,0,1 -,160,0,5,66,0,1,96,33,0,2,36,18,234,252,12,0,1,65,32,8,0,0,64,0,2,1,0 -,4,34,8,0,2,138,0,25,36,0,1,128,32,0,0,96,2,0,0,192,16,129,8,0,2,64,0 -,6,144,0,0,248,255,0,1,12,128,7,0,1,30,16,0,0,120,64,0,3,128,7,0,2, -192,1,0,24,128,3,2,0,0,6,0,1,120,16,0,1,1,60,0,3,20,16,0,0,88,32,0,2, -8,8,200,255,8,0,0,32,16,0,3,4,0,1,16,0,4,2,0,3,131,0,25,6,2,0,0,16,16 -,0,0,96,0,2,1,0,0,8,0,2,26,0,1,96,0,3,52,0,0,161,254,0,1,48,2,68,2,0, -0,24,1,0,0,96,0,5,128,0,2,128,3,0,25,70,0,1,24,0,1,104,0,1,128,68,0,0 -,1,0,2,24,4,0,0,64,128,0,2,176,32,56,250,16,0,1,128,0,0,20,0,1,1,0,1, -64,0,4,64,0,1,154,72,0,5,180,16,0,17,128,16,8,0,0,130,0,2,8,0,0,32,0, -3,208,0,1,2,0,1,8,0,1,32,132,8,232,254,0,3,2,0,2,8,0,8,4,0,0,24,0,0,1 -,2,0,3,48,0,19,2,0,1,8,16,0,0,96,0,6,192,0,0,24,0,8,96,254,0,5,32,30, -0,1,112,0,4,128,1,0,1,16,8,0,0,1,0,3,16,32,0,22,8,0,0,16,0,1,96,1,0,2 -,240,0,0,4,16,0,0,24,0,1,96,0,0,28,8,152,248,12,0,2,38,2,0,0,26,0,1,8 -,32,0,3,128,0,2,64,0,0,35,0,4,160,0,19,6,8,0,0,152,0,1,104,36,0,0,160 -,0,3,208,0,0,90,0,1,8,0,1,32,0,2,130,253,4,0,2,68,1,34,88,0,1,8,1,0,4 -,38,1,0,0,24,0,0,130,0,5,2,0,18,36,0,1,80,0,1,104,1,0,0,192,16,1,0,1, -192,0,0,26,0,1,96,0,1,128,69,4,1,40,251,0,2,128,3,48,0,0,30,16,0,0,24 -,32,0,3,128,7,0,1,26,192,1,0,4,60,32,0,17,128,3,2,0,0,14,4,0,0,24,32, -0,1,1,0,2,224,0,0,6,4,0,0,120,64,0,0,224,1,12,32,72,251,4,0,2,6,0,0, -32,24,4,0,1,32,0,4,6,0,3,3,0,25,6,2,0,0,24,4,0,0,96,0,2,1,0,2,192,0,0 -,24,0,1,96,0,1,128,1,0,0,8,129,251,0,3,23,193,4,152,0,1,96,1,0,4,6,0, -1,8,128,131,0,4,160,64,0,18,70,0,1,88,0,1,8,0,1,128,80,0,2,192,0,3,96 -,0,1,128,1,32,1,128,252,16,0,0,4,144,0,0,208,130,0,0,16,0,1,4,0,4,64, -0,1,16,65,0,5,52,17,0,17,128,4,0,1,24,73,19,105,0,1,32,17,1,0,4,2,0,0 -,8,129,0,1,32,20,2,0,0,250,0,1,16,0,0,2,4,0,4,32,0,5,4,0,1,16,0,0,1,0 -,3,48,0,19,2,4,0,0,24,0,0,2,0,2,128,0,14,8,216,248,0,4,194,0,0,6,0,1, -120,0,4,128,1,0,1,24,0,6,16,0,22,4,16,0,0,120,16,0,0,96,1,0,4,6,0,4, -96,0,0,16,0,0,184,248,12,0,0,48,34,6,192,66,2,0,1,104,17,0,3,128,0,2, -152,16,8,1,0,3,32,18,0,18,18,4,0,0,26,1,0,0,105,4,0,0,160,0,5,2,0,2, -17,0,0,32,0,0,32,17,17,249,4,0,0,32,66,4,1,34,24,5,0,1,1,0,4,70,0,3, -32,0,5,2,0,18,38,0,1,26,0,0,1,0,0,128,0,0,64,1,0,4,152,0,2,16,0,0,128 -,81,128,0,0,139,251,0,1,28,128,3,176,0,0,30,0,1,120,64,0,3,128,7,2,0, -0,8,192,0,0,2,0,3,60,32,0,17,128,7,1,0,0,30,80,3,112,0,2,1,0,4,30,4,0 -,0,56,0,1,224,1,12,8,88,249,4,0,0,48,0,0,6,192,0,0,24,0,8,6,0,1,24,0, -0,2,0,25,6,4,0,0,24,0,5,1,0,4,24,0,1,32,0,1,128,1,0,1,218,255,0,1,48, -16,7,129,0,0,25,0,1,96,20,0,4,6,0,1,24,0,0,35,2,0,3,160,64,0,18,32,0, -2,32,0,0,104,65,0,1,1,0,4,24,0,1,96,18,0,0,128,1,0,0,66,160,248,0,1,4 -,144,16,80,0,1,1,0,1,4,0,3,128,32,2,0,0,80,80,32,1,0,0,41,2,0,0,4,66, -0,14,160,33,0,0,128,16,8,0,0,2,2,32,0,0,8,13,0,1,16,129,2,0,1,2,0,1,8 -,2,0,0,128,33,20,0,0,176,253,0,1,16,0,1,130,0,1,8,0,1,32,0,9,1,0,1,4, -0,1,16,0,15,128,0,2,2,0,1,8,0,1,2,0,0,12,0,1,32,32,4,0,2,8,0,1,16,0,2 -,32,0,0,152,252,0,4,176,128,30,0,1,120,16,0,7,24,0,3,7,0,2,16,0,14, -128,1,0,6,3,24,32,0,2,44,128,5,0,1,8,0,2,64,0,0,192,1,44,0,0,152,252, -4,0,0,48,34,32,81,4,26,4,0,0,104,4,0,4,64,2,0,0,152,32,11,4,0,0,9,0,1 -,48,1,0,14,128,16,1,0,0,6,8,0,0,24,33,82,96,4,0,2,20,133,130,0,2,9,0, -1,2,0,0,32,16,22,0,0,130,255,12,0,0,32,1,32,96,8,64,0,2,1,0,4,64,0,3, -2,1,0,0,8,0,1,32,1,0,15,4,0,1,20,4,0,0,80,16,0,0,8,1,64,16,0,0,24,0,0 -,19,4,0,0,64,0,2,68,0,0,32,72,152,16,104,255,0,1,28,144,1,148,64,30, -16,0,0,120,64,0,3,128,3,1,0,0,8,192,1,0,1,5,0,1,28,8,0,14,96,0,0,1, -128,3,0,1,14,0,1,24,16,3,0,1,32,128,4,0,1,6,4,0,0,88,0,1,224,1,32,0,0 -,240,249,8,0,0,48,0,0,4,160,32,0,0,8,0,7,2,0,1,24,0,0,3,0,1,4,0,1,48, -8,0,15,1,0,1,6,0,1,24,0,0,1,96,0,3,40,0,0,5,1,0,1,8,0,1,16,0,2,32,8, -129,252,0,1,48,5,166,64,2,24,1,0,0,96,33,0,4,22,1,0,0,24,0,0,83,0,1,8 -,0,1,48,0,15,128,1,2,0,0,6,2,0,0,24,8,3,8,68,128,4,0,0,16,0,0,18,0,1, -128,0,4,128,1,144,0,0,248,254,0,1,4,144,38,18,0,1,16,0,1,64,0,3,128, -64,0,1,16,67,32,1,0,0,9,0,1,52,2,0,17,128,32,0,1,90,0,0,8,106,0,4,129 -,0,2,2,64,11,4,8,69,4,32,4,0,0,136,251,0,1,16,0,0,6,0,1,24,0,9,2,0,2, -1,0,1,4,0,1,48,16,0,18,2,4,0,0,24,16,0,6,32,0,3,4,1,96,0,5,168,255,0, -3,2,178,128,28,0,1,24,0,6,1,0,0,16,0,3,11,0,1,16,32,0,19,2,0,0,24,4,3 -,120,0,3,44,128,5,0,2,4,3,16,64,4,96,0,0,44,0,0,144,249,8,0,0,48,34, -36,80,4,154,8,0,0,8,0,5,64,0,2,33,11,4,0,0,5,0,1,32,1,0,18,38,0,1,152 -,0,0,10,12,32,0,2,20,133,130,0,2,1,33,106,4,8,48,0,0,20,0,0,42,255,0, -1,160,32,32,104,8,154,8,0,0,96,2,0,4,32,0,3,10,2,0,0,6,0,2,2,0,18,68, -0,1,24,1,0,0,96,20,0,2,24,0,0,19,4,0,0,64,16,16,105,68,0,0,129,9,152, -16,64,255,0,1,28,128,7,144,64,6,0,1,120,16,0,3,128,5,1,0,0,8,192,1,0, -1,9,0,1,60,32,0,17,128,3,1,0,0,30,16,0,0,120,0,3,32,128,4,0,1,6,192,0 -,0,24,0,0,15,224,129,32,0,0,216,253,4,0,0,48,0,1,160,32,24,0,1,96,0,6 -,1,0,2,3,0,1,4,0,22,6,1,0,0,16,0,0,1,0,0,16,0,2,40,0,0,5,1,0,2,2,96,0 -,0,12,132,1,32,8,1,255,0,1,176,32,68,66,0,0,24,16,0,0,96,0,5,32,0,1,8 -,0,0,11,2,0,0,8,0,1,160,64,0,18,22,0,1,24,2,3,96,1,0,2,16,0,0,2,0,1, -16,5,3,4,0,0,78,128,1,16,0,0,168,255,0,1,4,144,22,146,8,24,16,0,1,64, -0,2,52,65,64,192,128,0,0,64,32,1,0,0,13,0,1,36,0,17,20,145,4,0,1,26,0 -,0,99,0,0,8,0,2,32,129,20,20,0,0,2,0,2,8,13,32,8,36,1,104,248,0,1,16, -0,0,6,64,64,24,0,6,48,0,0,6,196,0,2,1,0,1,12,0,1,16,32,0,18,2,4,0,0, -24,8,2,0,4,16,32,2,0,4,96,0,0,12,4,64,16,16,248,254,0,3,2,180,0,0,4,0 -,1,24,0,3,48,0,0,1,240,0,8,48,0,17,16,0,3,22,8,3,24,0,3,44,128,5,0,0, -64,30,0,1,120,32,8,128,64,44,0,0,200,252,8,0,0,48,34,4,80,0,0,26,2,0, -0,8,0,3,48,133,70,212,0,2,11,4,0,3,48,17,0,16,32,18,18,4,0,0,24,1,18, -12,0,3,20,133,2,0,0,2,26,0,1,96,4,68,16,4,20,0,0,122,254,0,1,32,34,32 -,168,128,154,4,0,0,96,0,3,48,130,38,0,0,130,0,1,34,2,0,0,32,2,0,0,32, -1,0,16,128,0,0,22,0,1,154,4,1,96,36,0,2,24,0,0,197,0,0,2,152,32,0,0, -104,2,44,4,80,24,0,0,240,253,0,1,28,128,7,144,0,0,30,0,1,120,16,0,2, -60,144,1,49,0,1,192,1,0,1,3,0,1,12,32,0,16,60,160,7,1,0,0,30,0,0,3, -120,0,3,32,128,4,48,128,28,0,1,24,16,15,96,0,0,16,0,0,144,254,4,0,0, -48,16,0,0,128,0,0,24,0,1,96,0,4,16,6,0,3,3,1,0,1,2,0,0,48,8,0,16,48, -32,6,0,1,24,0,0,1,96,0,3,24,0,0,4,0,0,64,24,4,0,0,96,0,0,12,0,0,64,16 -,0,0,145,254,0,1,176,0,0,68,130,0,1,8,0,0,96,0,3,144,0,5,11,0,5,2,0, -16,184,0,1,4,0,0,10,33,3,104,0,3,32,0,0,4,192,4,152,0,1,96,16,64,8,16 -,16,0,0,80,249,0,65,3,0,7,168,252,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8, -0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4 -,128,0,0,16,0,1,64,0,2,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32, -0,0,4,8,144,253,0,52,16,0,1,32,0,17,152,252,44,0,0,4,128,0,0,16,0,0,2 -,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0, -15,32,0,0,4,128,0,0,16,0,0,130,64,0,0,8,2,1,32,0,0,4,128,0,0,16,0,1, -64,0,0,8,0,0,1,32,0,2,235,252,4,0,57,48,0,0,6,0,1,4,0,0,1,0,6,9,73, -250,32,0,0,4,128,0,3,64,0,2,1,32,0,0,4,0,3,2,64,0,0,8,0,0,1,32,0,0,4, -0,15,32,0,0,4,128,0,0,16,0,1,64,0,1,16,1,0,5,128,0,0,68,0,2,1,0,3,16, -251,4,0,4,64,0,0,8,0,1,32,0,5,2,64,0,5,4,0,31,128,0,0,16,0,1,128,0,3, -32,0,1,128,0,0,16,25,254,32,0,0,4,128,0,0,16,4,130,64,0,0,8,2,1,32,0, -0,4,128,16,16,4,2,64,0,0,8,0,0,65,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0 -,0,66,72,0,1,129,1,32,8,0,0,129,16,20,4,64,96,0,0,8,2,1,32,8,0,0,1, -216,248,0,1,128,0,0,16,0,13,16,0,0,8,8,0,31,1,8,0,8,2,0,6,4,112,252,0 -,74,152,255,0,1,8,0,6,32,0,3,16,0,1,1,0,3,4,0,27,64,0,8,128,0,0,2,16, -0,8,176,251,0,6,32,0,12,128,0,22,32,0,1,128,0,2,2,0,15,33,0,4,168,254 -,0,6,2,0,46,64,0,1,32,0,5,32,0,6,64,0,0,184,253,0,20,32,0,33,1,0,17, -168,255,0,2,160,0,0,64,0,1,128,0,3,64,0,11,8,0,19,9,0,1,4,0,4,16,0,0, -130,0,1,8,0,2,8,64,0,3,130,0,0,16,0,0,88,253,0,2,8,0,0,16,0,7,128,0,7 -,8,0,1,64,0,32,16,0,3,8,0,1,2,0,0,2,0,3,40,248,2,0,1,48,1,48,0,1,128, -0,1,16,0,0,64,0,0,1,0,0,192,0,1,8,0,1,8,0,0,24,36,0,18,128,8,0,1,2,0, -4,32,40,196,0,0,4,24,0,2,6,128,0,0,194,0,0,1,196,0,0,8,0,0,24,250,0,2 -,8,4,64,2,0,1,128,72,0,1,2,0,1,8,0,0,129,0,0,72,0,0,128,0,3,64,0,19,8 -,0,2,16,0,0,64,32,0,0,96,32,65,80,0,0,128,65,0,0,8,0,1,32,0,1,1,68, -180,12,224,251,8,0,1,32,0,0,64,0,3,1,0,1,8,0,1,32,0,0,1,0,0,8,0,1,2,0 -,2,128,0,19,32,0,5,8,0,2,64,16,0,1,66,0,0,8,0,1,64,0,3,17,136,104,251 -,4,0,1,128,0,5,32,0,6,128,0,32,8,0,0,64,0,2,128,0,3,4,0,6,4,0,0,32,32 -,24,253,0,54,8,0,3,4,0,3,2,0,6,4,0,0,112,255,0,1,4,0,0,2,0,15,64,0,5, -16,0,19,2,0,19,1,0,3,136,255,0,2,8,0,1,16,0,9,144,2,0,30,8,0,3,128,0, -0,8,0,9,4,0,3,32,0,0,200,254,0,46,16,0,4,8,0,3,16,0,0,4,0,4,32,0,2,4, -0,1,64,0,0,40,251,0,1,64,4,136,0,16,68,0,4,128,0,16,64,0,0,4,128,0,2, -2,0,12,128,0,6,48,255,0,1,8,0,0,1,0,16,1,0,4,64,0,20,1,0,23,72,251,0, -15,128,0,34,2,0,21,144,253,16,0,57,4,0,14,200,255,0,1,4,0,13,8,0,2,64 -,0,27,2,0,3,2,0,18,56,253,0,3,8,0,11,2,0,31,4,0,0,44,0,2,128,0,9,1,0, -6,80,248,0,54,4,0,18,152,251,4,0,68,32,0,3,248,249,0,4,32,0,0,4,0,1, -16,0,6,32,0,5,2,0,28,16,0,1,64,0,0,8,0,4,32,0,0,16,0,1,64,0,0,8,0,0, -28,254,0,2,64,4,0,62,64,0,5,216,255,0,62,64,0,3,32,0,5,216,253,0,1,64 -,0,1,128,0,10,4,0,3,4,0,22,64,0,2,8,0,1,32,0,20,144,249,0,19,2,0,25, -32,0,4,64,0,20,184,249,0,15,64,0,53,8,0,1,192,208,255,0,4,2,0,11,4,0, -9,24,0,22,8,0,20,248,250,0,74,152,255,0,4,1,1,32,8,0,0,128,0,3,64,0, -44,128,0,0,32,32,0,4,4,0,3,120,250,0,2,128,0,0,8,0,3,64,0,41,80,0,0, -48,0,7,32,0,2,128,16,0,2,2,0,0,80,253,0,4,8,0,13,8,0,1,1,0,3,8,68,0, -18,1,1,0,0,4,4,0,1,64,0,10,128,0,2,1,0,1,136,251,0,1,144,0,0,16,0,2,4 -,0,1,16,0,9,8,0,5,32,0,18,16,0,1,64,0,12,4,0,6,8,88,253,0,1,1,0,1,65, -128,0,2,8,0,0,4,64,0,32,1,0,0,129,0,5,32,0,0,34,0,1,32,1,0,0,32,0,1,1 -,0,0,64,0,0,64,0,0,4,0,0,248,249,66,0,0,8,0,4,16,0,0,2,0,1,8,32,0,0, -16,0,5,17,32,0,3,16,0,17,8,0,0,65,0,5,4,0,1,8,0,2,128,8,128,0,3,4,0,0 -,1,128,64,252,32,128,4,0,1,34,64,8,16,0,0,18,0,0,2,72,0,0,1,32,0,0, -128,34,0,2,10,64,0,3,32,0,15,128,0,0,32,1,22,0,2,128,0,0,32,1,68,0,0, -4,16,1,0,0,192,2,192,0,0,64,33,4,72,0,0,9,8,88,254,0,3,32,192,0,0,8,4 -,129,0,0,160,32,0,0,3,0,0,4,10,64,158,0,0,4,0,2,2,1,0,0,16,12,0,16,16 -,5,0,0,1,26,2,0,0,102,64,28,248,10,0,0,96,0,0,2,17,44,72,0,0,141,96, -24,17,130,0,0,16,1,192,250,0,4,64,0,0,8,4,2,1,0,5,2,16,0,1,8,0,5,16,8 -,0,16,16,0,1,4,0,4,32,0,0,2,0,2,2,2,32,4,0,0,1,33,16,0,0,132,0,0,8,0, -0,184,251,0,4,16,0,6,128,0,1,32,0,1,64,0,5,2,0,1,16,0,17,16,0,1,32,0, -1,129,8,16,4,0,1,16,0,6,16,8,0,4,160,252,16,0,19,2,0,28,128,0,1,64,0, -15,8,0,2,172,249,2,0,1,32,0,0,4,0,16,2,0,22,1,0,19,2,0,4,128,64,253,0 -,3,4,0,0,2,0,53,8,0,2,4,0,1,64,129,0,4,224,252,8,0,4,128,8,0,9,9,0,33 -,4,0,0,72,16,0,7,2,0,1,8,64,0,0,32,0,0,4,16,202,254,0,1,16,0,0,2,0,1, -64,0,2,1,0,6,2,0,1,1,0,4,16,0,19,2,0,1,8,0,2,128,0,13,1,0,2,200,248,0 -,28,16,0,19,2,1,17,0,16,16,0,3,168,254,0,16,2,0,55,8,56,255,0,1,32,0, -11,4,0,3,8,0,32,1,0,7,1,0,4,8,0,4,80,249,0,16,4,0,2,16,0,26,16,0,3,4, -0,0,16,0,12,8,0,1,16,0,1,250,0,2,16,0,0,2,0,4,128,0,10,1,0,28,2,0,10, -32,0,1,32,0,1,6,0,2,112,255,0,1,32,0,0,1,0,15,128,128,0,4,96,0,19,12, -0,1,32,0,16,2,0,3,216,254,2,0,1,8,0,0,1,0,14,8,130,0,24,8,0,1,2,0,22, -136,253,0,2,128,6,16,36,0,4,128,0,4,208,16,0,7,52,0,18,128,6,0,6,33,0 -,6,26,0,3,32,8,0,2,184,254,0,3,6,128,0,5,12,8,0,3,192,0,8,16,32,0,26, -4,2,0,15,64,248,0,3,6,50,128,0,4,2,0,4,240,128,0,7,56,32,0,17,128,7,0 -,6,8,0,6,6,0,3,15,0,3,56,249,0,3,64,144,0,5,141,4,0,3,64,2,0,7,148,0, -18,128,38,1,0,5,68,1,0,5,130,2,0,2,77,8,0,2,160,254,0,3,6,66,0,5,77,8 -,0,3,208,4,0,7,36,1,0,18,64,2,0,5,44,2,0,5,24,5,0,2,128,4,0,2,88,252, -0,2,128,7,32,32,0,4,3,0,4,240,32,0,7,56,32,0,18,7,0,6,15,0,6,30,0,3, -15,0,3,112,252,0,3,6,208,64,0,4,12,0,4,128,128,0,7,32,0,27,12,0,6,24, -0,4,2,0,2,88,255,0,3,6,196,0,11,208,8,0,7,48,0,19,6,2,0,5,140,4,0,5,2 -,8,0,2,140,0,3,120,252,0,2,128,64,4,0,1,64,136,0,1,128,0,7,1,0,3,160, -1,52,0,17,20,128,32,0,1,154,32,0,1,65,0,7,26,64,0,0,4,0,0,32,8,0,2, -200,255,0,3,2,0,7,8,0,5,24,16,0,3,128,1,48,0,17,32,0,1,2,0,0,24,0,11, -24,0,8,16,252,0,3,4,0,6,3,0,6,4,0,4,128,1,12,0,17,44,128,5,0,1,30,8,0 -,0,120,16,0,7,6,0,0,3,0,1,15,0,3,176,255,8,0,2,18,1,0,2,160,0,1,1,0,6 -,26,32,0,3,128,17,6,0,17,20,0,0,6,4,0,0,136,0,1,104,2,0,7,2,0,0,3,1,0 -,0,77,2,0,2,154,250,0,3,22,1,0,2,144,0,1,12,0,6,26,0,4,128,5,2,2,0,16 -,24,132,0,0,1,0,0,26,5,0,11,5,32,2,0,0,128,4,0,2,152,251,0,2,128,7,0, -2,192,0,2,15,2,0,5,6,8,0,3,96,0,0,8,32,0,16,32,0,0,1,0,1,28,0,1,120, -64,0,7,4,192,0,2,15,0,3,96,255,4,0,2,6,0,3,128,0,1,12,0,6,24,0,4,128, -1,49,0,17,32,128,6,2,0,0,16,0,2,16,0,7,24,0,0,2,0,2,2,0,2,57,253,0,3, -70,2,0,2,17,0,1,12,0,12,128,9,48,9,0,16,16,136,18,0,1,24,32,0,0,96,1, -0,7,26,8,163,0,1,44,0,3,216,251,0,2,128,6,0,2,64,160,104,0,0,65,8,0,5 -,24,1,0,3,160,1,4,18,0,16,4,0,3,2,16,0,1,1,13,0,4,208,24,66,0,3,32,8, -0,2,96,253,0,3,6,0,4,96,0,8,24,16,0,3,128,1,0,23,16,0,2,32,12,0,4,192 -,0,1,16,0,7,120,248,0,9,98,0,8,6,0,4,128,1,0,18,44,0,3,4,0,1,24,0,6, -176,0,0,16,16,0,2,15,0,3,112,251,8,0,7,16,96,0,1,2,0,5,24,9,0,3,128, -17,2,10,0,16,20,0,3,82,8,0,0,8,0,6,192,4,129,0,3,13,2,0,2,154,253,0,3 -,192,0,4,1,2,64,0,6,154,4,0,3,128,5,130,64,0,16,24,4,0,2,10,1,0,0,96, -17,76,0,4,208,36,24,4,0,2,128,4,0,2,80,251,0,2,128,1,0,2,192,0,0,24, -32,3,4,0,5,30,0,4,96,0,0,28,0,17,32,0,3,4,16,0,0,120,0,0,15,8,0,3,240 -,0,0,30,0,3,15,0,3,208,253,4,0,3,4,0,3,96,0,8,24,16,0,3,128,1,0,0,32, -0,16,32,0,3,8,0,1,96,0,0,12,4,0,3,192,64,0,5,2,0,2,225,254,0,3,32,0,3 -,129,96,33,72,2,0,5,64,0,4,128,5,49,1,0,16,144,8,0,5,96,0,0,12,0,4,80 -,0,0,136,8,0,2,76,0,3,216,250,16,0,1,128,2,16,0,2,32,0,1,1,0,2,128,22 -,0,0,4,0,5,32,0,0,52,0,17,4,128,64,1,0,0,138,0,2,65,13,160,1,0,2,208, -0,0,2,67,35,104,0,0,32,0,4,254,0,4,2,0,3,2,0,5,4,196,128,0,5,128,128, -48,32,0,21,24,16,0,2,12,128,1,0,2,192,0,0,16,0,0,3,98,0,1,4,0,2,32, -248,0,3,6,0,2,192,0,3,2,0,3,226,64,0,7,60,0,17,44,0,0,1,1,0,0,6,0,1, -120,0,0,12,8,128,0,2,192,0,0,4,208,3,1,0,0,3,0,3,8,248,12,0,3,8,16,0, -0,64,0,7,64,208,2,0,5,128,1,18,16,0,16,20,128,20,0,1,74,16,0,0,104,16 -,128,128,17,0,2,192,132,18,1,33,96,128,1,0,3,10,253,4,0,2,34,4,66,0,1 -,131,0,1,32,2,0,2,2,208,72,0,6,33,52,2,0,16,24,132,16,4,0,0,144,16,0, -2,76,132,49,0,3,16,138,72,11,96,12,76,2,0,2,16,253,0,2,128,5,240,0,1, -192,3,0,1,3,0,2,128,6,48,0,6,224,0,0,56,8,0,16,32,0,0,1,0,1,6,0,1,120 -,64,15,96,0,3,48,0,0,4,128,3,26,0,0,15,0,3,200,254,4,0,2,6,196,0,2,3, -0,1,12,2,0,3,192,0,6,128,1,32,16,0,16,32,128,2,0,1,24,0,3,12,128,1,0, -2,192,32,8,0,0,2,96,0,0,12,0,3,161,248,0,3,7,192,132,0,1,3,0,1,64,0,4 -,192,66,0,5,192,9,177,0,17,16,138,32,4,0,0,80,4,0,0,96,130,12,8,4,2,0 -,2,2,2,0,0,3,4,129,12,0,3,64,250,0,2,128,2,16,0,2,35,0,1,1,0,3,32,4,0 -,1,65,0,3,32,8,181,0,17,4,0,1,192,2,2,32,0,1,1,13,160,1,0,2,192,66,2, -33,0,0,104,0,0,32,0,3,144,255,0,3,4,1,0,3,2,0,9,16,0,5,48,32,0,19,192 -,64,0,2,96,32,12,128,1,0,2,192,0,0,24,0,1,96,0,0,12,4,0,2,216,255,0,3 -,2,0,0,32,0,0,128,3,2,0,1,2,0,2,6,0,1,6,192,3,0,2,128,129,32,16,0,16, -44,0,1,240,0,0,24,16,0,0,16,0,2,128,0,2,32,0,0,24,8,0,2,2,0,3,24,248, -8,0,2,64,8,2,0,0,64,8,0,6,4,2,0,0,2,64,3,0,2,128,17,0,18,20,0,1,208,0 -,0,88,0,1,104,10,0,0,128,17,0,2,208,128,88,0,1,96,128,141,4,0,2,138, -255,0,3,18,4,32,0,0,64,8,0,1,32,2,0,5,88,4,11,0,3,16,48,0,17,24,4,0,1 -,4,0,0,17,0,0,104,1,140,128,133,0,2,208,130,88,32,0,0,96,33,45,2,0,2, -24,254,0,2,128,5,48,0,1,192,3,1,0,0,15,0,6,30,128,3,1,0,1,96,128,52,0 -,17,32,0,1,48,64,6,0,1,24,16,15,100,0,3,240,0,0,14,0,1,24,0,0,3,0,3, -72,251,4,0,2,2,0,0,32,0,5,2,0,2,2,0,1,24,0,0,131,0,3,1,0,18,32,8,0,2, -16,0,1,96,0,0,12,128,1,1,0,1,192,0,0,24,0,1,96,0,0,12,0,3,161,250,0,3 -,36,200,0,2,3,0,1,64,0,3,6,0,1,24,0,0,35,0,2,128,69,16,0,17,16,2,0,2, -24,4,0,2,76,8,4,0,3,136,76,8,0,1,34,0,4,248,250,16,0,1,128,38,84,0,2, -32,0,1,132,0,3,64,4,0,1,1,0,3,160,1,32,33,0,16,36,132,2,0,1,26,64,3,0 -,0,1,77,34,8,1,0,1,208,2,90,8,0,0,8,66,32,0,3,88,251,0,3,6,128,0,3,2, -0,0,8,8,0,6,16,0,3,128,1,0,18,16,0,0,4,0,1,24,0,0,3,96,32,12,128,0,3, -192,32,24,0,1,32,0,1,4,0,2,176,252,0,3,6,176,0,1,192,0,2,11,0,3,6,0,1 -,6,0,4,128,1,48,0,17,44,128,5,4,0,0,6,0,1,16,0,0,12,128,65,0,2,192,0, -0,8,16,0,0,96,16,3,0,3,8,250,12,0,2,22,81,0,1,64,0,2,5,4,0,2,20,8,0,0 -,2,0,4,128,1,48,33,0,16,20,128,34,0,1,2,0,0,35,108,8,76,129,17,0,2, -192,8,89,0,1,96,4,1,0,3,98,255,4,0,2,68,97,132,0,1,19,0,1,6,0,6,24,1, -0,4,132,0,18,40,0,0,3,0,1,128,16,11,105,128,8,4,17,1,0,1,192,128,136, -0,1,64,68,12,2,0,2,232,252,0,2,128,1,128,0,1,192,131,0,1,8,0,6,30,4,0 -,3,96,0,0,16,0,17,32,128,4,0,1,4,192,0,0,24,0,0,3,224,1,0,2,240,0,0, -30,8,0,0,120,0,0,15,0,3,216,248,4,0,2,4,130,32,0,1,3,0,1,10,0,3,2,0,1 -,24,0,4,128,1,49,0,17,32,0,0,5,0,1,24,4,3,98,0,0,8,132,1,0,2,192,0,0, -8,0,1,96,0,0,12,0,3,1,250,0,3,18,64,2,0,1,3,0,1,4,0,3,6,0,1,24,0,4, -128,5,48,0,17,32,0,0,2,0,1,152,0,0,8,0,1,36,192,17,1,0,1,128,72,144,4 -,0,0,112,32,12,0,3,72,249,0,2,128,6,24,0,1,64,17,4,0,0,128,0,3,134,16 -,66,2,16,0,0,104,0,1,32,0,0,32,34,0,17,128,4,0,1,10,16,0,1,65,5,32,4, -0,2,80,68,18,65,3,12,1,32,168,4,0,1,224,249,0,3,2,0,7,8,0,2,4,0,7,128 -,128,0,20,2,0,7,132,128,0,4,24,16,1,32,32,0,1,128,0,1,232,249,0,3,6, -180,0,1,192,1,0,1,11,0,3,6,0,1,8,4,0,0,96,0,3,48,0,18,128,5,4,0,0,12, -0,1,120,0,0,12,128,1,0,2,64,0,0,28,0,0,3,96,0,0,15,128,0,3,252,8,0,2, -22,80,0,1,64,136,0,1,5,4,0,2,68,8,36,0,0,1,0,1,8,0,0,128,1,50,65,0,17 -,128,34,0,1,66,8,0,0,104,0,1,144,81,0,2,128,0,0,27,2,3,97,20,45,2,1,2 -,0,0,235,254,0,3,20,104,132,0,1,32,1,0,0,6,0,3,2,0,0,24,0,0,1,0,1,65, -0,1,69,0,20,3,0,1,66,4,0,0,96,0,0,68,2,9,2,0,2,8,154,0,0,34,66,34,128 -,4,16,0,1,89,250,0,2,128,7,128,0,1,128,2,0,1,8,0,3,6,112,0,0,6,4,0,0, -120,0,1,224,0,0,16,0,18,128,4,0,1,20,0,1,120,64,11,224,1,0,2,240,64, -14,200,3,120,0,0,15,224,129,0,1,184,249,4,0,2,4,128,32,0,1,3,0,1,10,0 -,3,2,0,0,128,0,0,4,0,3,128,1,49,0,19,3,0,4,96,16,12,128,1,0,2,192,0,0 -,24,16,2,96,64,0,0,136,1,1,0,0,129,253,0,3,23,65,0,2,35,1,0,0,4,0,3,6 -,192,0,0,64,0,2,36,0,0,192,1,48,0,19,4,0,1,16,0,1,96,4,46,194,1,2,0,1 -,224,66,24,129,83,112,1,12,192,1,0,1,64,251,128,17,0,0,128,70,144,136 -,0,1,32,0,1,136,0,6,2,0,3,13,32,8,33,4,0,17,128,6,0,1,10,3,0,1,65,69, -160,129,0,0,128,20,208,0,0,10,81,35,104,32,32,160,1,52,0,0,88,254,128 -,1,1,0,0,2,68,0,3,2,0,0,4,8,0,6,16,0,2,12,0,22,6,0,1,24,0,3,8,130,1,0 -,1,2,194,64,0,1,1,98,0,0,12,132,129,48,0,0,208,248,224,1,0,1,6,176,0, -1,192,0,2,11,0,6,24,0,3,12,128,1,32,0,18,128,1,0,1,12,0,1,120,16,4, -128,1,0,0,128,5,192,128,30,8,3,96,0,0,2,136,1,0,1,56,250,164,1,0,1,22 -,81,0,1,64,0,2,5,4,0,5,16,2,0,2,12,128,145,0,0,66,0,17,128,0,2,26,9,0 -,0,104,0,0,128,144,137,0,0,128,2,192,0,0,136,0,0,83,96,132,141,128,9, -2,0,0,10,251,12,8,0,1,68,96,0,2,147,0,1,6,0,6,64,0,3,64,0,0,16,0,20, -16,0,1,90,8,0,2,36,0,0,9,0,1,4,128,4,130,0,0,34,68,36,141,8,145,128, -16,208,251,96,128,0,0,128,3,66,0,1,192,3,0,1,8,0,6,6,8,0,2,3,100,128, -16,0,19,1,2,0,0,20,0,1,120,64,11,232,128,0,1,3,112,128,20,196,1,56,0, -0,3,224,0,0,12,0,0,200,255,8,0,2,6,66,0,2,3,0,1,6,0,11,12,0,0,1,0,19, -128,6,0,1,24,0,3,4,128,1,0,1,4,192,0,0,16,0,0,3,97,0,0,12,128,1,0,0, -32,169,252,0,3,38,64,0,2,3,0,1,8,0,6,64,4,0,2,140,136,65,16,0,18,128, -70,1,0,0,16,0,1,96,17,72,16,0,0,1,0,0,2,0,0,128,26,17,35,0,0,10,0,1, -40,128,0,0,80,255,0,5,4,0,41,192,0,24,144,255,32,0,0,4,128,0,0,16,32, -2,64,0,0,8,0,0,1,32,0,0,4,128,0,2,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0 -,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,3,64,0,0,8,0,0,1,32,0 -,0,4,0,0,24,255,0,18,128,0,29,1,0,14,16,0,7,144,255,36,0,0,4,128,0,2, -2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,4,2,64,0,0,8,0,0,1,32,0,0,4,0,15 -,32,0,0,4,0,0,16,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,130,2,65 -,0,0,8,0,0,1,32,0,0,4,0,0,65,253,12,0,4,2,0,1,8,1,0,0,32,4,0,7,16,4,0 -,4,6,0,17,2,64,0,2,9,0,7,192,0,2,9,96,0,6,219,251,0,1,4,128,0,1,64,2, -0,1,8,0,1,32,0,0,4,128,0,5,8,0,0,1,32,0,17,32,0,1,32,0,0,1,0,1,64,0,2 -,1,32,0,0,4,0,3,2,0,1,8,0,1,32,0,0,4,0,0,184,253,8,0,61,4,0,10,242, -249,32,4,5,128,0,1,130,2,0,0,8,10,0,0,32,40,0,0,4,128,0,0,16,2,67,16, -8,10,0,0,1,32,0,1,64,0,14,32,0,0,132,32,16,20,130,64,72,0,0,8,65,1,32 -,0,0,4,0,0,32,16,2,129,16,8,9,0,0,33,40,0,0,4,0,0,160,250,0,28,64,0, -44,152,251,0,16,128,0,10,4,0,37,16,0,1,64,0,2,80,250,0,11,16,0,4,8,0, -32,8,0,2,8,0,7,16,0,4,1,0,2,152,254,0,9,4,0,7,2,0,6,4,0,24,2,0,4,32,0 -,1,4,32,0,0,8,0,2,8,0,0,4,0,2,80,255,0,4,2,0,21,4,0,18,128,128,0,7,4, -0,1,128,0,3,64,0,0,1,0,5,104,255,0,4,4,64,0,13,8,0,5,1,64,0,21,4,32,0 -,3,8,0,4,64,4,0,2,64,0,4,88,248,0,4,1,0,5,4,2,0,3,66,0,5,8,8,64,0,18, -16,128,0,0,4,32,0,1,128,0,1,4,2,0,1,32,0,4,1,0,2,32,0,2,224,253,0,16, -4,0,0,32,0,0,64,0,3,128,0,22,32,0,3,8,0,9,8,0,0,2,0,5,144,255,4,0,2, -160,130,2,0,4,2,4,0,1,128,0,0,34,148,0,0,64,80,0,0,12,2,36,128,0,18, -24,0,0,1,18,64,0,1,10,9,0,0,2,4,0,1,16,20,0,1,80,144,10,2,0,1,64,0,0, -2,0,0,216,254,0,3,36,4,2,0,3,20,137,3,0,3,192,18,0,1,176,2,0,2,45,4,0 -,17,24,168,2,129,37,0,1,185,5,0,0,32,0,1,32,0,0,156,0,2,2,73,224,16,0 -,1,192,32,4,64,249,0,10,16,0,0,2,0,3,64,0,2,128,0,23,16,8,2,2,64,0,1, -2,2,0,10,1,32,64,0,1,128,0,1,88,252,0,2,128,0,7,4,4,0,3,16,64,0,5,128 -,0,0,1,0,20,64,0,8,8,0,0,2,4,0,1,4,128,64,0,3,32,32,128,250,0,2,128,0 -,14,2,0,37,32,0,6,32,0,0,8,0,5,152,255,0,25,128,0,29,4,0,0,1,0,6,1,64 -,0,5,64,254,0,0,128,0,7,1,0,1,4,0,5,64,8,0,29,64,8,64,8,0,2,32,0,3, -128,0,0,2,0,2,8,0,2,4,112,250,0,3,128,0,14,16,16,2,0,23,4,0,14,80,0,0 -,64,0,1,128,0,2,1,0,1,8,249,0,3,128,0,20,2,4,0,24,2,0,3,2,64,0,3,1,0, -9,208,252,0,5,2,0,10,8,0,51,1,0,2,160,253,0,3,8,0,21,2,0,46,48,253,0, -3,8,32,0,1,128,0,17,2,0,20,1,0,2,16,0,1,32,16,128,0,8,2,0,0,2,0,3,128 -,255,0,51,16,0,2,64,0,1,1,0,1,16,0,0,32,0,9,184,249,0,3,16,0,46,16,0, -11,1,0,0,2,0,6,136,253,0,3,2,0,20,128,0,0,16,0,27,4,0,5,16,0,9,80,249 -,0,17,32,16,0,54,168,254,0,74,152,255,0,8,2,0,44,8,0,8,16,0,8,48,252, -0,8,8,0,37,16,0,14,2,0,0,8,0,7,136,253,0,12,1,0,35,2,0,23,184,254,0,8 -,64,0,7,16,0,55,200,255,0,63,128,0,7,1,0,0,144,254,0,4,68,0,2,1,0,1,4 -,0,3,8,0,10,32,0,18,2,0,2,16,1,0,2,200,0,5,8,0,1,50,0,3,16,0,0,104, -248,0,4,8,16,0,9,2,1,0,8,2,8,0,19,128,0,3,68,0,1,16,0,5,32,0,3,8,0,3, -232,255,16,0,7,2,0,8,32,0,44,66,0,8,168,251,0,22,4,0,28,4,0,2,1,0,0,4 -,0,5,72,128,0,0,1,0,4,152,255,0,0,1,0,9,8,0,4,64,16,16,0,1,64,0,2,32, -0,0,4,0,18,4,128,0,17,8,0,4,32,254,0,27,8,0,27,2,0,1,2,0,6,32,0,2,4,0 -,1,80,249,0,0,1,16,0,3,8,128,0,10,8,0,7,8,0,15,64,8,0,1,1,128,0,12,8, -64,0,0,32,0,0,2,0,3,8,251,80,0,0,8,0,1,16,128,0,1,128,0,2,66,32,0,5,4 -,0,0,1,32,0,16,4,0,6,2,0,0,2,8,0,2,4,0,1,8,0,4,128,0,3,4,0,0,9,0,0, -152,253,96,0,0,12,0,1,16,128,4,128,80,194,0,1,40,0,0,1,0,1,64,0,0,4, -16,0,0,2,64,0,1,5,0,0,16,0,11,2,0,2,168,8,0,1,6,64,10,16,0,0,192,12,1 -,0,1,4,0,1,128,22,132,194,0,0,16,10,2,8,5,5,0,0,128,253,0,1,128,0,1, -128,0,0,64,5,64,64,0,1,128,0,4,32,136,4,64,160,0,0,136,2,1,0,0,8,0,2, -16,0,0,128,0,9,72,0,0,88,36,5,40,16,4,6,2,160,17,0,1,1,4,2,64,0,0,88, -2,32,197,75,4,0,0,64,48,0,0,216,250,0,7,4,0,4,1,0,3,16,8,8,0,0,32,0,1 -,2,0,1,16,0,16,1,8,0,0,1,32,0,0,2,0,7,2,16,0,0,8,0,3,1,0,1,17,0,0,216 -,252,0,4,16,0,3,10,0,11,1,0,0,1,0,0,1,0,4,16,0,0,32,0,11,128,0,2,8,0, -0,1,0,5,16,0,2,4,8,0,0,32,8,0,2,8,0,0,192,252,0,3,4,0,4,64,0,13,8,0, -30,8,0,4,64,0,0,4,4,0,5,1,0,0,24,250,0,9,64,0,6,128,0,40,1,0,1,128,2, -0,9,200,248,0,27,128,16,0,21,2,4,0,4,128,0,2,128,64,0,9,152,248,0,26, -128,0,0,32,0,34,2,6,0,7,88,251,6,0,18,1,2,0,1,8,0,2,64,0,20,2,0,5,16, -0,6,1,0,1,128,0,2,2,0,0,128,128,253,0,3,2,0,10,128,16,0,8,32,132,0,28 -,1,0,4,33,0,6,2,0,1,184,248,0,3,16,0,43,8,0,9,2,0,1,16,0,4,128,0,4, -176,252,0,0,64,0,3,32,0,1,128,0,2,2,0,6,4,128,0,24,8,0,0,1,32,0,3,16, -0,10,8,0,1,34,0,2,168,254,0,4,16,0,1,128,0,10,2,0,1,8,0,4,8,0,26,2,0, -6,32,0,8,16,254,0,4,128,0,13,32,0,4,32,0,21,4,0,8,2,0,5,16,0,1,128,32 -,0,3,128,249,0,3,1,8,0,20,1,2,0,19,16,0,1,4,0,13,4,0,6,24,252,0,17,16 -,0,7,64,0,0,16,0,21,64,0,4,6,0,7,8,0,7,252,0,2,128,64,0,1,2,0,1,8,0,1 -,32,0,11,32,8,2,0,17,4,33,0,5,104,130,0,0,160,5,132,64,0,2,26,73,35,0 -,2,160,145,52,18,240,250,0,4,1,0,7,129,0,10,128,0,19,16,0,6,32,0,1, -128,1,17,0,3,24,0,0,2,1,0,1,128,1,48,0,0,152,252,0,6,22,0,1,88,0,1,64 -,1,0,10,64,128,0,18,48,0,6,96,0,1,128,1,0,4,24,192,3,1,0,1,128,1,32,0 -,0,16,249,0,3,160,0,1,10,0,1,40,0,1,160,5,2,0,9,160,0,19,48,18,0,5,32 -,68,0,0,128,9,50,18,0,2,152,32,3,0,2,128,9,17,65,48,254,0,3,32,8,0,0, -12,0,1,48,0,1,160,8,2,0,9,32,17,2,0,17,32,2,0,9,129,128,0,3,144,64, -161,0,3,5,178,16,184,252,0,2,128,1,0,1,18,0,1,72,0,1,96,0,11,96,0,19, -60,32,0,5,24,32,0,0,224,0,0,12,32,0,2,14,200,3,0,2,224,0,0,60,0,0,192 -,251,0,4,2,0,0,16,0,1,64,0,1,128,1,0,11,1,0,18,48,0,6,64,0,1,128,1,16 -,0,3,24,0,0,3,2,0,1,128,1,48,0,0,160,252,0,3,68,0,1,8,0,1,32,0,1,128, -8,1,0,30,56,16,0,5,96,33,0,1,136,0,0,16,0,3,66,35,0,3,40,0,0,33,104, -251,0,2,128,16,0,1,2,0,1,8,0,4,128,38,0,2,64,18,1,0,1,160,8,0,8,34,0, -6,17,0,0,4,16,0,4,35,12,64,0,0,160,16,0,5,64,19,12,132,65,2,0,0,20,2, -232,248,0,4,4,0,10,6,4,0,7,64,0,8,12,0,6,6,0,0,16,0,5,3,32,0,2,128,0, -6,1,32,0,4,16,200,251,0,6,22,0,1,88,0,5,2,0,3,3,0,2,96,0,0,1,0,7,12,0 -,6,6,0,0,48,16,0,3,128,0,1,32,0,0,128,1,1,0,5,3,1,64,3,0,1,48,32,104, -250,8,0,2,16,8,0,0,10,0,1,40,0,5,4,8,0,2,8,1,0,1,32,8,0,8,10,0,6,5,0, -0,48,0,4,64,83,96,4,0,9,9,96,4,33,16,0,0,128,0,0,179,251,0,3,64,2,0,0 -,12,0,1,48,0,5,64,4,0,2,139,0,3,144,0,8,10,0,6,5,0,0,32,17,0,3,64,19, -65,17,0,0,128,16,0,6,96,64,17,0,2,16,2,241,250,0,2,128,1,0,1,18,0,1, -72,0,4,128,7,0,2,192,1,0,2,96,0,19,60,0,4,192,3,56,0,1,96,1,1,0,4,192 -,0,0,56,0,0,11,8,0,0,44,32,56,250,4,0,5,16,0,1,64,0,10,3,0,23,48,32,0 -,4,3,97,64,0,0,128,1,0,6,2,98,16,0,2,48,0,0,241,248,0,3,68,2,0,0,8,0, -1,32,0,5,132,0,3,83,0,2,32,16,2,0,17,56,1,0,3,64,16,112,4,0,0,128,1,2 -,0,5,11,96,0,0,65,16,0,0,48,64,168,254,0,2,128,16,1,0,0,2,0,1,8,0,1, -32,8,0,2,208,16,0,5,32,0,19,52,64,0,3,64,9,8,33,0,0,160,1,0,5,64,16,4 -,0,0,33,2,0,0,4,16,88,252,0,13,64,0,2,192,0,7,64,0,18,48,0,6,34,0,1, -128,1,0,6,1,0,6,32,249,0,4,1,0,0,22,0,1,88,0,1,96,0,3,64,64,0,5,224,0 -,0,1,0,17,48,0,5,3,2,32,0,0,224,1,0,9,3,0,1,48,0,0,208,254,4,0,2,64,0 -,1,10,0,1,40,0,1,32,0,0,1,0,1,128,4,0,5,32,8,0,18,48,66,0,4,16,96,0,1 -,160,1,0,6,67,0,1,33,8,0,0,48,17,202,251,12,0,3,1,0,0,12,0,1,48,0,7, -66,0,6,144,0,18,160,64,0,4,9,64,20,0,0,128,1,0,6,2,1,0,4,65,96,250,0, -2,128,1,0,1,18,0,1,72,0,1,96,0,0,1,0,1,240,0,6,96,0,17,1,0,0,28,0,4, -192,2,57,0,1,192,1,0,5,192,1,0,1,3,8,0,0,12,0,0,16,254,8,0,3,1,0,0,16 -,0,1,64,0,3,1,0,2,128,0,24,8,0,0,48,0,5,3,98,16,0,0,128,1,0,6,3,0,4, -32,8,57,254,0,3,4,0,1,8,0,1,32,0,1,32,5,0,2,128,0,6,32,16,2,0,15,6,0, -1,5,0,4,11,112,4,0,0,128,1,0,6,83,0,1,73,16,0,0,176,0,0,80,253,160,1, -0,0,128,16,0,1,2,0,1,8,0,1,160,0,3,208,16,26,1,0,3,32,9,2,0,19,70,0,1 -,10,66,3,8,128,0,0,160,1,20,4,0,3,64,16,12,8,0,2,52,0,0,120,252,128,1 -,0,2,1,0,7,128,0,2,192,0,0,24,8,0,22,8,0,2,6,2,0,2,3,0,2,128,1,1,0,5, -1,96,0,3,48,32,232,253,224,1,0,0,128,1,0,1,22,0,1,88,0,1,192,65,0,2, -64,64,8,16,0,3,64,129,0,16,1,0,2,7,0,1,24,192,3,0,2,96,129,48,16,0,5, -64,64,0,2,60,16,120,249,168,1,0,0,128,32,1,0,0,10,0,1,40,0,1,160,16,0 -,2,128,4,16,0,4,32,0,20,128,160,0,2,73,3,0,0,18,0,0,128,5,0,0,1,0,4, -67,96,0,3,144,0,0,2,255,128,1,0,4,12,0,1,48,0,1,32,0,0,2,0,2,24,64,8, -0,3,32,0,17,4,0,1,128,38,2,0,0,8,1,3,0,0,68,0,0,160,81,144,0,5,2,98, -130,0,2,52,10,160,255,192,1,0,0,128,1,4,0,0,18,0,1,72,0,1,96,1,0,2, -240,0,0,30,0,4,224,128,0,16,4,0,1,128,7,0,1,22,144,3,24,0,1,224,1,44, -16,0,3,192,1,88,0,3,60,0,0,32,254,132,1,0,4,16,0,1,64,0,2,1,0,3,64,0, -29,2,0,0,24,0,0,3,64,0,1,128,1,48,32,0,4,3,96,0,3,32,0,0,169,249,128, -1,0,1,36,8,0,0,8,0,1,32,0,1,128,9,1,0,1,128,0,0,16,2,0,3,128,0,17,4,0 -,2,6,0,1,152,16,3,96,8,0,0,128,16,177,0,5,11,114,36,0,2,48,34,192,254 -,0,1,52,128,36,1,0,0,2,0,1,8,0,1,32,0,3,144,0,3,4,0,1,32,4,1,0,17,36, -129,68,24,0,1,64,35,10,1,0,0,32,128,0,0,128,2,16,24,0,0,64,32,44,4,1, -161,129,4,1,56,251,0,1,48,0,0,2,0,12,64,128,0,1,3,0,2,128,0,17,2,0,1, -32,0,4,2,32,64,0,4,6,66,0,2,1,0,0,32,8,0,0,1,0,0,16,224,248,0,1,60, -128,3,0,1,22,0,1,88,0,9,128,3,0,2,64,0,17,2,0,0,32,0,0,4,192,0,1,192, -3,0,0,32,0,0,128,1,0,2,128,0,3,98,64,10,128,1,48,0,0,88,249,8,0,0,52, -128,4,0,1,10,0,1,40,0,1,128,5,1,0,1,64,130,0,0,64,19,1,0,1,160,4,1,0, -7,64,0,9,4,128,192,0,2,3,97,2,0,0,128,137,0,1,22,66,68,0,1,35,0,0,2, -13,132,17,49,4,91,251,0,1,48,0,0,4,0,1,12,0,1,48,0,2,128,0,2,192,4,0, -0,64,11,2,0,1,32,49,0,9,2,0,5,5,0,0,144,16,34,4,130,0,0,64,33,64,1,0, -1,8,2,0,0,22,0,0,2,0,1,34,32,128,69,136,1,130,64,201,248,0,1,56,128,2 -,0,1,18,0,1,72,0,1,224,1,0,2,240,32,0,0,192,0,3,96,0,9,128,1,0,7,60, -128,7,48,0,1,192,131,56,32,0,0,96,0,1,128,7,52,128,0,0,192,129,88,0,0 -,3,224,1,12,0,0,174,250,4,0,0,48,0,0,2,0,1,16,0,1,64,0,1,128,129,0,2, -192,0,2,3,1,0,2,1,0,25,3,96,0,1,128,65,0,1,6,0,3,3,96,0,0,12,128,129, -32,0,0,64,254,0,1,48,0,0,4,0,1,8,0,1,32,0,1,128,5,0,3,72,0,1,3,0,14,2 -,0,7,16,17,34,2,68,0,1,3,100,68,0,0,128,4,0,1,18,72,2,1,0,0,163,96,65 -,68,200,1,176,8,56,255,16,0,1,128,0,2,2,64,35,8,0,1,32,0,0,52,64,0,0, -16,128,26,64,34,0,2,32,64,0,18,4,132,20,0,2,64,11,9,1,0,0,32,4,2,0,1, -80,8,10,65,2,104,33,5,33,1,5,34,208,249,0,8,3,1,0,2,64,48,0,1,64,0,0, -24,0,0,3,1,0,22,48,0,0,6,2,0,2,2,32,64,0,6,64,0,0,8,1,98,0,1,128,1,0, -1,152,248,0,2,128,5,0,1,22,0,0,1,90,0,1,224,128,0,4,30,192,2,0,2,96,0 -,0,1,0,8,1,0,7,32,128,1,0,3,3,1,32,0,0,128,1,0,2,192,128,24,0,1,32,64 -,14,2,129,48,0,0,184,253,12,0,1,128,2,0,1,10,0,0,18,40,0,1,32,16,48, -17,0,0,192,64,26,0,0,80,0,2,32,8,0,9,1,0,7,176,64,4,4,0,2,2,96,2,0,0, -128,41,0,5,32,17,65,1,5,128,8,48,5,170,250,4,0,2,3,0,1,12,0,0,32,50,0 -,3,32,6,0,0,128,2,24,64,147,0,3,144,0,18,48,162,38,0,3,1,64,2,0,1,8,1 -,0,1,64,2,8,1,11,0,0,12,33,8,145,0,0,33,200,255,0,2,128,4,0,1,18,192, -3,72,0,1,96,0,0,29,0,1,112,32,28,192,1,0,2,96,1,0,9,1,0,7,44,128,3,1, -0,1,192,3,57,32,0,0,96,0,3,176,64,22,208,131,120,0,0,11,224,0,0,12,0, -0,112,253,4,0,2,4,0,1,16,0,1,64,0,3,33,32,0,0,192,0,0,24,0,25,48,32,2 -,0,3,3,96,0,1,128,1,0,2,192,128,24,0,0,3,0,0,32,8,0,0,1,32,0,0,113, -252,0,3,2,0,1,8,0,0,66,32,0,1,32,4,8,2,0,0,224,8,25,64,9,2,0,1,32,16, -2,0,7,128,0,8,184,128,16,4,0,2,19,98,10,0,0,128,80,0,2,192,2,152,16,8 -,68,0,0,76,136,16,49,10,80,248,0,2,128,0,2,2,0,1,72,0,1,32,64,180,0,1 -,16,2,1,0,4,32,72,52,0,7,128,0,8,20,130,68,8,0,1,64,3,8,1,0,1,144,0,0 -,128,66,0,3,19,106,4,1,0,1,48,32,152,253,0,9,32,0,3,48,16,0,0,64,0,8, -48,0,18,16,0,5,32,64,0,0,128,1,0,2,2,0,3,96,32,0,2,48,0,0,240,254,0,2 -,128,5,0,1,22,0,1,88,0,1,96,128,16,0,2,64,0,5,224,0,0,60,0,7,64,1,0,7 -,48,32,4,2,0,2,3,2,32,0,0,192,1,0,1,6,0,2,128,3,32,64,0,2,56,0,0,120, -253,4,0,1,128,2,0,1,10,0,1,40,0,1,32,16,32,64,0,0,192,8,0,5,32,4,54,0 -,15,8,0,1,1,32,0,3,3,96,2,0,0,160,9,1,0,1,8,0,1,64,3,66,2,12,16,0,0,4 -,5,67,255,12,0,2,3,0,1,12,0,1,48,0,3,48,1,0,0,128,130,0,6,4,48,0,15,1 -,0,0,16,9,34,4,0,2,139,64,65,0,0,160,5,1,0,0,34,1,0,1,64,16,1,12,0,0, -4,0,0,52,17,1,251,0,2,128,4,0,1,18,0,1,72,0,1,96,1,13,16,0,0,112,0,6, -96,0,0,57,0,17,44,128,7,0,2,192,3,56,0,1,96,0,1,128,5,0,2,192,3,120,0 -,0,15,0,1,60,0,0,56,249,8,0,2,4,0,1,16,0,1,32,0,3,17,16,0,0,192,0,8, -49,0,17,48,8,0,0,4,0,2,3,96,0,1,128,129,0,1,6,4,0,2,3,0,0,32,12,0,2, -32,81,252,0,3,2,0,1,8,0,1,64,0,1,32,4,136,0,1,224,0,0,1,0,4,32,4,48,0 -,17,48,1,34,0,3,3,97,32,0,0,160,5,0,1,22,0,3,35,66,0,0,12,8,0,0,52,0, -0,120,255,0,2,128,0,0,208,4,2,0,1,8,33,1,164,16,4,2,0,0,16,0,0,1,0,1, -104,0,0,1,32,16,0,16,32,8,37,129,2,16,16,0,0,64,145,104,65,45,48,8,0, -0,128,70,8,0,1,64,1,104,64,77,0,1,52,0,0,112,255,0,4,192,128,0,5,128, -129,48,16,0,5,96,0,1,128,0,0,1,0,15,129,0,1,32,4,196,0,2,2,96,0,0,12, -0,0,128,0,1,6,0,3,130,96,0,0,12,4,0,0,48,0,0,192,255,0,2,128,5,64,0,0 -,22,0,4,192,0,0,49,0,6,120,0,1,72,0,17,16,128,32,0,0,6,128,64,0,1,3, -96,0,1,128,1,0,1,6,0,3,3,98,0,0,12,4,0,0,60,0,0,200,248,8,0,1,128,2, -128,0,0,11,0,2,34,0,0,161,17,48,32,0,1,66,0,2,104,0,0,64,160,144,0,1, -4,0,5,16,2,0,5,136,9,128,32,22,66,0,2,35,1,32,8,132,33,0,2,2,0,2,3,0, -0,32,128,0,1,52,0,0,114,255,0,3,3,0,0,128,12,0,2,1,64,168,17,18,1,0,5 -,96,0,0,64,36,1,2,0,0,2,0,5,16,1,0,5,8,1,145,16,16,130,4,0,1,1,32,132 -,44,0,0,136,0,1,2,0,3,1,32,0,0,4,0,1,48,0,0,128,254,0,2,128,4,240,0,0 -,18,0,1,24,16,3,96,1,12,32,0,0,48,64,0,2,112,0,0,3,96,0,2,7,0,5,144,3 -,0,5,232,0,0,60,128,5,112,128,0,0,192,3,89,0,0,15,104,0,1,128,5,2,0,1 -,192,3,89,32,11,4,0,0,56,0,0,184,251,4,0,2,4,0,0,64,16,0,4,136,1,16, -16,0,0,128,32,0,2,96,0,2,1,0,0,128,5,0,5,208,2,0,5,136,1,0,1,4,129,64 -,0,1,3,0,1,12,128,65,0,6,3,0,4,48,0,0,25,253,0,3,2,128,0,0,8,0,1,64, -16,72,0,0,1,32,2,0,0,192,8,0,2,96,0,0,12,8,0,2,4,0,5,8,2,0,5,132,129, -144,16,22,64,4,0,1,67,80,129,68,129,16,0,1,165,0,3,19,82,129,74,1,0,0 -,48,0,0,40,252,0,29,4,0,6,2,0,35,248,251,32,0,0,4,128,0,0,16,0,0,2,64 -,0,0,8,0,0,1,0,1,4,128,0,0,16,0,0,2,0,1,8,0,0,1,0,1,4,0,7,2,0,6,33,0, -0,4,0,1,16,0,0,2,0,1,8,0,0,1,0,1,4,128,0,0,16,0,0,2,0,1,8,0,1,32,0,2, -8,255,0,74,152,255,36,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,132,4, -128,0,0,16,0,0,2,64,32,10,0,0,1,32,132,4,0,15,32,0,0,4,128,64,20,0,0, -2,64,8,12,0,0,1,32,132,4,128,0,0,16,0,0,2,64,32,9,0,0,33,36,0,0,132, -16,89,253,12,8,1,4,0,15,64,32,0,1,12,0,3,17,0,23,32,4,0,2,144,0,13,32 -,235,250,0,4,16,0,1,64,0,2,1,32,0,0,4,128,0,0,16,0,5,1,32,0,17,32,0,0 -,4,0,1,16,0,0,2,0,1,8,0,0,1,0,1,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,2 -,240,251,8,0,27,16,0,44,178,252,32,144,4,193,16,18,0,0,66,96,0,0,8, -129,1,32,132,4,128,0,0,16,0,0,2,73,8,12,36,1,32,132,4,0,15,32,0,0,4, -128,16,24,0,0,2,64,136,8,0,0,1,32,64,4,128,0,0,16,0,0,2,64,8,9,0,0,33 -,36,0,0,4,8,224,254,0,12,128,0,0,2,0,2,2,0,18,128,0,2,128,0,4,2,0,2, -128,0,1,1,0,0,64,0,3,8,0,0,1,0,6,136,0,0,120,249,0,20,128,1,0,25,1,0, -3,8,0,19,16,255,0,4,8,0,8,32,0,2,16,0,6,128,0,25,2,0,19,136,252,0,4,8 -,0,12,128,0,7,2,0,18,4,0,5,1,0,8,4,0,0,8,0,2,64,0,0,8,0,0,16,252,0,59 -,1,0,4,16,0,6,32,152,252,0,58,64,0,10,1,128,0,1,76,255,0,1,16,0,3,8,4 -,1,0,0,16,4,8,0,4,32,0,1,1,0,24,8,0,7,1,40,0,3,4,0,3,64,0,1,32,0,2,88 -,248,0,1,4,0,1,4,0,4,32,0,0,128,64,0,1,4,0,2,64,0,0,8,32,0,0,128,64,0 -,25,1,0,1,8,0,7,4,0,0,2,0,0,4,0,3,128,248,0,1,12,0,1,4,0,0,4,136,0,0, -192,96,42,36,45,161,128,0,1,64,0,0,192,0,0,8,64,0,0,32,5,1,0,18,16,0, -0,128,2,0,0,64,0,2,67,69,0,1,5,0,0,2,0,0,128,18,0,0,18,0,0,41,64,0,2, -144,251,128,0,0,160,128,0,0,128,0,1,20,10,64,0,0,36,0,1,128,0,2,4,0,0 -,6,72,32,0,1,128,97,1,0,17,16,0,0,2,1,2,48,0,0,9,5,0,0,64,34,1,52,6, -128,0,0,48,128,0,1,32,24,8,137,2,0,0,132,72,253,32,0,6,4,0,2,1,0,7,8, -0,0,8,0,1,32,0,0,1,0,17,8,128,0,0,2,0,2,2,0,2,8,0,0,32,0,2,128,0,2,32 -,64,0,0,128,0,2,8,253,0,1,32,0,1,16,0,1,128,0,0,8,0,9,16,128,0,2,128, -64,0,23,8,0,4,32,0,0,16,8,0,0,4,128,0,3,16,1,2,0,1,160,136,249,0,13, -128,0,7,64,0,3,2,0,17,8,0,1,1,0,19,16,0,2,128,248,0,15,32,0,0,16,0,8, -9,0,22,2,0,1,8,0,3,4,0,4,64,0,2,4,0,3,168,254,0,27,1,0,33,16,0,10,136 -,254,0,12,1,0,38,8,0,2,1,0,1,1,0,4,8,0,6,32,16,252,0,5,32,0,1,8,0,7,1 -,0,25,64,4,128,0,5,8,16,16,0,4,8,0,1,32,0,0,8,0,0,1,0,3,4,40,249,0,17 -,64,32,0,30,1,0,0,128,4,16,0,1,64,0,6,128,4,0,6,240,249,0,5,2,0,10,16 -,0,33,8,0,4,128,0,5,8,0,0,8,0,4,16,40,252,2,0,44,32,0,8,16,0,4,4,0,5, -128,0,4,88,254,0,3,4,0,6,2,0,1,16,32,0,29,16,0,0,16,0,8,1,0,4,16,64, -128,0,4,32,0,0,224,248,0,4,1,0,15,2,0,23,32,0,1,16,0,3,128,128,0,10,4 -,0,5,72,254,0,18,1,0,6,1,0,20,8,0,0,32,0,1,4,0,4,32,0,5,4,0,3,64,0,2, -255,0,13,32,0,12,16,0,17,128,0,6,32,0,18,32,254,0,12,64,0,4,128,0,1,4 -,2,0,22,4,128,0,0,2,0,4,64,0,12,2,4,0,2,80,249,0,1,4,0,9,128,0,0,2,0, -2,1,0,50,2,0,2,208,252,0,7,64,0,6,128,0,2,2,0,53,176,251,0,14,64,4,0, -1,2,0,33,2,0,0,8,0,2,32,0,1,128,0,4,16,0,4,200,251,0,49,32,16,0,18,64 -,0,2,136,249,0,37,1,0,0,16,4,0,1,16,0,29,250,253,0,15,16,0,7,32,4,0, -20,8,0,25,224,252,0,13,64,0,43,32,0,10,8,0,1,4,88,249,0,14,64,0,30,32 -,16,0,4,64,8,0,1,128,0,1,4,128,0,0,16,0,2,4,0,3,17,0,0,192,248,0,2, -128,1,0,9,16,0,3,1,0,3,4,64,0,21,4,0,24,24,250,16,0,16,128,0,36,8,0,9 -,64,0,0,8,0,4,192,251,0,0,32,0,17,64,0,25,80,0,0,8,0,4,2,0,2,4,0,3,2, -0,1,64,2,72,0,4,88,248,8,64,4,0,3,8,4,0,0,1,0,0,4,2,0,10,4,128,64,0, -16,64,0,0,16,0,2,128,2,0,1,8,64,2,32,0,1,32,0,0,4,0,0,2,4,0,2,2,0,2, -136,144,255,16,0,0,8,128,0,0,16,0,1,16,0,0,34,16,0,0,136,0,0,1,8,0,0, -128,0,2,128,0,0,32,0,3,8,0,16,1,0,1,4,32,0,1,1,0,1,1,0,3,2,0,3,1,64,0 -,3,33,0,0,202,251,0,0,128,12,128,0,0,16,0,0,4,24,0,0,203,64,2,44,5,1, -37,0,0,16,0,2,80,2,64,2,64,176,0,0,37,0,11,8,0,1,64,0,0,9,0,0,20,5, -192,132,66,0,0,16,32,3,64,0,1,144,0,0,2,20,4,72,10,8,0,0,66,1,40,165, -21,128,254,0,0,8,32,0,0,10,64,16,24,4,193,64,0,0,100,64,0,0,16,85,0,0 -,1,128,0,0,4,0,0,146,0,0,32,64,4,0,0,39,0,10,4,2,0,1,128,0,0,128,8, -130,17,0,0,136,4,130,8,0,0,4,34,0,0,16,42,4,64,17,128,18,131,8,0,0,1, -137,2,32,0,0,112,252,0,3,2,32,0,0,8,132,128,0,1,4,0,1,4,0,1,4,0,1,4,0 -,18,8,2,0,1,64,0,1,8,2,1,0,0,4,2,0,0,2,0,0,4,8,0,0,4,4,0,0,64,0,1,128 -,128,0,2,128,0,2,72,253,0,1,8,0,2,64,2,0,1,10,0,4,32,0,11,8,0,19,2,0, -2,1,0,6,2,0,0,32,0,0,4,1,0,2,8,0,0,4,0,0,128,255,16,0,18,1,32,0,15,8, -24,0,2,24,0,9,1,32,0,18,204,249,18,0,3,2,128,0,6,128,0,2,4,0,2,128,0, -3,64,0,8,128,4,0,1,18,1,0,6,1,0,3,64,0,1,2,0,1,8,0,0,5,32,0,0,16,0,3, -4,0,1,128,196,252,0,11,32,0,4,64,0,0,8,0,4,32,0,30,32,0,5,2,0,1,65,64 -,0,0,1,0,0,4,64,56,251,0,3,2,0,3,8,0,4,33,0,0,16,0,8,2,0,20,128,2,0,6 -,128,0,0,2,0,12,64,128,249,0,2,32,0,3,32,0,1,128,0,1,2,0,4,48,0,0,128 -,12,0,23,4,0,0,8,0,1,64,0,0,132,0,2,2,0,3,1,0,1,1,32,0,4,128,184,248, -0,3,4,0,8,3,0,3,64,0,6,1,0,18,12,0,7,64,0,0,32,1,0,1,8,0,0,1,0,1,2, -137,0,0,24,32,0,0,36,0,0,40,254,0,0,1,0,2,4,0,7,32,0,0,8,0,9,32,0,15, -128,0,21,2,0,2,8,0,2,120,254,0,21,4,0,24,128,0,3,64,0,4,2,0,12,64,0,0 -,120,251,0,9,32,0,0,1,0,1,1,0,10,4,0,19,32,1,0,5,128,16,16,64,64,64,0 -,6,128,16,0,0,4,0,0,8,0,0,252,0,9,128,0,6,128,0,1,64,0,25,72,0,0,36,0 -,4,1,0,1,128,0,0,128,0,7,1,0,2,16,200,253,0,8,4,0,4,4,0,1,32,0,2,64,0 -,17,32,0,3,2,64,64,0,2,16,0,1,64,0,2,32,10,0,4,128,0,0,128,0,0,8,0,1, -66,0,1,252,0,4,32,0,11,32,0,29,2,0,3,129,0,11,129,16,1,0,2,144,0,0,40 -,254,0,1,20,0,4,64,3,0,7,16,68,0,2,104,4,0,19,32,1,4,0,14,192,8,1,64, -99,0,6,96,255,0,1,32,0,5,3,0,12,96,64,0,19,128,64,0,15,192,0,2,1,0,5, -16,232,252,0,1,44,0,14,48,32,0,2,96,32,0,19,224,0,16,224,0,1,128,3,0, -4,60,8,208,253,0,1,20,0,14,16,0,3,96,0,20,32,1,0,0,64,0,13,16,72,0,0, -64,33,2,0,3,52,2,32,249,0,1,24,17,0,4,35,0,8,8,0,2,64,20,0,20,1,128, -32,0,13,208,34,0,0,64,34,2,0,4,2,232,253,0,1,32,0,4,192,131,0,7,48, -128,0,2,120,0,20,160,0,0,12,0,14,240,0,1,192,3,0,4,60,32,240,251,0,1, -32,0,5,3,0,8,32,0,2,96,0,20,128,0,1,16,0,17,2,0,6,24,248,0,1,16,9,0,4 -,35,1,0,6,128,2,0,2,96,66,0,20,1,48,0,14,192,128,0,0,64,3,0,4,176,8, -64,249,160,145,4,0,4,64,35,12,4,1,0,6,66,16,0,5,4,0,7,40,0,6,52,0,3, -80,0,2,131,0,7,192,8,1,0,6,48,66,184,250,128,0,7,3,0,0,64,0,24,12,0,6 -,6,0,3,128,0,2,3,0,17,48,0,0,72,250,192,1,44,0,4,192,1,0,0,32,12,8,0, -5,8,0,7,32,0,6,12,0,6,102,1,0,2,176,0,1,192,3,0,7,224,0,8,56,0,0,160, -249,168,128,20,0,4,64,138,0,1,64,0,6,72,8,0,6,1,0,6,10,0,6,165,0,3,80 -,0,1,64,3,0,7,208,20,0,7,4,33,178,248,32,17,24,17,0,4,35,64,132,0,0, -16,0,5,88,0,7,4,0,6,10,0,6,197,0,3,96,24,0,1,32,0,7,16,2,1,0,6,52,8, -240,248,192,1,33,0,4,192,131,24,0,0,3,0,6,30,16,0,5,60,0,15,32,1,0,2, -144,0,1,192,128,0,7,240,0,8,60,0,0,120,252,4,1,32,0,5,3,0,2,4,0,5,16, -8,0,6,16,0,15,1,0,2,128,0,11,192,128,0,8,16,177,254,128,1,16,8,0,4,10 -,1,66,0,7,80,0,23,128,0,3,64,32,0,10,192,0,8,176,0,0,64,250,160,133,4 -,0,4,64,144,0,7,208,40,0,2,8,0,20,32,0,3,16,0,5,1,0,1,4,0,4,64,16,1,0 -,5,40,249,128,1,0,15,192,0,38,4,0,4,64,0,1,3,0,5,16,152,252,128,65,44 -,0,5,128,0,7,192,64,0,16,18,0,6,105,1,0,2,176,0,11,240,0,8,60,8,176, -251,136,8,20,0,5,16,0,7,192,8,0,3,66,0,11,18,0,6,169,0,3,80,0,5,40,16 -,0,1,16,0,0,208,36,0,1,16,1,0,3,52,1,146,249,0,0,1,25,17,0,4,160,0,7, -192,36,0,2,96,20,0,19,192,0,3,96,24,0,4,128,2,0,1,66,0,1,8,0,1,3,2,0, -4,2,136,251,224,0,0,32,0,4,192,0,8,112,0,3,24,0,12,34,0,6,49,1,0,2, -144,0,5,7,0,1,60,0,1,240,128,0,0,192,1,0,4,60,32,0,0,254,4,1,32,0,5, -128,0,7,192,0,4,32,0,20,1,0,2,128,0,5,4,0,2,16,0,1,128,0,8,8,249,253, -128,16,145,8,0,4,10,0,7,192,68,0,16,8,0,6,132,0,3,64,34,0,4,4,16,0,3, -192,4,0,1,9,1,0,3,48,0,0,64,252,160,1,4,0,4,64,0,3,32,0,5,10,1,0,2,1, -32,80,0,16,32,0,3,16,0,1,64,16,0,1,141,4,0,5,2,64,16,1,0,5,48,255,128 -,1,0,17,16,16,0,14,32,0,6,16,0,8,1,0,0,12,0,5,64,0,8,16,48,253,96,0,0 -,44,0,10,64,0,4,24,0,4,8,0,9,2,0,6,97,1,0,2,176,0,1,192,0,0,2,0,0,12, -0,4,48,0,2,3,0,4,60,0,0,136,255,40,0,0,20,0,5,3,4,0,8,152,16,0,2,64,0 -,0,144,0,8,2,0,6,161,0,3,80,0,1,64,16,0,1,4,4,0,3,16,0,2,16,1,0,3,52, -34,202,248,0,0,4,25,17,0,4,32,0,3,68,0,4,136,0,3,64,0,0,136,0,8,8,0,6 -,196,0,3,96,24,0,2,1,0,0,44,0,5,8,64,0,0,18,4,0,4,2,40,251,64,0,0,32, -0,4,192,128,0,2,96,0,5,6,16,0,2,3,100,0,9,8,0,6,36,1,0,2,144,0,1,192, -0,2,15,4,0,3,48,128,6,208,0,5,60,32,32,252,132,1,32,0,5,3,0,2,128,65, -0,4,24,16,0,3,132,0,9,2,0,6,1,1,0,2,128,0,3,2,0,0,12,8,0,3,192,0,0,24 -,8,2,0,6,41,248,128,5,18,10,0,4,11,1,0,2,8,0,4,128,0,3,12,0,0,8,2,0,7 -,8,0,6,132,0,3,64,40,0,1,34,0,1,76,0,4,192,32,152,0,0,19,2,0,3,48,9, -176,249,32,5,37,17,0,2,130,64,1,0,7,16,0,9,128,4,0,5,66,2,0,5,33,0,3, -16,0,5,77,4,0,0,4,0,4,64,10,4,0,1,32,0,0,48,66,184,254,128,0,0,16,0,3 -,24,8,2,0,26,36,0,6,18,0,10,12,0,2,32,0,1,64,0,9,24,251,96,1,44,0,3, -24,192,2,0,19,1,0,5,128,0,6,96,1,0,2,176,0,5,12,0,2,16,0,0,240,32,0,1 -,3,0,4,56,0,0,200,255,168,0,0,20,0,3,152,96,161,0,18,128,8,0,5,80,4,0 -,5,168,0,3,80,0,5,128,4,0,3,208,2,0,1,138,0,4,52,33,137,248,0,0,1,40, -0,3,136,128,33,0,8,34,0,24,192,0,3,96,24,0,4,44,0,2,4,0,1,8,0,1,35,1, -0,2,16,4,1,59,253,192,0,0,32,0,3,6,16,2,1,0,6,48,0,10,2,0,6,1,0,5,32, -1,0,2,144,0,5,15,2,0,0,44,0,1,240,128,0,0,192,3,0,2,96,0,0,61,32,64, -251,4,1,32,0,3,8,144,130,0,7,192,0,26,1,0,2,128,32,0,4,4,0,8,3,0,2, -128,1,48,16,218,252,128,0,0,32,0,3,144,0,0,33,0,7,192,128,0,8,128,4,0 -,5,64,2,0,5,128,0,3,64,8,0,4,12,4,0,1,32,0,0,192,34,0,1,163,0,2,128,9 -,177,0,0,208,249,32,128,0,0,128,0,0,16,0,0,130,96,0,3,128,8,4,128,6, -16,128,0,0,64,3,4,0,0,1,0,18,32,0,1,128,0,0,144,24,2,0,1,8,0,0,5,32,0 -,3,192,8,1,64,131,8,0,4,66,248,255,0,0,1,0,2,4,0,0,24,0,5,1,1,0,0,6,0 -,3,3,0,5,128,0,6,64,0,11,68,0,5,8,0,16,160,253,64,0,3,2,0,0,24,192,2, -0,2,96,1,1,32,0,0,116,64,0,9,2,0,6,1,0,5,96,1,0,2,178,0,5,11,0,1,1,0, -1,240,128,0,0,192,131,96,64,0,2,12,0,0,208,254,40,33,0,3,128,152,80, -161,0,2,160,8,0,0,1,64,0,3,11,1,0,0,128,4,0,2,2,0,6,1,0,5,160,0,3,80, -0,0,152,2,0,1,32,133,130,1,0,2,16,8,0,0,64,10,0,4,4,0,0,225,249,160,8 -,0,1,130,0,0,72,144,128,33,0,2,192,0,1,1,70,20,66,0,1,10,2,0,0,64,4,0 -,1,128,0,6,64,0,6,192,0,2,128,160,0,0,24,1,0,1,68,134,0,1,2,0,5,32,96 -,65,0,2,48,2,19,250,64,64,0,0,128,1,240,0,0,6,16,2,1,0,2,1,60,144,7, -48,0,1,192,1,0,1,15,0,3,2,0,6,1,0,5,32,1,0,0,128,3,144,0,0,30,16,0,0, -24,0,0,9,232,1,0,2,240,0,1,192,0,0,26,0,3,60,8,144,253,132,0,5,16,144 -,130,0,2,64,1,0,0,16,0,0,1,0,2,2,2,0,4,128,0,6,64,0,7,1,0,2,128,0,0, -24,0,3,10,130,1,1,0,5,1,96,32,0,2,48,0,0,218,252,0,4,4,132,136,0,0,9, -0,2,128,0,2,6,144,72,0,0,128,0,2,64,16,0,2,9,0,5,128,4,0,5,128,0,3, -132,0,0,88,16,0,0,96,129,36,128,5,0,2,192,0,2,10,98,0,3,48,0,0,40,251 -,160,0,0,4,0,1,16,0,0,26,64,0,0,104,0,0,13,0,0,8,52,128,132,16,64,0,0 -,64,8,9,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,8,0,4,1,32,0,4,8,1,64,8 -,9,4,0,4,48,250,128,1,1,8,0,2,24,0,3,12,0,1,1,0,0,6,64,0,10,4,0,6,2,0 -,10,64,32,0,16,64,0,3,16,224,251,96,64,28,0,2,128,24,192,2,0,2,96,1,1 -,32,4,2,0,25,96,1,48,32,0,0,4,32,0,4,11,0,1,1,0,1,48,0,2,128,0,0,64,0 -,2,60,0,0,32,253,168,16,0,0,8,0,1,4,152,96,161,0,0,64,0,0,160,8,0,0,1 -,22,0,0,20,0,1,16,1,0,3,1,18,0,14,160,0,2,6,0,0,8,0,4,133,130,1,0,2, -16,0,2,8,0,0,4,0,2,52,8,169,253,0,0,5,5,2,0,1,8,25,144,33,0,0,36,0,0, -192,0,1,1,70,0,3,19,98,8,0,1,144,48,17,0,6,6,0,6,195,0,0,48,64,192,0, -0,4,0,4,134,0,0,136,0,2,192,0,2,147,0,0,132,0,3,2,123,248,96,0,0,8,16 -,0,0,48,0,0,30,0,0,2,25,0,0,3,4,1,12,144,3,52,128,0,0,192,1,120,0,1, -96,0,0,12,0,15,32,1,12,128,7,48,32,0,4,9,232,1,0,2,240,32,0,0,192,1, -24,0,3,60,32,56,254,132,1,4,0,2,64,24,136,130,0,2,72,1,0,0,16,0,8,128 -,1,0,17,1,48,32,6,2,0,5,10,130,1,0,2,192,0,2,2,0,6,234,249,0,0,65,164 -,8,0,0,192,0,1,1,1,0,0,66,0,0,128,0,2,17,34,2,1,128,0,0,1,130,0,1,8,1 -,65,0,14,128,0,0,176,0,0,38,32,34,0,4,4,128,1,2,0,1,192,0,2,33,33,66, -0,2,176,16,104,255,48,16,6,138,6,0,2,64,34,0,1,65,0,0,9,0,0,128,0,0, -16,16,74,64,35,104,33,0,0,160,17,0,16,32,1,0,2,16,36,130,80,16,0,1, -137,32,0,0,180,192,38,4,0,0,2,64,32,4,0,0,1,32,0,1,66,24,254,128,0,2, -6,0,3,1,1,0,1,132,0,0,1,0,0,6,68,0,0,16,8,1,98,0,1,128,129,0,16,128,0 -,3,64,0,3,1,0,0,4,8,0,0,48,0,0,4,0,0,64,0,9,56,250,224,0,0,1,0,0,6,0, -2,192,2,0,1,3,100,1,1,0,0,6,2,0,1,16,3,97,32,0,0,128,1,1,0,7,4,0,6,98 -,1,0,7,2,0,0,11,0,1,49,0,0,6,240,0,1,208,1,2,0,0,12,136,1,13,0,0,72, -254,12,16,0,0,10,6,0,2,64,161,0,1,65,160,8,0,1,6,0,0,2,89,0,0,33,96,0 -,1,128,9,0,1,4,0,5,16,2,0,5,168,0,4,34,136,32,16,0,1,5,128,1,48,16,6, -212,2,25,0,0,32,0,4,4,0,0,162,249,36,69,0,0,17,0,3,128,2,0,1,64,192,0 -,2,36,0,0,8,81,0,0,18,64,20,0,0,128,33,0,1,2,0,5,16,1,0,5,200,0,4,34, -0,2,1,0,0,74,0,0,4,48,4,6,0,0,8,0,0,96,0,2,76,132,1,50,9,240,254,64,0 -,0,12,128,1,2,0,2,2,0,1,3,8,1,0,0,128,1,52,0,0,14,208,3,122,0,1,224,1 -,0,1,7,0,5,144,3,0,5,40,1,0,2,48,0,0,6,208,0,2,9,226,1,61,128,7,244, -128,30,192,128,0,1,3,96,0,0,60,0,0,240,248,4,0,1,8,6,0,2,128,2,0,2, -192,0,2,4,4,0,0,24,8,0,0,98,0,1,128,129,0,0,128,5,0,5,208,2,0,5,136,0 -,6,8,0,0,2,0,0,8,128,129,48,16,6,2,0,0,24,16,0,2,12,128,1,49,0,0,113, -255,0,0,41,32,2,70,4,0,2,2,0,1,40,8,1,0,1,34,0,0,132,64,0,0,16,96,66, -0,0,128,0,2,4,0,5,8,2,0,5,4,1,0,3,40,0,1,34,0,1,8,128,1,16,0,0,6,192, -40,24,65,82,0,1,12,144,17,48,0,0,104,250,0,2,34,0,25,4,0,6,2,0,35,248 -,249,32,0,1,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,2,2,64,0,0 -,8,0,0,1,32,0,0,4,0,7,8,0,6,36,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1, -32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,0,4,0,0,64,251,0,74,152, -255,40,0,1,192,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,8,3,64 -,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1, -32,0,0,4,128,0,0,16,0,0,2,64,0,0,9,0,0,1,32,0,0,4,0,0,9,254,0,0,16,1, -18,0,9,16,1,0,58,139,255,0,2,128,0,0,16,0,0,2,0,0,128,8,0,3,4,128,0,2 -,2,64,0,0,8,0,0,1,32,0,0,4,0,17,4,128,0,2,2,0,1,8,0,1,32,0,0,4,128,0, -2,2,0,1,8,0,0,1,32,0,2,56,248,4,0,1,16,0,5,1,0,2,128,0,3,128,0,30,64, -0,5,4,0,4,64,0,2,1,0,4,16,122,249,0,0,32,0,0,129,0,0,16,0,0,2,0,0,16, -8,0,0,1,40,8,4,128,0,0,16,8,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,5, -128,0,0,16,4,2,64,0,0,10,0,0,65,32,0,0,4,128,0,0,16,4,2,64,16,8,0,0,1 -,32,0,0,4,1,72,251,0,18,64,0,37,4,0,7,4,0,6,216,251,0,74,152,255,0,17 -,32,0,0,8,0,0,12,0,40,2,0,9,176,249,0,17,16,0,1,8,64,0,40,16,0,9,208, -250,0,11,8,4,0,8,32,0,21,128,0,6,2,1,0,12,8,0,4,176,250,0,19,1,0,37, -64,0,6,8,0,7,251,0,1,16,8,0,5,16,0,0,1,2,0,0,16,0,0,4,1,0,8,1,0,15, -128,64,0,27,16,248,0,10,64,2,0,1,4,0,0,2,0,28,16,136,0,2,16,0,9,128,0 -,10,192,253,128,0,0,24,24,0,5,16,64,3,6,0,0,12,128,1,2,0,2,10,0,3,128 -,0,16,192,168,20,160,0,2,2,0,6,16,0,1,17,0,2,128,0,6,64,250,160,67,0, -0,88,0,0,64,0,2,128,0,1,68,8,0,0,128,0,0,48,64,0,1,40,8,168,0,0,149, -180,209,2,0,16,192,130,0,1,1,32,50,0,0,193,5,0,5,96,10,0,0,16,0,2,16, -0,1,64,48,80,40,255,64,64,0,0,8,0,0,16,0,2,128,0,1,2,0,4,16,0,3,32,0, -0,4,128,64,0,17,64,0,2,2,64,0,1,130,0,13,64,0,2,17,0,0,56,248,128,0, -24,64,0,24,8,0,1,1,0,8,8,0,6,4,0,0,16,254,0,0,2,0,54,16,0,2,64,0,12, -200,249,0,8,2,0,8,64,0,47,1,0,5,232,249,0,0,64,0,2,1,0,13,1,0,5,2,0, -28,32,0,16,216,249,16,0,6,32,0,0,2,0,0,32,0,0,4,0,31,128,32,16,0,8,4, -1,0,3,64,0,2,1,32,8,4,0,1,180,248,0,74,152,255,0,74,152,255,16,0,73, -204,251,0,12,2,0,39,64,0,10,2,0,4,32,0,1,250,253,0,0,32,0,14,2,0,3,1, -2,0,23,4,0,9,32,0,6,128,0,6,240,250,0,0,4,136,0,0,8,0,6,16,0,3,128,0, -0,1,0,26,8,0,8,8,64,0,7,2,16,0,5,72,253,0,0,4,0,5,16,0,3,8,4,32,0,8,8 -,0,0,1,32,0,45,200,249,64,0,55,2,0,16,248,253,0,17,64,0,12,32,0,2,32, -0,2,16,0,2,16,0,29,232,253,0,16,4,0,3,2,0,51,216,253,0,0,128,0,72,144 -,255,0,17,2,0,2,8,0,33,16,0,8,4,0,4,32,0,1,251,0,12,2,0,20,16,0,6,8,0 -,4,1,0,2,128,0,20,152,253,0,17,32,0,13,2,0,33,4,0,5,216,253,128,0,3,2 -,66,0,3,32,0,8,8,0,0,1,64,0,1,132,128,0,20,18,0,1,16,0,2,8,0,1,64,16, -0,0,2,0,2,1,0,0,32,0,1,128,0,1,48,249,0,1,1,0,0,1,34,64,0,0,8,0,0,16, -32,2,0,1,8,0,0,1,0,4,16,32,2,64,128,8,0,11,1,0,6,1,2,0,0,4,8,0,5,8,16 -,1,2,0,3,2,40,0,1,128,0,1,120,252,36,0,5,64,0,5,64,0,1,16,0,1,64,0,41 -,128,0,0,5,0,0,2,0,4,16,0,0,120,253,0,0,128,0,19,1,0,1,4,128,0,0,16,0 -,36,128,0,7,136,251,0,1,8,0,4,128,0,3,64,0,3,128,2,0,29,32,0,4,128,2, -0,4,32,0,1,128,8,0,4,8,0,0,88,249,0,17,64,16,0,0,4,0,7,1,0,0,130,4,0, -1,130,128,0,1,65,2,0,1,65,0,10,1,0,17,184,252,32,0,0,16,0,0,129,0,4, -16,0,10,1,0,4,8,0,22,4,0,4,34,0,1,32,2,0,0,32,0,4,2,64,0,0,4,128,160, -249,4,64,0,4,8,16,1,32,0,7,32,4,0,4,128,0,7,128,0,10,16,0,0,2,64,0,5, -4,128,0,0,16,0,5,1,8,0,4,32,152,255,64,69,9,0,0,1,130,2,130,82,80,24, -0,3,16,0,2,128,2,128,0,2,4,32,5,24,0,3,4,0,0,64,0,4,2,0,2,128,0,0,20, -128,0,0,16,0,0,4,0,3,1,100,0,0,4,21,1,128,66,8,64,0,0,8,0,0,2,66,64,8 -,32,104,252,0,0,143,214,82,2,10,96,49,0,0,81,0,0,1,130,150,144,2,12,0 -,0,5,64,5,4,9,37,188,32,128,4,128,0,3,8,0,6,4,2,32,0,0,32,164,230,86, -4,4,0,0,4,4,2,64,168,8,1,33,136,0,0,20,192,2,64,128,72,141,0,0,200,55 -,8,100,8,208,255,0,1,8,0,0,2,0,0,64,0,0,64,0,3,68,0,1,16,0,0,4,0,1,72 -,0,0,64,32,0,0,32,0,5,16,0,6,8,1,64,0,8,4,0,8,64,0,6,4,0,1,8,32,255, -128,0,5,8,0,0,128,0,5,32,0,6,16,0,20,64,16,136,0,3,128,0,0,16,16,4,66 -,64,0,1,1,32,0,2,128,0,1,2,2,0,0,16,0,0,120,253,16,0,7,2,0,19,1,16,0, -0,5,0,1,16,129,0,0,8,128,2,0,1,136,0,9,128,0,9,16,0,5,1,0,0,148,252,2 -,32,0,14,16,0,11,4,64,0,0,16,0,0,64,0,1,2,32,0,0,8,0,0,32,0,7,2,4,0, -11,4,192,0,5,128,232,250,2,0,0,66,0,8,32,0,1,128,0,4,2,0,2,32,0,31,16 -,0,6,64,0,0,4,0,4,128,160,248,0,2,32,0,15,16,0,53,184,254,0,11,2,0,40 -,8,0,18,128,124,249,0,52,2,0,7,128,16,0,10,32,255,0,7,4,0,8,1,0,1,4, -128,0,8,16,0,6,8,0,11,8,0,9,64,0,2,1,0,4,16,216,254,32,0,0,16,0,2,128 -,0,3,64,0,24,1,0,5,128,0,15,32,0,3,64,0,1,64,0,4,144,249,64,0,5,16,0, -0,4,0,7,2,0,6,8,0,0,1,32,0,43,8,168,251,0,6,8,0,7,128,0,4,4,0,33,4,0, -5,129,0,1,1,0,4,64,48,16,248,0,21,64,0,0,32,0,22,160,0,10,1,0,13,72, -250,0,2,128,0,14,128,0,2,8,0,1,32,0,0,4,0,18,128,0,8,136,0,0,4,0,2,2, -0,4,4,0,3,208,251,160,0,0,6,0,5,3,100,128,0,4,38,0,10,10,0,14,32,136, -0,2,208,0,5,5,0,4,192,128,0,9,240,252,128,0,7,3,96,0,6,2,0,30,192,0,5 -,8,0,16,232,252,96,1,48,32,0,3,192,3,120,0,4,128,7,0,9,12,0,15,128,65 -,0,3,128,0,4,11,0,4,240,128,0,9,232,255,160,0,0,48,2,0,3,64,3,104,0,4 -,128,160,0,9,4,0,15,128,1,0,3,4,0,4,5,0,4,16,2,0,9,192,251,64,145,128 -,0,5,3,96,0,17,65,0,14,128,16,0,2,192,2,0,4,70,8,0,15,152,255,0,0,1, -60,32,0,3,128,3,112,0,5,7,0,9,8,0,15,96,0,0,1,0,1,48,32,0,4,8,0,4,224 -,0,10,240,250,0,0,1,1,0,5,3,96,0,4,128,0,10,48,0,15,128,0,0,1,0,1,192 -,0,5,8,8,0,15,120,252,128,4,48,34,0,4,3,96,0,5,6,0,9,48,34,0,15,4,0,3 -,130,0,4,36,0,4,192,0,10,56,252,32,0,0,2,0,9,32,0,0,176,64,0,4,35,4,4 -,0,11,34,0,6,17,0,10,1,0,2,128,2,193,128,0,2,96,0,1,128,73,52,9,216, -253,0,22,96,64,0,11,12,0,6,6,0,15,4,0,5,32,0,2,48,0,0,96,248,96,1,0, -11,128,60,0,4,192,3,16,32,0,11,12,0,6,6,0,10,11,0,4,240,64,0,2,120,0, -1,224,1,48,8,32,254,168,0,12,8,4,5,0,3,64,0,0,106,4,0,11,10,0,6,5,0, -10,5,0,3,22,18,0,3,8,10,0,0,32,40,48,0,0,26,252,64,145,0,10,128,5,0,7 -,104,0,12,10,0,6,5,0,10,70,8,0,2,68,2,0,8,176,16,48,252,0,0,1,0,10, -224,129,56,0,4,128,3,16,64,0,31,8,0,2,128,3,224,0,3,112,0,1,192,1,12, -0,0,80,252,4,1,0,20,104,0,32,8,0,3,6,0,9,32,16,1,254,128,132,0,10,128 -,9,50,0,5,3,8,0,32,36,4,0,2,16,193,0,3,96,0,1,128,1,24,2,136,252,48,0 -,0,2,128,22,200,2,1,0,1,96,0,0,13,0,4,208,0,2,3,72,4,0,0,164,9,22,16, -0,19,192,8,1,0,1,96,0,0,1,0,3,6,192,128,0,1,3,1,0,3,132,8,24,255,0,3, -2,0,5,64,12,0,9,34,16,0,1,1,32,0,26,32,0,5,4,0,8,48,0,0,160,249,96,1, -0,1,6,240,0,3,120,0,0,15,0,4,192,0,1,192,3,0,1,14,128,1,48,0,20,240, -128,0,2,120,0,0,11,0,2,128,7,240,0,1,192,3,2,0,3,32,8,208,250,172,0,2 -,70,17,128,0,2,8,10,13,0,4,192,4,1,64,80,96,68,129,136,41,160,16,0,19 -,16,8,0,2,8,10,5,0,2,128,160,16,132,0,0,64,0,5,16,1,138,252,68,145,0, -1,20,2,0,12,2,0,2,32,0,0,129,136,1,2,17,0,26,70,8,0,13,176,16,32,249, -0,0,1,0,0,128,7,224,0,3,112,0,0,2,4,0,3,48,128,0,0,128,3,88,32,3,224, -1,12,0,20,224,0,3,112,0,0,8,0,3,7,224,0,1,128,3,0,4,60,0,0,144,253,4, -1,1,0,1,1,0,3,8,0,6,192,0,3,96,16,0,0,128,129,0,0,32,0,26,8,4,0,13,48 -,16,177,248,128,16,0,1,22,192,0,3,104,0,6,192,66,0,1,3,0,0,4,12,208,5 -,48,0,20,192,0,3,96,0,0,4,0,3,6,192,0,2,3,0,4,48,2,192,251,32,0,0,2,0 -,0,70,200,66,0,4,13,128,9,0,4,154,0,2,4,13,32,1,0,0,10,0,6,4,0,6,2,0, -10,1,0,4,208,0,0,2,0,0,3,1,0,0,76,8,0,2,184,249,0,11,12,0,0,128,0,4, -16,8,0,0,96,64,12,132,1,1,0,7,18,0,6,9,0,16,192,32,0,4,12,0,3,32,252, -96,1,0,0,128,7,240,0,5,15,224,1,1,0,3,30,0,1,16,32,12,2,1,12,0,27,11, -0,4,192,0,0,24,192,3,1,0,0,15,0,3,48,249,168,0,1,128,128,16,20,0,4,13 -,32,4,0,4,24,17,0,0,104,1,128,128,16,6,0,7,4,0,6,2,0,10,5,0,4,192,34, -88,96,32,0,1,13,0,3,153,252,64,145,0,9,32,0,6,74,8,0,0,104,132,140,4, -133,0,0,65,0,6,8,0,6,4,0,10,70,8,0,3,192,66,64,0,3,12,0,3,83,251,0,0, -1,0,1,7,224,0,5,2,196,1,0,4,30,0,1,16,0,0,15,224,0,0,8,0,7,4,0,6,2,0, -10,8,0,4,48,0,0,30,144,3,0,1,14,0,3,224,254,4,1,0,2,16,0,6,32,0,5,24, -0,1,104,0,0,4,8,1,48,0,7,8,0,6,4,0,10,8,0,4,128,64,0,4,12,0,3,242,254 -,128,0,0,2,0,0,6,192,0,6,128,1,0,4,152,16,0,0,8,0,0,140,128,40,48,17, -0,6,8,0,6,4,0,10,4,16,0,3,96,8,24,33,3,0,1,12,0,3,120,252,32,0,0,50, -192,6,0,1,24,9,0,2,41,2,0,0,48,66,22,8,0,0,26,1,0,0,104,0,0,9,0,1,4, -64,0,18,38,20,34,0,4,1,0,2,128,16,16,8,2,0,0,3,1,0,1,32,0,0,48,0,0,40 -,253,0,1,48,0,0,6,0,6,4,0,6,16,16,0,0,96,0,1,8,0,0,48,0,7,16,0,24,194 -,32,0,8,32,168,249,96,1,60,0,1,4,0,0,30,0,6,60,160,7,0,1,24,0,1,120,0 -,0,8,0,1,48,0,7,2,0,6,9,0,1,128,7,0,6,11,0,3,2,129,32,24,200,3,0,4,60 -,0,0,184,248,164,0,0,52,0,3,130,2,0,2,140,8,0,0,132,128,160,0,1,152, -32,0,0,104,0,0,128,4,0,0,48,4,0,6,16,0,6,10,0,1,128,0,0,4,36,0,4,5,0, -3,34,64,4,24,64,80,0,4,132,16,146,251,76,145,48,0,0,22,1,0,5,4,4,0,5, -152,0,2,32,44,0,1,48,2,0,20,8,0,4,70,8,0,2,70,194,66,64,0,5,16,2,0,0, -40,251,0,0,1,56,128,1,0,1,28,0,3,11,0,1,56,0,0,7,0,1,30,4,0,0,16,0,0, -15,4,0,0,44,32,0,17,128,7,48,128,0,4,8,0,2,128,7,240,0,0,30,144,3,0,2 -,96,0,0,56,0,0,248,254,8,129,48,0,0,6,0,6,12,0,6,24,0,4,4,0,0,48,0,0, -1,0,5,128,0,11,64,32,0,4,8,4,0,2,4,192,64,0,5,128,1,0,1,89,248,128,16 -,52,0,0,16,4,0,0,24,0,3,32,2,0,0,48,0,0,6,0,1,152,8,0,2,132,0,1,176, -136,4,0,5,64,2,0,9,6,192,0,5,132,0,3,20,193,8,24,32,3,0,2,128,1,49,0, -0,176,254,32,0,0,2,0,0,70,8,0,9,128,6,0,1,10,8,0,0,104,0,0,1,0,1,148, -0,21,8,1,0,3,1,128,5,2,0,1,80,136,2,0,0,3,1,0,1,128,73,48,0,0,96,252, -0,11,12,8,0,2,6,0,1,24,0,1,96,0,4,32,1,0,5,128,0,11,192,0,11,192,0,9, -32,232,249,96,1,0,0,128,7,4,0,5,2,0,2,128,7,0,1,8,0,1,120,0,0,12,0,1, -24,32,2,0,6,1,0,10,32,0,5,11,224,1,0,4,24,192,3,0,2,224,1,60,0,0,96, -252,168,0,1,128,64,0,6,77,1,0,1,128,6,0,1,24,16,0,0,104,0,0,76,16,0,0 -,4,2,1,0,5,128,0,11,208,64,0,4,5,32,0,0,1,0,1,64,136,152,80,0,0,2,0,1 -,32,132,4,64,146,250,64,145,0,9,77,4,0,2,6,0,1,88,32,0,1,4,128,0,1,4, -0,0,2,0,6,1,0,10,208,2,0,4,70,8,0,3,192,2,65,0,8,176,254,0,0,1,0,1,7, -0,6,2,0,2,128,7,0,1,22,0,1,16,32,15,4,0,0,40,32,2,0,6,1,0,10,32,64,0, -4,8,192,1,0,2,240,0,0,30,144,3,0,2,192,1,56,0,0,96,252,4,1,0,9,13,0,3 -,6,0,6,12,0,10,18,0,6,2,0,3,192,0,5,8,0,4,192,0,1,8,0,7,1,255,128,40, -0,1,6,0,6,1,0,2,128,6,0,1,132,32,0,2,140,2,0,0,36,0,0,4,0,5,16,2,0,5, -1,0,10,68,129,1,0,2,224,130,88,0,0,3,0,2,128,1,48,0,0,24,255,32,0,0,2 -,0,0,64,8,0,0,24,64,0,3,128,145,0,2,144,2,3,0,1,72,18,12,4,0,0,4,128, -0,6,66,0,6,164,133,4,0,1,208,64,88,32,0,2,1,128,5,2,0,1,208,0,1,64,11 -,0,1,13,128,73,48,0,0,224,249,0,3,6,0,2,16,0,2,12,8,0,3,192,0,1,8,0,0 -,96,0,4,16,3,0,5,128,1,0,5,138,1,0,2,64,0,11,192,64,0,1,131,0,5,32, -152,250,96,1,0,1,1,0,1,30,0,0,3,1,0,0,14,228,1,0,2,128,0,3,64,0,0,15, -0,1,60,0,7,16,0,6,128,0,0,48,0,1,192,32,30,0,3,11,224,1,0,2,192,0,2,3 -,0,2,224,1,60,0,0,240,253,168,0,1,128,38,2,0,0,2,16,19,0,1,45,32,0,0, -1,0,1,192,128,24,9,0,0,96,64,33,8,0,0,32,34,0,14,128,133,48,34,0,0, -192,4,130,2,0,2,5,32,40,0,2,192,40,0,1,163,0,2,40,8,6,5,74,254,64,145 -,0,0,128,22,0,3,32,4,0,0,141,16,0,3,192,0,1,9,0,0,96,66,0,2,132,8,0,6 -,6,0,6,136,5,130,0,1,128,2,1,0,3,70,8,0,3,64,2,1,0,0,10,0,2,8,0,2,240 -,255,0,0,1,0,1,1,2,0,0,28,192,3,0,1,2,192,1,0,2,112,64,6,0,1,56,0,0, -15,0,1,8,0,15,224,0,0,60,32,0,0,240,0,0,28,0,3,8,192,1,0,2,176,0,1, -192,1,1,0,0,15,192,1,56,0,0,184,254,4,1,1,0,0,6,0,6,13,8,0,5,16,16,0, -5,16,0,15,128,1,1,0,8,8,8,0,7,3,1,0,0,12,0,3,129,254,128,0,5,24,0,0,3 -,2,0,0,45,128,1,0,2,32,4,65,0,1,16,130,12,0,1,52,66,0,14,64,0,0,48,5, -0,0,192,34,24,0,3,4,128,1,0,2,192,66,0,0,128,8,0,1,140,136,1,48,0,0, -160,251,32,1,50,192,64,193,66,152,0,0,11,96,36,12,0,1,48,66,0,0,16,2, -26,0,0,11,9,1,45,32,144,4,1,0,14,160,133,48,194,6,192,8,25,97,0,2,9,0 -,1,48,66,6,192,128,0,0,64,138,96,0,1,128,73,48,0,0,96,250,128,0,0,48, -0,4,16,0,0,2,0,1,8,0,4,64,24,0,2,32,0,0,130,1,0,0,32,0,6,12,0,6,134,1 -,0,9,4,0,4,4,0,2,1,0,0,32,0,3,32,128,249,96,1,60,0,1,241,0,0,30,192,3 -,120,0,0,15,0,1,60,0,3,24,192,3,96,0,1,2,1,48,0,15,128,1,60,32,0,0, -240,0,0,30,0,3,11,0,1,60,0,0,7,244,0,2,128,120,0,1,224,1,61,0,0,96, -255,168,0,0,52,0,0,64,16,128,2,80,8,9,10,1,8,0,0,4,5,0,0,192,72,152, -66,80,0,0,8,0,0,128,8,33,17,4,0,5,16,2,0,5,8,133,4,0,0,32,24,16,2,16, -19,1,0,0,5,0,1,132,144,16,16,20,0,1,35,8,64,0,0,32,0,0,4,32,42,254,64 -,145,48,0,1,2,0,12,4,129,8,0,1,8,4,8,33,0,0,1,2,0,5,16,1,0,5,8,1,2,0, -0,16,0,3,19,0,1,70,8,0,1,128,64,4,0,2,11,0,6,136,248,0,0,1,56,128,1, -224,0,0,28,128,3,112,0,0,14,0,1,56,0,1,48,0,0,6,128,3,24,0,0,11,224,0 -,0,12,16,7,0,5,144,3,0,5,232,1,56,128,1,228,0,0,28,192,0,0,1,0,0,8,0, -1,56,0,0,7,224,0,1,192,3,113,0,1,192,1,56,0,0,240,254,4,1,48,0,0,2,16 -,0,0,2,64,0,0,8,0,0,1,0,4,128,64,24,68,0,1,64,0,1,1,0,0,128,5,0,5,208 -,2,0,5,8,0,7,3,2,0,0,4,0,8,3,1,0,5,137,250,0,0,1,49,0,0,22,193,0,0,24 -,64,3,104,0,0,13,0,1,48,0,2,2,0,0,1,3,32,1,0,0,132,16,2,66,4,0,5,8,2, -0,5,132,33,48,0,0,64,194,0,0,24,0,0,32,0,1,8,8,0,0,48,0,0,6,192,0,2, -11,96,0,1,128,1,48,0,0,184,248,0,5,68,128,8,32,1,12,128,8,136,0,1,32, -2,0,2,16,1,68,0,4,4,0,6,2,0,35,176,251,32,0,0,4,128,0,0,16,0,0,2,0,4, -32,0,0,4,0,1,16,0,0,2,64,0,2,1,32,0,9,2,0,6,33,0,0,4,128,0,0,16,0,0,2 -,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0 -,152,253,0,17,2,0,9,32,0,44,184,255,40,0,0,4,146,0,0,16,0,0,2,0,0,32, -1,36,129,36,0,0,4,128,32,16,0,0,2,64,0,0,8,36,1,32,0,0,4,2,0,14,32,0, -0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0, -8,0,0,1,32,0,0,4,0,0,153,249,0,0,48,128,64,64,2,72,0,0,3,8,4,129,128, -2,48,0,0,18,0,4,32,1,2,0,3,18,0,17,6,0,1,72,0,0,3,0,1,12,128,1,48,0,0 -,6,32,2,24,0,1,96,0,0,12,0,1,48,0,0,6,227,253,0,7,64,0,8,17,0,4,16,0, -0,32,0,17,32,0,6,64,0,10,2,0,4,4,0,2,200,252,4,0,1,32,0,8,4,0,6,16,0, -1,32,0,49,234,253,0,0,144,128,0,0,64,2,72,0,0,9,16,1,33,33,0,0,132,0, -0,18,16,18,0,0,130,0,0,32,9,1,129,48,0,1,18,0,14,32,0,1,146,64,2,72,0 -,0,73,0,1,36,0,0,4,144,0,0,146,64,2,72,2,0,0,32,1,36,129,4,144,0,0,18 -,208,250,0,3,4,128,0,0,16,0,0,2,64,0,0,8,0,1,32,0,3,1,0,0,2,64,0,3,32 -,0,17,32,0,0,4,128,0,0,16,0,0,2,64,0,2,1,32,0,0,4,128,0,2,2,64,0,0,8, -0,0,1,32,0,0,200,252,0,13,1,0,1,4,0,4,8,0,0,8,0,1,2,0,17,4,0,26,128, -253,0,6,1,0,5,1,0,0,64,4,136,0,0,16,0,2,8,8,128,0,23,1,1,0,21,24,251, -0,8,132,0,12,128,0,1,1,0,36,1,0,9,192,250,32,0,5,2,0,1,8,0,1,96,0,2,1 -,0,9,8,0,14,16,0,1,4,0,3,2,32,0,0,8,0,0,1,32,0,0,6,0,1,16,0,1,64,0,0, -8,0,1,32,0,0,4,0,0,128,249,0,3,1,32,0,1,128,0,5,8,0,3,2,128,0,3,16,0, -0,8,0,2,16,0,2,16,0,2,8,0,8,32,0,23,168,254,0,4,4,0,0,16,4,0,1,16,0,0 -,8,0,1,8,132,64,0,0,2,0,0,2,0,1,4,4,0,17,32,32,0,5,64,0,3,4,0,0,4,0,3 -,2,0,9,255,32,0,1,8,0,6,64,0,13,64,0,19,4,0,26,240,255,32,0,1,32,20,2 -,24,4,8,0,1,96,40,4,0,0,160,16,1,34,0,0,4,128,10,64,1,66,37,40,0,16, -64,168,4,0,0,180,0,2,128,0,0,64,1,104,5,0,0,8,0,3,4,0,8,184,248,192, -65,80,134,18,80,0,0,128,4,0,2,130,21,0,0,128,33,0,0,144,1,2,41,0,0,96 -,0,0,68,194,74,0,0,10,0,15,64,0,1,48,0,0,16,0,1,130,136,0,1,8,0,2,128 -,0,0,136,16,0,2,64,1,0,1,33,8,56,252,2,65,16,0,0,1,64,0,1,8,0,13,32,0 -,0,1,40,0,0,1,8,0,16,1,0,6,2,0,17,8,249,255,136,0,1,8,0,8,1,0,3,64,0, -3,8,0,26,128,0,1,2,0,7,1,0,0,8,0,6,4,0,0,232,249,0,64,8,0,8,24,255,0, -24,32,0,24,32,0,22,152,253,0,0,1,1,0,0,1,0,2,4,0,2,4,0,7,4,0,0,160,0, -21,32,0,23,2,0,2,64,255,0,3,8,0,17,32,0,2,128,0,35,2,0,0,8,0,7,152, -255,0,2,4,0,10,1,0,2,128,8,16,0,1,64,0,0,8,0,1,32,0,19,36,0,23,208, -250,0,53,4,0,14,16,0,3,200,250,0,74,152,255,0,2,4,0,69,128,80,251,0,2 -,32,0,0,72,0,3,2,64,0,0,2,0,4,64,0,0,8,1,16,48,0,40,32,0,7,96,251,8,0 -,3,1,0,18,2,2,0,0,128,0,25,128,0,8,4,0,1,128,0,5,104,253,0,50,64,0,22 -,216,255,0,29,1,0,1,4,0,2,128,0,2,2,0,32,224,250,0,30,16,0,2,16,0,2,8 -,0,2,8,0,6,2,0,22,40,253,0,17,128,0,3,64,0,3,32,0,34,32,0,9,24,251,0, -3,2,0,4,1,0,33,128,0,16,64,0,2,1,0,4,16,0,0,72,252,0,3,16,0,14,32,0,3 -,16,0,2,16,0,23,64,0,2,1,0,15,216,253,0,7,128,0,3,1,0,47,128,0,11,152 -,254,96,0,3,80,0,0,8,0,1,8,0,0,32,128,0,1,128,2,0,3,1,0,0,1,0,18,1,0, -6,2,0,1,8,0,0,1,0,2,128,2,0,2,64,0,3,32,0,0,4,0,0,8,255,0,0,160,0,3, -64,0,0,8,0,3,4,160,0,0,4,0,5,1,0,11,34,0,4,4,0,6,2,0,1,8,0,3,5,128,0, -3,16,1,0,1,1,32,0,2,1,16,176,253,128,36,0,0,8,128,0,1,2,0,1,2,0,0,4,0 -,1,4,0,2,32,0,0,64,0,1,32,0,7,2,0,1,64,0,9,128,8,0,0,1,16,0,4,38,32,0 -,0,32,0,0,16,48,64,0,0,4,9,8,0,2,4,0,1,160,249,0,25,2,0,1,8,0,26,16,0 -,16,40,255,0,11,24,0,6,8,0,3,4,0,1,16,4,0,14,128,1,0,0,32,0,1,128,0,0 -,16,0,6,32,1,192,0,2,2,0,4,16,0,0,144,251,0,2,128,0,15,64,0,6,1,0,2, -16,0,2,16,0,2,8,0,2,8,0,4,16,0,20,128,0,1,128,250,0,0,1,0,25,64,0,5, -64,0,6,40,0,12,8,0,14,32,0,0,88,254,128,0,0,16,8,1,128,0,1,2,64,0,1,4 -,0,1,4,0,8,1,0,0,128,0,12,8,0,18,4,1,128,0,9,16,104,251,0,0,64,0,4,8, -0,12,128,0,2,2,0,0,1,0,18,16,0,1,64,0,14,4,0,4,128,0,2,249,64,5,169, -16,21,160,22,130,10,0,0,1,0,0,66,1,40,8,0,1,128,2,0,0,64,0,0,64,1,3, -32,168,16,0,3,2,16,16,0,4,9,8,8,0,2,4,0,0,160,16,20,80,0,2,16,40,0,0, -5,0,0,21,161,32,0,1,16,10,64,1,4,128,0,0,161,16,160,251,128,34,144, -136,8,17,55,90,64,32,42,0,0,1,150,40,36,34,4,149,1,26,80,0,0,64,176,9 -,40,9,4,32,0,2,8,4,64,32,0,3,4,0,0,96,16,192,66,32,136,72,75,2,12,0,0 -,1,136,10,8,9,1,4,129,64,4,0,1,2,66,0,0,1,32,1,0,0,129,0,0,152,248, -128,0,0,4,32,0,0,4,64,4,0,1,16,0,1,72,0,3,1,0,0,16,0,2,64,0,7,8,4,64, -32,0,3,4,0,0,32,16,32,0,0,1,32,128,32,0,0,16,0,0,1,0,19,160,255,0,0, -64,0,3,128,8,0,6,9,0,0,1,32,0,0,4,0,1,16,0,0,4,64,0,15,16,0,2,4,0,7, -64,1,65,0,6,4,2,2,0,1,8,0,2,88,252,0,20,32,0,2,32,0,20,2,0,21,32,0,3, -152,255,0,1,1,0,0,4,0,3,2,0,1,1,8,0,5,1,0,2,72,0,15,8,0,3,4,0,2,128,0 -,6,8,0,6,32,0,4,1,0,0,32,216,255,16,0,1,64,0,5,4,128,0,5,64,0,0,4,0,1 -,8,0,3,4,0,34,2,0,9,132,249,0,4,4,0,0,4,0,1,16,0,1,64,0,1,32,0,5,2,0, -1,4,0,21,128,0,11,4,0,7,1,0,1,16,144,253,0,24,18,0,3,4,0,1,16,0,3,2,0 -,1,8,0,32,120,248,0,30,64,0,0,64,0,4,32,0,3,8,0,29,56,251,0,31,1,0,2, -1,0,1,128,0,2,128,0,21,128,0,7,144,254,0,12,4,0,6,8,0,3,8,0,35,2,0,8, -1,0,0,48,248,0,2,8,0,16,2,0,25,8,0,21,4,0,2,248,253,0,7,8,0,0,64,32,0 -,10,1,0,1,96,0,1,72,0,44,200,251,0,1,32,0,8,2,0,15,16,0,14,32,128,1,0 -,15,32,0,9,160,252,0,18,1,4,0,44,16,0,7,200,254,0,3,2,0,6,4,0,1,128,8 -,16,17,0,1,4,128,8,0,1,2,0,0,17,0,17,128,32,0,0,65,2,8,0,1,10,1,33,0, -0,64,0,2,16,0,0,128,64,8,0,0,16,0,0,32,0,2,208,254,0,16,4,0,6,8,0,0,1 -,32,0,17,160,0,0,4,128,0,0,16,0,0,2,0,1,32,0,6,4,0,0,8,0,6,184,249,0, -14,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,0,38,8,0,6,104,251,0,46, -128,0,8,16,0,17,255,0,0,21,160,2,184,128,10,80,1,42,64,5,176,0,0,45, -128,2,80,0,0,10,64,1,40,0,0,5,160,0,0,20,192,2,0,15,22,128,2,88,0,0, -11,224,2,44,128,5,160,0,0,22,160,2,88,0,0,11,208,1,40,128,11,176,0,0, -22,160,2,112,248,192,9,52,1,146,211,4,154,64,19,104,2,100,160,225,148 -,129,50,80,6,202,128,25,40,3,102,160,12,144,1,0,14,128,12,152,1,50,64 -,6,72,22,25,32,3,102,128,12,56,1,50,64,6,154,68,25,32,89,100,128,12, -52,1,16,250,255,255,0};static const unsigned char l649[]={79,231,255, -255,98,255,57,0,0,213,255,255,255,255,255,255,255,255,255,255,255,255 -,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,160,9,52,1,38,64,6,154,0,0,19,0,0,25,96,6 -,76,128,140,134,85,6,200,0,0,25,96,2,100,128,97,144,1,0,15,12,48,1,50 -,0,0,178,74,70,19,104,2,76,128,9,48,9,50,224,4,192,0,0,152,96,2,100, -128,12,56,1,72,248,0,0,21,160,2,84,0,0,11,80,1,42,128,10,80,0,0,26,64 -,5,180,0,0,10,96,1,44,64,5,176,0,0,45,192,2,0,15,18,160,2,88,0,0,21, -192,2,42,64,5,168,0,0,21,160,3,88,128,10,32,1,52,64,5,176,0,0,22,160, -2,40,255,0,11,64,0,5,2,0,31,64,0,21,152,249,0,74,152,255,0,4,128,0,5, -64,1,0,3,160,2,16,128,2,0,1,8,0,1,40,0,19,4,0,1,80,0,7,4,4,0,4,2,0,5, -96,248,0,5,18,0,5,8,0,5,64,2,0,2,8,0,12,64,0,8,128,0,1,68,0,6,16,1,20 -,0,6,160,0,3,248,249,0,0,4,1,0,0,16,4,0,0,66,32,0,2,128,0,0,16,53,0,2 -,128,0,5,160,5,20,16,0,14,32,48,180,64,0,0,16,4,2,0,3,133,161,0,3,208 -,8,0,0,64,3,0,1,1,32,0,2,128,248,0,12,4,0,0,48,0,9,128,129,16,0,21,64 -,0,4,8,0,0,1,0,2,192,64,0,1,3,0,6,120,252,224,65,0,0,128,1,0,1,24,0,3 -,3,96,0,0,48,0,1,240,32,0,5,128,1,44,0,17,16,32,0,0,64,0,5,4,96,1,0,2 -,192,128,0,1,3,0,1,3,96,0,2,120,251,160,1,0,0,128,0,2,144,2,0,2,1,32, -0,0,48,0,1,208,0,6,128,4,21,0,16,80,128,0,1,128,64,0,4,12,164,0,3,192 -,8,0,1,3,0,1,1,32,0,2,176,251,0,6,128,4,0,2,12,129,17,0,0,32,0,1,2,1, -0,5,9,40,33,0,15,136,48,0,2,132,0,0,5,0,2,36,208,0,3,192,4,0,1,16,0,1 -,140,128,81,0,1,160,252,224,129,0,0,128,1,2,0,0,6,0,3,15,224,65,12,0, -1,240,0,6,224,64,32,0,15,96,0,0,60,16,0,0,240,0,0,6,0,3,15,0,0,1,1,0, -1,240,64,0,0,192,0,0,2,0,0,14,194,1,0,1,160,255,0,0,128,0,1,6,0,6,12, -128,1,48,0,10,1,33,32,0,14,128,64,48,8,0,0,64,128,24,16,0,2,12,0,0,1, -0,2,192,0,2,3,1,0,0,12,128,1,0,1,136,252,128,9,0,1,70,1,0,0,128,8,0,2 -,12,128,1,48,33,0,0,192,32,0,5,128,8,16,0,15,128,1,160,0,1,192,2,152, -0,3,44,136,72,0,2,64,128,0,1,11,0,1,12,128,1,0,1,240,250,0,0,4,1,0,0, -16,4,0,0,2,0,3,128,0,0,16,5,137,6,0,0,136,0,7,4,16,0,6,34,0,6,17,0,0, -4,128,0,0,16,0,0,10,64,0,0,104,0,1,32,0,0,132,192,0,2,2,64,1,8,1,1,32 -,0,0,4,0,0,244,249,0,12,4,0,2,6,0,18,12,0,6,6,0,4,128,16,0,1,96,0,10, -2,32,32,0,4,192,254,224,65,0,0,128,7,1,0,5,3,96,0,1,8,6,48,0,8,44,0,7 -,12,0,6,6,0,1,8,6,128,64,22,4,0,0,96,0,1,96,1,48,160,1,0,1,6,192,2,0, -0,32,3,96,0,0,48,0,0,88,251,168,9,0,0,128,70,0,1,64,32,0,2,1,32,0,1,1 -,6,16,0,8,20,0,7,10,0,6,5,0,0,128,0,0,70,2,8,138,0,1,96,0,1,160,0,0, -128,128,0,2,2,64,1,0,0,2,1,32,0,0,48,33,67,252,0,6,64,0,3,12,128,5,0, -0,10,16,192,132,0,7,40,33,0,6,10,0,6,5,0,1,10,16,192,4,13,16,0,0,96, -65,0,0,192,0,0,32,64,70,1,0,0,24,133,33,0,0,4,12,130,1,128,0,0,161, -248,224,129,0,0,128,7,2,0,0,30,8,0,2,15,226,65,12,128,1,244,0,8,32,0, -17,12,128,7,242,0,0,18,192,0,0,120,0,2,1,13,128,7,0,1,30,0,0,2,25,64, -14,192,65,60,16,104,249,4,0,5,24,0,3,12,128,1,0,0,8,0,0,192,0,8,32,0, -18,8,0,0,192,0,0,20,0,2,64,0,1,1,32,0,0,6,0,1,24,0,0,2,0,1,12,128,1,0 -,1,57,254,128,73,0,1,38,1,0,0,152,2,0,2,12,128,1,160,0,1,192,0,8,144, -64,0,16,48,1,6,68,68,8,4,0,1,4,0,0,128,64,48,132,6,0,1,24,0,0,129,16, -130,12,128,1,48,4,184,255,0,0,4,53,0,0,16,4,0,0,2,0,0,32,8,8,128,0,0, -16,5,0,0,64,0,0,136,2,0,4,160,1,4,16,0,16,52,2,0,0,208,128,2,0,3,1,32 -,0,0,132,64,0,0,80,2,1,64,0,0,8,32,13,160,1,4,0,0,48,248,0,1,48,0,6,1 -,0,1,4,0,3,1,0,6,128,1,0,18,48,16,0,0,192,0,8,48,0,1,128,0,3,32,0,0, -12,128,1,0,1,40,249,224,65,0,0,128,7,1,0,1,196,0,0,32,0,0,3,96,0,1, -136,1,48,0,6,128,1,44,0,17,16,16,0,1,32,22,4,0,3,96,1,0,0,32,0,0,64,0 -,1,192,2,0,1,3,96,0,0,48,16,0,0,254,164,5,0,0,128,22,0,1,64,64,0,1,8, -1,32,0,1,129,0,0,16,0,0,88,8,0,3,128,1,20,0,17,176,0,1,64,0,0,138,0,4 -,160,0,0,128,0,1,128,0,1,64,1,0,0,130,1,32,0,0,48,0,0,210,252,12,0,1, -32,0,3,4,35,2,20,140,128,5,128,8,38,196,8,64,0,5,32,40,33,0,16,48,0,1 -,192,0,0,13,16,0,2,128,196,0,0,48,1,0,0,64,0,1,128,33,0,0,66,0,0,1,0, -0,128,0,0,232,254,224,129,12,128,7,2,0,0,6,192,3,24,0,0,15,226,129,12 -,128,7,240,32,30,16,0,3,96,0,0,32,0,7,4,0,8,60,16,0,0,240,0,0,18,0,3, -3,0,0,1,29,16,0,0,176,0,2,2,25,0,0,2,64,0,0,61,16,32,255,8,0,6,4,3,0, -0,32,12,128,1,0,0,8,6,192,0,0,24,0,6,32,16,0,6,16,0,6,8,0,0,48,0,1, -128,0,0,20,0,3,12,0,0,1,0,2,64,0,2,2,0,1,12,128,1,0,1,161,253,128,65, -0,0,33,6,1,0,0,24,0,0,3,0,0,4,12,128,1,48,0,0,6,192,0,0,24,33,0,5,16, -0,7,4,0,6,2,0,0,48,66,0,0,224,0,0,73,4,0,2,76,136,68,144,32,0,0,128,0 -,2,137,0,0,64,76,130,65,48,16,136,254,128,17,0,0,2,64,0,1,26,0,0,32, -104,2,128,0,1,5,128,6,0,0,136,2,0,0,11,0,1,73,48,0,0,4,16,0,6,8,0,6, -164,1,180,64,0,0,208,136,18,16,0,3,32,0,0,132,160,0,3,64,0,2,1,32,0,0 -,4,0,0,56,251,0,0,128,0,0,16,0,0,2,0,0,24,0,1,97,64,0,0,4,0,0,48,0,0, -6,0,4,2,0,0,4,0,10,10,0,6,133,1,48,0,1,192,0,0,8,0,21,112,252,224,1, -12,128,1,0,1,24,192,0,0,32,32,3,224,65,0,0,8,0,0,48,0,0,24,192,3,2,0, -0,8,0,1,44,0,16,128,0,0,32,0,1,32,22,0,4,96,1,0,0,32,0,3,192,2,0,1,3, -96,0,0,48,0,1,248,40,8,5,128,0,2,24,64,0,0,96,1,1,160,17,0,0,1,0,0,16 -,0,0,24,64,0,2,4,0,1,20,0,7,4,0,6,2,4,176,0,1,64,2,10,0,4,160,0,0,32, -1,6,2,0,1,64,1,0,1,1,32,0,0,48,17,243,248,0,1,48,10,38,1,0,1,8,131,32 -,2,44,0,0,4,130,8,16,192,2,64,4,0,2,8,0,0,4,41,33,0,6,16,0,6,136,17, -16,8,0,0,192,64,20,4,0,3,192,0,1,4,32,1,0,1,128,33,0,1,44,128,5,128,0 -,0,201,248,224,1,60,128,7,0,1,6,192,3,120,32,15,226,1,12,128,1,244,32 -,6,128,3,0,1,7,96,0,0,32,0,7,32,0,6,98,128,60,0,1,240,0,0,18,0,5,1,29 -,128,7,0,3,2,1,0,0,14,194,65,60,16,176,250,4,0,0,48,0,0,6,0,3,3,32,0, -0,12,0,2,8,0,0,194,0,1,4,0,2,8,128,1,32,16,0,6,2,0,6,136,1,16,0,1,128 -,0,0,16,0,5,1,16,0,0,6,0,3,2,0,1,12,128,1,0,0,32,233,248,128,1,48,0,0 -,6,0,3,3,80,66,12,128,65,48,0,0,32,192,0,1,64,3,0,1,4,128,145,16,2,0, -15,16,2,32,0,0,224,16,16,0,4,128,80,16,64,38,8,0,2,161,0,1,12,128,1, -48,2,0,0,252,0,0,4,1,0,0,64,208,0,0,66,0,0,32,72,2,128,0,1,21,0,2,136 -,26,64,0,0,104,0,0,13,32,0,0,4,16,0,6,6,0,6,35,8,180,32,0,0,16,8,26,2 -,0,0,104,4,13,32,1,4,128,0,3,64,0,2,1,32,0,2,104,250,0,4,194,0,0,16,4 -,0,0,33,64,0,0,4,0,0,32,0,3,24,0,3,12,0,10,2,0,6,1,0,0,49,0,1,64,64, -24,0,1,96,32,12,128,0,0,1,0,13,128,248,224,1,0,0,128,1,192,0,0,6,200, -0,0,96,0,0,3,224,65,44,0,1,48,0,0,24,0,0,3,98,0,2,64,44,0,7,8,0,6,4,0 -,0,48,16,0,2,24,0,1,96,0,0,12,96,1,0,5,192,2,0,1,3,96,0,2,152,253,164 -,81,0,0,128,0,0,192,0,0,146,64,0,0,96,32,1,160,5,20,4,0,0,16,0,0,24,0 -,0,19,0,0,32,0,2,20,0,0,1,0,5,128,0,6,128,132,16,2,0,0,192,72,24,8,0, -0,96,65,12,160,0,2,22,2,0,1,64,1,0,1,1,32,0,2,185,250,4,0,2,22,193, -130,136,4,11,96,4,76,0,0,4,26,0,1,192,4,88,0,0,96,96,65,12,8,68,40,33 -,2,0,5,10,1,0,5,5,128,48,10,0,0,128,2,24,16,0,2,44,64,1,0,0,1,16,0,2, -128,33,0,1,76,128,9,0,1,147,254,224,129,0,0,128,7,240,0,0,4,192,131, -56,64,15,226,1,32,8,0,0,240,32,30,200,3,120,0,0,15,96,0,0,32,0,0,2,0, -6,1,0,5,96,0,0,44,0,1,112,128,30,0,1,56,64,15,4,1,12,136,7,4,0,2,2,1, -0,0,14,194,65,0,1,64,248,4,0,2,6,0,0,128,26,16,3,96,0,0,12,0,1,40,8,0 -,0,192,0,1,16,3,2,0,0,12,128,65,32,0,15,128,1,32,32,0,0,192,0,1,4,0,0 -,32,0,1,8,1,48,0,0,6,2,0,2,130,0,1,12,128,1,0,1,98,248,128,69,0,1,6,0 -,0,8,24,0,0,3,32,130,12,128,73,16,2,0,0,192,0,1,1,35,96,10,76,1,8,16, -161,2,0,5,64,1,0,6,128,32,2,0,0,192,32,8,0,1,96,129,128,0,0,1,176,64, -22,0,3,33,0,1,12,128,1,0,1,128,250,0,0,16,0,0,2,64,80,0,0,10,0,0,32,8 -,0,0,128,0,1,5,128,6,0,0,128,10,64,0,0,104,4,1,128,4,4,16,0,14,32,0,0 -,21,128,0,0,208,0,1,64,0,5,36,160,6,0,2,64,34,0,1,13,32,0,2,40,249,0, -0,128,0,0,16,0,0,130,0,0,16,0,1,1,0,1,4,0,5,16,0,1,97,32,0,1,65,0,1,1 -,0,5,128,0,8,32,0,1,192,0,10,6,0,3,1,1,0,5,184,251,96,0,0,12,128,1, -176,32,22,192,0,0,120,0,0,3,224,1,44,0,0,6,240,0,0,22,196,0,0,64,0,0, -12,100,1,44,0,0,4,0,6,2,0,7,44,0,0,6,194,0,2,3,0,4,48,0,4,192,2,0,1,3 -,96,0,2,152,252,40,0,0,4,128,0,0,80,8,10,64,0,0,104,0,0,1,160,9,21,4, -70,216,0,0,10,65,3,97,36,140,160,80,20,0,0,1,0,5,130,0,6,4,8,149,8,38 -,192,2,1,0,0,67,0,4,160,8,0,3,64,1,0,1,33,36,0,2,67,250,128,9,176,0,0 -,6,97,0,0,140,0,0,147,96,1,76,2,4,26,0,0,16,192,2,13,0,0,9,98,64,0,0, -192,0,0,40,33,4,0,5,32,2,0,6,72,24,0,0,16,192,0,2,8,0,4,48,9,64,1,0,1 -,128,2,0,1,12,129,73,0,1,9,252,224,65,60,144,7,144,0,0,16,196,3,112, -64,15,224,1,32,136,7,242,0,0,18,192,2,120,0,0,15,4,1,32,0,15,224,0,0, -36,160,7,50,64,0,0,192,3,1,0,3,60,128,1,0,3,2,0,1,15,192,1,0,1,72,253 -,132,1,48,0,0,6,160,0,0,16,4,3,96,16,12,0,0,64,40,8,0,0,196,32,20,0,0 -,131,96,0,0,12,66,1,32,128,1,0,5,192,0,6,128,0,0,41,8,0,10,48,0,1,1,0 -,2,2,0,1,12,128,1,0,1,161,249,128,1,48,0,0,6,64,0,0,72,0,0,3,96,1,12, -128,9,144,0,0,38,192,8,8,0,0,10,96,130,12,128,0,0,16,160,0,6,64,0,6, -134,1,144,0,0,166,0,0,136,0,1,11,2,0,3,48,8,32,0,3,2,0,1,64,130,1,0,1 -,56,251,16,16,0,0,2,16,148,0,0,2,64,128,40,1,129,0,1,5,0,2,128,18,64, -19,12,0,0,77,16,4,4,16,2,0,5,18,1,0,5,160,145,4,0,1,208,0,0,2,0,1,8,0 -,1,160,1,165,128,68,17,0,0,2,64,128,0,1,13,32,1,0,2,252,0,0,128,0,0, -16,0,0,64,0,4,32,0,0,2,0,5,8,0,0,3,0,3,64,0,8,20,0,6,138,0,3,192,0,6, -128,1,0,0,16,2,0,0,128,0,4,12,128,0,0,1,0,0,80,255,96,0,0,12,128,7, -177,32,22,0,0,128,56,0,0,4,224,1,44,0,1,240,32,22,4,2,2,0,0,12,96,1, -44,128,2,0,5,64,1,0,5,128,1,44,0,1,192,0,3,96,0,1,128,65,48,128,3,48, -0,0,6,0,3,3,96,1,0,1,152,254,44,0,0,4,128,38,80,8,10,0,0,8,8,17,64, -162,81,20,4,0,0,208,4,10,1,17,96,68,44,176,80,20,0,7,8,0,6,129,133, -148,8,0,0,192,66,64,4,0,0,96,0,1,128,9,32,144,4,16,4,3,0,1,1,0,0,1, -160,0,2,41,253,132,65,176,8,0,0,96,0,0,140,0,0,8,0,0,68,64,8,4,26,0,2 -,2,13,0,0,3,4,16,36,192,0,0,40,33,0,14,16,5,26,0,1,192,0,1,1,0,0,96,1 -,0,0,128,73,128,8,4,0,0,72,152,0,0,136,0,3,1,0,1,155,255,224,1,60,128 -,7,146,0,0,16,196,128,80,0,0,3,224,1,32,8,0,0,240,0,0,18,192,0,0,24,0 -,0,15,8,1,32,0,15,224,1,36,32,0,0,48,64,6,4,0,0,120,32,0,0,224,1,12, -128,2,48,0,0,30,200,0,2,2,194,0,3,252,132,1,48,0,1,96,0,0,16,4,128, -104,16,0,2,40,8,0,2,12,0,0,2,96,16,12,64,1,32,0,17,40,8,0,1,64,0,2,96 -,32,0,1,1,16,32,2,0,1,24,0,0,128,0,1,12,2,1,0,1,18,252,128,1,48,0,0, -22,129,0,0,8,0,0,33,96,2,64,129,69,16,0,1,192,34,16,128,8,100,1,12, -132,0,0,16,5,0,14,128,129,16,0,3,24,5,0,0,96,1,0,0,128,81,32,2,4,128, -16,24,0,0,34,0,1,140,128,0,2,168,255,0,0,16,132,8,64,16,0,0,18,8,32,8 -,0,0,33,0,0,16,37,128,18,8,128,2,64,0,0,105,2,69,0,0,5,36,16,0,14,160 -,4,36,128,36,146,0,0,26,64,0,3,160,1,4,128,4,0,1,2,64,0,0,8,0,0,1,160 -,4,0,1,208,252,0,0,128,0,2,2,0,0,8,0,1,1,0,1,2,0,0,16,8,4,0,3,3,96,64 -,8,132,64,16,0,16,128,16,32,6,0,0,64,24,0,4,128,1,0,1,2,0,7,128,129,0 -,1,96,255,96,0,0,16,128,1,0,1,22,192,0,3,96,0,0,44,0,0,6,244,32,24,16 -,3,56,32,12,100,1,44,0,7,8,0,6,132,1,44,0,0,6,128,0,0,24,0,4,128,1,12 -,128,5,0,1,24,0,1,96,0,0,3,96,64,0,1,8,250,40,0,1,138,0,2,10,64,0,2, -128,34,0,0,20,4,38,208,2,64,0,0,3,74,4,140,160,80,20,0,0,4,0,5,16,2,0 -,5,136,41,20,0,0,6,66,128,24,0,0,3,1,0,1,128,69,4,128,2,0,1,24,16,128 -,96,0,0,1,160,0,2,98,255,128,69,128,0,0,22,2,34,12,0,0,139,0,1,64,130 -,1,40,0,0,66,2,2,25,32,18,96,16,68,192,0,0,40,33,2,0,5,16,1,0,5,136,0 -,0,170,0,0,6,64,16,24,16,8,4,0,1,128,17,48,17,3,0,1,64,0,0,16,0,1,140 -,2,1,0,1,200,252,224,1,12,144,7,48,0,0,8,192,3,24,32,11,224,65,32,128 -,7,240,0,0,6,192,0,0,121,0,0,15,8,1,32,0,0,7,0,5,144,3,0,5,104,1,36, -136,7,242,0,0,30,192,3,0,2,224,65,60,128,4,0,1,30,200,128,24,32,14,96 -,0,0,1,0,0,80,254,132,1,0,0,8,6,192,32,8,0,0,3,96,16,0,0,130,1,40,0,0 -,6,4,0,0,24,0,0,2,96,16,12,200,0,0,32,144,5,0,5,208,2,0,5,136,65,32,0 -,0,6,192,0,2,3,0,2,128,1,48,0,0,2,0,2,16,0,1,32,12,128,65,0,1,169,254 -,128,1,0,1,6,192,0,0,8,0,0,3,96,0,0,32,128,1,32,0,0,6,192,40,88,4,1, -68,1,140,0,0,1,160,0,0,4,0,5,8,2,0,5,132,5,32,0,0,22,200,36,0,0,2,19, -4,0,2,72,48,0,0,4,0,1,24,0,0,139,0,0,4,12,0,0,5,0,1,72,253,0,7,1,0,1, -2,0,17,4,0,6,2,0,35,140,255,32,0,0,4,128,0,0,16,0,0,2,68,0,0,8,64,1, -32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,0,4,0,7,2,0,6,33,0,0,4,128 -,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32, -0,0,4,0,0,128,248,0,22,1,0,50,136,255,36,0,0,4,128,0,0,16,0,1,64,0,2, -1,32,0,0,4,128,0,0,16,0,0,2,64,32,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128, -0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,16,20,0,0,2,64,0,0,8,0,0,1, -32,0,0,4,0,0,3,253,12,0,9,16,0,3,34,0,4,16,0,4,1,66,0,28,48,0,9,128,0 -,0,16,0,1,141,248,0,7,4,0,13,2,0,0,1,0,18,32,0,1,128,0,0,16,0,1,64,0, -0,8,0,0,1,0,2,128,0,4,128,8,0,1,8,0,0,5,0,0,192,255,8,0,25,128,0,0,32 -,0,30,8,0,12,152,253,32,132,132,160,16,18,66,64,80,8,2,128,33,40,4, -129,144,0,0,24,130,66,80,8,9,33,1,32,8,0,0,1,0,14,32,0,0,132,144,0,0, -16,0,0,66,80,0,0,8,0,0,1,32,4,133,128,16,20,34,2,32,8,9,0,0,128,4,136 -,4,0,0,248,248,0,21,4,128,64,0,4,8,0,2,8,0,2,4,0,15,4,128,0,0,16,0,2, -2,0,0,128,0,1,4,16,0,5,32,251,0,0,2,0,1,8,0,20,2,0,14,4,0,6,128,0,2, -128,0,19,120,249,0,17,8,0,6,16,0,0,128,0,19,4,0,15,8,0,1,64,0,4,208, -250,0,6,32,0,1,128,0,0,1,1,0,2,128,0,3,129,2,0,48,64,16,64,249,0,9,64 -,0,19,2,0,6,1,0,1,4,0,7,32,2,0,4,32,0,15,136,252,0,33,32,0,15,2,0,7, -16,0,13,204,251,130,0,4,128,0,0,64,0,5,16,0,1,17,128,0,24,64,64,0,2, -64,0,0,8,4,0,1,16,2,4,0,0,16,0,1,64,32,16,0,4,1,0,2,57,253,0,1,4,128, -0,0,4,64,2,16,0,0,2,0,1,8,0,0,1,0,10,64,16,0,18,4,0,7,4,0,1,4,0,0,2,0 -,3,129,0,2,130,0,2,80,251,64,0,0,4,128,0,0,4,192,2,144,0,0,2,12,0,0,8 -,0,0,9,0,1,34,64,0,7,5,5,0,14,64,128,160,32,0,0,32,0,0,4,8,0,1,32,3,6 -,0,0,172,133,20,32,64,4,99,90,2,0,1,44,0,2,232,253,0,0,5,48,0,0,4,0,1 -,16,2,1,8,0,1,2,32,16,12,38,139,40,16,0,0,65,224,0,1,2,3,16,36,0,14, -128,90,212,0,0,130,0,1,8,4,64,2,2,68,2,0,0,196,35,144,4,2,0,0,93,145, -0,1,64,0,0,116,32,0,0,72,249,0,1,16,0,5,1,0,2,8,0,0,16,8,2,1,32,0,1,1 -,32,0,1,1,0,0,8,0,15,128,64,16,0,0,4,0,1,8,4,0,2,2,4,0,6,4,1,2,0,2, -128,0,1,216,253,2,1,32,128,0,2,16,16,0,5,1,32,4,128,0,0,8,0,1,18,0,1, -128,0,1,8,0,19,1,0,2,128,0,7,1,0,7,64,16,0,0,177,253,0,22,4,0,1,64,0, -17,128,0,3,18,1,0,22,104,251,0,0,1,0,1,4,128,0,8,32,0,5,2,64,0,22,32, -128,0,17,2,0,6,176,252,0,10,64,0,34,1,0,1,8,80,0,12,1,0,8,72,251,0,13 -,128,0,1,16,0,27,128,0,2,16,32,0,8,4,0,12,56,251,0,21,128,64,0,7,32,0 -,2,32,0,2,16,0,2,16,0,5,128,0,10,16,0,6,4,128,0,1,240,249,0,28,32,8,0 -,1,32,0,3,4,0,1,16,0,32,240,252,0,46,16,0,14,128,0,2,128,0,6,16,254,0 -,0,128,0,42,64,0,4,64,0,11,16,0,6,128,0,2,254,0,1,64,0,5,4,0,1,16,0,8 -,64,0,0,8,0,1,32,0,19,4,8,0,9,36,36,0,12,40,253,0,8,8,0,11,4,32,0,4,4 -,0,21,1,0,2,32,2,0,0,128,4,0,1,32,0,3,64,0,5,24,248,0,10,16,0,1,4,0,3 -,2,0,29,128,0,0,64,0,21,16,248,0,6,16,0,18,1,0,17,1,0,2,32,0,3,64,0,3 -,32,0,13,248,248,0,51,1,0,21,152,254,0,30,16,0,2,16,0,2,8,0,2,8,0,0, -128,0,0,2,0,26,168,255,0,3,2,0,23,16,0,44,152,252,0,1,32,0,10,5,0,3,2 -,0,6,64,0,17,4,0,3,1,0,22,152,250,0,56,1,0,16,136,254,0,10,16,0,5,1,0 -,2,8,0,4,16,0,11,4,0,1,1,0,5,128,0,22,192,254,0,5,16,0,13,128,0,6,64, -0,11,16,0,12,8,0,15,64,0,0,216,255,8,0,1,8,0,3,4,128,0,0,64,0,0,2,64, -0,1,4,4,32,16,4,0,5,12,16,0,2,64,0,0,32,64,0,11,4,0,2,4,2,0,1,8,0,0, -64,0,1,4,1,0,0,16,0,6,32,0,0,168,249,0,7,32,0,7,16,0,3,10,0,1,16,0,1, -8,0,15,64,68,0,0,80,0,4,4,128,0,0,16,0,1,128,64,8,0,5,32,0,4,224,255, -0,9,72,0,13,4,0,20,16,0,12,32,0,7,8,0,0,1,8,0,0,96,253,0,20,18,0,5,16 -,0,25,2,0,6,4,1,16,0,8,248,250,0,6,2,0,32,2,0,4,64,64,10,0,1,2,0,2,16 -,0,0,2,0,8,160,0,2,2,0,0,4,152,250,0,0,64,0,1,2,0,3,1,0,1,4,0,1,16,0, -0,4,32,32,0,0,8,0,0,32,16,0,0,2,64,0,19,136,0,5,32,8,0,0,4,64,16,0,5, -128,0,1,1,0,1,16,0,0,128,254,0,1,4,0,1,64,0,1,64,0,2,1,0,0,128,8,0,6, -2,0,1,64,0,0,17,8,0,13,16,0,7,4,0,7,2,0,1,16,0,0,1,0,6,152,251,0,0, -128,4,0,0,1,16,0,1,192,0,2,3,0,1,13,0,0,1,96,64,0,0,12,1,18,32,0,0,36 -,128,165,37,0,2,4,0,0,32,192,0,3,2,0,0,16,112,0,2,16,1,0,1,128,18,0,0 -,80,33,0,0,6,168,168,128,0,2,82,64,80,1,0,0,2,0,1,8,0,0,56,251,128,98 -,0,0,14,10,193,144,0,0,4,135,32,72,132,3,1,128,10,4,192,6,148,18,66, -96,164,10,0,0,49,37,4,0,4,128,16,0,3,8,0,0,64,8,160,64,0,1,129,64,0,0 -,50,0,0,64,0,1,18,2,0,0,16,10,144,4,0,0,64,21,8,32,0,0,4,1,0,0,128,0, -0,184,254,128,32,0,0,8,2,34,0,1,16,2,66,0,0,4,2,0,1,8,0,0,16,0,3,32,0 -,20,32,0,0,1,0,1,64,0,6,8,0,0,16,8,0,3,4,0,0,32,0,0,2,0,3,200,252,0,0 -,128,0,0,4,0,0,16,32,0,1,1,0,0,16,0,0,72,0,2,1,32,0,0,4,132,128,16,0, -0,2,32,64,16,4,0,4,64,32,0,3,4,0,0,32,16,0,4,1,0,0,8,0,0,128,0,7,1,0, -6,2,0,2,232,252,0,20,64,0,10,16,0,1,1,0,3,8,0,0,128,0,30,80,254,0,21, -64,8,0,0,17,32,0,2,5,0,1,16,0,2,128,2,0,1,8,0,2,32,0,28,128,252,0,6,4 -,0,1,136,0,5,1,0,6,32,0,0,5,0,16,32,0,0,2,0,3,32,0,21,88,254,0,2,16,0 -,5,32,0,3,128,16,0,3,32,0,3,1,0,20,20,0,8,4,0,4,64,0,3,8,0,4,16,248,2 -,0,8,32,0,12,16,0,20,2,64,0,4,64,0,0,32,0,2,4,64,0,5,1,0,1,8,0,3,32, -254,0,60,8,0,2,64,16,0,8,251,0,22,2,0,6,64,0,1,32,64,0,2,32,0,2,32,0, -29,128,80,255,0,10,32,0,15,128,0,45,144,253,64,34,128,0,0,136,0,5,32, -0,2,132,0,7,1,8,0,23,32,2,0,22,204,252,0,17,8,16,0,2,4,0,1,16,0,22,64 -,16,0,17,1,0,3,208,250,0,14,2,0,3,1,0,1,1,0,1,2,0,21,1,0,13,64,0,7,4, -0,0,216,252,0,5,16,64,0,2,1,0,4,1,0,2,2,0,33,8,0,0,1,0,15,104,248,160 -,4,0,2,16,0,0,2,64,3,0,1,1,0,0,48,164,144,6,16,0,0,64,0,1,8,36,0,1,48 -,0,16,160,1,52,138,6,0,9,52,128,70,16,0,0,26,64,8,4,0,0,65,0,1,4,6,8, -254,0,0,129,0,6,3,0,6,6,0,0,128,0,0,4,0,0,96,0,20,128,1,32,0,0,6,0,9, -48,0,0,6,4,0,0,24,0,4,4,0,0,16,0,0,200,254,128,0,3,240,0,0,6,0,0,131, -0,2,96,0,0,48,128,7,192,0,0,6,0,1,64,16,0,0,96,0,17,96,0,0,48,16,6,1, -0,8,60,0,0,6,48,0,2,1,0,1,4,0,3,240,253,0,0,1,0,2,208,0,0,2,0,0,11,0, -2,32,0,0,32,136,6,192,20,2,0,1,32,1,0,0,32,0,17,32,0,0,176,0,0,16,0,9 -,52,0,0,6,18,0,1,32,34,1,0,0,72,16,0,0,48,18,120,255,128,0,3,192,132, -152,8,32,4,0,0,128,128,5,49,1,6,64,68,24,2,0,0,96,0,1,128,145,0,17,48 -,48,9,134,0,9,48,0,0,4,192,36,88,16,8,0,1,64,0,1,32,16,152,253,96,1,0 -,2,224,0,0,30,192,0,2,3,226,1,60,32,7,48,0,0,30,0,1,120,32,0,0,224,1, -0,16,64,0,0,60,128,7,0,9,56,128,3,228,0,0,6,192,3,2,0,0,15,8,0,0,28,0 -,0,88,250,128,0,3,192,0,0,24,0,0,3,0,1,12,132,1,48,0,0,6,192,0,0,24,0 -,1,96,0,1,128,1,0,16,128,65,48,8,0,0,1,0,8,48,0,0,6,196,0,0,24,0,0,1, -1,0,0,4,0,1,48,16,72,251,0,0,1,0,2,192,36,24,0,0,8,1,0,0,140,128,1, -176,8,6,192,136,24,0,1,112,68,0,0,128,1,0,16,128,1,176,0,11,48,0,0,65 -,192,0,0,64,16,35,0,1,76,1,0,0,56,0,0,136,249,0,11,13,0,0,48,4,193,0, -0,208,0,0,2,0,1,104,16,0,1,48,0,8,48,0,6,56,0,1,128,4,0,1,2,0,1,8,68, -0,0,32,4,5,128,38,24,0,1,64,11,2,0,0,65,36,0,0,4,64,52,250,0,11,12,0, -1,48,0,1,192,0,3,96,0,12,12,0,6,6,0,3,2,0,10,6,0,3,2,0,4,16,0,0,152, -252,0,11,12,96,0,3,192,0,0,6,0,1,96,16,0,0,96,0,9,12,0,6,102,0,2,4,0, -1,6,0,1,32,0,1,128,0,0,12,0,0,6,50,0,2,3,0,1,4,128,1,0,0,32,0,0,253,8 -,0,10,12,32,0,1,65,128,192,68,2,0,1,96,0,1,32,0,9,10,0,6,37,0,2,18,1, -0,0,2,0,1,64,33,0,1,128,4,0,0,6,16,0,2,139,0,1,40,8,128,176,0,0,163, -253,0,11,128,130,1,176,8,0,0,193,2,152,4,0,0,96,0,1,128,1,0,8,10,0,6, -133,1,0,1,2,0,1,88,16,0,1,1,0,1,4,176,16,36,194,0,3,2,0,0,64,128,129, -160,0,0,169,251,0,11,3,224,65,28,128,1,240,64,30,0,1,24,32,0,0,224,65 -,0,16,192,65,0,0,128,7,1,0,0,30,0,1,120,64,0,0,96,128,60,128,3,224,32 -,0,0,192,3,0,1,15,104,0,0,28,16,240,249,4,0,10,12,128,1,0,0,16,0,0, -194,0,0,24,0,1,64,0,1,128,1,0,16,128,1,0,1,6,1,0,0,24,0,1,32,0,1,128, -128,48,0,0,6,192,0,2,3,0,1,4,128,1,49,0,0,225,249,0,11,76,136,1,16,0, -0,38,0,0,64,26,0,1,32,68,0,0,128,1,0,16,128,1,0,1,70,0,1,26,0,1,96,66 -,0,1,1,48,0,0,64,194,0,2,163,0,1,76,129,9,176,32,136,254,0,2,128,6,0, -1,2,64,0,0,8,0,0,132,4,48,4,193,0,0,208,2,2,64,8,2,0,0,13,0,0,48,52, -18,0,6,18,0,6,41,0,0,4,128,32,0,1,18,8,0,0,8,2,13,32,16,52,0,1,208,0, -0,82,96,8,4,0,5,72,248,0,3,6,0,6,8,0,4,192,128,0,4,12,0,1,48,0,7,16,0 -,6,8,0,1,16,0,0,2,0,3,1,64,12,0,1,49,0,13,160,255,0,3,6,0,5,32,11,96, -0,0,48,0,1,128,64,0,4,12,96,0,0,48,0,15,96,0,0,16,32,2,0,1,24,208,0,0 -,32,32,12,128,0,0,48,0,1,48,64,24,16,1,0,6,104,252,4,0,2,38,2,0,2,32, -4,4,69,40,0,1,65,0,0,64,8,0,0,2,160,0,1,12,32,0,0,48,5,0,6,18,0,6,41, -0,0,32,1,132,0,1,16,65,0,0,64,1,0,0,16,128,0,0,64,0,0,16,8,80,0,0,34, -1,0,5,90,250,12,0,2,70,8,0,0,128,0,0,8,4,2,6,128,17,32,8,0,0,194,2,1, -17,144,0,1,64,132,17,32,9,0,14,128,17,0,0,65,16,0,2,1,67,0,0,12,76,4, -16,49,2,0,0,192,4,128,32,96,0,6,96,254,0,2,128,7,0,1,6,208,3,24,64,8, -224,65,12,128,1,48,0,0,6,192,1,0,1,3,224,65,28,0,7,20,0,6,202,65,60, -128,7,4,0,0,6,200,3,120,0,0,15,96,0,0,60,8,0,0,240,64,6,192,3,0,6,72, -249,8,0,2,6,0,1,24,0,0,131,0,0,64,10,128,1,32,0,0,6,128,128,24,8,129, -0,2,128,1,48,8,0,14,128,1,16,0,0,2,2,0,0,8,0,0,3,32,0,1,130,0,1,8,0,0 -,192,0,0,8,0,0,1,0,6,1,254,0,3,128,0,1,152,8,11,96,4,4,128,1,48,18, -134,32,0,0,128,0,0,11,0,2,128,1,136,0,7,8,0,6,132,1,176,16,70,0,1,144 -,8,3,96,36,32,0,0,17,1,0,2,40,144,2,11,1,0,5,144,254,32,0,0,4,128,128 -,208,0,0,2,64,8,41,0,0,128,4,48,4,0,0,64,208,66,2,64,3,0,1,1,0,0,4,36 -,8,0,6,2,0,6,161,1,4,146,6,16,0,1,64,11,10,64,65,32,16,4,0,1,16,0,0, -26,80,8,9,130,1,32,0,0,4,32,16,248,0,8,2,64,0,6,193,0,3,1,0,3,17,0,7, -36,0,6,146,1,0,1,6,0,3,3,0,2,8,128,0,4,16,0,6,16,0,0,152,248,128,1,0, -0,8,0,0,192,32,0,0,192,0,0,90,16,11,96,0,1,136,1,128,0,2,3,0,2,226,65 -,0,0,8,0,14,96,0,0,16,32,6,49,0,5,4,132,0,0,12,0,1,48,0,0,24,0,0,1,34 -,0,0,12,128,1,0,1,8,254,140,1,128,0,0,64,2,4,0,0,64,10,40,2,69,40,0,0 -,128,128,0,0,64,64,0,0,2,19,4,0,0,128,160,17,48,0,15,32,0,0,32,0,0,16 -,16,0,2,19,4,68,40,0,0,8,5,0,1,16,0,0,152,16,2,64,68,0,0,4,128,48,33, -202,249,4,16,1,8,22,1,8,1,17,17,48,0,0,6,128,5,0,0,8,134,192,2,24,17, -16,1,0,0,128,2,128,48,9,0,6,6,0,6,3,80,0,0,1,22,192,36,0,1,18,96,17, -64,8,16,50,0,1,192,8,88,8,32,0,0,32,140,144,5,32,16,64,253,96,0,0,12, -128,7,48,0,0,6,128,128,72,0,0,8,224,65,12,128,7,48,64,6,192,2,0,1,3, -224,1,60,0,7,4,0,6,66,0,0,60,144,7,242,0,1,192,1,121,0,0,15,96,0,0,60 -,8,0,0,224,32,30,192,3,122,0,0,3,96,128,28,0,0,128,254,4,0,1,8,6,0,0, -64,24,80,3,80,0,0,10,128,1,0,0,8,6,128,0,1,8,3,2,0,1,2,0,0,48,136,4,0 -,5,80,2,0,5,136,1,16,0,1,196,0,2,2,97,32,4,8,0,0,48,0,1,192,0,0,24,16 -,1,32,32,12,128,129,48,16,9,255,0,0,40,48,0,0,18,200,0,0,88,0,0,147, -32,0,0,4,128,1,48,128,6,0,0,128,128,0,0,2,0,1,44,128,65,176,0,0,4,0,5 -,20,2,0,5,138,69,48,5,64,208,0,1,128,8,32,4,44,128,145,52,0,1,192,0,0 -,24,0,0,3,100,0,0,76,132,1,56,0,0,120,255,160,9,52,128,0,0,20,8,0,0, -64,0,0,72,0,0,136,4,4,4,64,70,16,64,152,64,66,8,0,0,5,0,0,4,36,9,0,14 -,32,0,0,132,160,0,0,200,0,0,2,64,35,108,0,0,1,164,9,4,134,0,0,208,0,0 -,26,64,8,12,0,3,132,16,88,250,128,129,48,0,2,128,0,2,32,0,0,4,0,1,1,0 -,0,6,1,0,0,24,4,0,2,8,0,1,17,128,4,0,5,64,2,0,10,192,64,0,1,3,96,0,2, -65,16,0,0,2,196,0,0,24,0,2,32,0,2,16,0,0,232,255,128,0,0,49,0,6,89,16 -,11,224,1,0,0,144,7,0,0,64,30,0,1,24,0,0,11,224,65,28,0,7,10,0,6,101, -0,0,16,0,0,2,244,0,0,6,0,0,2,96,0,0,4,128,129,0,0,32,0,0,50,0,0,24,0, -0,1,32,0,4,32,64,253,132,17,48,0,0,16,2,66,0,2,40,2,69,168,1,160,128, -6,0,0,2,26,0,0,8,9,0,0,5,160,1,36,0,0,5,0,5,130,2,0,5,33,0,1,65,20, -208,0,0,2,0,0,65,96,34,40,132,9,48,0,0,70,16,0,0,24,0,0,34,65,65,0,2, -48,0,0,89,251,140,17,129,32,38,192,2,0,1,11,52,0,0,6,128,129,0,0,10, -32,194,8,128,8,160,96,32,38,0,0,128,32,0,7,8,0,6,132,9,128,64,0,0,2, -68,24,33,35,96,132,128,136,17,32,16,4,2,4,128,0,0,16,0,0,8,0,2,160,0, -0,179,250,224,1,12,128,7,241,128,0,0,192,3,72,0,0,8,224,1,28,128,1, -240,32,6,192,1,120,0,0,8,226,1,16,0,0,2,0,6,1,0,5,192,65,12,128,7,48, -0,0,30,192,0,0,121,0,0,15,224,65,28,128,3,32,32,6,208,3,122,0,3,28,16 -,64,248,136,1,0,1,6,194,64,0,2,49,0,0,6,128,1,16,32,0,0,192,0,3,96,0, -0,8,2,0,0,16,128,0,6,64,0,6,128,1,16,32,2,2,0,0,24,0,0,2,97,0,0,4,128 -,1,48,32,6,196,32,0,1,1,32,32,0,2,48,0,0,210,253,128,41,0,1,66,64,8,0 -,1,19,64,0,0,8,128,81,16,129,0,0,64,128,0,1,17,97,0,0,132,128,69,32,0 -,0,9,0,5,128,4,0,5,128,1,32,0,0,6,0,1,24,0,2,130,76,132,69,56,1,39, -192,2,0,1,83,96,4,0,2,176,32,120,253,176,0,0,20,128,0,0,210,2,1,64,3, -104,2,13,0,0,4,20,128,0,0,16,16,128,64,3,96,68,1,0,0,4,36,0,15,32,0,0 -,4,130,198,208,2,1,64,19,8,8,45,164,9,4,129,32,16,0,0,2,64,8,1,4,1,32 -,0,0,4,0,0,88,253,0,0,1,32,0,1,192,0,3,96,16,0,2,33,0,4,4,3,1,0,3,17, -0,18,32,4,192,0,2,3,2,0,0,12,128,1,17,32,2,4,0,4,64,0,4,200,251,96,65 -,44,0,1,64,0,1,192,131,96,16,15,226,65,44,128,1,0,0,64,6,0,1,120,64, -11,224,1,44,128,1,0,5,192,0,6,96,0,0,16,0,0,6,64,64,0,3,32,0,1,129,0, -2,50,0,0,24,0,0,1,26,0,1,128,1,12,0,0,64,252,172,16,20,0,0,16,196,136 -,0,0,64,11,96,4,45,160,17,20,145,0,1,8,2,0,0,19,12,4,5,160,81,20,0,0, -1,0,5,128,0,6,32,0,1,65,70,194,4,0,1,35,4,0,0,140,136,0,0,176,32,22, -16,0,0,24,0,0,2,8,0,0,64,8,128,4,0,0,154,251,196,8,24,9,22,64,136,0,2 -,96,1,32,16,128,152,32,38,192,36,24,2,17,2,0,0,38,0,0,128,24,0,0,4,0, -6,2,0,5,128,73,0,0,17,6,72,8,1,0,0,18,96,20,72,128,5,32,2,20,192,32, -88,32,16,98,132,128,136,49,48,8,40,252,32,65,32,128,7,241,0,1,128,131 -,88,16,14,224,1,36,128,7,241,0,0,30,192,3,120,0,0,8,226,1,32,0,0,5,0, -5,128,2,0,5,192,1,12,128,7,240,0,1,192,1,121,0,0,7,100,128,28,144,3, -226,0,0,30,192,3,120,0,0,15,96,0,0,60,0,0,240,252,68,65,32,8,6,64,64, -0,2,97,0,0,1,0,1,40,8,6,192,0,0,24,0,0,1,0,1,8,2,0,0,16,0,15,128,1,16 -,0,0,6,68,0,2,2,97,0,0,8,0,0,1,49,16,6,192,0,0,24,16,1,96,0,1,132,1, -48,0,0,185,251,128,4,144,0,0,2,164,2,0,1,35,96,33,76,129,69,144,0,0,6 -,64,2,25,0,0,32,97,0,0,36,128,73,32,0,15,128,1,160,32,22,160,66,0,0, -128,8,32,129,66,65,0,0,48,0,0,22,196,0,0,88,0,0,19,97,0,0,64,128,137, -52,0,0,112,251,48,0,0,4,128,22,144,2,19,66,136,0,1,1,0,0,4,4,128,0,0, -16,128,88,64,3,100,68,73,4,4,148,144,2,0,5,64,1,0,5,32,0,0,4,192,22, -148,2,3,64,19,9,32,13,164,9,182,128,22,210,0,1,64,18,108,1,0,0,32,0,2 -,24,252,0,3,6,66,0,8,1,0,3,24,4,3,0,1,4,0,1,33,128,0,6,64,0,10,6,64,0 -,2,3,0,1,12,128,1,48,32,6,192,0,3,64,32,0,4,112,250,96,65,44,0,0,4, -192,0,0,24,0,0,3,0,2,224,65,44,128,1,0,1,30,0,0,1,122,0,0,11,224,1,28 -,0,0,2,0,6,1,0,5,96,0,0,16,0,0,4,192,128,24,0,0,2,0,1,8,0,0,1,32,0,0, -4,48,0,2,2,96,64,0,0,128,1,0,1,232,255,172,16,20,0,0,66,194,16,16,9, -34,4,0,0,128,162,5,20,145,0,1,130,26,0,0,11,8,65,5,160,41,36,0,7,10,0 -,6,32,0,1,33,34,200,8,128,2,9,2,132,36,132,144,16,34,66,20,0,2,145,96 -,0,2,128,0,1,225,249,196,8,24,9,22,200,4,0,0,9,16,0,1,32,0,0,128,152, -32,6,192,34,128,8,2,2,0,0,6,0,0,128,16,0,15,130,69,0,0,66,70,200,8,0, -1,35,96,18,140,128,17,50,33,70,8,4,0,1,33,96,0,1,128,5,1,0,0,163,254, -32,65,32,128,1,112,64,6,192,128,0,1,15,226,1,36,128,7,241,0,0,6,192,3 -,120,0,0,4,224,1,44,0,15,192,1,12,128,1,112,128,6,208,0,0,121,0,0,3, -100,0,0,12,128,1,32,64,0,0,192,131,120,64,0,0,96,0,2,192,250,68,65,32 -,8,4,194,32,8,0,0,128,0,2,2,0,0,40,8,6,192,128,0,1,2,0,1,4,0,0,64,16, -0,15,128,1,0,1,4,192,0,1,8,2,97,0,0,8,4,129,32,0,0,4,192,0,2,3,96,32, -0,0,128,1,0,1,106,255,128,0,0,16,0,0,65,64,8,16,2,16,0,1,128,128,65, -16,128,6,64,0,2,34,98,0,0,4,128,9,36,0,15,128,1,48,16,1,68,8,1,0,1,32 -,64,0,1,16,8,17,33,194,40,0,1,3,97,1,0,0,128,145,0,1,208,249,32,9,164 -,160,22,80,4,27,64,3,104,0,0,1,0,0,4,164,160,6,16,0,0,27,65,65,96,68, -1,0,0,48,20,6,0,14,160,1,52,129,38,208,4,2,64,0,0,72,64,137,161,5,54, -162,38,18,0,1,64,18,12,130,33,36,0,1,1,152,249,128,64,16,0,0,6,4,0,0, -24,0,0,3,96,0,3,17,0,3,24,4,0,5,32,0,7,12,0,6,6,0,0,32,32,6,194,32,0, -5,128,1,48,0,0,6,0,10,32,56,254,96,1,44,0,0,4,112,0,2,3,96,0,1,224,65 -,44,128,7,193,128,8,0,0,1,121,0,0,3,96,0,0,28,0,15,96,0,0,49,0,0,4,64 -,128,24,192,0,0,64,0,0,8,130,0,0,32,0,0,4,48,0,2,130,32,0,0,4,128,1, -12,0,0,184,250,168,0,0,20,0,0,130,16,68,0,1,3,96,0,0,128,162,1,20,128 -,0,0,192,4,64,8,10,8,132,1,32,0,0,36,0,0,4,0,5,16,2,0,5,40,8,176,8, -130,0,0,2,0,0,73,0,0,32,16,132,0,0,9,18,4,34,20,0,2,33,64,68,8,8,8,5, -0,0,50,250,64,73,24,0,0,70,8,64,64,0,1,97,65,32,0,0,128,40,0,0,6,65,2 -,64,8,11,0,1,140,144,5,16,0,0,2,0,5,16,1,0,5,136,49,128,64,38,8,34, -152,0,0,11,32,4,36,0,0,8,50,65,198,192,40,0,1,1,0,0,66,128,129,9,48, -66,168,252,32,1,16,128,1,160,0,0,6,200,0,0,120,0,0,3,226,1,36,144,7, -48,128,6,192,131,120,0,0,15,224,65,44,0,0,7,0,5,144,3,0,5,232,1,60, -128,1,48,0,0,30,208,131,120,32,15,226,1,12,128,1,224,0,1,192,3,122,0, -0,15,224,1,61,0,0,56,254,4,1,16,0,0,4,208,0,2,3,1,0,0,12,2,0,0,32,0,1 -,192,0,2,3,0,1,12,128,1,16,128,5,0,5,208,2,0,5,136,65,48,0,0,4,4,0,1, -8,3,96,0,0,12,0,0,128,32,0,0,4,196,0,2,131,32,64,4,4,0,0,48,0,0,57, -249,0,0,1,16,0,1,196,40,64,32,3,0,0,132,128,128,73,32,128,22,193,36, -80,32,3,97,0,0,13,128,1,36,0,0,4,0,5,8,2,0,5,4,0,0,48,10,0,0,128,4,25 -,64,3,96,17,140,66,5,128,16,0,0,192,0,2,11,96,1,12,128,129,48,0,0,64, -250,16,0,4,2,1,0,0,8,0,19,4,0,6,2,0,35,192,248,32,0,0,4,128,0,0,16,0, -0,2,64,128,8,0,0,1,34,0,0,4,0,1,16,0,1,64,0,0,8,0,1,32,0,9,16,0,6,40, -0,0,4,128,0,5,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,2 -,40,250,0,20,16,0,3,8,0,1,32,0,20,128,0,2,2,0,18,136,255,44,0,0,4,128 -,0,2,2,0,1,8,0,1,32,0,0,4,128,64,18,0,0,130,64,0,0,8,0,0,65,32,0,0,4, -0,15,32,0,0,4,128,0,0,16,4,2,72,16,8,0,0,1,32,0,0,4,146,0,0,16,0,0,2, -64,0,0,8,0,0,1,32,0,0,4,9,75,249,4,0,1,66,0,1,4,0,1,144,0,1,64,4,0,3, -1,0,5,128,4,0,1,34,0,15,16,2,0,12,2,0,1,8,1,0,8,233,248,0,2,128,0,1, -32,0,10,16,0,1,64,0,24,4,128,0,5,8,0,0,1,32,0,1,160,0,2,2,64,0,2,1,32 -,0,2,88,253,4,0,6,16,0,6,32,0,0,4,0,4,64,0,0,8,0,27,2,0,4,8,0,11,32, -225,253,32,72,0,0,144,0,1,132,130,0,1,9,128,0,0,48,128,4,130,32,16,0, -0,2,73,0,0,8,2,128,32,128,0,0,18,0,15,40,4,128,0,0,16,72,2,97,32,8,0, -0,1,32,0,0,4,130,0,1,64,2,64,0,0,8,36,1,32,0,0,4,2,184,254,0,0,1,0,4, -16,0,0,1,0,35,4,0,14,4,0,2,4,0,7,152,254,0,15,128,0,2,2,0,0,2,0,7,2,0 -,1,8,0,3,1,0,1,4,0,9,64,0,15,16,0,3,120,255,0,7,128,0,38,8,0,2,1,0,6, -1,0,4,32,64,0,3,5,0,1,56,254,0,4,32,144,17,128,1,0,15,64,0,20,16,128, -0,8,128,0,11,2,0,1,48,250,0,4,64,32,0,47,128,0,18,176,251,0,22,16,0, -28,34,0,7,128,0,2,32,0,7,16,252,4,64,0,1,1,130,32,2,0,0,128,0,4,4,136 -,0,0,64,16,0,5,64,0,0,33,0,17,8,0,2,32,16,0,4,4,0,0,1,0,3,8,0,0,1,0,1 -,1,36,0,0,33,0,0,36,255,0,0,128,0,0,128,0,0,4,0,3,10,0,1,4,0,0,1,32,0 -,5,16,0,0,1,32,0,0,16,0,27,2,64,0,0,16,0,1,64,0,9,32,200,253,0,0,192, -1,128,1,166,85,132,2,0,0,75,1,0,0,8,0,0,9,53,1,32,64,0,0,4,0,0,8,16,1 -,96,128,12,0,17,8,5,0,1,64,4,0,3,1,36,128,4,0,1,16,0,0,84,128,0,2,106 -,69,168,8,32,112,255,32,0,0,32,4,6,0,1,10,66,161,104,12,0,0,84,67,48, -4,2,193,32,0,2,136,0,2,64,32,0,19,3,0,0,20,0,0,4,227,32,0,0,4,2,0,0,4 -,0,0,128,1,0,1,68,13,0,0,68,40,0,0,41,4,4,0,0,249,0,3,4,0,1,16,0,0, -129,16,0,3,33,0,0,132,32,128,0,7,1,0,18,128,0,3,4,129,32,0,0,2,4,0,2, -128,0,2,2,1,0,6,32,252,4,0,0,16,144,0,3,16,0,0,32,16,0,0,32,0,0,4,32, -0,0,16,0,8,4,0,21,128,0,1,2,1,0,6,2,0,5,4,128,64,0,0,32,52,251,0,2, -128,4,0,13,1,0,10,2,0,1,8,0,3,1,0,1,4,0,3,192,128,128,0,2,64,64,0,9, -64,0,0,2,0,2,8,0,0,132,4,72,255,0,23,16,0,5,4,0,1,16,0,3,2,0,1,8,0,3, -64,0,16,2,4,0,7,208,248,0,4,32,0,0,2,0,4,64,0,1,12,0,3,32,0,3,64,0,26 -,1,64,0,1,65,0,0,2,128,8,0,2,64,128,0,0,8,0,0,2,0,2,168,249,0,6,4,0,2 -,64,0,3,4,0,7,4,1,0,0,4,0,15,32,0,0,4,0,0,1,8,0,5,33,0,2,64,0,4,4,16, -0,0,2,0,3,24,248,0,6,64,0,8,16,0,1,64,0,2,1,32,0,1,16,0,21,2,0,1,8,0, -12,4,0,5,144,254,0,3,8,0,13,1,0,26,1,0,0,8,0,4,128,0,7,128,0,0,8,0,6, -16,128,255,0,3,16,0,12,64,2,0,33,128,0,0,1,1,128,0,2,2,0,5,16,0,4,112 -,253,0,0,4,0,4,64,0,13,8,0,25,16,0,3,1,0,4,32,0,0,18,0,3,2,128,0,0,4, -0,3,216,248,0,2,4,0,3,32,64,0,9,8,0,29,64,0,10,128,0,5,16,0,0,2,0,1, -232,250,0,5,1,2,0,3,6,0,7,64,0,1,9,0,24,1,0,0,4,0,2,16,0,9,128,8,0,2, -1,0,1,56,255,0,49,4,0,3,2,64,2,0,0,1,0,13,32,232,249,0,14,64,0,0,2,0, -1,8,0,28,64,0,4,1,0,2,128,0,7,65,0,3,32,184,248,0,6,1,0,1,4,0,40,4,0, -21,152,254,0,8,2,0,20,16,0,2,16,0,2,8,0,2,8,0,21,16,0,7,56,253,0,14, -128,0,11,4,0,31,16,0,6,32,0,4,40,250,0,10,8,0,0,4,64,0,6,64,0,3,64,0, -39,1,0,5,8,251,0,44,32,0,2,4,0,19,8,0,1,32,0,0,16,249,2,0,2,2,64,0,12 -,2,0,3,128,0,21,16,0,4,8,0,0,34,0,0,4,0,0,4,0,2,8,0,10,144,252,0,5,64 -,0,3,8,0,6,128,0,14,64,0,11,16,1,0,0,16,32,0,1,8,0,2,128,0,2,1,0,3,16 -,0,0,1,0,3,96,249,8,0,11,8,0,5,80,0,6,128,0,19,2,0,1,2,0,1,4,160,0,2, -2,0,5,1,32,128,32,0,3,24,255,0,1,64,0,4,2,4,0,3,2,0,0,32,0,4,2,2,0,2, -2,0,38,12,0,5,8,240,249,32,0,4,64,0,2,34,0,10,1,0,7,128,0,2,128,0,2, -64,0,2,64,0,5,128,144,0,0,16,0,16,64,0,2,64,255,16,0,6,4,0,20,1,128,0 -,0,4,0,0,128,0,0,128,0,0,64,0,0,2,0,0,64,0,5,2,0,1,2,0,5,4,0,3,8,0,0, -1,1,0,0,4,0,1,16,0,0,240,254,0,3,4,128,34,0,24,16,0,2,16,0,2,8,0,2,8, -0,1,8,0,6,80,0,0,8,64,0,0,64,0,0,8,0,4,64,0,5,80,253,128,0,0,17,0,1, -33,0,0,8,0,0,1,8,0,1,72,0,1,32,0,1,32,8,0,2,64,0,0,4,128,0,16,32,0,7, -2,16,0,0,1,4,64,8,0,1,32,0,1,64,0,0,32,8,0,0,2,0,0,1,0,0,128,248,2,0, -1,32,0,5,18,0,1,32,0,0,4,136,0,0,1,64,0,0,128,0,2,1,8,64,0,15,8,32,0, -0,4,0,3,8,8,1,0,1,2,0,7,4,128,0,0,16,0,0,128,0,0,16,136,104,250,64, -128,8,32,2,34,0,0,4,128,0,0,26,0,1,100,0,0,4,176,20,4,192,4,64,1,0,0, -42,1,12,192,1,0,5,16,0,6,8,16,96,0,0,4,0,3,2,208,0,0,16,0,0,3,4,128,8 -,64,2,32,0,0,136,146,128,18,96,0,0,36,128,4,32,232,253,0,0,96,128,8, -192,234,16,72,2,233,208,24,28,150,33,0,0,4,21,80,4,56,6,10,0,0,16,1, -129,41,0,0,36,0,2,16,0,0,128,16,0,3,8,0,0,64,8,128,65,16,0,0,6,81,0,0 -,50,0,0,14,45,0,0,5,129,64,32,16,128,16,17,64,64,144,16,28,76,0,0,80, -160,9,32,255,0,0,64,0,0,16,0,0,64,0,0,16,64,0,0,1,32,4,130,0,3,64,0,0 -,16,4,0,1,64,0,0,128,0,17,128,128,16,0,0,4,36,0,3,16,0,0,2,128,64,0,6 -,64,0,0,16,4,0,0,64,0,0,16,184,251,0,1,1,0,0,128,16,64,0,0,8,128,8,16 -,2,32,0,0,1,32,2,0,1,8,8,2,0,2,40,64,0,0,8,0,2,4,0,0,32,64,0,3,2,0,0, -16,32,64,0,2,1,0,1,4,0,0,1,0,2,4,0,0,8,0,1,2,64,0,3,8,1,0,1,4,0,0,144 -,250,16,0,28,16,0,1,64,0,3,8,0,1,32,0,4,16,0,5,4,0,1,16,0,5,1,0,5,96, -64,0,1,12,251,2,0,3,5,0,11,128,0,3,128,0,22,128,96,4,0,3,128,0,0,64,0 -,2,1,0,0,1,2,0,0,64,0,0,8,0,0,16,0,0,2,0,0,128,128,144,250,2,0,11,32, -32,32,0,5,9,0,2,32,0,22,32,128,0,7,16,0,1,2,0,1,2,0,6,128,40,252,0,9, -4,0,0,1,0,12,8,0,0,8,0,18,128,0,0,4,0,0,1,0,6,8,4,0,0,69,0,3,2,0,4,8, -248,250,0,4,8,0,9,128,0,1,32,3,0,10,16,0,2,16,0,2,8,0,2,8,0,1,32,64,0 -,4,2,0,0,128,8,0,0,2,8,0,0,1,0,9,8,0,0,72,252,0,2,128,0,13,16,0,15,64 -,0,6,32,0,10,8,0,2,1,0,7,4,0,1,4,128,0,1,48,249,0,3,1,2,0,10,4,32,64, -16,0,6,32,0,13,8,0,5,128,0,3,48,48,4,2,64,32,8,0,5,96,0,2,32,0,1,64, -253,0,14,8,0,2,32,0,9,16,0,1,64,0,3,8,0,1,32,0,4,32,8,0,3,128,64,0,1, -18,128,0,1,8,0,3,64,0,1,32,1,0,2,4,48,254,0,4,128,0,4,16,0,2,16,0,5, -196,16,0,23,36,0,9,32,192,0,0,16,0,7,4,0,2,168,248,0,0,33,0,0,32,0,2, -32,0,1,64,0,4,64,0,0,64,0,2,4,0,1,2,32,0,23,1,0,1,4,0,2,9,0,1,32,4,0, -3,64,0,0,8,0,2,40,0,0,160,250,0,4,16,0,6,16,0,2,1,0,1,4,0,2,16,0,26, -16,4,0,15,2,0,2,128,16,252,0,6,8,0,2,128,0,6,64,0,31,32,0,17,8,0,2, -120,249,0,4,16,0,3,104,0,3,4,0,1,80,2,0,0,81,0,0,4,65,128,1,0,19,52, -132,0,2,26,65,0,0,72,2,37,16,0,0,52,32,0,0,208,2,90,96,3,0,1,1,161,17 -,52,34,96,251,0,9,96,0,6,128,32,0,26,32,0,0,6,0,1,16,8,0,0,96,32,12,0 -,1,48,0,1,192,64,24,0,0,3,0,2,128,129,48,0,0,248,250,0,5,32,0,2,24,0, -3,48,0,1,64,0,0,6,0,1,122,0,0,3,0,20,48,32,6,2,0,0,24,208,0,0,64,64,3 -,0,1,32,16,0,0,128,128,16,16,3,0,1,4,0,0,129,32,0,0,232,252,0,9,8,0,3 -,48,0,1,128,130,2,0,1,104,16,1,0,20,128,0,0,6,0,1,64,64,0,0,96,1,5,2, -0,0,16,2,0,0,64,0,0,136,0,0,11,4,0,1,136,8,144,16,120,252,0,5,34,0,3, -64,0,2,176,32,0,0,64,2,25,1,11,1,2,44,0,20,16,34,70,0,1,136,0,0,163, -96,12,72,8,0,0,48,0,1,192,8,152,16,67,0,1,64,132,137,48,17,248,251,0, -4,48,0,3,16,0,3,60,0,1,240,0,0,30,208,3,120,64,15,2,0,19,44,128,1,2,0 -,0,22,132,3,56,0,0,3,0,1,12,32,0,0,48,64,6,192,0,2,3,96,0,0,12,0,0, -104,255,0,4,192,32,0,2,96,0,3,48,0,1,64,0,0,24,0,0,3,1,16,12,0,21,8,0 -,0,4,0,1,4,3,0,0,64,12,2,0,0,32,0,1,128,64,16,16,0,0,2,0,0,4,0,0,1,33 -,32,184,251,0,5,4,0,2,96,17,0,2,48,18,0,0,128,8,25,0,0,33,96,4,12,0, -22,64,0,1,64,0,0,3,0,0,4,72,0,1,8,18,0,0,32,8,0,1,32,0,1,136,16,4,128 -,0,0,152,252,0,2,2,0,0,16,0,3,8,0,3,132,0,1,80,4,0,0,81,3,0,0,65,129, -160,65,52,0,17,52,132,22,8,0,1,64,3,0,1,73,40,16,180,64,0,0,208,4,0,0 -,64,8,104,0,0,13,176,9,52,2,160,253,0,2,32,0,11,32,0,0,128,32,0,1,3,0 -,2,136,1,48,0,17,32,0,0,6,0,3,3,0,1,4,0,0,128,48,0,1,192,128,0,2,97,0 -,0,12,128,129,32,16,176,253,0,1,12,0,2,32,0,2,24,0,3,16,0,1,64,0,0,6, -0,0,3,120,0,1,130,1,48,0,17,48,32,2,2,0,1,192,0,2,11,0,1,32,0,1,128,0 -,2,2,98,0,0,8,0,0,1,48,32,64,250,8,0,0,4,0,6,8,0,4,9,0,0,128,128,2,0, -0,11,106,17,64,128,5,50,0,17,128,0,0,20,0,2,64,0,2,5,0,0,9,17,64,0,0, -64,130,0,2,96,36,36,136,8,1,1,233,253,0,1,48,6,0,1,34,0,2,96,0,3,128, -64,0,0,64,2,24,0,0,11,0,0,2,128,130,9,130,0,17,144,0,1,8,0,2,8,0,1,8, -128,9,50,34,0,0,192,8,1,0,0,35,100,8,140,136,17,146,0,0,179,250,0,1, -60,0,1,240,0,3,112,16,0,2,12,0,1,240,64,30,196,3,121,64,3,224,1,12,16 -,0,16,44,136,7,0,2,128,0,0,1,0,0,6,224,1,12,0,1,48,0,1,192,3,24,0,0,3 -,96,0,0,44,8,48,252,4,0,0,48,0,2,32,0,2,96,0,3,16,0,1,64,128,24,0,0,3 -,0,0,16,0,0,130,1,48,0,18,8,0,0,4,0,2,3,0,1,8,128,129,32,16,0,0,128,0 -,2,3,0,0,64,8,0,0,1,0,1,114,252,0,1,48,0,2,4,0,2,96,0,3,32,33,0,0,128 -,0,0,24,0,1,100,0,0,36,0,0,137,48,32,0,17,2,5,0,3,147,0,1,4,128,16, -128,0,2,68,0,1,17,1,1,34,68,0,0,1,33,24,251,0,2,130,0,4,96,8,0,1,32, -32,52,162,6,80,32,0,0,81,64,0,0,65,128,161,17,21,1,0,14,32,0,0,52,192 -,70,208,0,1,64,0,0,104,8,1,32,16,132,0,3,26,16,0,0,8,8,141,160,145,52 -,64,8,252,0,2,32,0,10,48,0,0,6,128,0,9,16,0,16,48,0,0,6,196,0,3,64,0, -2,128,16,16,0,2,24,0,3,12,132,1,48,0,0,136,253,0,1,12,0,0,6,0,2,192,0 -,0,24,0,3,32,0,0,6,64,0,0,6,0,1,120,0,0,3,128,129,28,8,0,14,128,1,32, -0,0,6,192,0,1,192,0,0,96,64,3,0,2,16,0,2,16,0,3,8,0,0,1,32,0,0,208, -251,4,0,0,4,0,0,6,0,2,64,0,0,8,0,2,128,16,33,22,132,20,2,0,0,16,106,0 -,0,1,0,0,5,4,1,0,14,128,1,16,32,166,192,136,0,0,64,0,1,2,1,0,0,133,48 -,1,0,2,72,32,0,0,64,33,132,132,4,17,64,186,254,12,0,0,48,2,0,4,11,100 -,2,0,0,128,73,176,64,70,72,8,24,1,19,96,2,44,2,33,0,0,1,0,14,128,9,48 -,66,196,192,8,1,0,0,35,32,18,140,128,17,34,2,0,2,24,1,0,0,96,4,44,132 -,1,48,18,152,249,0,1,60,136,1,2,0,1,192,3,112,16,0,0,224,1,12,128,7, -240,64,30,196,131,120,64,15,224,1,40,32,0,14,224,1,13,128,3,240,0,1, -128,131,88,0,0,14,226,1,28,32,0,2,6,8,0,0,120,32,3,96,128,12,0,0,160, -250,8,0,0,48,0,1,4,0,2,3,96,0,1,128,129,32,16,6,68,0,0,24,0,0,3,96,16 -,12,128,129,52,0,15,128,1,32,0,0,6,196,0,2,3,0,0,16,12,128,1,48,16,0, -2,16,0,1,96,0,0,8,0,0,1,33,0,0,209,248,0,1,48,0,0,32,0,3,3,96,0,1,128 -,16,8,2,0,0,128,4,25,0,0,9,100,2,12,128,17,48,10,0,14,128,5,10,4,65,0 -,0,72,0,1,3,0,1,12,128,0,0,57,0,3,4,33,0,0,32,64,128,8,0,0,8,32,128, -253,32,0,0,4,6,0,0,16,132,0,0,4,96,8,0,0,1,160,1,52,130,0,0,88,36,64, -80,16,4,68,128,1,0,0,52,0,15,32,16,52,130,38,24,2,154,80,0,2,1,160,1, -4,129,34,17,0,0,26,73,96,8,8,0,0,160,129,52,6,40,255,0,4,128,0,6,128, -1,48,16,0,0,128,0,26,128,48,16,6,0,0,128,24,0,4,128,1,16,32,4,0,0,128 -,24,0,0,1,0,2,128,1,48,0,0,224,250,0,4,48,0,0,6,192,0,0,24,0,0,3,128, -1,32,0,1,66,0,0,30,4,0,0,24,0,0,3,0,1,48,0,15,128,0,0,32,16,6,0,0,64, -16,192,0,2,3,128,1,0,1,2,128,0,0,16,0,5,1,32,0,1,250,12,0,0,1,8,0,0, -144,36,2,64,0,0,8,0,0,1,128,17,17,64,16,128,130,26,0,0,16,9,0,0,1,0,1 -,128,8,0,15,68,16,0,0,70,4,2,136,66,0,2,1,128,145,176,32,4,2,4,137,16 -,35,65,66,0,0,128,128,16,17,2,251,132,145,128,0,1,64,4,88,0,0,11,96, -17,12,128,17,178,0,0,22,65,4,128,0,0,35,96,1,12,0,1,128,0,16,4,176,0, -0,36,192,34,152,0,0,11,0,1,44,128,17,160,32,18,194,4,89,8,34,96,68,0, -0,128,17,178,0,0,96,249,224,1,44,8,0,0,32,32,30,200,131,112,0,0,15, -232,1,12,144,7,240,64,30,208,131,120,32,15,2,0,0,12,16,0,14,96,128,12 -,160,3,242,0,0,6,136,131,0,1,14,98,128,28,128,7,240,0,0,6,192,1,122,0 -,1,96,0,0,12,32,160,255,4,0,1,8,0,0,208,0,0,24,0,0,3,96,0,0,12,128,1, -32,0,0,6,66,0,2,3,96,0,0,12,0,18,128,0,0,33,0,0,6,192,0,0,16,0,0,3,0, -1,12,0,1,49,0,0,2,192,64,16,0,0,3,97,32,0,1,1,32,0,0,137,248,128,133, -0,2,192,136,24,0,0,3,96,0,0,12,0,0,32,0,0,32,66,128,8,153,4,1,98,0,0, -12,0,1,48,32,0,15,9,0,0,18,16,66,2,5,2,3,0,1,12,0,0,4,48,5,164,64,4,0 -,0,137,3,32,4,0,0,64,0,0,1,18,168,248,160,65,20,0,1,208,0,2,96,104,0, -0,141,168,1,4,192,0,0,80,34,64,80,35,1,68,33,16,0,0,4,17,0,14,32,16, -52,192,6,196,130,26,97,0,0,104,12,13,160,1,4,129,18,1,0,0,90,80,0,0, -108,36,13,176,9,52,33,112,255,128,1,32,0,1,192,0,5,12,128,1,0,2,128,0 -,2,3,0,23,49,0,0,6,0,1,24,0,1,96,0,0,12,128,1,16,16,4,0,1,24,0,0,1,96 -,0,0,12,128,1,49,0,0,24,249,128,129,44,8,0,3,192,0,0,24,0,0,12,132,1, -16,0,1,64,0,0,30,8,1,24,0,3,48,0,15,128,0,0,32,0,0,4,242,0,0,16,192,0 -,0,64,0,0,3,0,3,2,2,0,0,16,0,3,8,0,0,129,32,0,0,104,248,132,5,20,1,0, -3,64,0,0,8,66,140,128,17,1,9,16,132,20,90,0,0,35,9,0,0,128,2,0,0,160, -8,0,15,68,16,32,66,16,16,8,97,0,0,32,36,1,128,5,50,33,36,0,1,8,2,11, -34,16,36,136,4,16,5,121,254,140,5,26,0,2,4,0,1,19,96,64,0,0,130,17,2, -17,64,68,132,128,0,0,17,98,2,32,0,2,64,0,15,16,49,0,0,38,0,1,24,17,19 -,96,129,64,136,9,33,2,34,8,0,0,88,32,10,98,128,44,144,1,48,34,203,250 -,224,1,36,0,1,48,32,0,0,192,131,120,0,0,11,224,1,12,128,7,240,0,0,30, -208,3,120,16,3,2,0,0,12,0,15,96,0,0,12,144,1,242,0,0,6,128,131,24,0,0 -,2,224,1,28,160,7,0,1,6,192,1,120,0,0,3,96,128,12,0,0,24,251,136,1,40 -,0,5,3,96,0,0,8,128,1,16,32,0,0,64,0,1,4,1,98,0,20,128,0,0,32,16,4,0, -1,16,0,0,3,64,32,12,0,1,48,16,2,0,1,16,16,3,64,0,0,8,8,1,33,0,0,114, -249,0,0,1,18,0,2,36,0,1,3,0,0,17,44,16,144,32,0,0,32,130,4,153,128,18 -,96,0,0,68,2,0,1,8,0,15,33,8,1,129,192,0,0,128,32,3,16,4,140,2,128,56 -,0,0,132,0,1,132,0,0,35,114,129,66,0,1,136,16,144,252,176,1,36,128,16 -,66,24,2,0,0,96,8,0,0,133,32,4,4,128,64,16,0,0,64,80,34,1,65,128,1,0, -0,4,0,15,32,4,52,130,22,20,16,154,80,1,106,128,1,160,1,133,144,0,0, -208,2,27,97,0,0,105,66,141,160,5,54,16,224,250,0,1,16,0,1,128,0,5,8,4 -,0,0,1,8,0,0,2,0,2,1,0,22,64,48,16,6,0,1,24,0,0,3,96,0,1,128,1,16,0,1 -,192,0,0,24,0,0,1,96,0,0,12,132,1,48,0,0,16,253,224,65,44,8,2,176,0,0 -,6,192,0,0,24,0,0,7,0,1,16,16,0,2,30,4,3,120,0,0,3,0,1,60,0,15,128,0, -0,32,16,4,0,1,16,192,128,64,64,3,0,2,32,0,0,64,64,16,0,3,8,128,0,0,32 -,0,0,120,252,172,5,20,1,68,88,128,2,64,0,0,8,0,0,9,0,0,4,2,1,32,4,136 -,26,1,35,106,18,1,0,1,52,0,16,40,16,0,0,2,8,8,137,66,17,32,0,0,1,128, -80,48,0,0,16,132,2,72,16,3,33,8,132,4,9,18,66,226,251,4,80,24,0,0,64, -100,0,0,152,0,0,147,96,20,4,128,5,0,0,2,6,1,24,128,0,0,131,0,0,2,140, -2,0,0,48,64,0,15,136,48,1,70,196,2,24,0,0,10,96,132,76,130,1,162,32, -32,0,0,4,24,0,0,34,96,32,12,0,0,144,176,16,232,254,192,1,36,128,7,128 -,0,0,30,208,3,112,0,0,11,224,65,12,160,7,240,0,0,30,208,1,120,64,15,0 -,1,56,0,15,96,0,0,12,160,1,240,32,6,200,0,0,25,0,0,14,224,1,28,128,7, -242,128,6,208,1,122,0,0,3,232,1,12,0,0,112,253,4,0,0,24,0,0,2,160,0,0 -,24,0,0,3,96,0,0,4,128,1,0,1,6,0,3,3,0,1,12,0,1,48,8,0,15,128,32,0,0, -4,192,64,16,8,131,64,0,0,12,0,0,1,49,0,3,16,8,3,65,64,8,4,0,0,32,0,0, -97,250,128,17,33,0,0,70,66,0,0,26,0,0,3,96,0,0,9,128,132,48,16,18,2, -68,88,4,145,96,20,12,0,1,176,0,15,128,9,0,0,66,32,72,8,132,0,0,34,0,0 -,34,12,192,1,48,5,16,162,130,0,0,128,3,112,2,0,0,64,5,1,34,160,251, -160,1,0,0,2,0,1,24,0,1,96,104,0,1,32,32,52,136,134,80,0,0,64,80,3,1, -68,128,1,0,0,4,0,15,32,4,52,160,2,18,132,26,97,0,0,104,32,1,160,145, -52,160,34,208,8,0,0,64,16,12,1,0,0,160,49,180,0,0,104,250,128,1,0,0, -32,0,5,96,0,3,32,0,1,128,32,0,1,3,0,22,64,48,0,3,24,0,1,96,0,1,128,1, -48,0,0,4,193,128,0,1,1,32,64,0,0,128,1,48,16,56,248,128,65,12,0,1,176 -,0,1,192,0,0,24,0,2,128,48,8,6,65,0,0,30,4,1,26,0,0,3,0,18,128,0,0,32 -,16,6,128,0,0,16,192,0,0,64,0,0,3,0,0,64,32,16,2,192,0,3,1,32,0,0,128 -,1,32,32,168,249,132,5,4,0,1,80,128,0,0,64,0,0,8,0,2,8,176,0,0,64,128 -,128,90,0,0,8,8,0,0,1,0,1,128,8,0,15,4,145,0,0,18,4,128,8,97,0,0,32, -32,1,128,16,16,2,4,196,20,0,1,11,96,1,0,0,128,41,16,0,0,171,251,12,4, -177,0,1,96,0,2,139,0,0,1,0,0,128,9,48,2,34,64,64,128,0,0,144,96,18,12 -,2,0,0,128,32,0,15,16,50,0,1,192,8,88,8,131,96,129,44,130,129,48,16, -34,128,2,0,1,10,66,1,0,1,9,48,18,17,250,96,0,0,60,8,0,0,128,0,1,192,3 -,16,16,0,0,224,65,60,136,7,244,0,0,30,208,0,0,120,0,0,15,0,1,60,0,15, -96,0,0,12,144,1,244,64,6,128,3,24,0,0,14,224,1,12,128,7,116,64,0,0, -192,1,56,16,0,0,224,128,12,0,0,200,249,136,65,48,0,1,160,0,2,3,96,16, -0,0,128,129,48,8,0,0,66,128,0,2,96,0,0,12,0,1,48,16,0,16,32,16,4,192, -64,16,0,0,3,64,32,12,0,0,1,32,0,0,2,196,128,0,1,3,96,0,1,128,1,33,0,0 -,177,253,0,0,16,48,0,1,64,0,2,3,96,2,0,0,128,16,48,2,38,128,0,0,24,4, -66,96,0,0,12,0,1,48,2,0,14,128,9,10,1,35,65,4,0,0,17,3,16,4,12,192,33 -,136,16,4,32,8,0,1,35,98,20,0,0,64,16,8,32,40,251,176,1,52,128,66,130 -,24,26,64,136,8,0,0,1,32,4,4,128,128,16,0,1,81,32,0,0,68,128,161,1, -132,0,15,160,81,180,192,68,16,0,0,27,81,10,104,2,1,32,132,180,192,6, -208,72,2,2,0,0,104,2,45,164,9,54,1,216,254,128,1,48,0,0,4,64,0,0,24,0 -,6,1,8,0,5,1,0,1,128,1,0,0,8,0,15,1,48,0,0,2,4,0,0,24,0,0,1,97,64,0,0 -,128,0,0,48,0,0,6,196,0,3,96,64,12,128,1,48,32,0,0,249,128,1,48,128,3 -,176,0,0,24,0,0,129,24,0,1,4,0,0,17,0,3,6,0,1,26,0,0,3,128,1,0,16,128 -,65,32,16,6,0,2,192,2,64,32,3,0,1,32,0,1,194,128,8,8,0,3,128,1,33,16, -40,249,140,17,49,128,4,80,128,24,0,0,32,8,0,0,32,0,0,8,0,0,34,64,4, -136,2,0,1,8,0,0,1,128,33,0,0,4,0,14,128,5,16,2,166,0,0,132,152,80,1, -32,1,1,128,17,17,64,22,192,4,0,0,1,0,0,96,132,140,136,9,144,0,0,18, -252,132,49,48,16,2,96,0,0,64,8,8,96,4,32,128,81,128,0,0,22,0,0,8,89,0 -,0,11,96,20,140,128,5,1,2,0,14,128,9,48,1,38,196,4,80,32,2,96,132,140 -,2,5,176,0,0,4,128,136,0,0,1,0,0,64,0,0,8,0,0,1,48,0,0,72,249,224,1, -60,128,5,128,0,0,6,192,128,112,16,15,232,1,12,144,7,241,0,0,30,196, -131,120,0,0,15,232,1,12,16,0,14,224,65,12,160,1,240,32,14,128,1,24,0, -0,14,224,64,12,160,3,114,0,0,6,16,0,0,56,32,7,228,0,0,13,16,0,0,254, -132,1,0,0,32,2,96,0,3,96,0,1,128,1,0,1,6,0,1,24,0,0,3,97,0,0,12,128,1 -,0,0,16,0,14,128,65,32,0,0,6,192,128,16,0,0,2,64,0,0,12,128,1,32,0,0, -4,192,0,0,8,0,1,64,0,0,8,128,1,32,0,0,9,248,0,0,4,1,2,4,128,0,2,160, -96,0,0,64,132,132,48,64,2,4,68,24,0,0,33,96,0,0,12,0,0,8,145,0,15,128 -,17,0,0,66,38,66,0,0,132,32,1,0,0,34,12,128,65,0,0,34,1,8,72,16,17,0, -0,16,128,2,16,132,0,0,4,96,250,0,5,68,0,20,128,32,0,44,144,249,32,0,0 -,4,128,0,0,16,0,1,64,0,0,8,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0 -,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4, -128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,136,252,0,74,152,255,36, -0,0,4,128,0,2,2,96,0,0,8,0,0,33,36,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0, -0,1,32,0,17,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0 -,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,233,249,12,8,0,3,130,0,3,4,0,16 -,1,0,23,32,0,1,128,0,16,59,250,0,0,64,0,8,64,0,0,32,0,0,4,128,0,0,16, -0,1,64,0,3,32,0,1,8,0,14,32,0,0,4,128,0,2,2,0,1,10,0,1,40,0,0,4,128,0 -,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,24,250,8,0,27,32,0,24,2,0,18, -178,253,0,0,128,4,144,16,2,64,2,72,0,0,1,34,129,36,0,0,4,128,0,0,16,0 -,0,2,72,0,0,8,32,1,36,0,1,2,0,14,32,0,0,4,128,0,0,16,66,2,0,0,32,8,0, -1,33,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,96,250,160,0, -12,66,96,8,0,1,33,0,1,2,0,3,32,0,18,16,0,2,32,0,1,8,128,0,2,1,0,2,128 -,0,0,2,2,4,64,0,2,2,0,1,96,251,0,17,1,0,2,4,0,22,64,64,0,0,6,0,1,34,2 -,0,5,24,0,1,1,0,1,128,0,4,1,4,4,16,248,0,6,8,0,1,4,1,0,9,128,0,2,176, -0,1,32,0,18,10,0,12,64,0,3,8,0,3,9,0,0,64,249,0,3,16,0,1,16,0,42,16,0 -,0,16,2,0,3,1,0,5,16,2,64,0,4,16,168,251,0,14,8,0,5,4,0,22,64,0,0,32, -0,9,2,0,1,1,0,7,8,0,2,64,255,0,12,32,0,1,128,0,0,16,2,0,6,128,0,16,32 -,0,2,136,17,0,7,32,0,1,16,0,0,16,2,0,0,64,0,1,1,0,0,32,0,1,192,249,0, -3,2,0,0,16,0,0,2,1,0,4,16,4,0,4,1,0,4,1,0,15,32,0,0,9,32,0,8,2,0,0,8, -16,0,4,128,0,2,32,0,0,16,0,0,56,248,32,0,3,20,0,0,2,0,1,2,0,0,1,4,0,0 -,9,32,0,3,64,0,0,16,0,0,1,32,0,20,8,0,8,128,0,4,64,0,7,32,0,0,240,252 -,32,0,2,3,21,64,2,136,0,0,2,0,0,1,8,0,0,13,48,0,0,128,2,0,0,192,0,0,8 -,0,0,1,160,128,2,6,0,14,64,128,8,48,0,2,128,2,0,3,36,0,0,104,21,0,1, -148,80,0,0,6,1,0,1,82,48,12,0,0,224,252,128,2,32,4,100,193,16,0,0,2,8 -,0,1,4,128,0,0,32,4,132,0,0,130,0,1,10,96,20,4,0,0,128,1,8,0,14,128, -64,16,32,128,0,3,1,0,1,128,8,4,16,8,0,0,16,16,34,0,0,1,2,0,1,12,64, -129,4,8,253,136,0,3,65,0,5,4,0,0,1,0,7,8,16,4,0,2,16,0,14,32,0,0,9,0, -5,2,0,4,8,16,0,3,64,0,4,128,0,0,128,0,0,249,0,1,4,160,0,0,16,128,0,0, -16,0,5,4,32,4,2,0,1,128,0,0,16,0,25,1,0,12,128,0,8,8,224,250,0,12,32, -4,0,2,144,0,26,4,5,128,0,2,2,0,1,8,0,3,32,0,3,64,64,0,1,1,32,0,0,1,0, -0,32,112,255,0,16,16,0,29,8,16,0,1,64,0,2,1,0,9,128,0,5,8,88,251,0,0, -2,64,0,2,1,32,0,0,4,0,1,8,0,6,32,2,0,0,128,8,16,0,23,8,0,5,1,0,6,1,0, -3,8,0,1,2,0,0,88,252,16,0,27,4,0,16,8,0,4,8,0,8,4,0,4,64,0,0,8,0,2,12 -,255,0,10,32,0,2,2,0,3,1,0,26,4,0,3,2,0,0,1,1,0,0,4,0,0,1,0,4,32,0,1, -192,0,0,16,0,0,128,0,0,32,254,16,0,14,16,8,0,0,1,0,1,128,1,0,36,16,0, -4,4,0,3,128,0,1,212,254,0,17,1,0,28,8,0,1,1,8,0,1,32,0,9,4,1,128,16,0 -,0,128,0,2,104,248,0,58,128,1,0,2,64,0,2,2,32,0,3,128,200,250,0,20, -192,0,5,32,0,17,64,64,128,0,10,64,0,7,16,0,3,96,252,0,0,1,0,3,16,0,20 -,32,0,17,16,0,1,4,0,8,2,32,0,2,1,0,2,1,0,1,2,64,0,0,136,250,0,5,16,0, -8,4,0,0,32,0,9,4,0,16,32,16,0,0,148,0,1,16,0,1,64,0,1,32,8,0,0,4,0,4, -2,8,0,2,32,0,0,112,253,64,64,0,12,128,0,4,128,8,0,35,4,0,3,2,0,4,32,2 -,0,0,128,0,0,88,251,0,46,2,0,0,1,0,9,2,0,6,4,0,5,216,252,0,47,128,0, -12,4,16,0,6,32,0,2,72,253,0,0,128,0,1,16,0,0,64,0,4,4,0,7,8,0,3,4,0,0 -,4,16,0,42,4,0,0,200,251,0,12,2,0,35,2,0,1,32,0,11,4,0,4,4,0,0,64,184 -,251,0,13,1,0,33,4,0,1,48,0,1,64,0,10,2,0,4,64,0,0,184,250,0,14,16,32 -,2,0,0,128,0,1,1,2,0,21,4,4,32,0,0,8,2,0,2,8,0,6,32,0,8,2,32,200,250, -0,3,2,0,6,16,0,2,32,0,0,4,64,0,2,2,0,21,128,0,3,128,0,0,36,0,1,16,0,5 -,2,0,7,64,0,1,32,254,0,3,1,0,42,64,1,0,1,1,0,4,65,0,2,8,8,0,3,132,136 -,16,16,0,2,64,251,4,96,0,1,4,0,16,1,0,4,64,0,21,64,0,6,128,0,0,132,0, -2,8,0,0,64,0,0,32,0,0,4,0,2,152,252,0,3,12,0,4,128,0,0,24,0,6,64,0,2, -1,0,2,16,0,26,64,0,6,128,0,1,8,0,6,128,251,16,0,0,2,0,9,64,0,30,96,0, -0,8,0,1,64,0,0,4,0,1,16,136,0,0,32,0,0,16,0,0,2,0,0,1,32,128,0,0,32,0 -,1,64,160,0,0,20,96,252,0,11,32,0,4,128,16,0,6,6,2,0,25,32,0,3,32,0,1 -,192,0,0,68,32,0,2,10,64,0,0,32,0,0,64,248,128,0,1,8,0,1,32,8,0,0,1,0 -,0,16,0,2,16,8,0,0,64,0,2,1,0,0,16,0,0,34,0,0,16,0,17,1,0,0,2,1,0,2,2 -,16,8,1,0,0,128,0,7,2,0,4,128,148,249,4,0,0,5,0,0,128,16,128,2,0,0, -128,8,0,1,2,0,0,4,0,2,64,0,0,128,0,2,1,8,0,1,32,0,14,32,0,12,64,0,8,8 -,0,4,32,253,64,0,0,5,21,0,0,84,192,6,128,80,10,32,0,0,8,3,12,16,20,32 -,128,0,0,192,0,1,32,1,76,64,8,32,0,14,32,128,160,0,0,21,130,34,0,0, -128,0,0,16,32,2,0,0,168,161,0,0,2,0,1,128,2,0,0,1,74,64,1,0,0,160,5, -184,250,0,0,64,0,0,44,0,0,138,18,64,4,153,64,68,13,160,96,0,0,5,2,128 -,0,0,8,0,0,2,32,2,64,129,72,0,0,8,0,16,128,0,0,2,33,32,16,0,1,5,0,0,4 -,0,0,8,33,0,0,132,64,128,16,0,1,10,0,0,9,128,64,1,0,0,120,250,0,0,64, -0,0,8,0,3,16,1,2,0,0,4,64,0,0,1,0,0,4,0,1,8,0,1,8,0,1,32,32,0,0,8,0, -17,128,0,0,4,64,0,4,8,0,4,128,0,6,32,128,0,1,184,248,0,2,16,0,0,16, -128,0,2,8,0,0,2,0,1,1,32,0,0,128,0,2,2,0,2,8,0,24,8,0,6,8,0,0,2,2,0,0 -,8,0,3,2,0,3,144,253,16,0,73,204,251,18,0,13,33,0,1,6,0,2,2,0,23,1,0, -2,128,0,7,128,0,1,2,0,1,8,0,1,16,0,0,4,64,0,0,128,28,254,0,1,8,16,0,0 -,16,0,1,68,0,9,128,8,0,0,64,0,1,1,0,23,2,16,0,5,16,0,4,64,16,0,0,128, -0,2,32,0,2,232,249,0,4,64,0,4,32,0,41,64,128,0,3,4,0,2,1,0,9,144,252, -8,0,14,64,0,5,4,0,27,1,0,7,16,0,5,1,0,5,144,251,0,7,16,0,4,1,0,1,4,0, -1,1,64,0,23,1,0,8,8,0,3,128,0,3,66,0,0,8,0,1,128,0,0,16,0,0,104,252,0 -,15,16,3,2,0,3,1,0,3,2,0,17,128,0,0,16,32,0,6,128,64,128,8,0,0,33,32, -0,0,8,0,2,4,2,0,0,16,8,184,255,0,12,128,0,8,4,0,20,128,0,3,64,64,0,8, -8,0,1,32,0,4,4,0,3,184,253,0,1,4,0,2,32,0,5,16,0,6,4,8,0,0,16,0,2,16, -8,0,27,64,4,0,3,128,0,2,16,0,5,168,254,0,4,8,0,5,4,4,0,7,64,64,0,1, -160,0,19,128,0,1,128,0,6,128,0,5,8,0,1,48,0,5,24,254,0,16,8,0,27,2,0, -2,1,0,10,8,0,0,2,0,6,4,0,1,200,251,0,1,1,4,0,9,64,0,0,8,0,1,32,0,30, -32,0,20,9,0,0,200,252,0,6,2,0,1,2,0,1,32,0,8,8,0,1,32,0,19,52,2,0,0, -208,0,0,130,0,1,8,0,0,9,0,2,128,2,16,136,0,0,64,3,104,0,0,33,32,0,0,1 -,0,0,16,253,0,46,32,32,0,0,192,128,0,0,8,0,2,4,2,0,2,4,0,3,3,96,0,1,4 -,0,2,112,250,0,7,192,3,0,2,128,1,0,8,32,0,0,96,0,19,48,8,0,0,128,64,8 -,0,2,32,7,0,2,128,5,64,64,0,0,192,3,96,32,4,128,0,0,1,0,0,16,252,0,7, -69,163,0,2,128,1,0,8,2,0,0,32,32,0,19,2,0,0,64,2,16,2,0,0,96,4,9,0,2, -128,2,128,0,1,64,3,96,4,72,1,5,0,1,104,250,0,6,64,4,16,1,0,2,72,0,8,2 -,0,1,8,2,0,17,176,8,0,0,192,0,4,36,8,0,3,35,2,24,0,1,3,96,8,128,1,16, -1,0,0,232,254,0,6,6,192,3,0,2,96,0,8,24,64,0,0,96,0,19,60,0,1,48,64, -30,8,0,0,120,0,0,5,0,3,4,240,0,1,128,3,24,0,0,15,224,1,0,1,16,248,0,7 -,4,0,4,64,0,11,128,0,18,48,8,0,0,128,0,0,8,0,1,96,0,0,4,0,3,4,64,0,2, -3,0,1,4,128,0,2,248,253,0,6,24,1,11,1,0,11,96,129,0,0,128,9,0,18,48,0 -,1,32,130,88,16,0,0,96,66,8,0,3,34,193,72,0,1,3,0,0,68,12,144,9,2,0,0 -,56,249,32,0,0,20,0,3,26,0,1,106,0,1,160,1,0,1,32,20,2,0,2,8,0,3,52,0 -,7,48,0,6,24,0,0,4,193,0,0,208,24,26,16,0,0,8,0,0,1,32,4,4,194,0,2,74 -,0,1,104,64,65,168,1,4,0,0,40,252,0,1,32,0,3,24,0,1,96,0,1,128,1,0,3, -128,0,7,48,0,7,12,0,6,6,0,3,192,0,0,24,0,5,128,0,4,16,16,0,0,96,0,2, -129,0,1,176,248,128,1,44,0,3,24,192,131,120,0,4,128,1,112,64,0,16,12, -0,6,6,0,0,16,128,1,128,0,0,16,0,2,32,11,96,0,0,16,128,5,0,1,24,0,2,16 -,4,128,129,0,1,192,249,8,128,20,0,3,24,64,35,104,0,4,128,0,0,16,4,0, -16,10,0,6,5,0,0,32,161,0,0,64,66,136,16,0,0,96,4,5,32,16,33,132,2,0,1 -,16,8,0,0,32,1,72,16,16,0,0,18,179,249,128,133,24,34,0,2,128,16,16,97 -,0,2,72,0,1,22,0,1,1,0,2,20,0,2,48,66,0,6,10,0,6,5,0,1,64,38,192,4,88 -,0,2,132,6,0,1,130,64,35,2,0,0,128,16,0,0,96,128,128,136,132,0,0,65, -113,248,96,0,0,36,0,3,6,192,3,112,0,1,96,0,1,128,7,49,0,3,24,0,3,60,0 -,17,60,128,7,49,128,6,16,0,0,120,0,0,9,96,0,0,60,0,0,4,0,1,6,0,1,120, -0,0,15,96,1,12,0,0,232,253,132,1,33,0,3,24,0,1,96,0,2,64,0,1,6,0,4,96 -,0,3,48,32,0,16,16,0,0,6,128,0,0,16,0,1,96,64,8,0,1,16,0,0,4,0,4,64,0 -,0,4,0,0,64,0,0,32,17,251,128,17,16,8,0,2,24,9,147,96,0,5,6,0,0,136,0 -,2,96,8,0,2,48,0,17,48,192,6,0,0,8,133,8,0,0,96,4,4,0,0,1,50,17,2,1,0 -,0,24,33,0,0,112,32,140,4,16,48,0,0,96,254,32,0,0,5,128,38,16,0,0,2,0 -,1,2,0,1,32,0,0,48,9,32,4,0,3,104,32,13,32,0,0,4,9,0,6,18,0,6,169,1,4 -,6,0,0,208,2,26,73,16,105,0,0,1,160,137,4,192,0,0,208,0,0,130,72,65, -104,12,69,160,32,52,0,0,176,248,0,3,6,4,0,1,4,0,5,48,0,6,96,0,0,12,0, -19,129,0,2,128,128,24,0,4,128,1,0,4,16,0,0,2,96,0,1,8,0,2,32,254,128, -65,44,0,0,6,1,0,1,200,131,0,2,96,0,0,60,128,1,0,4,96,0,0,15,96,0,1,8, -0,6,8,0,6,132,1,16,32,0,0,192,0,0,16,192,0,2,11,128,1,16,128,5,192,64 -,24,0,0,3,0,1,4,128,0,0,48,8,16,251,132,17,20,0,0,38,192,40,0,0,65,11 -,0,2,32,0,0,52,128,0,5,96,68,13,32,8,2,1,0,16,34,1,0,0,192,68,8,81,64 -,0,0,36,5,128,137,160,160,2,192,8,24,9,2,33,18,72,2,1,178,0,0,178,251 -,140,4,24,34,36,0,0,34,0,0,4,16,1,0,1,128,5,128,0,0,38,0,4,64,132,12, -0,0,4,0,0,10,0,6,16,0,6,136,136,128,0,1,192,4,153,16,8,2,64,6,128,17, -0,0,34,35,194,128,24,1,16,96,32,76,128,17,48,66,0,0,251,96,128,36,128 -,3,50,0,0,6,192,3,0,2,224,129,12,136,7,1,0,3,24,0,0,14,96,128,12,0,7, -8,0,6,100,1,60,32,0,0,240,0,0,6,192,0,0,120,0,0,9,96,1,61,0,0,4,240,0 -,0,30,196,0,0,122,0,0,15,226,65,60,0,0,248,249,136,0,0,32,0,0,6,192, -32,0,0,4,0,3,128,1,0,1,6,0,6,12,0,2,8,0,6,2,0,6,1,64,16,0,1,192,0,0, -16,0,1,98,32,8,0,0,1,17,0,0,4,192,0,0,24,8,0,0,65,0,0,12,128,1,48,0,0 -,17,253,0,0,80,144,8,33,196,8,16,0,0,131,0,2,128,1,0,1,6,0,4,64,129, -12,128,17,162,0,7,8,0,6,4,0,0,48,18,0,0,192,136,64,32,34,96,4,4,64,4, -48,33,18,193,68,152,0,0,11,112,66,12,130,73,176,16,16,254,32,81,4,128 -,6,16,24,10,0,0,16,2,0,0,1,32,4,0,1,32,20,0,0,2,64,0,0,40,65,0,2,52,0 -,7,2,0,6,33,33,20,128,6,208,72,2,96,3,0,1,1,160,72,20,132,0,0,208,0,0 -,26,65,8,8,33,13,160,9,53,0,0,248,254,0,3,6,4,0,0,16,0,5,64,0,12,48,0 -,7,4,0,6,2,0,0,32,16,6,192,0,2,2,1,0,2,1,0,4,16,16,2,34,0,0,8,4,1,0,1 -,152,250,0,0,1,45,0,0,6,48,128,22,192,0,3,98,0,1,128,1,0,0,128,6,192, -0,0,96,0,3,48,0,7,4,0,6,2,129,48,128,7,128,0,0,8,16,3,0,1,11,128,65, -16,128,5,0,1,24,0,0,3,0,1,12,132,1,0,1,144,250,8,8,20,0,0,66,18,8,10, -64,0,3,32,16,2,128,0,1,4,2,64,0,0,32,17,0,2,48,0,7,2,0,6,129,0,0,32, -144,6,64,2,17,0,1,4,0,0,5,0,1,32,136,2,0,0,20,64,4,11,97,132,128,0,0, -32,0,0,4,113,255,0,0,32,24,34,66,1,4,141,8,147,0,1,32,2,72,0,1,70,0,0 -,72,152,0,0,163,0,0,4,0,2,128,16,0,6,32,0,6,144,8,2,18,6,192,0,0,128, -16,161,0,1,6,128,17,48,33,35,2,130,88,32,131,64,36,132,130,5,128,32, -131,251,96,0,0,36,128,7,48,0,0,16,192,3,0,1,3,96,1,0,0,128,7,50,0,0, -30,208,3,24,16,0,2,12,0,7,16,0,6,232,1,12,0,0,7,48,64,30,192,2,0,1,9, -224,1,61,0,0,4,48,0,0,30,192,3,56,0,0,11,224,65,60,0,0,232,250,132,1, -32,0,1,1,32,16,0,0,3,0,1,12,2,64,0,1,6,0,1,24,0,0,3,64,32,0,2,48,128, -4,0,5,64,2,0,5,128,1,1,32,6,128,0,0,8,0,0,128,0,1,8,128,129,48,0,0,4, -0,1,24,4,3,98,64,0,0,130,65,48,16,202,251,128,65,16,10,22,128,0,0,8,5 -,3,0,1,64,32,0,2,6,192,72,26,0,0,3,48,0,3,48,64,0,14,128,9,48,2,6,32, -130,88,32,32,0,1,4,128,1,176,8,66,1,64,24,0,0,35,96,0,0,128,128,1,48, -2,216,253,160,9,4,0,1,208,68,2,0,0,16,2,0,0,13,32,73,4,17,0,0,20,0,0, -26,0,1,72,8,0,0,8,4,20,0,0,2,0,5,6,1,0,5,3,0,0,4,145,38,208,128,10,66 -,19,0,1,1,160,9,2,145,36,210,0,0,26,65,65,104,0,0,13,161,17,4,2,124, -254,128,129,0,2,192,0,5,12,128,0,5,24,0,1,32,0,2,64,32,0,16,128,32,0, -0,6,196,0,2,3,1,0,1,128,1,0,1,2,192,0,0,16,16,2,64,32,12,128,129,0,0, -8,16,255,128,0,0,44,0,1,128,32,22,192,0,2,12,224,0,1,128,1,48,0,0,30, -0,1,96,64,3,96,0,0,44,32,4,0,5,10,2,0,5,101,0,0,48,32,2,128,128,8,0,0 -,2,0,1,11,128,129,12,128,5,240,0,0,24,0,1,96,0,0,8,0,0,1,12,16,104, -254,136,17,22,0,1,192,0,0,10,64,0,2,12,32,1,0,0,132,0,0,16,0,0,26,0,1 -,96,0,0,1,32,0,0,148,0,0,2,0,5,4,1,0,5,34,0,0,48,0,0,38,68,2,144,4,9, -4,0,0,5,128,9,4,128,2,208,0,0,144,8,0,0,1,128,36,132,4,6,0,0,115,249, -128,49,24,34,0,0,192,8,140,8,139,0,1,32,4,1,128,32,32,194,40,24,0,1, -96,2,44,132,133,24,129,0,6,96,0,6,144,17,48,1,38,200,4,24,1,67,0,1,6, -128,1,48,2,5,192,0,0,8,2,33,32,20,12,128,1,0,0,2,17,251,224,0,0,36,0, -1,240,128,16,192,3,0,1,3,160,0,0,12,128,1,240,0,0,28,0,1,24,32,15,224 -,1,32,8,2,0,6,1,0,5,224,129,60,136,7,48,128,30,200,0,2,9,96,0,0,61,16 -,4,224,0,0,30,192,3,90,0,0,3,104,0,0,13,32,88,250,132,1,32,8,0,0,192, -128,16,4,3,0,2,128,0,1,32,6,192,0,0,24,0,1,96,0,0,12,128,1,40,136,0,6 -,64,0,6,128,1,48,0,0,6,128,0,0,24,0,0,2,0,1,8,0,0,1,48,0,0,4,192,0,0, -24,0,1,1,0,0,8,8,1,0,0,32,80,253,64,8,18,2,0,0,192,8,8,1,3,0,2,32,1, -32,0,0,6,209,0,0,24,0,1,96,33,13,128,1,16,2,1,0,5,128,0,6,128,1,176, -64,6,4,8,25,133,16,4,0,0,4,192,4,50,0,0,4,208,0,0,24,8,19,0,0,64,66, -64,144,36,2,148,251,176,9,36,162,66,212,4,2,0,0,16,10,34,68,34,0,0,4, -17,0,0,4,0,0,2,64,0,0,8,0,0,13,0,1,4,0,0,1,0,5,128,0,6,32,0,0,20,132, -0,0,144,16,26,65,35,9,0,0,1,32,132,52,2,0,0,16,0,0,26,64,8,104,0,0,77 -,168,1,5,16,156,254,128,129,16,0,0,4,192,32,0,4,8,0,10,16,12,0,0,64,0 -,0,128,0,6,64,0,13,16,16,3,0,2,128,1,32,32,0,4,2,98,0,0,12,128,1,0,1, -168,255,128,1,44,128,3,112,0,0,22,192,0,0,24,32,11,96,1,12,128,7,0,1, -6,192,0,0,24,32,0,0,96,0,0,44,32,8,0,6,4,0,5,96,0,0,16,128,1,128,0,0, -24,0,0,2,0,0,32,11,0,0,1,48,32,0,2,24,0,0,3,98,0,0,8,0,0,1,13,0,0,152 -,250,12,17,22,128,4,144,132,10,64,0,0,8,0,0,133,164,0,0,4,132,22,1,0, -0,2,64,0,0,104,4,0,0,32,0,0,148,0,0,4,0,6,2,0,5,32,0,0,32,136,0,0,64, -64,0,0,32,1,98,4,5,128,4,1,1,0,2,24,17,3,96,33,68,144,4,132,64,163, -249,4,145,40,0,0,2,192,34,140,8,99,0,0,65,6,192,0,0,128,32,32,2,0,0, -24,1,11,32,20,32,128,133,24,1,0,14,128,73,176,32,22,66,40,152,4,35,2, -8,6,128,1,48,1,0,0,192,130,152,4,11,96,8,140,128,17,128,0,0,121,249, -224,1,36,128,5,240,0,0,16,192,3,24,0,0,8,32,1,12,128,7,0,1,30,200,3, -90,0,0,3,232,1,32,8,0,14,224,1,60,128,7,240,0,0,30,192,0,0,120,0,0,9, -224,1,61,8,0,0,240,0,0,30,192,131,24,0,0,3,104,0,0,13,32,10,249,4,0,0 -,32,0,0,2,192,32,16,4,3,0,0,64,10,0,0,1,0,0,32,0,0,1,0,0,24,0,0,3,96, -16,0,0,128,1,40,136,1,0,5,192,0,6,128,1,48,0,0,6,192,128,24,4,2,96,64 -,8,128,1,48,8,0,0,192,0,0,24,0,0,3,0,0,64,8,4,129,0,1,8,248,128,1,34, -0,0,4,128,8,72,0,0,3,72,0,0,4,160,0,0,32,0,0,70,0,1,26,0,0,3,64,1,128 -,136,1,144,0,15,160,1,176,8,6,192,0,0,24,0,0,16,98,1,4,128,5,50,0,1, -192,0,0,24,32,67,0,0,1,0,2,32,34,52,254,160,17,5,130,66,18,66,2,0,1, -10,0,0,64,34,0,0,52,0,1,4,32,2,64,3,104,0,0,13,0,1,4,128,2,0,5,64,1,0 -,5,160,1,52,128,0,0,208,0,0,90,64,11,8,0,0,1,160,49,180,128,0,0,16,2, -26,73,8,104,0,0,13,161,17,4,0,0,84,249,128,1,16,8,4,64,0,8,48,16,0,4, -3,96,0,0,12,0,3,2,0,6,1,0,5,128,1,49,32,0,0,192,0,0,24,8,3,2,0,1,128, -1,48,16,0,1,128,24,0,0,2,98,64,12,128,129,16,32,200,249,128,129,0,0, -136,3,0,0,128,22,192,3,0,1,11,96,1,32,160,7,48,0,0,6,192,3,0,4,44,32, -0,15,1,32,128,1,192,0,0,16,8,2,0,0,32,11,128,1,32,16,0,0,48,0,0,16,0, -0,3,66,0,0,8,0,0,1,0,1,152,255,132,17,0,0,130,4,0,1,10,64,67,0,1,133, -164,0,0,16,129,70,17,0,0,2,64,3,0,4,148,0,7,10,0,6,128,16,17,194,0,1, -34,136,0,0,1,97,4,5,128,145,16,1,32,17,66,72,8,11,32,32,36,132,4,2,16 -,155,250,12,9,2,1,2,0,0,16,140,8,16,1,130,6,192,0,0,48,4,32,194,66, -152,4,3,0,0,33,12,0,1,24,1,0,14,132,5,50,16,6,194,8,88,0,0,67,0,0,128 -,6,128,1,48,0,0,16,0,1,25,17,147,96,1,140,128,129,0,0,64,41,250,224,0 -,0,12,136,5,48,0,0,16,192,3,24,0,0,8,32,1,12,128,7,240,0,0,30,128,3, -24,0,0,15,4,0,0,32,8,0,14,96,0,0,12,128,7,240,128,6,208,0,0,120,0,0,9 -,96,0,0,13,144,1,177,0,0,6,192,3,24,64,3,100,0,0,12,0,0,8,251,136,1,0 -,1,2,0,1,16,4,0,0,96,0,0,10,0,0,1,32,0,1,193,0,0,24,0,0,3,0,1,12,4,0, -0,40,8,0,15,1,32,0,0,6,0,1,16,0,0,2,96,0,0,8,0,0,1,32,0,3,16,0,0,3,64 -,0,0,8,0,0,1,0,1,105,250,64,144,136,8,4,32,66,8,0,0,139,96,8,4,160,0, -0,8,16,22,192,0,0,26,64,3,0,0,128,76,0,1,16,0,15,64,144,136,144,6,0,0 -,4,133,136,16,100,32,4,192,4,138,64,6,1,0,0,5,2,11,20,36,34,72,132,8, -5,88,255,32,1,4,137,194,16,136,146,8,16,10,0,0,72,34,1,132,0,1,20,136 -,2,64,0,0,104,0,0,1,1,0,0,36,1,0,14,160,49,52,134,6,208,0,0,154,96,19 -,12,0,0,9,32,16,52,129,6,16,0,0,90,80,65,104,130,77,168,1,5,2,216,250 -,128,128,16,0,0,4,64,0,0,8,0,3,4,128,0,0,48,16,0,10,16,8,0,6,8,0,6, -132,1,48,0,0,6,192,0,0,24,0,0,3,0,1,4,128,129,48,32,6,0,1,24,0,0,2,96 -,0,0,12,128,1,16,16,40,250,0,2,128,3,0,1,22,192,0,2,11,96,1,0,0,144,7 -,112,0,0,6,192,0,0,96,32,3,0,1,44,32,0,15,1,32,32,6,192,0,0,16,8,2,0, -0,32,11,0,0,1,32,16,6,0,1,16,0,1,64,32,8,0,0,1,1,0,0,32,253,132,1,129 -,136,4,0,0,66,10,64,0,2,133,164,0,0,16,129,6,18,66,2,64,0,1,4,33,16,0 -,0,148,0,0,4,0,5,16,2,0,5,136,132,16,1,6,0,0,34,72,0,0,33,98,4,5,128, -40,144,0,0,6,0,1,136,32,0,0,33,1,68,144,4,0,0,5,138,248,140,9,130,8,2 -,0,0,2,20,0,0,19,0,1,6,192,0,0,48,66,32,2,0,0,89,8,35,97,20,32,0,1,40 -,0,0,2,0,5,16,1,0,5,136,1,178,16,16,196,68,152,16,35,2,12,6,128,1,48, -34,0,0,192,130,88,8,33,100,66,44,132,5,0,1,240,250,224,1,12,128,5,48, -128,16,192,131,24,64,8,32,1,60,128,7,48,0,0,30,192,3,120,0,0,11,8,0,0 -,32,0,0,7,0,5,144,3,0,5,104,0,0,12,128,1,240,0,0,6,192,0,0,120,0,0,9, -224,1,13,128,1,244,0,0,6,192,3,24,0,0,3,96,0,0,13,16,56,249,136,1,0,1 -,2,0,1,16,0,0,3,96,32,6,128,0,0,32,0,1,1,0,0,24,0,0,3,0,0,16,0,2,40, -128,5,0,5,208,2,0,5,8,129,32,0,3,16,0,0,2,96,64,4,128,1,32,0,0,6,196, -0,0,16,0,1,65,0,0,8,0,0,1,0,1,193,250,128,145,0,0,10,4,0,0,20,16,0,0, -3,96,2,8,32,1,144,64,6,0,0,136,24,64,3,96,1,129,8,0,0,32,0,0,4,0,5,8, -2,0,5,4,4,0,0,34,0,1,72,64,32,16,98,0,0,8,128,5,2,33,70,192,0,0,128, -16,35,0,0,129,128,16,16,1,65,104,252,0,29,4,0,6,2,0,35,248,251,32,0,0 -,4,128,0,0,16,0,0,2,64,0,2,1,0,1,4,128,0,2,2,0,1,8,0,1,32,0,0,4,0,7, -16,0,6,8,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,2,2,64, -0,0,8,0,0,1,32,0,2,72,249,0,63,128,0,8,16,144,254,36,0,0,4,128,0,0,16 -,0,0,2,64,0,0,8,32,1,32,144,4,128,0,0,16,20,2,73,8,9,0,0,129,36,0,0,4 -,0,15,32,0,0,5,128,64,18,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,8,2 -,64,0,0,8,0,0,1,32,0,0,132,0,0,105,249,12,0,6,1,0,1,8,128,16,0,6,16,0 -,2,64,4,0,1,2,0,18,32,2,0,11,1,4,0,9,195,250,32,0,6,4,0,3,32,0,6,64,0 -,0,1,0,4,8,0,16,4,0,1,16,0,0,2,0,1,8,0,7,128,2,0,1,9,0,0,1,32,0,2,120 -,253,8,0,14,32,0,1,128,0,26,1,0,6,1,0,1,4,0,0,1,0,2,32,0,2,2,0,4,32, -154,251,32,0,0,4,192,160,16,0,0,1,96,0,0,12,36,65,40,144,4,130,0,0,24 -,8,2,97,32,9,66,1,48,144,0,0,33,0,14,32,16,4,128,16,18,0,0,2,64,8,8,0 -,0,33,32,16,4,18,0,0,18,2,2,64,16,8,0,0,1,32,0,0,4,1,160,252,0,1,1,0, -3,16,0,14,64,0,29,4,0,9,4,66,0,0,128,0,0,16,0,3,96,253,0,30,2,0,1,8,0 -,3,1,0,1,4,0,7,3,0,3,64,0,1,64,0,7,64,0,1,1,0,2,96,255,0,0,128,0,13, -64,0,2,32,0,6,1,4,0,14,32,128,4,0,1,16,16,0,2,128,0,9,176,8,0,2,8,32, -32,0,0,88,251,0,0,4,0,3,64,0,8,32,0,5,64,0,31,33,0,3,4,0,2,4,0,3,1,0, -1,132,64,160,250,0,9,16,0,3,12,0,8,2,0,4,2,0,1,8,0,3,1,0,1,4,0,3,64,0 -,1,1,0,1,64,0,5,128,0,3,32,0,0,4,4,16,0,4,216,249,0,9,16,0,43,1,0,4, -16,130,0,9,8,0,0,184,254,0,1,1,0,1,64,0,1,80,0,0,64,32,0,0,2,0,4,128, -2,0,1,32,0,3,16,0,15,128,0,3,1,128,2,0,3,4,2,0,0,4,32,0,0,65,128,2, -128,0,1,64,4,34,32,0,1,120,252,0,2,4,2,4,0,0,2,0,0,1,2,0,0,1,132,64, -16,32,0,5,16,64,0,0,128,64,4,32,0,19,16,0,1,16,0,0,32,16,0,6,32,0,0, -72,128,0,1,8,8,0,2,96,253,0,0,131,0,0,160,0,0,36,0,0,2,200,0,0,18,32, -1,44,0,0,5,32,0,1,64,4,0,1,24,64,0,0,32,0,0,13,32,0,14,64,40,0,2,18, -64,84,16,0,0,8,64,106,5,5,8,16,2,170,194,4,208,0,0,2,32,3,76,128,162, -0,0,160,251,128,0,1,34,4,0,0,16,24,0,0,169,160,0,0,68,34,100,160,4, -192,149,0,0,8,0,0,1,72,17,0,0,1,64,0,16,128,8,0,0,4,170,128,32,72,2, -65,64,8,9,11,64,16,0,0,28,67,42,18,4,3,0,0,24,72,194,224,48,4,240,252 -,32,0,5,2,128,128,32,0,0,1,4,128,0,2,4,0,0,8,0,0,1,0,0,16,0,1,128,0, -16,128,0,2,2,0,0,64,2,0,0,1,0,2,2,64,4,0,1,17,32,0,0,136,0,1,64,0,0, -40,0,0,5,0,0,160,248,0,2,128,0,1,128,8,0,5,64,4,32,0,0,65,0,3,32,0,1, -4,0,20,32,0,0,17,0,1,4,0,0,65,16,4,8,0,2,2,0,1,2,0,0,1,0,0,8,1,0,0,32 -,16,136,168,254,0,45,65,0,0,32,128,0,1,66,0,0,2,0,4,4,0,1,16,0,5,33,0 -,0,1,0,1,240,248,0,9,32,0,3,16,0,31,8,0,2,64,0,0,1,0,4,2,8,0,4,64,0,1 -,32,0,0,4,0,1,120,248,0,9,128,0,39,2,0,2,2,0,4,64,0,2,16,0,0,192,0,2, -128,4,0,0,32,112,248,0,0,2,128,32,0,1,128,1,16,0,0,2,128,0,0,4,0,1,4, -0,0,4,0,4,32,1,0,2,16,0,14,128,128,0,0,16,0,0,8,64,0,11,16,0,8,16,16, -251,0,19,64,4,0,2,32,0,20,2,0,6,4,0,1,32,0,4,2,0,3,96,0,4,152,249,0, -10,1,0,2,128,0,5,4,0,23,64,0,4,8,64,0,0,8,0,1,1,0,5,4,0,0,32,0,1,4, -128,0,0,4,152,249,0,47,64,0,1,32,0,1,128,0,3,128,0,7,32,0,0,4,0,2,4, -176,249,32,0,2,16,0,26,1,0,1,32,1,0,1,128,0,2,144,0,28,1,128,184,253, -0,5,64,0,4,8,0,9,32,0,3,16,0,17,128,4,0,0,2,0,6,64,1,0,7,8,0,2,2,64,0 -,0,152,250,128,0,2,1,0,3,64,0,0,32,0,4,128,0,3,128,0,22,1,1,4,2,160,0 -,3,2,0,3,16,0,1,32,0,0,2,16,0,1,65,4,128,0,1,32,216,252,0,0,2,0,21,8, -0,7,1,0,2,1,0,1,128,0,2,128,0,1,40,0,3,4,16,1,0,1,4,0,0,64,8,32,0,1,1 -,0,3,8,8,64,0,0,17,0,0,104,252,0,1,1,0,11,4,0,1,128,0,1,32,0,4,1,0,26 -,40,0,1,128,0,3,128,0,0,64,0,6,16,0,0,72,253,0,4,64,0,11,32,0,6,80,0, -3,16,0,2,16,0,2,8,0,2,8,0,5,64,0,22,64,108,250,0,21,2,0,1,4,0,18,64,0 -,0,16,64,0,13,64,0,0,8,64,130,0,5,128,152,250,0,4,16,0,3,8,0,36,16,0, -3,8,0,3,128,0,1,16,0,3,8,0,7,144,255,0,5,16,0,6,1,32,0,32,4,0,13,32,0 -,6,32,0,1,184,249,0,51,16,0,9,128,16,0,9,24,255,0,1,2,0,6,8,0,6,32,0, -11,32,0,4,1,0,0,16,0,3,128,0,2,32,0,8,64,0,1,32,0,8,8,0,2,104,250,16, -0,1,128,0,10,64,0,18,64,0,10,1,0,6,1,0,14,4,128,0,1,254,252,0,2,128,0 -,1,32,0,38,2,0,2,2,0,0,1,4,4,4,0,6,18,1,32,0,0,4,128,144,16,16,2,0,2, -251,0,14,128,0,0,8,0,5,16,0,0,32,0,21,3,128,0,0,32,0,6,2,0,9,32,0,0, -128,0,0,8,252,0,8,2,0,4,2,0,2,2,0,2,24,0,0,16,0,1,2,0,17,8,0,5,8,0,4, -128,0,14,255,0,0,5,0,15,128,162,0,5,2,0,3,128,0,2,128,0,2,64,0,2,64,0 -,0,128,0,13,1,0,2,128,2,0,7,8,168,255,0,25,2,0,1,128,0,2,2,0,2,64,0,2 -,1,0,4,32,0,3,20,128,0,4,128,33,0,2,128,0,4,2,64,1,0,0,8,248,248,0,1, -16,0,0,128,0,1,16,0,0,1,32,0,1,65,0,4,128,8,0,0,128,0,0,16,0,0,2,64, -16,0,3,4,0,0,32,0,8,32,0,1,128,0,0,16,0,0,4,80,0,0,32,8,0,2,4,8,0,0, -65,32,0,0,16,0,0,1,0,1,8,0,0,4,32,104,253,0,7,4,128,16,0,3,4,8,0,1,32 -,0,4,1,8,0,0,1,0,14,32,0,2,16,2,0,0,128,0,4,4,2,0,0,1,128,0,3,2,1,0,0 -,32,0,3,8,44,248,0,1,8,0,1,2,0,0,4,144,0,0,26,0,0,64,69,40,20,32,0,1, -212,4,0,0,10,1,32,105,13,128,9,0,3,16,0,0,128,0,7,16,64,0,1,166,161, -32,128,4,136,0,0,16,32,105,9,0,0,9,144,162,162,66,0,0,88,0,0,1,64,0,0 -,4,0,0,168,48,144,255,0,0,64,16,0,0,64,129,0,0,20,4,113,74,16,68,32, -177,34,5,6,160,0,1,128,152,32,2,72,131,130,34,12,0,3,4,64,48,0,3,8,2, -96,24,0,1,1,136,134,64,16,0,0,20,128,32,8,9,11,0,1,168,72,65,144,0,0, -44,192,32,8,20,0,0,80,0,0,32,128,253,0,0,32,4,0,1,1,0,1,16,1,0,0,64,2 -,0,3,2,0,3,128,32,0,1,130,0,1,8,0,3,4,128,64,0,4,2,64,8,0,2,144,0,0, -64,0,1,16,0,0,34,0,1,2,0,1,32,0,0,17,0,1,8,128,64,0,0,4,0,0,64,0,1,32 -,255,0,4,16,0,0,8,0,0,128,8,0,1,128,128,4,16,4,64,0,5,4,8,0,0,8,4,0,5 -,64,0,3,2,0,0,16,32,0,3,2,1,32,0,3,16,4,2,0,4,32,0,2,2,64,0,4,192,251 -,160,0,8,64,0,39,64,0,2,8,0,16,8,0,0,56,251,0,0,32,0,15,16,0,31,32,0, -0,16,128,0,13,32,0,0,2,0,2,8,252,0,4,1,0,2,8,0,1,4,0,3,16,0,4,24,128, -0,5,32,0,2,32,0,2,16,0,2,16,0,1,4,0,3,1,0,11,32,0,0,4,0,0,65,0,1,2,0, -2,160,253,0,12,8,0,9,64,0,2,128,32,0,16,6,0,3,34,2,0,5,4,0,5,9,16,8,0 -,0,32,0,0,64,0,0,184,255,2,0,9,8,0,3,4,0,0,64,0,5,4,128,0,2,16,0,1,64 -,0,3,8,0,1,32,0,3,2,0,3,128,0,1,64,0,0,8,0,2,64,0,11,4,16,100,252,0,4 -,130,0,19,8,0,17,32,0,3,16,0,13,16,0,1,8,0,0,8,0,3,152,255,0,13,1,0,4 -,16,0,0,2,0,1,8,0,0,1,0,14,128,0,2,16,8,4,0,1,8,32,0,1,64,0,2,48,8,0, -2,8,0,2,128,0,1,64,0,1,96,254,0,4,16,0,12,16,0,25,32,0,2,64,0,1,96,0, -4,32,64,0,4,8,0,4,64,32,0,0,128,255,0,7,64,0,10,8,0,31,4,0,7,8,0,3,1, -16,1,0,4,200,250,0,4,64,0,0,8,2,1,0,4,64,0,0,2,0,0,32,0,0,128,0,0,32, -1,0,4,2,0,1,8,0,3,1,0,1,4,0,4,128,0,17,34,0,0,2,0,5,32,251,0,3,4,0,46 -,1,0,1,64,1,0,1,34,0,12,2,0,0,232,254,64,1,0,3,2,0,47,16,0,1,32,2,0,3 -,2,0,9,232,253,0,6,2,0,2,2,0,7,26,64,0,4,8,132,0,17,20,128,0,0,16,40, -0,4,5,0,1,4,128,32,209,0,1,3,0,1,32,128,1,0,0,20,0,0,112,252,0,10,32, -0,7,24,0,5,128,0,0,16,0,16,32,0,8,8,0,4,192,0,8,32,0,0,112,253,0,9,24 -,0,8,24,0,0,128,0,2,96,0,19,44,0,2,32,0,4,11,0,4,1,0,0,6,0,1,24,0,0,3 -,0,1,44,0,0,8,253,0,6,64,32,0,0,8,0,8,24,0,0,16,0,2,32,0,0,32,64,0,16 -,20,0,2,2,0,4,5,0,1,128,32,32,0,1,2,0,1,8,0,0,1,0,1,20,18,224,254,0,7 -,8,0,0,96,33,0,9,8,2,0,1,128,73,0,0,10,0,16,24,66,0,1,36,0,4,6,2,0,1, -1,64,1,130,88,4,0,0,96,4,44,0,1,24,1,232,251,0,6,6,0,1,120,0,8,6,200, -0,3,224,1,28,0,17,32,128,1,180,0,5,9,0,1,60,144,1,48,0,0,30,0,1,120, -16,15,2,0,0,36,32,32,253,0,9,96,0,14,128,1,16,16,0,16,32,0,0,6,0,6,8, -0,4,1,32,24,0,1,96,0,0,12,0,1,40,0,0,232,254,0,6,152,2,0,0,96,0,10,19 -,2,0,1,128,1,16,0,17,16,9,70,4,34,0,4,68,2,0,1,65,20,0,1,24,0,1,96,0, -0,12,0,1,16,9,96,250,0,1,4,0,7,2,0,2,4,128,0,1,2,130,72,0,0,4,1,77,16 -,0,0,4,34,0,16,4,0,1,16,32,2,65,19,0,1,1,32,0,1,128,0,0,208,68,0,2,1, -32,128,1,0,0,4,0,0,56,253,0,10,32,0,6,64,0,3,32,0,27,16,3,1,0,6,192,0 -,1,8,0,8,250,0,9,24,0,4,8,0,0,49,0,0,24,0,1,24,0,3,48,0,17,44,0,1,64, -0,1,4,1,0,1,11,0,4,129,0,0,30,192,0,0,24,0,0,3,0,1,44,0,0,168,252,8,0 -,1,4,0,5,8,0,3,128,0,1,16,4,145,32,8,12,130,64,8,0,0,128,16,0,16,20,0 -,2,128,0,0,1,3,1,0,0,5,0,1,1,0,0,32,192,2,91,68,0,0,8,0,0,1,0,1,20,18 -,33,251,0,9,96,0,4,8,16,1,4,128,4,33,4,65,4,1,0,0,32,8,0,16,24,66,0,1 -,2,0,0,5,2,0,1,6,130,17,1,0,0,16,193,130,128,0,0,11,96,1,12,0,1,24,1, -11,250,0,1,12,32,0,5,120,16,0,2,12,128,7,32,64,6,192,0,0,112,0,0,15,0 -,1,12,0,17,32,0,1,48,128,6,192,3,1,0,0,9,224,1,0,0,128,1,240,0,0,30, -200,131,120,16,15,2,0,0,36,32,248,253,4,0,0,48,0,6,96,0,4,8,0,0,1,0,1 -,8,0,1,32,4,0,1,32,0,17,32,0,2,64,0,1,2,0,1,8,0,4,193,0,1,4,3,96,0,0, -12,0,1,40,0,0,210,253,0,2,65,0,5,96,0,3,48,0,0,32,208,68,128,0,0,80,0 -,0,4,8,16,0,0,48,33,0,16,16,8,0,1,4,8,5,10,1,0,0,4,130,81,0,1,6,192, -136,88,0,0,3,96,0,0,12,0,1,16,8,96,251,0,1,128,128,6,80,0,0,26,64,8,4 -,2,1,32,68,52,128,0,2,2,64,0,0,40,4,13,0,1,4,34,0,14,32,8,4,0,2,8,27, -64,1,105,0,0,1,160,1,0,0,128,6,17,16,0,2,1,32,128,161,0,0,36,1,96,254 -,0,2,16,6,128,0,4,32,0,2,48,0,6,96,64,12,0,1,48,0,16,64,0,7,96,0,5,6, -0,2,8,0,4,1,16,32,128,250,0,1,60,0,1,176,0,3,24,0,0,3,0,0,64,0,2,1,0, -3,96,0,1,8,0,18,64,44,0,1,48,0,0,24,4,1,96,0,0,11,224,1,0,1,6,49,0,0, -30,192,0,0,24,0,0,3,96,129,44,0,0,88,251,4,0,0,4,65,0,0,80,0,0,64,16, -80,8,0,0,1,0,0,16,48,18,0,2,128,32,128,96,130,44,0,1,128,16,0,15,16, -20,0,1,16,0,0,64,0,0,34,100,0,0,5,160,69,0,1,22,16,136,26,69,0,0,8,0, -0,1,160,0,0,20,0,0,226,253,12,0,3,96,8,1,0,0,32,100,4,76,0,0,8,49,2, -16,1,0,1,17,8,98,65,12,16,0,0,176,8,0,15,80,24,66,0,0,192,36,64,0,0, -131,0,0,68,6,2,8,0,1,68,0,0,132,128,0,0,35,98,2,76,192,0,0,40,1,184, -251,0,1,8,144,1,132,0,0,6,200,0,0,120,16,14,98,0,0,60,144,1,0,1,30, -192,0,0,24,0,0,15,0,1,28,0,15,96,0,0,32,0,1,240,0,0,6,208,3,24,0,0,9, -192,129,0,0,128,1,52,0,0,30,200,3,120,16,15,34,1,36,16,48,252,8,0,1, -32,0,0,128,0,2,130,96,0,0,12,0,0,64,48,0,0,6,1,0,0,24,8,0,0,96,32,12, -8,0,18,64,32,0,1,192,0,2,3,0,1,8,32,0,0,1,0,1,1,0,2,3,96,0,0,12,64,1, -32,0,0,41,253,0,1,128,0,0,16,72,34,0,0,16,0,0,96,0,0,12,128,8,48,34, -32,0,1,24,1,19,114,4,76,0,1,16,65,0,14,128,4,144,8,0,0,192,0,0,24,16, -83,0,1,36,130,9,0,1,4,128,2,153,4,3,96,0,0,12,128,0,0,32,0,0,40,253, -32,0,0,4,128,2,18,0,4,2,1,32,4,4,128,194,192,136,2,64,0,0,72,128,1,32 -,32,36,66,0,15,16,6,128,2,16,0,0,1,97,35,2,132,1,32,0,0,52,128,6,16, -64,0,1,8,1,32,128,33,1,4,34,124,252,0,3,4,0,5,32,0,1,128,0,1,4,0,4,96 -,0,24,4,0,3,3,0,4,48,0,0,6,0,2,8,0,3,128,0,2,176,248,0,2,128,3,176,0, -3,24,0,0,3,0,1,48,0,1,240,0,1,4,128,64,0,1,8,64,48,0,15,96,0,0,44,128 -,5,0,1,6,0,1,24,0,0,11,0,0,64,48,0,1,48,64,30,192,131,24,0,0,3,96,129 -,48,0,0,136,249,8,0,1,128,4,80,0,3,8,0,0,1,0,0,8,50,0,0,32,18,64,64,0 -,0,16,96,34,64,0,1,160,8,0,14,32,0,0,20,128,66,2,36,2,0,0,35,9,0,0,5, -0,1,48,16,0,0,208,8,26,96,19,8,0,0,1,160,0,1,66,11,254,128,1,0,0,1,2, -96,8,1,0,1,96,1,44,2,32,0,0,2,34,2,0,1,4,8,98,32,128,4,68,48,6,0,14, -128,73,24,66,3,0,0,8,24,5,1,96,32,6,2,68,0,0,66,70,64,0,0,128,0,0,16, -97,1,140,196,0,0,160,0,0,121,249,224,1,13,144,5,128,0,3,120,16,14,96, -0,0,12,144,7,240,0,0,6,192,3,120,0,0,15,96,0,0,60,0,15,224,1,32,128,4 -,48,32,30,192,3,122,0,0,9,224,1,12,128,7,180,32,30,200,3,120,32,15,32 -,1,12,32,0,0,249,4,0,0,48,32,2,128,0,3,96,0,0,12,0,7,4,0,0,96,0,2,64, -48,0,15,128,1,32,0,0,5,0,1,24,0,0,1,96,0,0,8,0,0,64,48,16,6,196,0,1,4 -,0,0,96,0,0,12,192,0,0,32,0,0,185,249,0,0,4,50,0,0,4,64,40,0,2,96,0,0 -,12,128,68,0,0,34,6,200,0,0,24,0,0,16,34,36,64,144,16,48,8,0,14,128,1 -,16,10,2,64,20,24,0,0,16,100,0,0,132,2,8,0,0,2,6,128,40,152,0,0,3,98, -0,0,12,0,0,1,48,17,72,248,32,0,1,128,6,16,0,0,128,64,0,0,8,4,1,0,0,8, -4,128,0,0,208,0,0,130,0,5,8,4,0,16,16,38,194,4,0,0,8,1,97,2,9,0,0,9, -34,0,0,52,128,2,16,0,1,3,8,1,33,0,0,160,9,4,34,40,254,0,3,6,0,2,8,0,1 -,16,12,0,0,128,0,2,192,0,0,16,4,0,4,128,0,18,16,0,0,2,0,6,4,0,1,48,0, -0,4,0,7,132,65,48,0,0,64,252,0,3,6,176,0,0,6,0,1,32,0,0,12,100,0,2,6, -196,0,0,6,0,4,96,0,1,8,0,14,96,0,0,44,128,5,48,0,0,6,0,2,16,11,0,0,64 -,48,128,5,2,0,0,6,192,3,24,0,0,15,130,1,0,1,88,248,12,8,2,0,0,6,80,0, -0,2,0,0,16,4,18,76,32,0,1,34,38,192,2,147,8,0,3,32,0,0,128,0,15,32,0, -0,20,128,66,18,0,0,2,0,0,32,2,0,0,5,0,1,48,128,34,192,34,2,64,131,8,0 -,0,45,128,69,0,0,66,185,255,4,4,1,0,0,16,96,8,153,16,16,0,0,66,12,130 -,65,0,0,2,0,0,194,8,137,4,0,3,128,69,0,0,8,0,14,128,69,40,0,0,3,192, -34,24,1,32,0,0,17,10,0,0,68,0,0,6,35,2,40,24,1,16,1,34,64,0,0,1,48,4, -43,252,96,0,1,128,1,130,0,0,30,192,0,0,25,0,0,3,224,1,60,136,7,240,0, -0,4,0,4,224,1,12,0,15,224,1,32,128,4,240,0,0,30,208,129,24,0,0,9,96,0 -,0,12,0,0,4,48,0,0,30,208,3,24,0,0,15,228,1,29,0,0,240,249,132,1,0,2, -128,32,24,0,0,3,2,32,0,0,128,1,0,1,6,0,1,26,0,4,128,1,0,0,8,0,14,128, -1,32,0,0,3,192,0,0,24,0,1,98,16,8,128,65,0,1,5,193,0,0,24,0,1,96,0,1, -128,1,0,1,194,249,0,0,8,1,0,1,64,8,24,0,0,8,0,0,1,0,0,136,1,0,0,16,70 -,193,20,24,9,0,3,128,1,48,0,15,128,1,32,0,0,4,192,0,0,24,0,0,1,0,0,2, -8,0,0,8,0,1,66,192,32,24,0,0,163,96,18,44,130,41,16,16,192,255,32,0,0 -,128,0,1,16,0,0,2,64,0,1,2,1,0,0,8,20,0,0,34,16,0,0,10,64,0,4,8,20,0, -16,16,54,10,0,1,8,11,65,35,34,1,1,128,16,54,128,0,0,208,0,1,3,8,1,33, -0,0,32,0,0,4,65,232,248,0,2,16,0,6,32,0,1,128,32,0,0,4,2,0,0,16,0,5, -128,32,0,17,48,0,4,4,0,0,64,16,4,2,1,48,0,9,4,0,2,192,252,0,1,12,0,1, -176,0,0,24,0,1,24,0,0,3,96,0,0,44,128,5,48,0,0,22,0,4,96,0,0,44,0,15, -96,0,0,48,0,1,48,0,0,14,0,0,3,88,0,1,96,1,48,128,5,194,64,6,192,3,122 -,0,0,15,130,1,0,0,16,192,255,8,8,54,4,0,0,80,0,0,64,16,19,12,0,0,1,32 -,0,0,148,136,162,16,0,0,10,0,0,128,0,2,32,0,0,148,32,0,14,32,0,0,176, -8,0,0,16,0,0,130,32,35,41,33,128,162,0,0,49,128,34,0,0,8,2,64,3,104, -16,77,128,1,32,0,0,1,250,0,0,4,1,0,1,96,8,1,0,1,96,2,140,130,73,24,1, -3,192,72,12,0,0,8,2,0,1,128,81,24,0,15,128,81,48,9,0,0,192,40,128,0,0 -,16,50,0,0,32,192,0,1,65,35,194,0,0,152,4,16,1,34,64,0,0,4,128,16,67, -251,96,0,0,8,32,0,0,128,0,0,6,200,0,0,121,16,14,224,1,36,8,4,240,0,0, -16,196,3,0,2,224,1,36,16,0,14,224,1,60,0,1,240,0,0,20,200,2,64,0,0,3, -2,1,12,0,0,4,240,32,30,192,3,120,0,0,15,100,64,28,0,0,200,252,4,0,3, -128,32,0,2,98,0,0,12,128,1,40,8,5,192,0,0,16,4,0,3,128,1,40,8,0,14, -128,1,48,0,1,192,0,0,26,0,0,3,80,0,1,64,1,48,0,0,5,1,0,0,24,0,0,128,0 -,0,16,0,2,16,16,250,248,128,9,1,65,0,0,64,2,0,0,16,8,96,0,0,12,128,1, -144,0,0,2,192,0,0,72,0,0,16,2,0,1,128,1,144,0,15,128,1,32,10,0,0,192, -0,0,88,4,66,40,0,0,2,130,0,0,48,32,18,192,40,24,0,0,3,96,4,76,2,80,16 -,2,192,255,48,0,1,128,6,144,8,25,96,0,0,8,1,13,0,0,8,4,0,0,32,16,0,0, -2,0,1,8,0,0,13,0,0,8,4,0,16,16,54,0,0,64,8,8,1,97,35,1,1,65,0,0,16,6, -128,0,0,208,2,0,1,8,1,33,0,0,160,1,4,0,0,112,253,0,4,64,0,4,16,12,0,0 -,128,0,2,2,0,5,12,0,0,128,0,18,48,0,5,3,0,0,16,4,2,0,3,192,32,0,0,8,0 -,3,132,1,0,1,48,252,0,3,6,176,0,0,30,0,3,3,96,0,0,44,128,5,48,0,0,22, -0,1,24,0,1,96,0,0,44,0,15,96,0,0,48,160,1,48,0,0,6,0,0,3,88,0,1,96,1, -0,0,160,5,114,0,0,30,192,3,120,0,0,15,130,1,0,1,112,248,12,32,0,1,134 -,80,0,0,2,17,0,1,20,1,32,0,0,148,136,162,16,0,0,10,0,1,8,0,1,32,0,0, -148,32,0,14,32,0,0,48,129,0,0,16,0,0,2,0,0,11,42,33,0,0,162,0,0,1,130 -,34,144,132,26,68,139,104,17,141,128,1,0,1,89,249,132,1,0,1,6,160,0,2 -,11,2,17,0,0,132,69,24,1,3,192,72,12,0,1,96,16,128,129,33,24,0,15,128 -,1,50,0,0,22,192,32,152,4,11,52,0,0,64,194,0,0,128,0,0,35,194,40,128, -0,0,16,1,34,64,0,0,4,129,8,107,252,104,0,0,1,128,7,132,0,0,30,192,3, -88,0,0,2,224,1,36,8,4,240,0,0,16,4,0,0,112,0,0,3,224,1,36,16,0,14,224 -,1,60,136,7,244,0,0,30,192,3,64,0,0,3,0,0,1,12,16,4,240,0,0,30,200,3, -120,0,0,15,100,0,0,12,0,0,136,252,0,3,6,128,0,4,16,12,128,1,40,8,5, -192,0,0,16,4,0,0,96,0,1,128,1,40,8,0,14,128,1,48,0,0,6,192,0,0,24,0,0 -,3,80,0,1,64,1,0,1,5,193,0,1,4,128,0,0,16,0,0,128,1,48,32,114,248,16, -8,2,0,0,38,136,0,0,26,0,0,16,4,2,140,132,1,16,0,0,2,192,0,0,8,0,1,104 -,0,0,64,132,1,16,0,15,128,1,0,0,8,6,192,0,0,24,0,0,1,42,0,0,32,130,0, -0,48,33,2,128,32,24,1,35,96,1,140,130,1,49,0,0,56,255,32,0,0,36,144,6 -,0,1,10,66,8,0,0,2,5,8,8,36,1,36,0,1,18,64,0,0,12,0,0,1,160,5,36,0,16 -,16,6,128,130,0,0,8,3,64,32,64,1,65,0,0,17,182,160,36,18,0,1,3,0,0,1, -33,0,0,32,0,0,36,18,144,253,0,1,16,0,0,6,0,1,16,0,0,3,1,32,12,0,0,128 -,16,8,2,2,0,0,8,8,0,3,128,1,17,16,0,18,4,0,4,33,16,0,0,136,0,0,48,0,0 -,2,0,7,4,0,2,16,249,0,1,44,0,0,6,0,2,4,0,0,24,0,0,3,96,0,0,44,128,5,0 -,1,22,0,1,24,0,0,12,128,1,45,0,15,96,0,0,12,0,0,2,48,0,0,30,0,0,128, -88,0,1,100,1,48,128,5,2,0,0,6,192,0,0,120,0,0,15,0,1,48,8,248,249,4,8 -,22,0,0,6,0,1,64,0,0,16,12,0,0,69,40,0,0,20,128,162,0,1,10,0,0,8,12,0 -,0,12,128,17,20,0,15,32,0,0,4,0,0,4,16,0,0,26,0,0,8,40,33,128,160,0,0 -,177,160,34,0,1,2,64,0,0,104,20,13,0,1,32,2,10,255,140,5,33,0,0,128,0 -,1,8,9,139,96,17,8,132,9,169,0,0,3,0,1,12,0,0,32,100,0,1,144,5,170,0, -15,128,9,48,18,2,192,8,24,3,144,48,0,0,64,192,0,0,48,1,5,0,1,24,0,0, -35,0,0,34,76,0,0,4,48,10,56,249,96,0,0,24,128,1,0,1,30,192,2,120,0,0, -3,224,1,36,8,4,0,1,8,192,2,112,64,3,224,1,36,32,0,14,224,65,60,128,5, -240,128,28,192,1,64,0,0,3,4,1,60,16,4,48,32,30,196,131,120,0,0,15,100 -,64,60,0,1,250,8,0,0,32,0,4,8,1,96,0,0,12,128,1,32,0,0,3,0,1,8,0,1,96 -,0,1,136,1,32,0,15,128,1,48,0,0,2,192,0,0,24,4,1,48,0,1,192,0,0,48,0, -0,5,192,0,0,24,0,0,3,0,0,16,12,128,1,48,0,0,33,253,0,0,8,21,0,3,152,0 -,0,2,100,0,0,40,130,1,32,0,0,4,0,1,8,0,0,80,104,0,0,64,128,8,34,0,15, -128,1,52,0,0,4,192,0,0,152,0,0,163,72,0,0,40,16,1,16,65,4,192,0,0,25, -0,0,3,96,0,0,12,130,81,48,10,104,248,0,19,64,0,31,16,0,4,16,0,14,152, -251,32,0,1,128,0,0,16,0,1,64,0,0,8,0,0,1,32,0,0,4,128,0,2,2,68,0,2,1, -32,0,0,4,0,15,32,0,1,128,0,0,16,0,0,2,64,0,2,1,32,64,4,128,0,0,16,0,0 -,2,64,0,0,8,0,0,1,32,0,0,4,0,0,192,253,0,2,16,0,19,32,0,22,32,0,25, -136,255,40,0,0,132,128,0,0,16,0,0,2,96,0,0,8,0,0,1,32,0,0,4,128,0,0, -16,16,0,0,64,0,0,8,1,1,32,0,0,4,0,15,32,0,0,132,128,0,0,16,0,1,64,0,0 -,8,32,1,0,1,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,129,254,0, -2,1,0,1,4,0,4,64,0,3,16,8,4,0,0,1,0,1,2,0,22,34,0,2,64,0,2,4,0,1,16,1 -,0,0,32,0,11,147,251,32,0,1,32,0,1,64,0,0,64,0,3,8,0,4,128,0,0,68,0,1 -,64,1,0,26,68,0,1,64,0,2,4,0,1,1,0,10,8,251,4,0,1,16,0,8,4,0,4,128,0, -54,226,253,32,0,1,130,16,20,132,130,80,0,0,8,66,32,32,8,5,33,32,4,2,0 -,0,80,0,1,8,1,32,8,5,32,0,14,32,0,0,5,160,0,0,20,2,65,96,0,0,8,129,33 -,4,4,6,0,0,16,18,66,66,96,8,9,32,1,40,132,132,16,120,254,0,51,64,0,21 -,216,251,0,19,64,0,37,4,0,14,216,251,0,1,32,0,3,4,0,9,16,0,3,8,0,24,4 -,0,2,16,0,8,32,0,10,40,252,0,1,16,0,0,4,0,4,2,0,4,128,0,0,4,128,0,2,2 -,0,1,40,0,1,8,0,19,16,0,3,1,0,4,16,0,12,232,255,0,53,128,0,5,4,0,12, -24,251,0,8,2,0,64,184,253,64,0,0,1,0,0,2,0,0,128,0,2,2,0,7,128,0,2,32 -,0,0,4,0,0,64,0,0,8,0,19,1,0,6,1,0,3,33,32,0,5,128,64,16,0,0,88,250, -128,0,0,16,0,4,4,0,5,1,0,33,1,0,0,4,0,4,128,0,3,128,0,5,1,0,3,208,250 -,96,128,20,6,21,64,64,0,0,20,1,1,0,3,17,0,0,2,0,0,84,0,1,138,48,0,0,2 -,0,0,128,160,16,0,14,128,0,1,8,0,0,6,0,0,82,0,4,36,0,1,5,0,0,50,64,0, -4,1,192,128,8,0,0,192,254,128,150,130,0,0,1,16,0,0,8,4,33,37,16,0,2, -136,4,0,0,80,52,0,0,64,0,0,2,8,9,10,0,0,132,0,15,160,215,2,138,4,64,0 -,0,72,0,1,32,0,1,128,0,0,32,0,0,128,64,76,1,0,4,32,89,0,1,56,252,128, -0,5,2,80,0,0,8,64,0,5,32,128,0,5,8,0,17,64,128,0,0,8,0,0,64,0,0,8,0,1 -,32,0,1,128,0,3,64,0,7,64,0,0,128,80,250,0,15,32,0,1,32,0,3,16,4,0,18 -,128,0,2,2,0,9,16,0,1,2,0,6,64,0,2,56,255,0,19,16,8,0,3,8,0,1,48,0,15 -,128,0,0,16,0,0,2,0,0,17,32,0,1,128,0,1,1,2,0,3,16,32,0,2,8,4,0,2,104 -,252,0,28,16,0,17,32,0,11,32,0,12,152,252,0,2,4,0,4,64,0,2,4,0,38,64, -0,0,2,0,1,16,0,15,136,248,0,1,128,0,4,16,0,4,32,0,3,1,0,2,128,0,3,128 -,0,24,64,0,1,4,0,2,4,0,0,64,64,0,1,1,32,0,5,144,250,18,0,17,16,0,27,4 -,0,24,128,52,252,0,74,152,255,0,8,2,0,7,128,0,3,64,0,3,2,0,25,4,0,3, -32,0,13,24,255,0,7,4,0,17,32,0,25,128,0,5,8,0,12,240,255,0,1,18,8,0,0 -,8,0,1,16,0,2,4,2,0,4,32,0,1,64,32,16,0,21,1,0,2,64,0,1,4,0,19,16,249 -,0,2,128,0,14,2,0,34,4,1,0,4,16,0,9,8,0,0,145,249,0,7,32,0,0,4,0,4, -128,0,2,1,0,1,4,0,35,64,0,13,128,249,0,17,32,0,0,8,0,5,64,0,18,8,0,26 -,248,255,0,17,8,0,33,128,0,20,24,255,0,27,32,0,23,128,2,0,4,32,0,13, -48,255,0,27,4,0,26,32,0,5,2,0,2,1,32,0,2,128,0,1,56,248,0,12,4,0,9,32 -,0,27,4,8,64,0,4,64,0,10,128,0,0,248,251,0,1,8,0,0,1,0,2,4,0,2,2,0,61 -,120,252,8,0,5,2,64,0,8,16,0,1,64,0,52,192,249,0,1,1,32,0,0,132,0,1,8 -,0,0,2,0,3,32,0,2,129,0,2,2,64,0,2,1,0,25,1,0,4,32,0,12,136,254,0,0, -128,0,0,16,0,0,2,0,16,33,0,1,4,0,0,64,0,35,32,0,3,16,0,3,160,250,0,11 -,8,0,3,16,0,4,16,0,29,2,0,6,1,0,0,48,0,6,32,0,1,176,254,0,1,64,0,1,1, -192,36,8,4,0,0,32,0,0,32,128,0,0,16,0,0,2,0,7,128,0,18,1,0,1,5,160,0, -0,16,0,1,64,0,2,17,0,5,8,0,2,64,0,1,64,216,254,0,25,1,0,37,2,0,3,1,0, -1,16,0,0,184,255,0,46,128,0,24,80,8,192,250,32,0,3,1,0,1,4,0,0,32,0,1 -,128,0,1,8,0,1,32,0,2,8,0,0,2,0,0,64,8,16,0,18,2,2,64,0,5,1,0,0,16,8, -1,66,32,0,1,1,32,0,0,4,128,0,0,8,0,0,204,252,8,0,3,64,0,8,16,0,4,4,0, -2,4,0,19,64,8,0,1,1,0,7,64,0,1,4,0,11,80,251,64,45,160,0,0,20,82,32, -80,8,81,16,0,0,64,65,0,0,4,24,0,0,65,96,0,0,20,0,0,16,0,0,3,0,0,128, -24,16,0,15,64,5,0,0,1,6,64,8,0,0,6,0,0,12,0,0,4,0,0,9,144,1,34,64,48, -128,0,0,16,0,0,2,64,64,8,0,0,200,251,0,0,96,145,32,2,64,80,1,172,9,37 -,0,0,20,0,0,3,0,0,4,6,0,0,32,34,0,1,37,0,0,136,2,72,128,0,3,16,0,10, -128,88,4,128,2,0,1,72,2,0,2,20,130,48,8,0,1,96,32,0,0,5,41,66,1,32, -162,64,4,0,0,160,250,0,0,64,16,0,0,2,128,0,1,68,0,0,16,0,0,4,0,3,4,0, -0,32,0,2,8,0,1,2,128,0,16,128,64,0,1,2,0,1,8,0,3,4,34,0,3,64,32,0,0,4 -,1,0,2,136,64,0,1,64,254,0,1,1,0,2,32,0,5,128,0,1,136,0,7,4,0,6,4,0, -18,4,0,4,64,0,7,8,0,5,160,251,16,0,13,64,0,0,1,0,54,64,0,0,220,255,2, -0,72,128,48,253,32,32,4,128,0,7,32,0,10,40,0,21,128,0,1,1,0,5,8,0,0,4 -,0,4,1,128,0,0,17,0,4,8,128,252,8,0,12,1,0,1,2,0,6,1,0,27,4,0,7,16, -128,0,2,64,0,0,2,0,3,218,254,12,0,56,2,0,14,128,62,255,0,19,32,0,3,16 -,0,46,4,0,0,136,248,0,19,4,0,3,1,0,25,2,0,6,4,0,13,152,248,0,74,152, -255,0,6,16,0,1,96,0,2,1,1,8,4,0,8,1,0,21,32,0,1,8,0,0,144,0,2,128,0,0 -,16,0,3,8,0,0,128,0,3,32,0,0,144,248,0,1,32,0,4,2,0,1,8,0,4,8,128,0,3 -,64,0,0,2,16,0,1,32,0,17,128,0,0,2,0,1,64,0,2,8,0,3,6,128,16,0,0,16,2 -,0,2,32,129,32,0,0,192,254,0,20,16,0,2,32,0,24,128,0,22,40,253,0,27,8 -,0,45,16,255,0,1,52,128,0,0,16,4,0,1,19,96,36,13,128,17,4,128,0,0,16, -24,152,0,4,32,0,0,4,0,15,128,9,176,0,1,80,0,0,10,0,0,32,2,0,0,140,164 -,16,1,0,0,70,82,0,0,130,72,0,0,96,68,140,136,145,0,1,176,252,0,1,48,0 -,1,64,32,0,2,1,0,0,12,0,1,1,0,4,16,0,23,128,0,0,16,0,0,128,0,0,16,0,9 -,128,0,10,240,253,0,3,6,0,0,32,0,0,192,3,121,0,1,224,1,0,4,30,16,0,4, -128,48,32,0,14,224,1,60,32,0,0,176,0,0,22,192,0,2,15,128,1,0,0,128,7, -180,0,0,6,16,128,120,0,0,15,224,129,0,1,80,248,0,1,48,66,6,0,2,64,0,0 -,8,34,0,0,32,4,2,0,2,40,2,0,5,8,0,0,2,0,14,32,0,0,6,2,0,0,80,0,0,10, -64,0,2,65,132,137,0,0,128,0,0,80,0,0,130,0,0,16,8,34,1,48,4,0,1,56, -253,0,1,48,18,0,0,1,34,0,4,64,2,0,1,9,0,0,8,36,0,5,128,5,176,0,20,96, -16,12,8,64,0,2,128,72,0,2,96,4,0,0,1,136,0,6,152,252,0,1,60,128,1,48, -0,1,128,3,112,0,0,3,192,1,12,128,1,112,0,0,28,0,4,224,129,12,32,0,14, -192,1,60,0,1,128,0,0,16,192,0,2,14,96,1,0,1,7,144,64,6,208,0,0,112,0, -0,14,192,1,0,2,254,0,1,48,32,0,0,1,32,0,5,2,0,0,48,8,6,64,32,0,7,49,8 -,0,19,128,0,0,16,16,3,0,2,128,1,0,2,128,0,1,4,128,0,6,248,249,0,1,48, -1,0,0,32,8,0,1,3,96,0,0,32,128,1,176,0,0,22,196,2,24,0,4,128,9,48,0, -15,128,1,48,0,1,64,36,8,0,0,163,0,1,12,128,1,2,128,6,64,36,16,0,0,3, -96,0,0,12,128,1,0,1,8,254,128,133,20,0,1,16,40,2,0,0,11,96,8,0,0,128, -1,0,0,128,6,0,2,64,129,0,4,48,1,0,6,34,0,6,145,33,0,0,34,0,0,16,0,0,2 -,0,0,32,98,68,0,2,4,128,0,0,16,0,0,2,64,0,0,96,68,0,0,32,0,3,248,0,1, -32,0,1,64,0,3,2,0,3,1,0,0,6,0,10,16,0,6,12,0,6,6,0,16,1,0,2,3,0,6,16, -251,224,129,44,0,2,32,0,0,196,3,120,0,1,224,1,0,0,128,7,0,3,128,0,4, -60,16,0,6,12,0,6,230,1,61,0,1,176,0,0,22,192,131,120,32,0,3,32,0,0, -176,0,1,16,128,120,32,0,0,128,1,0,1,16,254,40,0,0,20,0,2,8,88,64,16,9 -,34,0,0,32,4,2,128,6,0,3,32,0,4,4,0,7,10,0,6,37,0,0,52,9,0,0,80,0,0, -10,64,3,8,0,3,48,1,32,88,0,0,64,0,0,16,8,4,0,1,128,0,1,41,252,0,1,24, -4,0,1,32,0,0,2,0,7,6,0,3,18,0,13,10,0,6,5,0,1,4,0,0,96,16,12,8,64,0,4 -,48,1,16,96,4,64,0,0,136,0,2,128,1,2,0,0,147,248,224,1,32,0,1,48,0,0, -30,128,3,112,0,1,192,1,0,0,128,7,0,2,192,131,0,4,56,0,15,192,1,60,0,1 -,128,0,0,16,192,3,112,0,3,12,144,1,145,64,6,208,0,0,112,0,1,96,0,2,24 -,250,4,0,0,32,0,2,32,24,72,0,7,6,0,3,130,0,24,8,0,0,128,0,0,16,0,6,48 -,16,2,129,0,2,128,0,2,128,1,0,1,58,252,128,1,16,8,0,1,2,88,0,0,3,96,0 -,1,128,1,0,1,6,0,3,9,0,4,48,0,15,128,1,48,2,0,0,64,32,72,32,147,96,0, -4,2,70,64,32,24,2,3,96,0,1,128,145,0,1,88,251,0,1,4,128,6,0,1,66,4,19 -,96,36,1,128,17,0,0,128,0,2,24,65,0,0,96,36,1,128,137,48,1,0,14,128, -133,0,0,34,0,0,16,0,0,2,0,0,32,2,0,1,32,0,1,128,6,20,0,0,26,64,3,96, -36,76,160,48,0,1,152,251,0,3,6,0,4,1,0,3,1,0,4,8,0,6,16,0,31,6,0,1,24 -,4,3,0,2,4,1,0,1,112,255,0,1,44,0,4,196,3,120,64,0,0,224,1,1,0,3,30,8 -,3,120,32,0,0,224,1,60,32,0,14,224,1,60,8,0,0,176,0,0,22,192,131,0,6, -6,176,0,0,14,0,1,120,0,0,15,128,1,0,1,112,249,12,0,0,20,0,3,16,64,8, -12,0,1,32,16,0,4,2,0,0,32,9,1,0,0,32,136,4,0,15,32,136,52,1,0,0,80,0, -0,10,64,11,0,2,128,133,0,1,18,82,0,0,146,2,0,0,8,10,33,16,9,1,0,0,210 -,253,4,0,0,24,4,0,0,1,0,0,144,0,3,64,2,0,7,11,0,2,2,0,20,4,0,0,96,16, -12,8,64,0,4,1,0,0,4,97,4,88,0,0,11,2,0,1,128,1,2,0,0,112,249,0,1,32, -128,1,0,1,14,132,3,112,0,0,3,192,1,0,0,128,1,2,0,0,28,192,3,114,0,0,3 -,192,1,56,0,15,196,1,60,0,1,128,0,0,16,192,3,0,2,224,1,0,0,128,3,144, -64,30,196,3,112,0,0,14,96,1,0,1,64,249,4,0,0,32,0,1,1,0,0,24,0,3,12,2 -,0,2,6,0,3,128,0,1,12,0,23,128,0,0,16,16,0,3,128,1,0,1,4,128,0,0,24,0 -,0,3,0,2,128,65,0,1,241,248,0,1,144,8,0,2,8,8,3,96,0,0,44,128,1,0,1,6 -,2,0,0,24,0,0,11,96,0,0,140,130,1,48,0,15,137,1,48,16,0,0,64,34,8,1, -131,0,2,128,41,0,1,34,66,34,16,5,19,97,0,0,12,128,9,0,1,96,254,32,0,0 -,4,128,0,0,80,0,0,2,0,0,19,96,36,0,0,128,17,5,128,0,0,208,136,154,72, -33,96,36,140,168,9,50,1,0,14,128,33,0,0,162,6,16,0,0,2,0,0,32,8,0,0,1 -,160,72,52,128,6,16,0,0,90,80,144,0,1,140,40,0,0,20,0,0,56,253,0,4, -128,0,3,1,0,8,24,0,1,1,0,1,128,1,0,0,16,0,14,1,0,2,6,0,4,1,0,2,1,48,0 -,3,24,0,6,32,0,0,136,250,0,1,44,0,1,176,0,0,24,196,3,121,32,0,0,224,1 -,0,0,128,1,64,0,0,24,0,0,128,120,32,15,4,1,61,0,15,232,129,60,8,6,176 -,0,0,22,192,0,2,12,128,0,0,48,0,0,6,180,0,0,16,4,128,0,1,15,128,1,44, -8,136,253,8,0,0,20,0,1,80,0,1,64,32,8,4,0,0,32,136,0,0,128,0,1,68,24, -2,0,0,8,4,33,128,8,4,17,0,14,32,0,0,52,0,0,6,80,0,0,10,64,0,1,132,12, -0,0,1,48,0,0,16,80,0,0,24,0,0,16,0,1,33,16,8,21,1,57,248,0,1,24,4,6, -97,2,88,0,6,48,9,70,194,72,64,8,11,0,2,128,33,0,16,9,0,1,4,22,96,16, -12,8,163,0,0,32,32,136,0,2,70,97,4,88,8,160,0,2,128,1,26,10,59,254,96 -,128,32,128,7,144,64,6,144,3,112,0,1,192,1,60,128,7,240,0,0,22,192, -130,112,0,0,14,96,0,0,56,0,15,194,1,60,128,7,130,0,0,16,192,3,24,0,0, -3,96,1,12,144,7,144,64,30,192,0,2,14,96,0,0,36,0,0,64,252,132,1,32,0, -1,129,0,0,24,0,7,8,6,192,0,0,16,0,0,131,0,3,1,0,16,8,0,3,128,0,0,16,8 -,3,0,2,128,0,3,129,0,0,24,16,128,0,2,128,65,40,0,0,26,249,128,5,17,10 -,0,0,64,40,24,9,3,96,0,1,128,1,128,128,6,128,128,152,32,8,96,0,0,12, -64,128,48,0,15,136,1,176,8,64,72,40,8,1,3,96,8,0,0,1,1,0,1,22,64,40, -152,0,0,10,0,1,12,128,9,16,10,168,255,176,1,4,128,0,0,16,0,0,152,0,3, -76,0,1,48,1,0,0,16,136,18,80,3,96,128,13,32,129,4,0,15,1,0,1,162,6, -144,16,2,0,0,32,96,68,77,32,0,0,4,128,38,148,4,2,65,1,96,68,0,0,160,4 -,4,0,0,72,248,128,1,0,5,16,0,3,8,0,1,32,0,7,12,128,0,17,16,0,2,6,64,0 -,3,1,0,0,8,8,0,2,2,64,64,0,0,4,2,0,4,1,0,0,64,249,128,1,44,0,1,176,0, -0,30,8,0,2,15,8,0,0,60,32,0,1,128,16,0,0,3,121,64,0,0,128,1,48,0,15,1 -,0,0,60,8,6,176,0,0,22,192,0,0,120,32,12,0,2,8,6,180,0,1,192,2,120,64 -,0,2,44,8,216,252,140,1,20,0,1,80,0,0,2,0,3,1,0,1,4,0,1,64,4,64,32,8, -8,0,1,128,33,0,0,10,0,7,1,0,7,180,0,0,6,80,0,0,10,64,0,0,8,4,40,144,9 -,1,0,0,38,80,0,1,81,1,12,4,0,2,21,1,202,254,132,5,25,4,0,0,97,2,0,11, -40,152,0,0,160,0,2,2,9,176,0,15,5,0,1,4,16,162,0,0,12,8,11,0,1,132,1, -68,128,8,36,168,0,0,64,160,9,0,3,17,24,10,216,255,232,1,32,128,1,144, -64,28,0,3,14,0,1,56,0,1,48,0,0,30,200,0,0,112,0,0,3,96,128,12,32,0,6, -64,2,0,7,60,128,1,128,0,0,16,192,3,113,0,0,15,224,1,12,128,7,144,0,0, -6,0,0,2,113,0,1,224,65,36,0,0,184,253,0,1,32,8,6,129,32,0,10,192,0,1, -8,3,0,2,128,1,48,0,19,6,128,0,0,16,0,0,3,0,1,12,128,1,48,8,0,0,128,0, -1,128,130,0,3,1,40,8,41,250,16,16,18,2,6,64,8,24,0,3,12,0,1,48,0,2,8, -137,0,0,83,96,0,0,128,2,0,0,50,64,0,16,48,10,38,130,0,0,136,16,3,96,0 -,0,140,132,9,2,1,70,132,0,0,144,16,33,96,0,1,128,128,16,2,136,248,176 -,0,0,36,4,0,0,16,0,0,152,64,163,96,33,76,128,1,50,129,6,208,136,24,0, -0,3,96,128,1,160,1,132,0,7,64,1,0,5,128,133,128,128,2,0,1,2,0,0,32,0, -1,77,48,0,0,16,129,32,18,0,0,2,64,0,0,96,68,0,0,160,1,36,10,120,254,0 -,0,1,16,0,4,16,0,3,8,0,1,32,0,0,192,0,1,16,0,0,2,0,4,8,0,17,16,4,0,4, -1,0,0,8,0,1,32,8,0,0,64,32,0,5,128,1,17,0,0,24,250,96,65,44,0,1,176,0 -,0,30,16,3,122,0,0,15,228,1,60,16,6,0,1,30,208,3,120,32,12,0,1,1,0,7, -64,2,0,5,224,1,13,128,5,0,1,22,192,0,2,12,8,0,0,44,128,1,4,0,1,192,2, -120,0,1,128,65,44,0,0,56,254,172,16,20,0,1,80,0,0,2,0,0,34,8,34,33,32 -,136,132,0,0,22,200,68,2,65,16,9,1,12,0,0,8,32,10,0,6,128,0,6,32,0,0, -4,128,66,1,0,0,10,64,0,2,72,128,133,148,160,22,0,0,40,152,68,1,12,10, -0,0,128,9,20,0,0,130,248,196,0,0,40,0,1,96,2,0,1,2,4,0,5,38,66,0,6,2, -64,32,9,0,7,2,0,7,48,0,0,3,0,1,12,8,147,0,1,132,1,0,0,25,0,0,66,1,2, -64,128,9,0,3,8,42,8,16,248,32,1,32,0,1,144,64,28,192,3,112,0,0,14,192 -,1,56,128,7,240,128,28,128,3,112,0,0,3,96,0,0,28,0,8,2,0,5,192,1,60, -136,4,0,1,16,192,3,0,1,15,224,1,32,128,5,48,32,6,4,2,113,0,1,96,1,36, -0,0,24,252,68,1,32,0,1,128,32,0,1,3,0,6,6,64,0,8,48,0,7,64,0,6,5,0,0, -48,0,0,5,0,1,16,0,0,3,0,1,12,132,1,40,0,0,6,1,0,0,24,128,130,0,3,1,32 -,0,0,1,253,160,0,0,32,0,1,64,2,24,0,0,67,96,0,0,12,128,1,48,0,0,70,2, -4,25,0,0,3,96,0,0,128,2,132,16,16,0,7,4,0,5,128,1,48,0,0,2,0,1,136,8, -3,0,1,76,128,129,16,0,0,20,32,32,24,5,9,96,0,1,128,9,34,0,0,8,255,48, -1,0,1,38,18,0,0,152,0,0,19,0,1,1,128,9,4,128,0,0,208,0,0,90,16,3,96, -36,1,160,1,20,2,0,6,64,0,8,128,128,4,0,1,2,0,0,32,96,33,12,33,129,0,0 -,129,6,16,4,2,67,0,0,96,2,12,32,0,0,4,0,0,24,254,128,0,6,16,0,0,2,0,3 -,1,0,1,192,64,24,0,1,2,0,1,128,1,0,0,8,0,17,16,2,0,4,1,0,1,128,1,0,0, -8,6,64,32,8,0,2,32,0,0,8,0,2,144,248,96,65,0,0,128,7,178,0,0,30,192,3 -,0,2,224,1,48,0,1,192,0,0,8,192,3,122,64,0,3,8,0,6,64,1,0,7,12,128,5, -0,1,22,192,0,0,120,32,15,136,129,44,0,4,192,2,120,0,0,15,4,0,0,48,0,0 -,216,249,172,16,0,0,128,16,80,0,0,130,72,0,0,4,0,1,32,136,48,0,1,64, -16,64,72,0,0,8,0,4,1,0,16,4,128,66,1,0,0,10,64,0,0,8,0,0,1,128,5,148, -32,0,1,32,64,80,1,12,34,129,128,5,49,0,0,129,254,196,0,3,96,2,0,4,76, -2,0,1,9,0,0,200,64,0,0,33,0,2,12,2,4,160,8,0,16,176,8,3,0,1,12,8,139, -0,2,128,145,24,0,0,16,2,36,0,0,128,9,0,3,32,0,0,18,195,255,32,1,0,1,7 -,144,64,28,128,3,0,1,15,192,1,12,128,1,176,0,0,6,128,3,112,0,0,15,96, -128,60,0,17,60,128,4,0,1,16,192,3,112,0,0,14,224,1,32,128,1,48,0,0,6, -16,2,113,0,0,14,224,1,12,0,0,184,253,196,0,3,128,32,0,5,2,0,1,8,6,128 -,0,8,32,0,17,48,0,0,3,0,1,16,0,0,3,0,2,128,65,40,0,4,128,130,0,2,128, -129,0,0,16,90,253,32,1,0,1,6,64,0,0,24,0,0,3,0,1,32,128,1,128,0,0,6, -130,2,81,16,3,96,0,0,128,2,4,17,10,0,16,48,0,0,4,0,1,136,2,3,96,0,0, -12,128,17,16,0,0,32,2,34,4,17,1,96,0,0,12,128,17,0,0,1,80,254,128,9, -176,16,38,146,2,138,68,0,0,96,129,1,0,1,52,128,6,18,0,2,3,96,128,140, -136,9,4,0,15,128,133,128,128,0,0,208,0,0,18,0,0,32,98,2,1,32,0,0,32, -129,0,2,66,64,10,0,1,12,160,0,0,52,65,24,255,0,0,128,48,0,1,64,64,0,7 -,48,0,0,6,0,4,2,0,2,128,0,16,8,0,1,16,0,0,192,0,0,8,0,2,32,0,2,16,8,0 -,2,8,16,1,1,0,1,8,64,48,0,0,208,252,224,1,61,128,7,180,0,2,131,120,0, -0,12,0,3,6,48,0,1,192,3,121,32,15,224,129,0,16,224,129,12,0,1,192,0,0 -,22,192,131,120,64,0,0,128,129,44,0,4,192,2,0,1,15,0,0,64,16,32,192, -249,40,0,0,52,128,0,0,80,0,1,4,0,0,8,128,12,0,3,70,24,0,1,64,0,0,8,4, -65,33,4,176,8,4,0,5,16,2,0,5,40,16,4,0,1,192,0,0,10,64,35,8,4,0,1,16, -148,32,0,3,81,1,4,0,0,1,16,0,0,48,2,58,254,0,1,48,0,1,160,0,0,80,0,0, -3,4,0,0,64,2,0,1,9,64,192,68,0,8,4,2,0,5,16,1,0,5,8,0,0,48,10,16,1, -132,12,8,64,0,1,32,132,1,26,0,0,64,1,0,0,64,160,2,0,3,73,48,18,8,254, -192,1,56,0,0,7,144,0,0,30,196,0,0,112,0,0,3,0,1,12,128,3,241,0,1,128, -3,112,0,0,14,192,1,60,0,0,7,0,5,144,3,0,5,200,1,60,128,1,48,0,0,16, -192,3,112,0,0,3,96,0,0,32,128,1,0,1,6,0,0,2,0,1,14,224,1,60,0,0,80, -255,4,0,0,52,0,1,128,0,0,16,4,3,8,0,1,2,0,1,8,4,193,0,6,32,0,0,48,144 -,5,0,5,208,2,0,5,8,0,0,48,0,0,6,193,0,0,8,8,0,2,12,132,1,24,0,0,6,0,2 -,128,2,0,3,1,48,16,113,248,128,1,52,0,0,6,128,0,0,8,0,0,67,96,0,0,32, -0,1,128,0,0,18,192,0,2,3,96,0,0,12,128,1,176,0,0,4,0,5,8,2,0,5,132,1, -48,0,0,6,192,8,81,0,0,139,96,0,0,140,128,69,32,0,0,166,0,1,128,16,2,0 -,1,12,128,128,48,1,96,250,16,0,1,6,0,4,32,0,0,2,0,14,8,0,1,4,0,6,2,0, -35,128,253,0,2,128,0,0,16,0,0,2,64,0,0,9,64,1,32,0,0,4,0,1,16,0,0,2, -64,0,0,8,0,0,1,32,0,0,5,0,7,2,0,6,33,0,0,4,128,0,0,16,0,0,2,64,0,0,8, -0,0,1,32,0,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,232,248,0,74, -152,255,44,128,4,146,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,64,20,0 -,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8, -0,0,1,32,0,0,4,128,64,18,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,153,254,4, -16,2,65,64,8,0,1,33,32,0,0,4,128,16,16,2,66,0,3,1,32,4,132,128,16,16, -0,0,2,0,15,16,0,3,32,0,0,1,0,1,132,128,16,0,0,128,32,64,8,0,2,8,0,0, -132,128,0,0,16,2,0,0,195,252,0,8,128,0,0,64,0,8,16,0,5,1,32,0,16,1,0, -4,16,0,3,32,0,7,128,0,2,8,0,2,176,251,4,0,4,64,0,10,2,0,55,154,251,0, -0,132,4,16,64,18,4,64,8,8,1,36,128,4,144,0,0,146,32,16,136,0,0,9,8,1, -36,128,4,132,128,16,0,15,132,4,145,128,0,0,68,0,0,96,16,1,33,32,36,0, -0,4,4,128,16,68,130,8,64,0,0,33,32,4,132,4,17,176,253,0,1,32,0,0,4,0, -1,8,0,1,64,0,0,8,0,0,1,32,0,2,2,16,0,0,1,64,0,0,8,0,1,16,0,30,32,0,0, -20,0,11,144,251,0,0,1,0,0,64,0,2,16,0,0,2,0,3,128,0,5,8,2,1,0,2,1,32, -0,16,1,0,7,64,0,0,8,0,0,4,0,7,64,0,0,8,132,1,0,1,16,252,0,9,32,128,0, -1,64,0,0,8,0,0,8,0,0,4,32,0,1,64,0,1,2,0,34,4,0,0,2,4,0,7,144,251,0,3 -,2,0,3,192,8,0,11,16,0,1,128,0,0,1,0,18,4,0,8,16,0,1,128,128,0,11,136 -,248,0,16,1,0,0,192,0,5,64,0,15,64,0,30,128,251,0,55,128,0,8,8,0,7,24 -,255,0,1,4,0,0,4,0,2,64,0,9,32,0,0,16,2,10,0,2,64,0,0,16,0,15,64,0,2, -64,32,0,0,4,0,1,16,0,2,16,4,4,0,1,8,4,0,0,32,0,3,8,0,0,48,253,0,2,8,0 -,6,32,0,1,64,0,0,8,0,0,1,0,6,128,0,18,128,0,4,4,0,4,2,0,2,1,0,4,1,0,0 -,4,0,3,136,250,0,0,69,8,32,181,0,0,56,80,128,80,64,65,40,2,40,19,37,0 -,0,4,84,80,136,10,49,0,0,40,48,173,96,16,0,14,128,168,1,0,1,160,86,82 -,8,0,1,32,0,0,8,40,8,144,1,0,0,32,4,8,0,0,18,10,105,1,0,0,10,6,24,255 -,0,0,77,36,161,0,1,136,64,147,65,64,81,145,52,129,133,34,162,64,45,0, -0,128,141,2,1,168,46,8,72,0,15,64,128,2,8,0,0,144,96,11,4,1,32,2,72,0 -,1,128,8,2,0,0,4,184,5,1,0,0,64,1,64,129,32,34,64,248,2,0,0,1,0,4,64, -0,1,16,0,4,2,64,32,0,0,64,64,0,2,2,0,20,8,0,1,32,16,4,2,32,0,4,8,2,0, -1,8,68,0,7,137,250,130,0,0,32,0,4,4,0,0,34,0,1,64,0,3,2,0,5,1,0,23,64 -,0,5,4,0,6,4,0,5,1,16,0,0,56,248,0,4,32,0,32,1,0,1,4,0,1,128,0,8,32,0 -,18,104,250,0,72,2,0,0,152,253,0,1,64,0,14,4,0,26,1,0,7,64,0,4,4,0,4, -64,0,1,8,0,0,2,0,1,112,248,0,0,66,0,14,8,65,2,0,28,8,0,6,2,0,0,128,0, -1,11,0,1,2,4,0,0,16,0,1,64,128,0,1,120,249,0,8,4,0,0,48,0,8,8,0,4,192 -,0,0,16,0,15,128,0,5,8,0,2,32,0,12,4,0,2,248,249,0,1,1,0,1,4,0,1,16,0 -,3,8,0,0,1,32,0,5,2,64,0,0,8,0,13,32,0,13,64,0,0,8,0,3,4,0,4,64,0,2,1 -,0,0,24,254,0,1,4,0,53,1,0,1,128,0,13,72,254,0,25,32,0,46,128,16,253, -0,19,32,0,26,128,0,7,14,144,0,0,4,128,0,3,72,0,7,104,254,0,9,16,0,2,4 -,0,9,32,0,0,64,0,18,64,0,2,17,0,0,16,4,0,6,4,0,0,1,32,0,5,64,64,4,232 -,251,0,39,1,0,2,1,0,29,136,254,0,16,1,0,20,1,0,1,4,0,16,1,0,13,200, -251,0,6,32,0,9,1,32,0,1,4,0,4,64,0,29,2,0,11,128,0,1,104,254,2,0,73, -184,253,0,1,128,0,61,64,0,8,16,251,0,18,1,0,8,4,0,16,128,0,5,10,0,19, -120,252,0,6,16,0,13,2,0,2,32,0,30,1,0,12,1,0,1,152,254,2,0,5,2,0,0,1, -0,9,64,64,0,0,32,0,3,4,32,0,14,128,0,5,8,0,1,32,0,0,32,32,0,2,16,0,6, -4,32,0,2,192,249,0,0,32,0,7,4,0,3,2,0,36,32,0,8,1,0,6,16,0,2,136,249, -0,3,16,0,1,64,128,0,0,32,1,32,0,0,32,128,0,3,17,2,8,0,0,1,1,0,1,128,0 -,16,4,0,1,4,0,1,3,10,0,1,8,0,1,1,0,7,40,8,0,3,64,200,252,0,0,2,0,14,4 -,0,1,8,0,5,5,0,18,64,0,0,2,0,7,2,0,2,130,0,1,8,2,0,8,254,0,1,4,0,13,2 -,0,28,4,0,1,16,0,1,64,0,4,2,64,8,0,0,8,0,2,4,0,6,88,254,16,0,2,2,0,4, -2,0,0,4,0,1,16,0,1,32,0,1,16,0,0,32,0,0,4,128,0,24,8,0,1,16,0,3,1,0,9 -,128,0,0,1,0,0,96,252,72,0,5,4,4,0,10,4,128,128,0,4,8,8,0,14,64,0,8, -16,1,0,11,1,32,0,3,32,249,0,0,33,16,136,0,4,65,0,5,32,0,5,32,8,0,23,2 -,0,10,8,0,1,32,0,0,4,0,5,16,0,0,176,249,10,0,0,32,32,4,0,1,8,0,1,32,0 -,3,8,0,0,2,32,0,1,16,0,3,64,0,8,64,0,13,32,0,3,16,0,0,130,0,5,4,0,7,8 -,136,254,64,173,174,176,1,0,1,82,128,0,0,233,0,0,104,1,0,0,166,208,0, -0,16,0,1,20,80,80,43,104,33,5,0,0,6,0,5,32,0,6,64,0,0,3,0,0,64,1,0,0, -148,137,2,10,0,0,64,40,40,0,1,16,0,1,64,2,8,6,0,0,16,40,0,1,8,32,88, -251,0,0,200,133,89,0,0,145,1,72,109,137,136,1,100,0,0,161,37,178,4,64 -,0,0,24,0,0,242,72,64,8,41,37,0,0,34,0,14,32,0,0,17,16,130,68,65,8,18 -,139,80,12,132,40,0,1,4,130,0,0,36,0,0,6,0,1,64,130,8,128,2,12,96,253 -,0,0,32,0,0,32,0,0,4,0,0,4,16,1,2,0,0,1,0,4,64,0,0,2,0,0,128,0,23,16, -0,0,2,64,0,0,4,0,0,1,1,0,0,4,0,3,2,0,0,32,0,0,4,0,6,16,160,250,0,4,32 -,0,6,64,64,16,0,0,1,0,1,4,128,0,0,18,0,0,2,130,64,0,21,1,0,1,136,0,0, -32,16,0,3,16,0,0,2,0,1,2,0,6,8,120,252,0,51,4,0,14,64,0,5,152,255,2,0 -,5,32,0,0,4,128,0,2,2,0,2,32,0,2,4,0,3,2,64,0,15,32,2,0,4,32,0,3,17, -64,0,0,16,0,6,128,0,3,8,128,104,252,132,1,16,0,4,64,2,0,9,66,0,6,32,0 -,29,4,0,14,41,250,0,20,16,0,34,4,0,6,8,0,0,2,2,0,5,104,249,0,12,2,0,0 -,1,0,20,128,66,0,1,2,1,0,11,8,0,18,58,251,0,18,64,8,0,18,128,0,0,2,0, -0,128,0,12,128,0,15,240,249,0,19,1,0,44,32,0,3,32,0,2,168,253,0,0,4,8 -,0,6,2,64,0,34,1,0,3,64,0,17,8,0,2,200,249,0,7,4,128,0,3,128,0,1,8,16 -,0,1,6,0,31,4,0,2,64,0,3,128,0,8,8,0,0,40,249,0,17,8,0,1,4,0,5,2,0,17 -,32,0,26,208,251,0,74,152,255,0,1,2,0,1,128,0,31,4,0,1,16,0,7,8,0,23, -240,254,0,13,68,132,0,1,20,2,64,80,8,0,0,17,36,0,2,8,0,16,16,0,1,64,0 -,0,8,0,1,32,0,0,4,0,0,64,0,3,32,0,1,1,0,0,64,0,1,64,0,1,248,254,0,9, -96,0,2,5,128,0,0,20,128,2,80,0,0,8,64,1,40,128,4,32,0,17,160,0,0,6, -128,0,0,20,2,0,0,64,0,0,40,0,6,4,2,2,0,6,8,251,0,14,128,0,0,16,0,0,2, -64,0,0,8,0,0,1,32,0,0,4,0,28,16,0,16,240,255,0,13,4,0,31,128,0,18,4,0 -,6,80,251,0,0,21,160,2,180,128,10,80,1,42,128,5,168,0,0,44,128,2,80,0 -,0,10,64,1,40,0,0,5,160,0,0,20,192,2,0,15,22,128,2,88,0,0,11,224,1,42 -,128,5,160,0,0,22,160,2,88,0,0,11,208,1,40,128,11,176,0,0,22,160,2, -232,254,128,9,48,1,134,215,4,154,0,0,19,32,3,77,192,100,152,129,50, -112,6,202,64,25,40,3,101,192,12,144,1,0,14,128,12,152,1,50,64,6,200, -68,19,32,3,100,128,12,52,1,50,64,6,152,4,25,32,121,100,128,12,48,1, -152,252,255,255,0};static const unsigned char l451[]={79,231,255,255, -98,255,57,0,0,213,255,255,255,255,255,255,255,255,255,255,255,255,255 -,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -255,255,255,255,255,255,0,0,12,52,1,48,0,0,6,192,0,0,17,0,0,3,32,2,68 -,128,44,48,0,0,6,192,0,0,24,0,0,3,96,160,9,128,1,0,15,12,128,129,38,0 -,0,6,192,0,0,24,0,0,3,96,160,9,128,1,39,64,6,192,0,0,152,0,0,3,100,0, -0,12,144,1,56,250,0,0,18,160,2,72,0,0,9,32,1,44,128,4,208,0,0,26,64,5 -,72,0,0,9,32,1,36,128,4,144,0,0,21,64,2,0,15,18,64,2,84,0,0,9,32,1,36 -,128,4,144,0,0,21,64,2,84,0,0,10,32,1,20,128,4,176,0,0,18,128,2,216, -251,0,63,1,0,9,152,254,0,66,32,0,4,64,0,0,248,249,0,12,1,32,0,47,128, -0,2,16,0,1,8,0,3,128,253,0,8,10,0,1,68,128,8,0,23,64,0,26,1,0,1,8,0,1 -,32,0,0,208,250,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0 -,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0,70,128,5,0,1,4, -254,0,71,128,0,1,24,255,0,70,224,1,0,2,248,8,0,69,32,0,0,2,0,0,163, -252,0,74,137,254,0,70,192,1,0,2,250,4,0,73,201,250,0,70,128,1,0,2,254 -,0,74,152,255,0,74,152,255,0,74,152,255,8,0,73,178,253,0,74,152,255,0 -,74,152,255,4,0,73,201,250,0,74,152,255,0,72,36,1,168,249,0,72,16,8,8 -,254,0,72,28,0,1,250,8,0,71,36,0,0,146,251,0,72,32,0,0,184,253,0,72, -20,0,0,136,250,4,0,71,16,0,0,217,251,0,72,32,0,0,184,253,0,69,1,0,1,4 -,0,0,152,250,0,74,152,255,0,69,3,0,1,44,0,0,48,250,8,0,68,1,0,1,20,0, -0,162,249,0,69,140,2,0,0,24,0,0,160,250,0,69,15,0,1,36,0,0,48,254,4,0 -,68,12,0,1,32,0,0,97,252,0,69,13,0,1,16,0,1,251,0,72,4,0,0,152,251,0, -74,152,255,0,72,44,0,0,48,249,8,0,71,20,0,0,179,249,0,72,24,0,0,17, -255,0,72,36,0,0,184,249,4,0,71,32,0,0,233,248,0,72,16,0,0,136,254,0, -69,1,0,1,4,0,0,152,250,0,74,152,255,0,69,3,0,1,44,0,0,48,250,8,0,68,1 -,0,1,20,0,0,162,249,0,69,12,2,0,0,24,0,0,168,250,0,69,15,0,1,36,0,0, -48,254,4,0,68,12,0,1,32,0,0,97,252,0,69,13,0,1,16,0,1,251,0,8,35,1,0, -58,140,4,0,0,36,0,0,104,255,0,72,16,0,0,136,254,0,7,192,3,2,0,58,15,0 -,1,44,0,1,251,8,0,6,64,0,60,1,1,0,0,20,0,0,163,252,0,72,24,0,0,17,255 -,0,7,128,3,0,59,14,0,1,36,0,0,136,252,4,0,71,16,0,0,217,251,0,8,3,0, -59,12,0,1,32,0,1,250,0,74,152,255,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8, -0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4 -,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0 -,1,32,0,0,4,0,0,152,254,0,70,8,0,2,24,255,40,0,0,4,128,0,0,16,0,0,2, -64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15 -,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2, -64,0,0,8,0,0,65,32,0,0,4,0,0,242,249,0,8,8,0,59,64,2,4,0,1,176,255,32 -,0,0,4,128,0,0,16,0,0,2,0,1,10,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0 -,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0, -0,4,128,0,0,16,0,0,2,64,0,0,8,0,3,9,0,0,16,255,4,0,8,1,0,59,4,128,0,1 -,9,251,32,0,0,4,128,0,0,16,0,0,2,64,32,8,0,0,1,32,0,0,4,128,0,0,16,0, -0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0 -,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,129,32,16,4,0,0,160,255,0 -,74,152,255,0,74,152,255,0,69,32,0,3,184,253,0,74,220,251,0,74,152, -255,0,74,152,255,0,73,8,24,255,0,74,152,255,0,73,16,152,254,0,49,1,0, -21,16,1,136,254,0,49,2,0,21,16,0,0,168,254,0,74,220,251,0,74,152,255, -0,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0,74 -,152,255,0,74,152,255,0,74,152,255,0,71,1,0,1,136,254,0,74,152,255,0, -74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0,74, -152,255,0,74,152,255,0,74,152,255,0,8,1,0,59,4,128,0,3,250,0,74,152, -255,0,74,152,255,0,74,152,255,0,8,8,0,64,144,255,0,51,4,0,21,152,251, -0,22,16,0,21,128,8,0,22,2,0,2,116,250,0,22,8,0,22,5,0,3,4,0,16,64,9,0 -,2,152,255,0,7,64,0,39,4,0,14,16,0,8,152,254,0,74,152,255,0,48,1,0,14 -,4,0,8,216,254,0,69,1,0,3,152,254,2,0,72,128,48,253,8,0,73,178,253,0, -74,152,255,0,74,152,255,0,74,220,251,0,74,152,255,0,8,128,0,61,64,0,1 -,88,255,0,74,152,255,0,72,1,0,0,152,254,0,74,152,255,0,7,128,0,60,2,0 -,3,16,253,0,47,4,0,18,104,34,0,0,128,0,2,208,255,0,46,48,0,19,64,0,3, -1,0,0,152,249,0,46,12,0,19,32,0,1,128,129,0,1,64,252,0,46,52,4,0,19, -128,0,1,9,0,2,249,0,46,48,0,19,32,0,5,152,254,0,46,8,0,19,104,0,2,1,0 -,1,136,248,0,46,48,0,22,128,0,2,16,252,0,67,64,0,1,128,1,0,2,250,0,47 -,4,0,18,32,64,0,0,128,8,0,1,24,249,0,46,48,0,24,1,0,0,152,253,0,46,12 -,0,19,96,0,1,128,1,0,1,192,248,8,0,45,52,34,0,18,64,64,0,1,1,2,0,0, -145,248,0,46,48,0,26,171,255,0,46,8,0,19,64,0,2,1,0,1,8,250,4,0,45,48 -,0,19,32,0,1,128,0,2,114,248,0,67,96,0,1,128,1,0,2,248,0,61,128,0,4, -32,0,1,128,16,1,0,0,136,252,0,61,6,0,5,32,0,4,216,255,0,60,128,1,0,4, -96,0,1,128,1,0,1,24,248,8,0,59,128,6,2,0,3,64,68,0,1,129,0,1,106,254, -0,61,6,0,11,248,255,0,61,1,0,4,64,0,2,1,0,1,152,250,4,0,60,6,0,4,32,0 -,1,128,0,2,33,248,0,67,96,0,1,128,1,0,2,248,0,47,4,0,18,32,8,0,0,128, -8,1,0,0,80,248,0,46,48,0,26,152,252,0,46,12,0,19,96,0,1,128,129,0,1, -64,248,8,0,45,52,65,0,18,64,132,0,1,17,0,1,98,254,0,46,48,0,26,152, -252,0,46,8,0,19,64,0,2,1,0,1,8,250,4,0,45,48,0,19,32,0,1,128,0,2,65, -251,0,67,96,0,1,128,1,0,2,248,0,44,128,33,0,1,16,8,0,1,64,0,7,128,192 -,16,0,2,32,2,0,0,128,4,1,0,0,24,253,0,48,6,0,11,6,0,5,32,0,4,216,249, -0,44,224,1,0,0,128,1,0,2,192,0,0,1,0,4,128,1,244,0,3,96,32,0,0,128,1, -0,1,96,249,8,0,43,32,0,0,1,128,22,4,0,1,64,11,0,5,128,70,16,130,0,2, -64,2,0,1,145,0,1,186,252,0,48,6,0,3,19,2,0,5,6,0,11,216,248,0,44,192, -1,0,1,1,0,2,128,3,0,6,1,224,0,3,64,0,2,1,0,2,249,4,0,47,6,0,3,131,0,6 -,6,0,4,32,0,1,128,0,2,145,253,0,44,128,1,0,6,35,0,7,192,0,3,96,0,1, -128,1,0,1,80,250,0,1,48,4,0,12,134,0,32,16,0,6,4,2,0,0,128,0,1,24,2,0 -,0,32,68,0,0,128,0,0,128,64,172,255,0,49,192,0,6,128,1,0,1,6,0,8,128, -48,0,0,216,248,0,1,60,0,12,128,7,0,31,48,0,6,96,0,1,128,1,0,1,30,0,1, -96,0,1,128,1,12,0,0,168,251,8,0,0,4,32,0,11,128,0,0,2,0,30,208,64,0,5 -,160,33,0,0,128,6,4,0,0,2,8,0,0,64,8,0,1,41,52,34,59,255,0,49,192,0,6 -,128,1,0,1,6,0,9,48,0,0,73,249,0,1,56,0,13,7,0,31,32,0,6,64,0,2,1,0,1 -,28,0,1,64,0,2,1,8,0,0,96,254,4,0,48,192,0,6,128,1,0,1,6,0,1,2,0,1,32 -,0,1,128,0,0,48,0,0,161,255,0,1,48,0,13,6,0,46,24,0,1,96,0,1,128,1,0, -1,224,250,0,1,48,4,0,46,16,64,32,0,5,128,64,0,2,64,96,11,36,1,32,144, -48,0,1,104,253,0,49,192,0,0,24,0,6,48,0,3,24,0,2,64,12,0,3,240,255,0, -1,60,32,0,45,48,0,0,6,0,6,12,0,3,6,0,0,3,96,0,0,3,128,1,0,1,200,250,8 -,0,0,132,0,46,208,130,26,16,0,5,52,65,0,2,26,8,64,64,66,13,4,17,2,0,0 -,186,252,0,49,192,0,0,24,0,6,48,0,3,24,0,0,32,4,0,0,12,0,3,208,253,0, -1,56,0,46,32,0,0,4,0,6,8,0,3,4,192,3,64,0,0,2,0,0,1,0,1,128,254,4,0, -48,192,0,0,24,0,6,48,0,3,24,0,0,1,32,0,0,12,128,0,2,105,249,0,1,48,0, -63,18,100,0,1,128,1,0,1,80,248,0,1,4,0,4,64,9,1,0,0,13,0,1,52,0,39, -129,5,4,0,5,26,0,1,32,4,0,0,128,0,0,1,0,0,72,253,0,8,2,0,1,12,0,1,48, -0,38,96,0,0,8,0,6,24,0,2,32,0,4,8,254,0,2,8,0,4,3,0,1,12,0,41,24,64,4 -,0,6,24,0,1,96,0,1,128,128,0,1,184,254,8,0,0,176,0,5,18,4,0,0,12,0,41 -,104,4,8,0,6,24,0,1,64,33,0,4,82,254,0,2,6,0,4,11,4,0,0,64,0,1,48,1,0 -,37,96,0,0,4,0,7,8,0,7,152,253,0,1,60,0,4,192,3,0,1,3,8,0,0,60,32,0, -37,16,0,0,11,0,6,6,0,1,64,0,2,1,0,1,88,249,4,0,0,48,32,0,4,3,0,1,12,4 -,0,0,48,16,0,37,96,0,0,4,0,6,24,4,0,0,32,0,5,81,254,0,1,48,0,5,3,4,0, -0,76,0,1,48,1,0,39,8,0,6,88,0,1,96,0,2,1,0,1,8,252,0,64,64,8,0,7,144, -251,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0, -2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0 -,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,152,255,0,74 -,152,255,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16 -,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0, -8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,178,253 -,0,1,128,16,0,12,16,2,0,26,132,0,0,18,64,2,72,0,0,137,32,1,36,0,1,144 -,0,0,18,64,2,66,0,0,9,0,2,128,4,0,1,18,192,255,32,0,1,128,0,0,16,0,0, -2,64,0,0,8,0,0,1,32,0,0,4,0,1,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,27,1 -,0,7,64,0,0,8,0,1,32,0,2,224,251,4,0,44,128,0,0,16,0,0,2,64,0,0,8,0,1 -,32,0,1,128,0,0,16,0,0,2,64,0,0,8,0,3,4,0,1,16,129,254,32,0,0,4,161,0 -,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,32,20,0,0,2,64,0,0,8,0,0,1,32 -,0,0,4,0,15,32,16,0,0,2,64,0,0,8,0,0,1,0,1,4,1,0,0,16,0,0,2,64,16,8,0 -,0,65,0,0,8,0,0,128,32,0,1,2,112,253,0,9,2,0,56,2,0,5,184,253,0,74, -152,255,0,49,8,0,1,32,1,0,0,128,0,2,2,64,0,3,32,0,3,80,0,1,64,192,251 -,0,53,64,0,15,32,0,2,216,253,0,74,152,255,0,74,152,255,0,47,136,0,0,4 -,0,1,16,0,7,4,0,6,2,0,3,16,252,0,50,64,0,22,216,255,0,47,16,1,2,128,0 -,0,8,0,7,1,0,6,2,0,3,184,252,0,1,16,0,22,128,0,18,80,16,0,0,134,1,0,0 -,8,4,128,0,3,1,0,3,40,0,1,1,0,1,20,0,3,184,250,0,1,32,0,23,1,0,17,64, -16,128,0,0,4,0,0,2,16,0,0,2,0,7,32,0,0,128,0,2,4,0,3,168,254,0,48,4,2 -,0,7,1,0,14,168,251,0,65,64,0,7,216,255,0,74,152,255,0,74,152,255,0, -67,168,0,2,4,0,1,208,249,0,74,152,255,0,1,4,0,12,128,0,27,32,0,16,16, -0,0,2,0,8,192,255,0,1,4,0,71,216,255,0,74,152,255,0,8,1,0,57,4,1,0,1, -66,0,1,184,253,0,1,128,0,68,160,2,0,0,176,253,0,74,152,255,0,74,152, -255,0,74,152,255,0,74,152,255,0,45,128,0,5,8,0,8,2,0,10,48,253,0,74, -152,255,0,74,152,255,0,46,8,0,0,1,32,0,0,4,128,0,0,16,0,1,64,0,0,8,0, -0,1,0,1,4,0,3,2,0,1,8,0,0,16,255,0,2,16,0,12,8,0,29,32,0,1,1,0,8,32,0 -,7,16,0,3,8,253,0,2,16,0,13,2,0,25,128,0,0,16,0,0,2,64,0,0,8,0,1,32,0 -,1,128,0,0,16,0,0,2,64,0,0,8,0,3,4,0,1,16,0,0,104,253,0,11,2,0,1,8,0, -40,2,0,3,8,0,1,36,0,1,8,16,0,4,192,253,0,49,1,32,0,11,32,0,3,193,0,0, -128,0,2,208,252,0,74,152,255,0,74,152,255,128,0,17,32,0,24,64,0,0,8, -128,0,0,68,128,2,16,0,5,16,8,0,0,1,32,0,4,4,0,3,16,253,0,22,16,0,21, -64,0,4,4,0,0,128,0,15,4,0,2,24,254,64,0,17,64,0,2,8,0,20,64,0,0,9,0,0 -,1,34,64,6,8,0,0,2,0,3,8,16,0,0,2,64,0,1,1,0,1,2,8,0,2,208,248,0,0,4, -4,0,3,34,0,3,2,64,2,0,3,4,0,7,32,0,19,66,65,1,8,4,161,32,0,0,9,128,0, -0,32,1,2,1,0,0,18,0,0,160,0,5,8,8,249,0,47,128,0,0,65,0,0,2,144,128, -32,0,1,64,0,2,1,1,0,2,128,0,5,8,232,255,0,27,8,0,27,4,0,1,8,0,3,4,0,8 -,24,251,0,2,4,0,42,4,0,9,32,0,15,184,249,0,74,152,255,4,0,66,16,32,0, -1,5,0,1,185,254,0,67,64,0,1,64,0,0,1,0,0,152,254,0,9,4,0,63,152,251,0 -,55,8,0,4,128,0,11,144,255,0,1,16,0,13,2,0,26,128,0,16,64,0,0,8,0,8, -248,254,0,74,152,255,0,12,2,0,1,8,0,30,8,0,18,192,0,1,32,32,0,0,8,48, -251,0,46,4,0,1,16,0,9,128,0,6,48,0,1,2,0,1,192,252,0,74,152,255,0,9,2 -,0,56,2,0,5,252,249,0,24,1,0,48,152,254,0,25,2,0,47,184,255,0,24,7,0, -48,152,248,0,24,33,8,0,47,56,252,0,24,128,2,0,47,176,255,0,24,3,0,48, -152,252,0,24,12,0,48,16,251,0,24,12,2,0,47,48,251,0,17,16,0,5,41,16,0 -,33,192,68,2,0,10,8,255,0,24,4,0,35,2,0,11,184,251,0,17,240,0,5,8,0, -33,12,0,13,168,251,8,0,16,16,4,1,0,3,4,0,33,4,0,0,18,1,0,10,194,249,0 -,18,8,0,4,8,0,33,48,6,6,0,11,200,249,0,17,240,32,0,4,7,0,33,56,128,7, -2,0,10,40,248,4,0,16,192,32,0,4,8,0,33,48,0,0,6,2,0,10,209,250,0,17, -192,0,5,4,0,33,48,0,0,16,0,11,104,250,0,24,13,0,26,64,19,0,5,64,0,0,8 -,0,10,120,249,0,24,12,0,27,128,0,19,144,251,0,53,131,0,4,12,128,1,0, -11,120,248,4,0,23,32,8,0,26,35,0,4,4,128,0,12,2,252,12,0,23,32,16,0, -26,9,1,0,3,176,64,6,4,0,10,56,248,0,24,15,0,26,192,3,0,4,56,0,0,7,0, -11,224,255,8,0,24,2,0,26,3,0,4,48,0,0,6,0,11,193,253,0,24,64,0,27,35, -1,0,3,48,0,0,6,0,11,152,249,0,24,32,16,0,27,4,0,3,36,129,36,4,0,10, -208,251,0,24,12,0,34,32,0,12,48,249,0,24,15,2,0,25,192,0,5,32,32,4,4, -0,10,184,250,8,0,23,45,0,26,64,0,5,128,0,0,16,0,11,154,255,0,24,44,0, -27,11,2,0,4,1,32,0,11,8,251,0,24,15,2,0,25,128,3,0,4,28,136,3,1,0,10, -112,254,4,0,23,12,0,27,3,0,19,113,253,0,24,76,2,0,26,3,0,4,48,5,166,0 -,11,152,251,0,24,45,2,0,25,64,0,6,64,0,0,8,0,10,88,248,0,24,4,0,48, -152,251,0,53,131,0,4,12,128,1,0,11,120,248,8,0,23,64,2,0,26,3,0,4,4, -128,0,12,153,253,0,24,44,0,27,32,0,4,176,0,0,22,8,0,10,251,251,0,24, -15,2,0,25,192,3,1,0,3,56,32,7,0,11,224,252,4,0,52,131,0,4,48,0,0,6,0, -11,26,250,0,24,32,8,0,26,11,0,4,48,0,0,6,0,11,80,254,0,24,5,0,26,64, -131,0,4,52,9,0,0,8,0,10,216,248,0,24,8,0,33,48,0,13,32,255,0,24,11,0, -33,32,128,1,0,11,40,252,8,0,23,5,2,0,26,64,0,4,16,194,0,12,138,254,0, -24,70,2,0,26,33,0,4,48,1,22,0,11,152,252,0,24,9,0,26,192,3,2,0,3,12,8 -,7,2,0,10,56,253,4,0,23,10,2,0,26,1,0,4,32,0,0,6,0,11,49,249,0,24,36, -0,27,18,1,0,3,8,32,6,0,11,192,248,0,18,2,1,0,3,1,0,28,4,0,3,180,128, -32,0,1,74,16,0,7,192,250,0,25,2,0,32,48,8,0,0,2,0,10,32,253,0,17,48,0 -,5,4,2,0,25,192,0,5,32,0,0,4,1,0,0,8,0,8,240,254,8,0,16,16,0,5,136,0, -26,64,0,5,16,8,66,0,1,64,16,0,7,138,249,0,17,192,0,0,1,0,32,35,1,0,3, -176,16,64,0,2,5,0,7,168,253,0,17,240,0,5,5,0,26,128,3,0,4,12,128,1,2, -0,0,22,0,8,192,254,4,0,16,192,0,34,3,0,4,32,0,0,4,0,1,8,0,8,217,249,0 -,17,192,0,5,8,0,27,3,0,4,8,16,1,1,0,0,144,2,0,7,80,255,0,17,80,66,0,4 -,73,2,0,27,4,0,3,36,146,20,1,0,1,64,0,2,1,0,1,4,0,0,8,250,0,17,128,0, -5,4,0,33,48,0,0,6,0,11,72,251,0,17,112,0,5,11,0,26,192,0,7,4,0,11,168 -,248,8,0,16,144,0,5,5,2,0,25,64,0,6,18,6,4,0,10,50,251,0,17,64,0,5,10 -,0,27,35,2,0,3,48,0,0,38,0,3,11,0,1,76,8,0,0,48,65,240,250,0,17,176,0 -,5,9,0,26,128,3,0,4,28,144,3,1,0,1,192,3,1,0,0,15,0,1,60,0,0,152,250, -4,0,16,64,0,5,10,0,27,3,0,4,48,16,0,4,3,0,1,12,0,1,48,0,0,169,254,0, -17,128,0,5,8,0,27,3,0,4,16,1,64,8,0,2,3,0,1,12,0,1,48,0,1,253,0,74, -152,255,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16, -0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8 -,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,152,255, -0,74,152,255,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0, -0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64, -0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,178 -,253,0,17,32,0,5,2,0,26,128,64,0,4,136,32,17,4,0,10,136,250,32,0,0,4, -128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,2,2,64,0,0,8,0,1,32,0, -0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,3,16,0,0,2,64,0,0 -,8,0,0,1,32,0,0,4,0,0,192,254,4,0,73,201,250,32,0,0,4,128,0,0,16,0,0, -2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0, -15,32,0,0,4,128,0,0,16,0,0,2,0,1,8,0,0,1,32,0,3,16,0,0,2,64,0,0,8,0,0 -,1,32,0,0,4,0,0,208,255,0,74,152,255,0,74,152,255,0,54,2,0,4,32,0,0,4 -,0,10,248,251,0,60,64,0,0,8,0,10,208,251,0,60,8,0,12,16,255,0,65,4,0, -7,216,251,0,72,8,0,0,16,255,0,74,152,255,0,51,80,0,19,8,0,0,64,250,0, -15,4,0,1,16,0,2,160,8,0,0,128,0,24,64,0,13,1,0,2,128,0,2,72,253,0,22, -32,0,2,1,0,37,128,0,3,64,0,2,8,248,0,15,32,0,1,32,0,3,32,0,49,184,255 -,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0, -74,152,255,0,74,152,255,0,74,152,255,0,17,64,128,0,33,1,0,4,16,0,0,2, -0,11,240,254,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152,255,0,53 -,4,0,4,64,0,0,8,0,11,24,251,0,74,152,255,0,74,152,255,0,74,152,255,0, -59,8,0,12,64,144,251,0,74,152,255,0,61,128,0,11,16,255,0,54,1,0,4,84, -128,2,0,1,2,0,7,64,255,0,25,2,0,25,64,0,20,184,251,0,74,152,255,0,74, -152,255,8,0,44,128,0,0,128,0,0,4,64,2,16,0,1,64,1,0,15,128,128,249,0, -7,128,0,11,128,0,35,32,0,8,16,0,3,8,0,0,56,252,0,7,64,0,11,64,0,23, -128,0,1,1,2,64,4,8,0,1,32,2,32,0,2,20,0,4,8,0,3,4,0,0,240,249,0,16,10 -,0,30,2,0,1,8,0,2,16,4,2,0,1,40,0,2,16,128,32,2,0,0,1,128,0,0,4,0,0, -80,254,0,16,2,0,29,128,0,2,2,0,2,32,1,8,0,1,16,0,8,64,0,2,176,251,0, -64,2,0,8,184,255,0,19,1,0,4,16,0,25,64,0,20,136,250,2,0,65,2,0,2,1,0, -1,128,32,255,0,53,6,0,4,104,0,0,28,8,0,10,88,248,4,0,58,4,128,0,2,2,0 -,8,161,254,0,74,152,255,0,61,1,0,11,136,255,0,74,152,255,0,74,152,255 -,0,53,64,0,4,4,0,13,152,251,0,52,128,8,0,5,8,4,0,11,208,255,0,74,152, -255,0,74,152,255,0,46,128,16,0,0,192,8,0,12,2,0,8,160,251,0,50,32,0, -22,184,255,0,46,12,0,1,240,0,13,6,0,8,176,248,0,46,4,0,1,16,128,0,12, -2,0,8,120,254,0,46,48,33,0,15,24,5,0,7,120,249,0,46,56,0,1,224,0,13, -30,0,8,112,251,0,46,48,0,16,24,0,8,24,253,0,46,48,0,1,192,0,13,26,0,8 -,176,249,0,22,104,0,22,164,0,1,16,8,0,2,4,0,18,156,250,0,22,96,0,22, -16,32,0,1,64,0,22,248,248,0,22,120,0,26,64,0,0,192,0,20,208,252,8,0, -21,104,0,22,128,8,0,1,4,0,0,64,0,20,227,250,0,22,96,0,22,32,32,0,0, -128,128,0,1,3,0,19,145,249,0,22,120,0,22,60,0,1,48,0,1,128,3,1,0,18, -96,250,4,0,21,96,0,23,16,0,4,3,0,19,233,255,0,22,96,0,22,48,0,2,2,1,0 -,0,3,0,19,136,250,0,46,128,16,0,5,4,0,16,4,2,32,255,0,73,16,152,254,0 -,46,12,0,4,192,0,19,16,208,250,8,0,45,4,0,4,64,0,19,1,226,249,0,46,48 -,0,5,35,2,0,17,32,136,255,0,46,56,16,0,3,128,3,0,17,12,0,0,56,251,4,0 -,45,48,0,5,3,0,17,32,0,0,217,248,0,46,48,0,5,3,0,17,128,64,160,251,0, -46,4,0,4,64,67,0,7,8,0,3,8,4,0,0,32,16,0,1,112,254,0,53,2,0,13,32,0,1 -,128,0,1,24,253,0,46,48,16,0,4,3,0,5,128,1,0,5,32,0,1,128,0,2,255,8,0 -,45,48,1,0,4,3,2,0,4,128,0,6,2,0,1,8,0,1,178,252,0,47,65,0,4,11,4,0,5 -,134,0,5,64,0,0,128,0,0,1,0,0,208,248,0,46,60,0,4,192,3,0,6,7,0,4,24, -0,1,96,0,2,16,252,4,0,45,48,0,5,3,0,6,6,0,11,153,250,0,46,48,8,0,4,35 -,4,0,5,6,0,4,64,129,0,1,4,2,0,0,48,248,0,44,32,64,128,16,0,0,16,8,0,0 -,64,2,0,12,4,0,5,8,252,0,50,64,0,1,1,2,0,18,200,252,0,46,12,0,2,64,0, -1,3,0,10,192,0,7,232,252,8,0,44,128,4,0,2,4,0,1,35,4,0,9,64,0,7,234, -254,0,44,128,144,48,1,0,1,128,0,1,18,2,0,10,3,2,0,5,128,255,0,44,96,0 -,0,56,32,0,0,48,0,1,192,0,11,128,3,0,6,80,248,4,0,45,48,0,1,64,0,2,3, -1,0,10,3,0,6,249,252,0,46,50,0,2,2,1,128,0,12,3,0,6,16,252,0,46,52,9, -0,3,64,35,4,128,41,4,0,0,4,2,0,12,32,253,0,53,3,0,1,4,0,2,16,0,12,248 -,249,0,46,48,0,5,2,24,0,0,8,0,2,16,0,12,56,254,4,0,45,48,10,0,4,129,8 -,0,0,132,16,0,1,1,0,12,26,253,12,0,45,144,64,0,4,35,96,1,40,0,2,32,0, -12,112,253,0,46,60,0,4,192,0,0,114,32,3,8,0,0,12,0,13,80,248,8,0,45, -48,0,5,2,96,0,0,8,0,16,201,249,0,46,48,18,0,3,128,32,97,0,0,68,8,0,0, -144,64,0,12,56,249,0,22,104,66,0,2,52,34,0,14,32,0,0,52,2,0,3,64,11,0 -,9,3,0,4,16,0,2,32,249,0,22,96,0,3,48,0,17,48,32,0,4,131,0,19,56,250, -0,22,64,0,3,32,0,17,32,0,6,2,0,6,48,0,0,6,0,3,3,0,3,232,250,8,0,21,32 -,33,0,2,16,34,0,16,16,9,0,4,19,0,7,16,0,0,2,0,3,1,0,3,186,255,0,22,96 -,4,0,2,48,2,0,15,144,176,64,0,4,10,4,0,6,192,4,24,4,0,2,12,4,0,2,248, -255,0,22,24,64,0,2,12,32,0,14,96,0,0,12,0,4,192,1,0,7,224,64,28,0,3, -14,0,4,254,4,0,21,64,0,3,32,0,15,128,1,32,0,5,2,0,7,192,0,0,24,0,3,12 -,0,3,129,248,0,22,16,132,0,2,8,66,0,14,128,1,10,66,0,4,80,0,7,192,0,0 -,26,0,3,12,0,3,8,248,0,22,8,65,0,2,180,16,0,14,160,1,164,128,0,3,64, -35,0,2,32,16,0,4,2,0,8,136,255,0,22,96,0,3,48,0,15,128,1,16,32,0,4,3, -1,0,2,128,0,14,176,248,0,22,96,0,3,32,16,0,16,48,0,5,3,0,3,128,0,4,6, -0,8,96,250,8,0,21,96,10,0,2,16,0,17,48,65,0,4,35,1,0,2,8,0,4,2,0,8, -106,248,0,22,64,64,0,3,17,0,15,128,32,32,38,0,3,32,1,0,3,1,0,3,152,32 -,0,7,216,253,0,22,24,0,3,60,0,15,96,0,0,12,128,7,2,0,1,192,1,0,2,96,1 -,0,4,28,0,8,136,252,4,0,21,64,0,4,32,0,16,48,16,6,0,3,2,0,9,24,0,8, -121,250,0,22,32,16,0,2,16,1,0,15,4,2,0,0,6,0,3,161,0,3,4,2,0,3,24,0,8 -,248,252,0,64,4,0,8,216,255,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1, -32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0 -,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,1,64,0,0,8,0,0,1,32, -0,0,4,0,0,184,255,0,74,152,255,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0 -,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4, -128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0, -0,1,32,0,0,4,0,0,178,253,0,46,8,4,0,1,66,0,0,128,8,18,8,0,4,17,36,16, -0,0,128,64,0,1,2,1,0,2,152,248,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0 -,1,32,0,0,4,128,0,0,16,0,0,2,64,0,2,1,32,0,0,4,0,15,32,0,1,128,0,2,2, -0,3,1,32,0,0,4,0,4,4,0,0,8,0,1,32,0,0,4,0,0,232,255,4,0,73,201,250,32 -,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0 -,0,8,10,1,32,0,0,4,0,15,32,0,1,128,0,0,16,132,2,0,3,1,32,0,0,4,0,3, -130,16,0,0,8,0,1,32,0,0,4,0,0,120,252,0,74,152,255,0,74,152,255,0,46, -16,0,6,2,64,0,5,4,128,0,2,2,0,1,8,0,2,112,252,0,54,4,0,1,16,0,15,136, -250,0,74,152,255,0,74,152,255,0,47,128,0,0,4,32,0,0,16,0,8,64,0,8,16, -0,0,108,251,0,74,152,255,0,48,1,2,84,0,0,8,0,8,32,0,5,40,0,1,168,0,1, -250,0,23,72,0,23,66,5,0,0,8,4,128,0,8,2,0,0,64,5,0,1,32,32,1,0,1,248, -255,0,47,128,0,0,4,0,0,2,16,0,0,2,0,10,1,0,6,88,255,0,23,16,0,45,128, -0,2,68,251,0,23,32,0,3,16,0,17,64,0,5,1,0,18,248,255,0,74,152,255,0, -47,40,0,25,176,255,0,46,64,0,6,64,0,4,128,0,12,208,255,0,74,152,255,0 -,74,152,255,0,74,152,255,0,74,152,255,0,62,128,0,2,8,0,1,2,0,3,144, -253,0,47,4,0,25,216,251,0,74,152,255,0,74,152,255,0,74,152,255,0,27,8 -,0,15,64,0,0,8,0,4,128,0,20,88,255,0,47,16,0,1,2,0,6,4,128,0,7,1,0,1, -4,128,0,0,48,248,0,74,152,255,0,48,4,0,3,4,0,19,216,255,0,22,8,0,30,2 -,0,18,24,253,0,74,152,255,0,23,8,0,2,144,0,21,64,0,5,4,0,6,8,0,7,192, -250,0,45,2,8,0,2,1,0,1,72,0,3,2,64,0,0,128,0,4,128,0,2,2,64,0,0,64, -250,0,46,4,0,5,72,9,0,1,2,0,3,16,0,1,64,0,2,1,0,3,72,253,0,74,152,255 -,0,22,64,0,50,152,251,0,44,64,64,0,3,128,0,10,16,128,0,0,128,0,0,16,0 -,1,4,0,0,8,0,0,72,250,0,50,32,0,5,2,0,3,64,0,2,128,0,1,4,0,3,240,249, -0,22,32,0,3,16,0,15,64,168,16,0,2,212,0,1,128,0,2,8,0,3,48,64,0,0,128 -,0,0,18,0,0,1,4,0,0,8,0,0,232,255,0,45,208,2,138,0,3,4,2,0,0,68,68,32 -,0,1,36,6,128,0,0,16,0,0,128,64,0,0,4,128,0,2,8,255,0,46,1,8,0,3,16,0 -,2,1,0,3,1,0,4,2,0,0,2,64,0,2,160,249,0,53,1,0,5,136,0,0,32,0,0,4,0,1 -,8,0,5,232,254,0,28,8,0,44,24,255,0,74,152,255,0,44,64,0,0,34,0,1,96, -0,0,1,0,0,2,0,1,4,64,0,0,10,64,0,5,16,128,0,0,64,0,0,10,64,184,253,8, -0,46,8,0,25,186,253,16,0,22,8,0,2,16,0,45,144,254,0,23,128,0,3,64,0, -17,64,0,3,64,0,11,32,0,7,120,255,0,23,1,0,2,128,0,17,128,0,6,4,0,18,8 -,250,0,74,152,255,0,50,64,0,22,216,255,0,46,1,0,5,4,0,19,200,251,0,74 -,152,255,0,74,152,255,0,57,32,48,4,0,13,248,250,0,74,152,255,0,59,44, -0,13,240,251,0,58,4,149,16,0,12,8,251,0,58,16,24,0,13,128,254,0,57,96 -,128,36,0,13,16,253,0,58,128,40,0,13,56,255,0,58,5,16,0,13,216,255,0, -57,160,1,4,0,13,224,249,0,57,128,1,0,14,128,255,0,57,128,1,44,0,13, -232,251,8,0,56,128,1,148,16,0,12,106,248,0,58,72,24,0,14,251,0,57,96, -0,0,36,0,13,152,253,4,0,58,40,0,13,225,250,0,59,16,0,13,136,255,0,57, -32,4,6,0,13,152,251,0,57,128,0,15,144,255,0,59,44,0,13,240,251,8,0,57 -,40,148,16,0,12,242,250,0,58,136,24,0,13,136,255,0,57,96,0,0,36,0,13, -152,253,4,0,57,128,40,0,13,105,250,0,59,16,0,13,136,255,0,56,5,32,16, -4,0,13,168,253,0,56,8,0,1,1,0,13,128,254,0,56,11,0,1,44,0,13,200,248, -8,0,55,37,4,16,149,16,0,12,18,249,0,56,6,0,0,5,24,0,13,176,249,0,56,9 -,96,64,36,0,13,128,248,4,0,55,10,0,1,41,0,13,217,249,0,56,4,0,0,8,16, -0,13,72,251,0,56,1,32,0,0,4,0,13,232,248,0,58,64,0,14,152,251,0,56,11 -,0,1,44,0,13,200,248,8,0,55,37,4,0,0,149,16,0,12,18,248,0,56,6,0,0,8, -24,0,13,96,249,0,56,9,96,1,37,0,13,128,253,4,0,55,10,0,1,41,0,13,217, -249,0,56,4,64,8,16,0,13,8,255,0,56,1,32,4,38,0,13,168,250,0,59,16,0, -13,136,255,0,56,11,0,1,44,0,13,200,248,8,0,55,37,4,40,148,16,0,12,130 -,251,0,56,6,0,0,136,24,0,13,232,249,0,56,9,96,0,0,36,0,13,128,252,4,0 -,55,10,0,0,128,24,0,13,113,248,0,56,4,0,0,1,32,0,13,232,251,0,1,4,0, -53,1,32,8,0,14,104,252,0,58,65,0,14,136,251,0,56,11,0,16,160,252,8,0, -55,37,4,32,0,14,194,254,0,1,48,6,0,52,6,0,0,132,0,14,80,252,0,1,60,0, -53,9,96,0,15,32,251,4,0,0,48,0,53,10,0,16,225,251,0,1,48,0,53,4,64,4, -1,0,13,200,253,0,1,4,0,53,1,32,48,0,14,232,255,0,57,128,0,15,144,255, -0,56,11,0,16,160,252,8,0,55,37,4,4,1,0,13,146,253,0,1,48,6,0,52,6,0,0 -,16,0,14,152,253,0,1,60,0,53,9,96,128,0,14,168,251,4,0,0,48,0,53,10,0 -,0,128,0,14,105,251,0,1,48,0,53,4,0,0,4,0,14,152,248,0,74,152,255,32, -0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0, -0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0 -,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,152,255,0,74,152, -255,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0, -2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0 -,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,0,178,253,0,56 -,2,0,1,8,0,13,176,253,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0 -,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16, -0,0,2,64,0,0,8,0,1,32,0,1,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0, -0,200,250,4,0,73,201,250,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32, -0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0, -16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0 -,0,4,0,0,152,255,0,74,152,255,0,74,152,255,0,58,128,0,14,16,255,0,74, -152,255,0,74,152,255,0,74,152,255,0,59,16,8,0,13,255,0,74,152,255,0, -59,8,16,0,12,128,254,0,56,4,0,0,33,16,8,0,12,80,249,0,56,4,0,1,16,8,0 -,12,64,251,0,58,65,0,14,136,251,0,74,152,255,0,74,152,255,0,74,152, -255,16,0,56,64,0,15,140,255,0,74,152,255,0,74,152,255,4,0,0,4,0,71, -137,250,0,74,152,255,0,57,32,0,15,184,253,0,57,128,0,15,144,255,0,74, -152,255,0,56,8,0,1,32,0,13,176,255,0,74,152,255,0,74,152,255,0,74,152 -,255,0,58,64,0,14,152,251,0,74,152,255,0,74,152,255,0,74,152,255,0,74 -,152,255,0,57,128,64,0,14,144,251,0,57,32,0,15,184,253,0,74,152,255,0 -,74,152,255,0,55,16,4,0,2,8,0,12,80,250,0,74,152,255,128,0,54,32,2, -128,0,1,16,0,12,32,254,0,0,4,32,0,52,2,4,2,0,1,8,0,12,112,255,0,56,4, -2,0,1,8,0,12,80,249,0,1,16,0,71,152,254,0,74,152,255,0,74,152,255,0, -58,2,2,0,13,152,253,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152, -255,0,74,152,255,0,58,4,0,14,216,255,0,74,152,255,0,74,152,255,0,74, -152,255,0,48,66,8,0,1,33,0,1,132,0,17,128,251,0,48,4,0,24,152,251,0, -47,128,5,0,1,22,0,1,88,0,18,208,248,0,47,128,66,8,0,0,10,33,0,0,40, -132,0,17,32,251,0,48,3,0,1,12,0,1,48,0,18,32,251,0,48,4,0,1,16,0,1,64 -,0,18,200,254,0,48,5,0,1,20,0,1,80,0,18,216,250,0,48,2,0,1,8,0,1,32,0 -,18,48,255,0,48,64,8,0,1,33,0,1,132,0,17,128,249,0,74,152,255,0,47, -128,5,0,1,22,0,1,88,0,18,208,248,8,0,46,128,66,8,0,0,10,33,0,0,40,132 -,0,17,10,249,0,48,3,0,1,12,0,1,48,0,18,32,251,0,48,4,0,1,16,0,1,64,0, -18,200,254,4,0,47,5,0,1,20,0,1,80,0,18,137,255,0,48,2,0,1,8,0,1,32,0, -18,48,255,0,48,64,8,0,1,97,8,2,132,0,17,136,255,0,74,152,255,0,47,128 -,5,0,1,22,0,1,88,0,18,208,248,8,0,46,128,66,8,0,0,10,33,8,42,132,0,17 -,2,251,0,48,3,0,1,12,0,0,8,52,0,18,40,255,0,48,4,0,1,16,192,0,0,64,0, -18,64,250,4,0,47,5,0,1,20,0,1,80,0,18,137,255,0,48,2,0,1,8,0,0,2,36,0 -,18,16,249,0,48,64,8,0,1,97,8,0,0,132,0,17,136,253,0,53,128,0,19,24, -255,0,47,128,5,0,1,22,0,1,88,0,18,208,248,8,0,46,128,66,8,0,0,10,33, -64,40,132,0,17,74,249,0,48,3,0,1,12,0,0,160,48,0,18,128,251,0,48,4,0, -1,16,192,0,0,64,0,18,64,250,4,0,47,5,0,1,20,0,0,128,80,0,18,9,255,0, -48,2,0,1,8,0,0,34,32,0,18,48,253,0,48,64,8,0,1,97,32,0,0,132,0,6,66,0 -,9,224,251,0,54,1,0,18,152,254,0,47,128,5,0,1,22,0,1,89,0,6,48,0,10, -224,249,8,0,46,128,66,8,0,0,10,33,8,40,132,0,5,16,0,10,18,249,0,48,3, -0,1,12,0,0,16,49,0,6,192,24,0,9,104,251,0,48,4,0,1,16,192,0,0,64,0,6, -224,0,10,160,250,4,0,47,5,0,1,20,0,1,80,0,6,192,0,10,73,255,0,48,2,0, -1,8,128,18,34,0,6,192,0,10,72,255,0,45,132,0,1,64,8,0,1,97,16,0,0,132 -,0,0,160,1,0,14,160,251,0,54,1,0,18,152,254,0,44,96,0,1,128,5,0,1,22, -0,1,90,0,1,128,129,0,14,32,250,8,0,43,32,0,1,128,66,8,0,0,10,33,0,0, -40,132,0,0,128,5,0,14,114,249,0,44,128,145,0,1,3,0,1,12,0,0,32,49,0,2 -,8,1,0,13,8,251,0,44,192,1,0,1,4,0,1,16,192,0,0,64,0,1,224,1,0,14,248 -,253,4,0,43,128,1,0,1,5,0,1,20,0,1,80,0,2,128,0,14,129,254,0,44,128,1 -,0,1,2,0,1,8,0,0,34,36,0,1,128,1,0,14,168,248,0,48,64,8,0,1,97,64,0,0 -,132,0,6,66,2,1,0,7,176,250,0,65,16,0,7,136,255,0,47,128,5,0,1,22,0,1 -,88,0,6,48,0,1,16,0,7,240,248,8,0,46,128,66,8,0,0,10,33,32,42,132,0,5 -,16,0,1,1,0,7,42,250,0,48,3,0,1,12,0,0,32,48,0,6,192,8,0,0,9,0,7,80, -250,0,48,4,0,1,16,192,0,0,66,0,6,224,128,6,0,8,200,248,4,0,47,5,0,1, -20,0,1,80,0,6,192,0,10,73,255,0,48,2,0,1,8,128,18,33,0,6,192,0,0,144, -8,0,7,200,253,0,12,32,0,34,64,216,0,1,97,0,0,66,132,0,6,66,0,3,33,0,4 -,24,251,0,49,192,0,3,32,0,18,48,249,0,47,128,5,192,0,0,22,0,1,88,0,6, -48,0,3,24,0,5,232,253,8,0,46,128,66,200,0,0,10,33,8,41,132,0,5,16,0,3 -,8,0,5,26,252,0,12,128,17,1,0,32,3,0,0,66,12,0,0,16,50,0,6,192,0,3,96 -,4,0,4,216,249,0,12,224,1,0,33,4,48,0,0,16,192,0,0,64,0,6,224,64,0,2, -112,32,0,4,184,252,4,0,11,128,1,0,33,5,0,1,20,0,1,49,0,6,192,0,3,96,0 -,5,49,254,0,12,128,1,0,33,2,0,1,8,0,0,18,64,0,6,192,0,3,96,0,5,184, -253,0,74,152,255,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4, -128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0,16,0,0 -,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0 -,0,152,255,0,74,152,255,40,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0 -,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,15,32,0,0,4,128,0,0, -16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0 -,0,4,0,0,178,253,0,44,64,32,0,1,129,0,1,4,2,0,0,16,8,0,5,32,16,0,2,16 -,8,0,4,120,249,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128, -0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,0,17,4,0,1,16,0,1,64,0,2,1,32,0, -0,4,128,0,2,2,64,0,2,1,32,0,0,4,0,0,32,253,4,0,73,201,250,32,0,0,4, -128,0,0,16,0,0,2,64,0,0,8,0,0,1,32,0,0,4,128,0,0,16,0,0,2,64,0,0,8,0, -0,1,32,0,0,4,0,17,4,0,1,16,0,1,64,0,2,1,32,0,0,4,128,0,2,2,64,0,2,1, -32,0,0,4,0,0,32,253,0,74,152,255,0,74,152,255,0,44,128,0,3,64,0,6,128 -,0,3,64,0,3,32,0,5,80,249,0,58,32,0,14,152,253,0,74,152,255,0,74,152, -255,0,48,2,1,0,1,4,0,0,32,16,0,17,232,254,0,74,152,255,0,48,181,2,0,0 -,128,10,0,0,16,32,0,17,56,250,0,1,16,0,44,128,2,5,0,0,10,20,161,34,16 -,0,9,1,0,6,16,254,0,1,32,0,45,2,1,0,0,8,4,129,32,16,0,8,128,0,7,112, -253,0,74,152,255,0,74,152,255,0,74,152,255,0,53,64,0,7,16,0,3,128,0,5 -,64,255,16,0,51,64,74,4,0,18,164,249,2,0,72,128,48,253,0,74,152,255, -16,0,73,204,251,0,74,152,255,0,52,128,136,1,0,7,64,0,9,216,250,0,13,4 -,0,50,2,0,7,248,253,0,74,152,255,0,74,152,255,0,74,152,255,0,74,152, -255,0,74,152,255,0,53,4,0,8,1,0,9,216,250,0,74,152,255,0,74,152,255,0 -,74,152,255,0,74,152,255,0,52,64,0,0,4,0,9,8,0,7,144,255,0,44,96,0,1, -128,0,0,4,0,0,2,16,0,0,8,64,0,5,16,0,0,4,0,1,8,0,5,96,248,0,74,152, -255,0,74,152,255,0,48,2,1,32,8,4,0,1,16,4,2,0,1,8,0,3,64,0,7,232,250, -0,74,152,255,0,48,181,2,84,212,10,0,1,42,42,4,0,1,16,0,0,128,22,0,0, -128,0,7,192,254,0,13,1,0,31,1,128,2,64,4,10,20,0,2,228,10,0,1,129,8,0 -,3,160,8,0,5,152,251,0,48,2,64,0,0,8,4,0,2,1,2,0,7,128,0,6,72,250,0, -12,128,0,60,144,255,0,74,152,255,0,74,152,255,0,74,152,255,0,49,8,0,1 -,32,1,1,128,0,0,64,0,15,192,249,0,74,152,255,0,74,152,255,0,74,152, -255,0,74,152,255,0,53,7,0,19,232,248,0,52,128,128,2,0,8,32,0,8,144, -255,0,74,152,255,0,74,152,255,56,0,0,16,0,3,8,0,14,8,1,0,2,132,0,16, -68,132,0,5,8,2,0,4,136,0,12,214,255,0,1,32,0,3,16,0,5,1,0,1,4,0,5,1,0 -,2,128,0,16,5,128,0,3,82,0,0,8,0,4,128,0,0,16,0,11,144,254,0,74,152, -255,0,22,128,0,3,64,0,16,2,64,0,3,32,0,0,4,0,4,64,0,0,8,0,11,240,251, -0,0,22,192,2,72,0,0,9,96,1,42,128,4,144,0,0,22,64,2,88,0,0,9,32,1,42, -0,0,5,144,0,0,18,128,2,0,15,20,128,2,72,0,0,9,64,1,40,128,4,144,0,0, -18,128,2,80,128,10,80,1,42,64,5,168,0,0,21,160,2,240,255,128,12,144,1 -,48,0,0,6,200,128,19,0,0,3,96,128,12,128,1,50,0,0,6,192,128,19,48,3, -96,0,0,12,148,1,0,14,192,12,152,1,48,0,0,6,204,64,25,0,0,3,96,0,0,12, -148,129,50,208,4,154,128,19,112,2,77,160,9,56,1,24,253,255,255,0}; -typedef struct{const unsigned char*l98;unsigned char l129;unsigned -char l160;}l163;static unsigned short l695(l163*l37,const unsigned -char*l98){unsigned short w;w= *l98++;w|= *l98++<<8;l37->l98=l98;l37-> -l129=0;l37->l160=0;return w;}static unsigned char l293(l163*l37){{if( -!(l37->l160>0))goto l651;{--l37->l160;return l37->l129;}l651:;}l37-> -l129= *l37->l98++;{if(!(l37->l129==0))goto l639;l37->l160= *l37->l98 -++;l639:;}return l37->l129;}static int l529(s*b){const unsigned char* -l71=0;unsigned short w;unsigned short q;unsigned char r;l163 l37;int c -;q=4|32|64|128; * (volatile unsigned short* )((b)->g+1024)=q|2|1; * ( -volatile unsigned short* )((b)->g+1028)=q; * (volatile unsigned short - * )((b)->g+1028)=(q^=(32|4));{c=0;l632:if(!(( * (volatile unsigned -short* )((b)->g+1028)&(8|16))))goto l622;goto l618;l624:c++;goto l632 -;l618:{{if(!(c==3))goto l613;{; * (volatile unsigned short* )((b)->g+ -1024)=255;return 1;}l613:;}}goto l624;l622:;}{c=0;l607:if(!(c<30))goto -l267;goto l266;l604:c++;goto l607;l266:{ * (volatile unsigned short* )( -(b)->g+1028)=q;}goto l604;l267:;} * (volatile unsigned short* )((b)-> -g+1028)=(q|=4);{c=0;l264:if(!(( * (volatile unsigned short* )((b)->g+ -1028)&(8|16))!=8))goto l260;goto l259;l262:c++;goto l264;l259:{{if(!( -c==60))goto l255;{; * (volatile unsigned short* )((b)->g+1024)=255; -return 1;}l255:;}}goto l262;l260:;}{c=0;l241:if(!(c<15))goto l238; -goto l818;l239:c++;goto l241;l818:{ * (volatile unsigned short* )((b)-> -g+1028)=q;}goto l239;l238:;}{if(!(!b->l71[(b->l180= * (volatile -unsigned short* )((b)->g+1028)>>(8+5))]))goto l806;{switch(b->l180){ -case 1:l71=l451;break;case 2:l71=l295;break;case 3:l71=l527;break; -case 6:l71=l649;break;case 7:l71=l565;break;default:; * (volatile -unsigned short* )((b)->g+1024)=255; * (volatile unsigned short* )((b)-> -g+1028)=32|64|128;return 2;break;}}goto l786;l806:;{l71=b->l71[b-> -l180];}l786:;}w=l695(&l37,l71);;{;l774:if(!(w>0))goto l765;goto l750; -l734:--w;goto l774;l750:{r=l293(&l37);{if(!(( * (volatile unsigned -short* )((b)->g+1028)&8)==0))goto l730;{;goto l213;}l730:;}{if(!(( * ( -volatile unsigned short* )((b)->g+1028)&16)))goto l726;{{c=0;l716:if( -!(c<20))goto l638;goto l636;l643:++c;goto l716;l636:( * (volatile -unsigned short* )((b)->g+1028)=(q|2), * (volatile unsigned short* )(( -b)->g+1028)=q);goto l643;l638:;}{if(!(( * (volatile unsigned short* )( -(b)->g+1028)&8)==0))goto l631;{;goto l213;}l631:;}; * (volatile -unsigned short* )((b)->g+1024)=255;return 0;}l726:;}{{if(!(r&1))goto -l623;q|=1;goto l626;l623:;q&=~1;l626:;} * (volatile unsigned short* )( -(b)->g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};{{if(!(r&2))goto l625;q -|=1;goto l615;l625:;q&=~1;l615:;} * (volatile unsigned short* )((b)-> -g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};{{if(!(r&4))goto l619;q -|=1;goto l617;l619:;q&=~1;l617:;} * (volatile unsigned short* )((b)-> -g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};{{if(!(r&8))goto l593;q -|=1;goto l590;l593:;q&=~1;l590:;} * (volatile unsigned short* )((b)-> -g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};{{if(!(r&16))goto l588;q -|=1;goto l587;l588:;q&=~1;l587:;} * (volatile unsigned short* )((b)-> -g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};{{if(!(r&32))goto l585;q -|=1;goto l576;l585:;q&=~1;l576:;} * (volatile unsigned short* )((b)-> -g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};{{if(!(r&64))goto l580;q -|=1;goto l579;l580:;q&=~1;l579:;} * (volatile unsigned short* )((b)-> -g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};{{if(!(r&128))goto l578; -q|=1;goto l577;l578:;q&=~1;l577:;} * (volatile unsigned short* )((b)-> -g+1028)=q;( * (volatile unsigned short* )((b)->g+1028)=(q|2), * ( -volatile unsigned short* )((b)->g+1028)=q);};}goto l734;l765:;};l213: -;return 3;}static unsigned char u(s*b,unsigned char z){unsigned short -l93=z|65280|b->l137;unsigned char r; * (volatile unsigned short* )((b -)->g+1024)=255; * (volatile unsigned short* )((b)->g+1028)=l93; * ( -volatile unsigned short* )((b)->g+1024)=255; * (volatile unsigned -short* )((b)->g+1028)=l93^128; * (volatile unsigned short* )((b)->g+ -1024)=255;r= * (volatile unsigned short* )((b)->g+1028)>>8; * ( -volatile unsigned short* )((b)->g+1028)=l93;return r;}static void l(s - *b,unsigned char z,unsigned char r){unsigned short l93=z|r<<8|b-> -l137; * (volatile unsigned short* )((b)->g+1024)=65535; * (volatile -unsigned short* )((b)->g+1028)=l93; * (volatile unsigned short* )((b)-> -g+1024)=65535; * (volatile unsigned short* )((b)->g+1028)=l93^64; * ( -volatile unsigned short* )((b)->g+1024)=65535; * (volatile unsigned -short* )((b)->g+1028)=l93; * (volatile unsigned short* )((b)->g+1024)= -255;}static unsigned char l57(e*a,unsigned char z){l(a->d,a->l48,z); -return u(a->d,a->d->l83);}static void i(e*a,unsigned char z,unsigned -char r){l(a->d,a->l48,z);l(a->d,a->d->l83,r);}static unsigned char l90 -(e*a,unsigned char z,unsigned char l214){unsigned char r;l(a->d,a-> -l48,z);l(a->d,a->d->l83,l214);l(a->d,a->l48,z);r=u(a->d,a->d->l83)& -l214;l(a->d,a->l48,z);l(a->d,a->d->l83,r);return r;}static void l176( -s*b,unsigned char r,unsigned char l27){int c;l(b,40,l27);{c=0;l553:if -(!(c<8))goto l549;goto l547;l552:++c;goto l553;l547:{{if(!((r>>c)&1))goto -l544;{l(b,40,l27|4);l(b,40,l27|4);l(b,40,l27|4);l(b,40,l27|4);l(b,40, -l27|4|8);l(b,40,l27|4|8);l(b,40,l27|4|8);l(b,40,l27|4|8);}goto l541; -l544:;{l(b,40,l27);l(b,40,l27);l(b,40,l27);l(b,40,l27);l(b,40,l27|8); -l(b,40,l27|8);l(b,40,l27|8);l(b,40,l27|8);}l541:;}}goto l552;l549:;}l -(b,40,l27);}static void l106(e*a,unsigned char z,unsigned char r){ -unsigned char l27=16<p;l(a->d,40,0);l176(a->d,(z<<1)|0,l27);l176( -a->d,r,l27);l(a->d,40,0);}static unsigned char l603(e*a,unsigned char -z){unsigned char l27=16<p;unsigned char r=0;int c;l(a->d,40,0); -l176(a->d,(z<<1)|1,l27);{c=0;l539:if(!(c<8))goto l537;goto l534;l532: -++c;goto l539;l534:{l(a->d,40,l27|8);{if(!(u(a->d,a->l44)&128))goto -l458;r|=1<d,40,l27);}goto l532;l537:;}l(a->d,40,0); -return r;}unsigned long cp_regio(e*a,int l194,int z,unsigned long r){ -switch(l194){case 0:r=u(a->d,(unsigned char)z);break;case 1:r=l57(a,( -unsigned char)z);break;case 2:r=l90(a,(unsigned char)z,255);break; -case 3:r=l603(a,16);break;case 4:r=u(a->d,(unsigned char)z);l(a->d,( -unsigned char)z,(unsigned char)r);break;case 9:l(a->d,(unsigned char)z -,(unsigned char)r);r=u(a->d,(unsigned char)z);break;case 5:l(a->d,( -unsigned char)z,(unsigned char)r);break;case 6:l106(a,16,(unsigned -char)r);break;case 7: * (unsigned long* )(a->x+z)=r;r= * (unsigned -long* )(a->x+z);break;case 8:i(a,(unsigned char)z,(unsigned char)r);r -=l57(a,(unsigned char)z);break;}return r;}static unsigned short l521( -s*b){int c;unsigned short r;unsigned short l222; * (volatile unsigned -short* )((b)->g+1024)=255;{c=255;l366:if(!(c>=0))goto l365;goto l370; -l371:c--;goto l366;l370:{ * (volatile unsigned short* )((b)->g+1028)= -c|32; * (volatile unsigned short* )((b)->g+1024)=255;r=( * (volatile -unsigned short* )((b)->g+1028))>>8;l222=((c&(~32))|((~(c<<1))&32));{ -if(!(r!=l222))goto l372;{ * (volatile unsigned short* )((b)->g+1028)= -255;return(c|(r<<8));}l372:;}}goto l371;l365:;} * (volatile unsigned -short* )((b)->g+1028)=255;return 0;}unsigned short cp_init(s*b,int p, -unsigned char*g){unsigned char l56;unsigned short l224;e*a;b->g=g;b-> -p=(unsigned char)p;b->l30=0;b->l174=0; * (volatile unsigned long* )(( -b)->g+8)=262144; * (volatile unsigned short* )((b)->g+1032)=65535; * ( -volatile unsigned short* )((b)->g+1024)=0;b->l125=4;b->l116=0;b->l137 -=192;b->l83=38;switch(l529(b)){case 0:b->l137|=32;;{if(!((l224=l521(b -))))goto l373;return l224;l373:;}b->l83=30;break;case 1:l56=u(b,0);{ -if(!((l56&56)!=40&&(l56&128)==(u(b,0)&128)))goto l359;{return 65535;} -l359:;}break;case 2:case 3:default:return 65535;break;}l56=u(b,0); -switch(l56&56){default:b->f=0;strcpy(b->l39,"\x55\x6e\x6b\x6e\x6f\x77" -"\x6e");break;case 56:{if(!((l56&64)!=(u(b,0)&64)))goto l375;{b->f=12 -;strcpy(b->l39,"\x54\x61\x75\x2d\x50\x43\x49\x2d\x4c");}goto l376; -l375:;{if(!(l56&64))goto l397;{b->f=6;strcpy(b->l39,"\x54\x61\x75\x2d" -"\x50\x43\x49\x34");}goto l333;l397:;{b->f=1;strcpy(b->l39,"\x54\x61" -"\x75\x2d\x50\x43\x49");}l333:;}l376:;}break;case 8:{if(!(l56&64))goto -l399;{b->f=10;strcpy(b->l39,"\x54\x61\x75\x2d\x50\x43\x49\x34\x2d\x45" -"\x31\x2f\x58");}goto l400;l399:;{b->f=5;strcpy(b->l39,"\x54\x61\x75" -"\x2d\x50\x43\x49\x2d\x45\x31");}l400:;}break;case 16:{if(!(l56&64))goto -l401;{b->f=7;strcpy(b->l39,"\x54\x61\x75\x2d\x50\x43\x49\x34\x2d\x47" -"\x37\x30\x33\x2f\x58");}goto l330;l401:;{b->f=4;strcpy(b->l39,"\x54" -"\x61\x75\x2d\x50\x43\x49\x2d\x47\x37\x30\x33");}l330:;}break;case 24 -:{if(!(l56&64))goto l403;{b->f=10;strcpy(b->l39,"\x54\x61\x75\x2d\x50" -"\x43\x49\x34\x2d\x32\x45\x31\x2f\x58");}goto l404;l403:;{b->f=9; -strcpy(b->l39,"\x54\x61\x75\x2d\x50\x43\x49\x2d\x32\x45\x31");}l404:; -}break;case 32:b->f=11;strcpy(b->l39,"\x54\x61\x75\x2d\x50\x43\x49" -"\x2d\x34\x45\x31");break;case 40:b->f=2;strcpy(b->l39,"\x54\x61\x75" -"\x2d\x50\x43\x49\x2d\x45\x33");break;case 48:b->f=3;strcpy(b->l39,"" -"\x54\x61\x75\x2d\x50\x43\x49\x2d\x48\x53\x53\x49");break;}{if(!(b->f -==2))goto l405;{switch(l56&6){default:break;case 6:b->k->f=4;b->l80= -34368000;break;case 4:strcpy(b->l39,"\x54\x61\x75\x2d\x50\x43\x49\x2d" -"\x54\x33");b->k->f=7;b->l80=44736000;break;case 2:strcpy(b->l39,"" -"\x54\x61\x75\x2d\x50\x43\x49\x2d\x53\x54\x53\x2d\x31");b->k->f=8;b-> -l80=51840000;break;}}goto l406;l405:;{switch(l56&6){default:break; -case 6:b->l80=32768000;break;case 4:b->l80=16384000;break;}}l406:;}{a -=b->k;l428:if(!(ak+4))goto l430;goto l431;l429:++a;goto l428;l431 -:{a->d=b;l189(a);}goto l429;l430:;}return 0;}static void l68(e*a){ -unsigned char l74=1;{if(!(a->f!=4&&a->f!=7&&a->f!=8))goto l432;return -;l432:;}{if(!(a->l61))goto l433;l74|=2;l433:;}{if(!(a->l169))goto l434 -;l74|=8;l434:;}{if(!(a->l178))goto l435;l74|=48;goto l436;l435:;{if(! -(a->l86))goto l437;{switch(a->f){case 4:l74|=16;break;case 7:l74|=32; -break;case 8:default:break;}}l437:;}l436:;}{if(!(a->l156))goto l459; -l74|=128;goto l274;l459:;{if(!(a->l53))goto l461;l74|=64;l461:;}l274: -;}{if(!(a->l167))goto l270;l74|=4;l270:;}l(a->d,8,l74);}static void -l189(e*a){a->p=a-a->d->k;a->y=0;a->l146=0;a->l145=0;a->l164=0;a->l177 -=0;a->l53=0;a->l156=0;a->l61=0;a->l134=0;a->j=~1;a->l186=0;a->l46=0;a -->l58=0;a->v=a->p;a->l33=0;a->l41=0;a->l26=0;a->l38=0;a->l86=0;a-> -l178=0;a->l169=0;a->l122=1;switch(a->d->f){default:a->f=0;break;case 6 -:a->f=1;break;case 11:a->f=3;break;case 8:a->f=2;break;case 10:a->f=a -->p<2?3:1;break;case 9:a->f=a->p<2?3:6;break;case 7:a->f=a->p<2?2:1; -break;case 1:a->f=a->p<2?1:0;break;case 5:a->f=a->p<2?3:0;break;case 4 -:a->f=a->p<2?2:0;break;case 2:a->f=a->p==0?a->f:0;break;case 3:a->f=a -->p==0?5:0;break;case 12:a->f=a->p==0?1:0;break;}{if(!(a->f==6))goto -l463;a->j=0;l463:;}a->x=a->d->g+a->p*128+256;switch(a->p){case 0:a-> -l123=(unsigned long* )(a->d->g+20);a->l124=(unsigned long* )(a->d->g+ -36);a->l82=(unsigned long* )(a->d->g+80);a->l130=(unsigned long* )(a -->d->g+84);a->l102=(unsigned long* )(a->d->g+152);a->l135=(unsigned -long* )(a->d->g+200);a->l75=(unsigned long* )(a->d->g+88);a->l132=( -unsigned long* )(a->d->g+176);a->l147=(unsigned long* )(a->d->g+224); -a->l73=4;a->l81=4;a->l62=32;a->l44=36;a->l48=32;a->l64=12;break;case 1 -:a->l123=(unsigned long* )(a->d->g+24);a->l124=(unsigned long* )(a->d -->g+40);a->l82=(unsigned long* )(a->d->g+92);a->l130=(unsigned long* )( -a->d->g+96);a->l102=(unsigned long* )(a->d->g+156);a->l135=(unsigned -long* )(a->d->g+204);a->l75=(unsigned long* )(a->d->g+100);a->l132=( -unsigned long* )(a->d->g+180);a->l147=(unsigned long* )(a->d->g+228); -a->l73=5;a->l81=5;a->l62=34;a->l44=38;a->l48=34;a->l64=14;break;case 2 -:a->l123=(unsigned long* )(a->d->g+28);a->l124=(unsigned long* )(a->d -->g+44);a->l82=(unsigned long* )(a->d->g+104);a->l130=(unsigned long* -)(a->d->g+108);a->l102=(unsigned long* )(a->d->g+160);a->l135=( -unsigned long* )(a->d->g+208);a->l75=(unsigned long* )(a->d->g+112);a -->l132=(unsigned long* )(a->d->g+184);a->l147=(unsigned long* )(a->d -->g+232);a->l73=6;a->l81=6;a->l62=48;a->l44=52;a->l48=48;a->l64=13; -break;case 3:a->l123=(unsigned long* )(a->d->g+32);a->l124=(unsigned -long* )(a->d->g+48);a->l82=(unsigned long* )(a->d->g+116);a->l130=( -unsigned long* )(a->d->g+120);a->l102=(unsigned long* )(a->d->g+164); -a->l135=(unsigned long* )(a->d->g+212);a->l75=(unsigned long* )(a->d -->g+124);a->l132=(unsigned long* )(a->d->g+188);a->l147=(unsigned long - * )(a->d->g+236);a->l73=7;a->l81=7;a->l62=50;a->l44=54;a->l48=50;a-> -l64=15;break;}{if(!(a->d->l83==30))goto l465;{a->l38=1;switch(a->p){ -case 0:a->l62=16;a->l34=20;a->l48=24;break;case 1:a->l62=18;a->l34=21 -;a->l48=26;break;case 2:a->l62=17;a->l34=22;a->l48=25;break;case 3:a -->l62=19;a->l34=23;a->l48=27;break;}}l465:;}l68(a);{if(!(a->f==4||a-> -f==7||a->f==8))goto l468;{l(a->d,14,(2048>>8)&255);l(a->d,15,(2048>> -16)&255);}l468:;}}static void l157(e*a){unsigned char l139;{if(!(!a-> -l34))goto l472;return;l472:;}{if(!(a->d->k[a->v].l31))goto l467;l139= -a->p;goto l469;l467:;l139=a->v;l469:;}{if(!(!a->l31&&!a->l52))goto -l824;l139|=4;l824:;}l(a->d,a->l34,l139);}void cp_hard_reset(s*b){l(b, -0,128);}static void l741(e*a){int c;i(a,172,1);{c=0;l826:if(!(c<=255))goto -l827;goto l828;l829:c++;goto l826;l828:{{if(!(c!=172))goto l414;i(a, -192,0);l414:;}}goto l829;l827:;}i(a,172,0);{c=0;l831:if(!(c<=255))goto -l832;goto l833;l834:c++;goto l831;l833:{{if(!(c!=172))goto l855;i(a, -192,0);l855:;}}goto l834;l832:;}}void cp_reset(s*b,l172*l60,unsigned -long l69){e*a;{if(!(!b->g))goto l856;return;l856:;}{if(!(l60))goto -l857;memset(l60,0,sizeof(l172));l857:;} * (volatile unsigned long* )( -(b)->g+8)=262144; * (volatile unsigned short* )((b)->g+1032)=65535; * -(volatile unsigned short* )((b)->g+1024)=255; * (volatile unsigned -short* )((b)->g+1028)=255; * (volatile unsigned long* )((b)->g+768)= -4194304;l(b,0,b->l125&~4);cp_led(b,0); * (volatile unsigned long* )(( -b)->g+12)=(128/32-1)<<28|(128/32-1)<<24|(128/32-1)<<20|(128/32-1)<<16 -|(128/32-1)<<12|(128/32-1)<<8|(128/32-1)<<4|(128/32-1); * (volatile -unsigned long* )((b)->g+16)=(128/32-1)<<16; * (volatile unsigned long - * )((b)->g+68)=1108361216; * (volatile unsigned long* )((b)->g+72)= -3740719104UL; * (volatile unsigned long* )((b)->g+52)=404232216; * ( -volatile unsigned long* )((b)->g+76)=7;cp_set_mux(b,b->l30);{if(!(l60 -))goto l858;{b->l94=l60->l94; * (volatile unsigned long* )((b)->g+64)= -l69+((char* )b->l94-(char* )l60);}l858:;}b->l115=0;{a=b->k;l859:if(!( -ak+4))goto l861;goto l862;l860:++a;goto l859;l862:{{if(!(a->f==2))goto -l863;l165(a);goto l864;l863:;{if(!(a->f==3))goto l441;l210(a);l441:;} -l864:;}l157(a);a->l35=0; * (volatile unsigned long* )((a)->x+8)=a-> -l35;a->l36=0; * (volatile unsigned long* )((a)->x+16)=a->l36;a->l144= -1; * (volatile unsigned long* )((a)->x+84)=a->l70=~0; * (volatile -unsigned long* )((a)->x+28)=520552703; * (volatile unsigned long* )(( -a)->x+32)=520552703;{if(!(l60))goto l885;{a->l155=l60->l155[a->p];a-> -l97=l60->l97[a->p];( * (a)->l123)=l69+((char* )a->l155-(char* )l60);( - * (a)->l124)=l69+((char* )a->l97-(char* )l60);;}l885:;}a->l608=0;a-> -l104=0;( * (a)->l82)=0;( * (a)->l75)=0;}goto l860;l861:;} * (volatile -unsigned long* )((b)->g+0)=4279239169UL;{a=b->k;l887:if(!(ak+4))goto -l443;goto l889;l223:++a;goto l887;l889:{{if(!(a->f!=3||!a->l38||l57(a -,15)!=163))goto l891;goto l223;l891:;}l741(a);}goto l223;l443:;}}void -cp_stop_chan(e*a){unsigned long l175=0;unsigned long l96=0;int c;{if( -!(!a->f))goto l892;return;l892:;}outb(128,0);a->l35&=~2147483648UL; * -(volatile unsigned long* )((a)->x+8)=a->l35;{c=0;l893:if(!(c<200))goto -l913;goto l912;l446:c++;goto l893;l912:outb(128,0);goto l446;l913:;}{ -if(!(a->l36&134217728))goto l584;{;a->l36&=~134217728; * (volatile -unsigned long* )((a)->x+16)=a->l36;l175|=4194304;l96|=65536;}l584:;} -outb(128,0);{if(!(( * (a)->l75)!=0))goto l653;{;{c=0;l911:if(!(c<4))goto -l354;goto l353;l290:++c;goto l911;l353: * (volatile unsigned long* )& -a->l42[c].w=2147483648UL|1073741824;goto l290;l354:;}l175|=2097152; -l96|=16777216;}l653:;}outb(128,0); * (volatile unsigned long* )((a)-> -x+0)=l96;outb(128,0);( * (a)->l82)=l175;outb(128,0); * (volatile -unsigned long* )((a->d)->g+0)=513;outb(128,0);a->l70=~0;}void -cp_start_chan(e*a,int l208,int l191,l211*l49,unsigned long l69){int c -;unsigned long l96=0;{if(!(!a->f))goto l583;return;l583:;}{if(!(l49))goto -l531;{;a->l32=l49->l32;a->l42=l49->l42;{c=0;l464:if(!(c<64))goto l336 -;goto l335;l273:++c;goto l464;l335:a->l67[c]=l69+((char* )(a->l32+c)- -(char* )l49);goto l273;l336:;}{c=0;l320:if(!(c<4))goto l288;goto l257 -;l305:++c;goto l320;l257:a->l154[c]=l69+((char* )(a->l42+c)-(char* )l49 -);goto l305;l288:;};{c=0;l234:if(!(c<64))goto l546;goto l514;l906:++c -;goto l234;l514: * (volatile unsigned long* )&a->l32[c].l88=a->l67[(c -+1)%64];goto l906;l546:;}{c=0;l462:if(!(c<4))goto l312;goto l351;l319 -:++c;goto l462;l351: * (volatile unsigned long* )&a->l42[c].l88=a-> -l154[(c+1)%4];goto l319;l312:;}}l531:;}{if(!(a->d->f==2))goto l265;{a -->l35|=12; * (volatile unsigned long* )((a)->x+8)=a->l35;a->l43= -2097152;}l265:;}a->l43|=574914560; * (volatile unsigned long* )((a)-> -x+12)=a->l43;cp_set_phony(a,a->l52); * (volatile unsigned long* )((a)-> -x+64)=32768|(1664/32-1);{if(!(a->f==2))goto l334;l165(a);l334:;}a-> -l35|=2147483648UL; * (volatile unsigned long* )((a)->x+8)=a->l35; -cp_set_nrzi(a,a->l145);cp_set_dir(a,a->v);cp_set_baud(a,a->y); -cp_set_dtr(a,0);cp_set_rts(a,0);( * (a)->l75)=0;{c=0;l328:if(!(c<64))goto -l902;goto l790;l297:++c;goto l328;l790:{{if(!(l49))goto l752;{a->l136 -[c]=l49->l751[c];a->l207[c]=l69+((char* )a->l136[c]-(char* )l49); * ( -volatile unsigned long* )&a->l32[c].w=1664<<16; * (volatile unsigned -long* )&a->l32[c].l99=a->l207[c];}l752:;} * (volatile unsigned long* )& -a->l32[c].t=0;}goto l297;l902:;}{c=0;l718:if(!(c<4))goto l696;goto -l674;l595:++c;goto l718;l674:{{if(!(l49))goto l664;{a->l151[c]=l49-> -l589[c];a->l197[c]=l69+((char* )a->l151[c]-(char* )l49); * (volatile -unsigned long* )&a->l42[c].w=2147483648UL|1073741824; * (volatile -unsigned long* )&a->l42[c].l99=a->l197[c];}l664:;} * (volatile -unsigned long* )&a->l42[c].t=0;a->l79[c]=0;}goto l595;l696:;}{if(!( -l49))goto l652;;l652:;}a->l28=0;a->l51=0;a->l45=a->l51; * (volatile -unsigned long* )&a->l32[64-1].l88=a->l67[64-1];{if(!(l208))goto l640; -{{if(!(!a->l144))goto l545;{a->l70&=~65536;}goto l538;l545:;{a->l70&= -~65536; * (volatile unsigned long* )((a)->x+84)=a->l70;}l538:;}l96|= -16777216;}l640:;}{if(!(l191))goto l528;{a->l36|=134217728; * ( -volatile unsigned long* )((a)->x+16)=a->l36;{if(!(!a->l144))goto l517 -;{a->l70&=~2;}goto l513;l517:;{a->l70&=~2; * (volatile unsigned long* -)((a)->x+84)=a->l70;}l513:;}l96|=65536;{if(!(a->f==2))goto l497;l(a-> -d,a->l44,255);l497:;};( * (a)->l130)=a->l67[a->l28];( * (a)->l82)= -1048576; * (volatile unsigned long* )((a->d)->g+0)=513;}l528:;} * ( -volatile unsigned long* )((a)->x+0)=l96;}void cp_stop_e1(e*a){{if(!(a -->f!=3||a->l133==0))goto l460;return;l460:;}a->l133=0;i(a,23,0);}void -cp_start_e1(e*a){{if(!(a->f!=3||a->l133==1))goto l364;return;l364:;}a -->l133=1;i(a,23,16);}void cp_set_dtr(e*a,int m){a->l193=(m!=0);{if(!( -a->l193))goto l361;a->l33|=1;goto l357;l361:;a->l33&=~1;l357:;}l(a->d -,a->l73,a->l33);}void cp_set_rts(e*a,int m){a->l218=(m!=0);{if(!(a-> -l218))goto l327;a->l43|=1048576;goto l324;l327:;a->l43&=~1048576;l324 -:;} * (volatile unsigned long* )((a)->x+12)=a->l43;}int cp_get_dsr(e* -a){{if(!(a->f!=1))goto l318;return 0;l318:;}return(u(a->d,a->l81)&1)!= -0;}int cp_get_cd(e*a){{if(!(a->f==0))goto l315;return 0;l315:;}{if(!( -a->d->f==2))goto l311;return(u(a->d,9)&2)==0;l311:;}{if(!(a->f==6))goto -l308;{ * (volatile unsigned long* )((a->d->k+a->v)->x+4);return( * ( -volatile unsigned long* )((a->d->k+a->v)->x+4)&2097152)==0;}goto l303 -;l308:;{ * (volatile unsigned long* )((a)->x+4);return( * (volatile -unsigned long* )((a)->x+4)&2097152)==0;}l303:;}}int cp_get_cts(e*a){{ -if(!(a->f!=1))goto l300;return 0;l300:;}return(u(a->d,a->l81)&8)!=0;} -int cp_get_txcerr(e*a){{if(!(a->f!=1))goto l296;return 0;l296:;} -return(u(a->d,a->l81)&16)!=0;}int cp_get_rxcerr(e*a){{if(!(a->f!=1))goto -l283;return 0;l283:;}return(u(a->d,a->l81)&32)!=0;}void cp_set_baud(e - *a,int y){int l54,l50;{if(!(a->f==2||((a->f==3)&&a->l31)))goto l240; -{int l92=(y+32000)/64000*64;{if(!(a->l52))goto l236;l92=2048;l236:;}a -->l41&=~7;{if(!(!l92||l92>1024))goto l235;{a->l41|=0;a->y=2048000;} -goto l232;l235:;{if(!(l92>512))goto l231;{a->l41|=2;a->y=1024000;} -goto l229;l231:;{if(!(l92>256))goto l228;{a->l41|=3;a->y=512000;}goto -l901;l228:;{if(!(l92>128))goto l880;{a->l41|=4;a->y=256000;}goto l837 -;l880:;{if(!(l92>64))goto l524;{a->l41|=5;a->y=128000;}goto l522;l524 -:;{a->l41|=6;a->y=64000;}l522:;}l837:;}l901:;}l229:;}l232:;}l(a->d,a -->l62,a->l41);}goto l520;l240:;{if(!((a->f==3||a->f==6)&&!a->l52))goto -l518;{unsigned long l558=a->j;int c;a->y=0;{c=0;l516:if(!(c<32))goto -l512;goto l494;l515:++c;goto l516;l494:{if(!((l558>>c)&1))goto l500;a -->y+=64000;l500:;}goto l515;l512:;}}goto l478;l518:;{if(!(a->f==3&&a -->l52))goto l383;{a->y=2048000;}goto l347;l383:;a->y=y;l347:;}l478:;} -l520:;}a->l35&=~55;{if(!(a->f==4||a->f==7||a->f==8))goto l385;{a->y=a -->d->l80;a->l35|=12;l50=l54=0;}goto l345;l385:;{if(!(!a->y||a->f!=1))goto -l387;{a->l146=0;{if(!(a->f==1))goto l344;a->l53=0;l344:;}l50=l54=0;a -->l33|=4;}goto l389;l387:;{if(!(a->l146))goto l341;{a->l35|=54;l141(a -->d->l80/16,a->y,&l50,&l54);a->l33&=~4;}goto l340;l341:;{if(!(a->l53))goto -l393;{a->l35|=55;l141(a->d->l80,a->y,&l50,&l54);a->l33&=~4;}goto l317 -;l393:;{a->l35|=48;l141(a->d->l80,a->y,&l50,&l54);a->l33&=~4;}l317:;} -l340:;}l389:;}l345:;}l(a->d,a->l73,a->l33&~4); * (volatile unsigned -long* )((a)->x+8)=a->l35; * (volatile unsigned long* )((a)->x+44)=l50 -<<8|l54;l(a->d,a->l73,a->l33);{if(!(a->f==1&&a->l53))goto l415;a->l43 -|=256;goto l416;l415:;a->l43&=~256;l416:;} * (volatile unsigned long* -)((a)->x+12)=a->l43;}void cp_set_dpll(e*a,int m){{if(!(a->f!=1))goto -l417;return;l417:;}a->l146=m&&(a->y!=0);cp_set_baud(a,a->y);}static -void l173(e*a){unsigned char l113=0;{if(!(a->l31))goto l418;{l113|=1| -64;}goto l419;l418:;{if(!(a->d->l30&&a->l34))goto l313;{l113|=0;{if(! -(!a->l46))goto l421;l113|=32;l421:;}}goto l422;l313:;{l113|=1|8;{if(! -(!a->l46))goto l423;l113|=32;l423:;}}l422:;}l419:;}i(a,18,l113);} -static void l206(e*a){unsigned char l204=0;{if(!(!a->l31&&a->l58))goto -l445;l204|=2;l445:;}i(a,19,l204);}static void l162(e*a){unsigned char -l43=64|4;{if(!(!a->l31))goto l285;{l43|=16;{if(!(a->l58))goto l447; -l43|=1;l447:;}{if(!(a->l46))goto l448;l43|=8;l448:;}}l285:;}i(a,20, -l43);}static void l227(e*a){unsigned char l36=64;{if(!(!a->l31))goto -l449;{l36|=8;l36|=16;}l449:;}{if(!(a->l53&&!a->l38))goto l282;l36|=1; -l282:;}i(a,26,l36);}static void l225(e*a){unsigned char l216=2;{if(!( -a->d->l174&&a->l46))goto l457;{l216|=4|64;}l457:;}i(a,27,l216);} -static void l202(e*a){unsigned char l143;{if(!(a->l31))goto l452;l143 -=2;goto l453;l452:;{if(!(a->d->l30))goto l278;l143=32;goto l476;l278: -;l143=0;l476:;}l453:;}i(a,16,l143);}static void l599(e*a){unsigned -char l170;{if(!(a->d->l30||a->l38))goto l477;l170=4|2;goto l254;l477: -;l170=4;l254:;}i(a,17,l170);}static void l226(e*a){unsigned char l107 -;l107=0;{if(!(a->l186))goto l479;l107|=16;l479:;}{if(!(a->l53))goto -l480;l107|=8;l480:;}{if(!(u(a->d,8)>>a->p&16))goto l481;l107|=96;goto -l482;l481:;l107|=64;l482:;}i(a,24,l107);}static int l198(e*a,int l87){ -s*b=a->d;e*h;int j;{h=b->k;l483:if(!(hk+4))goto l485;goto l507; -l484:++h;goto l483;l507:{j=1;l508:if(!(j<32))goto l890;goto l888;l509 -:++j;goto l508;l888:{if(!(h->o.j[j]==l87&&h->o.l40[j]==a->p))goto l884 -;return 1;l884:;}goto l509;l890:;}goto l484;l485:;}return 0;}static -int l586(e*a,int l87){return(a->o.j[l87]!=0);}static int l610(e*a,int -l87){s*b=a->d;e*h;int j;{h=b->k;l882:if(!(hk+4))goto l872;goto -l850;l874:++h;goto l882;l850:{j=1;l766:if(!(j<32))goto l755;goto l736 -;l764:++j;goto l766;l736:{if(!(h->o.j[j]==l87&&h->o.l40[j]==a->p))goto -l735;{h->o.j[j]=0;return 1;}l735:;}goto l764;l755:;}goto l874;l872:;} -return 0;}static int l686(e*a,int l87){{if(!(a->o.j[l87]))goto l731;{ -a->o.j[l87]=0;return 1;}goto l729;l731:;return 0;l729:;}}static void -l138(e*a){s*b=a->d;e*h;unsigned long l66;int c;{if(!(a->l31))goto l722 -;{l66=0;}goto l728;l722:;{if(!(a->l34))goto l724;{l66=~1;{h=b->k;l710 -:if(!(hk+4))goto l702;goto l701;l709:++h;goto l710;l701:{if(!((h -->f==3||h->f==6)&&h->v==a->p))goto l697;l66&=~h->j;l697:;}goto l709; -l702:;}{if(!(b->l30))goto l690;{c=1;l689:if(!(c<32))goto l682;goto -l676;l678:++c;goto l689;l676:{if(!((l66>>c&1)&&l198(a,c)))goto l672; -l66&=~(1<l30))goto l668;{l66=a->p?(b->k[0].j|b->k[1].j):0;}goto l667;l668:; -l66=~a->j;l667:;}l671:;}l728:;}i(a,38,(unsigned char)(l66&254));i(a, -38+1,(unsigned char)(l66>>8));i(a,38+2,(unsigned char)(l66>>16));i(a, -38+3,(unsigned char)(l66>>24));;}void cp_set_monitor(e*a,int m){{if(! -((a->f!=3||!a->l38)&&(a->f==0||a->d->f!=2)))goto l666;return;l666:;}a -->l167=(m!=0);{if(!(a->d->f==2))goto l665;l68(a);goto l662;l665:;i(a, -172,m?112:0);l662:;}}void cp_set_dir(e*a,int v){s*b=a->d;e*h;int c;{ -if(!(a->f!=3&&a->f!=6))goto l661;{a->v=a->p;l157(a);return;}l661:;}{ -if(!(a->l31))goto l659;v=a->p;l659:;}{if(!(!a->l34))goto l656;v=(a->p -==1)?(b->l30?0:1):a->p;l656:;}{if(!((a->d->k+2)->f==3))goto l647;v&=3 -;goto l646;l647:;v&=1;l646:;}a->v=v;{h=b->k;l644:if(!(hk+4))goto -l642;goto l641;l633:++h;goto l644;l641:{if(!((h->f==3||h->f==6)&&h!=a -&&h->v==a->v))goto l637;a->j&=~h->j;l637:;}goto l633;l642:;}{if(!(a-> -l34))goto l634;{{if(!(b->l30))goto l629;{c=1;l630:if(!(c<32))goto l369 -;goto l368;l733:++c;goto l630;l368:{if(!((a->j>>c&1)&&(l198(a,c)|| -l586(a,c))))goto l737;a->j&=~(1<j);}void cp_set_unfram(e*a,int m){e*h; -{if(!(a->f!=3))goto l738;return;l738:;}{if(!(!a->l34))goto l739;a-> -l31=0;goto l740;l739:;a->l31=m!=0;l740:;}{if(!(a->l31))goto l743;a-> -l26|=32;goto l742;l743:;a->l26&=~32;l742:;}l(a->d,a->l64,a->l26);{if( -!(a->l31))goto l745;{cp_set_dir(a,a->p);{h=a->d->k;l758:if(!(hd-> -k+4))goto l760;goto l761;l759:++h;goto l758;l761:{if(!((h->f==3||h->f -==6)&&h->v==a->p&&h!=a))goto l762;cp_set_dir(h,h->p);l762:;}goto l759 -;l760:;}}goto l763;l745:;{{h=a->d->k;l381:if(!(hd->k+4))goto l382 -;goto l767;l768:++h;goto l381;l767:l157(h);goto l768;l382:;}}l763:;} -l173(a);l206(a);l162(a);l227(a);l225(a);l202(a);l138(a);cp_set_baud(a -,a->y);{if(!(a->l31))goto l779;cp_set_gsyn(a,a->l61);l779:;}}void -cp_set_lloop(e*a,int m){{if(!((a->f==1&&a->y==0)||a->f==6))goto l780; -return;l780:;}a->l53=(m!=0);{if(!(a->f==3))goto l781;{{if(!(a->l53))goto -l390;{a->l26|=16;{if(!(a->l38))goto l783;i(a,168,64);l783:;}}goto l391 -;l390:;{a->l26&=~16;{if(!(a->l38))goto l785;i(a,168,0);l785:;}}l391:; -}l(a->d,a->l64,a->l26);l227(a);l226(a);}goto l392;l781:;{if(!(a->f==2 -))goto l787;{unsigned char l203=1|4;{if(!(a->l53))goto l788;l203|=64; -l788:;}l106(a,16,l203);}goto l801;l787:;{if(!(a->d->f==2))goto l802;{ -l68(a);}goto l803;l802:;cp_set_baud(a,a->y);l803:;}l801:;}l392:;}} -void cp_set_nrzi(e*a,int m){{if(!(a->f!=1))goto l804;return;l804:;}a -->l145=m?1:0;{if(!(a->l145))goto l805;a->l35|=2097152;goto l402;l805: -;a->l35&=~2097152;l402:;} * (volatile unsigned long* )((a)->x+8)=a-> -l35;}void cp_set_invtxc(e*a,int m){{if(!(a->f!=1))goto l807;return; -l807:;}a->l164=m?1:0;{if(!(a->l164))goto l808;a->l33|=2;goto l809; -l808:;a->l33&=~2;l809:;}l(a->d,a->l73,a->l33);}void cp_set_invrxc(e*a -,int m){{if(!(a->f!=1))goto l810;return;l810:;}a->l177=m?1:0;{if(!(a -->l177))goto l410;a->l33|=8;goto l823;l410:;a->l33&=~8;l823:;}l(a->d, -a->l73,a->l33);}int cp_get_rloop(e*a){{if(!(a->f==2))goto l839;return -(u(a->d,a->l44)&16)!=0;l839:;}{if(!(a->f!=0&&a->d->f==2))goto l835; -return a->l156;l835:;}return 0;}int cp_get_cable(e*a){{if(!(a->f==1))goto -l841;switch(u(a->d,a->l81)&70){case 0:return 3;case 2:return 2;case 4 -:return 1;case 6:return 0;case 10:return 4;default:return 9;}goto l420 -;l841:;{if(!(a->f==3))goto l838;return(u(a->d,8)>>a->p&16)?11:10;goto -l844;l838:;{if(!(a->f==4))goto l840;return 10;goto l846;l840:;return 0 -;l846:;}l844:;}l420:;}}void cp_set_rloop(e*a,int m){{if(!(a->f==0||a -->d->f!=2))goto l853;return;l853:;}a->l156=m;l68(a);}void cp_set_ber( -e*a,int m){{if(!(a->f==0||a->d->f!=2))goto l854;return;l854:;}a->l178 -=m;l68(a);}void cp_set_losais(e*a,int m){{if(!(a->f==0||a->d->f!=2))goto -l865;return;l865:;}a->l122=m;{if(!(a->l122==0&&a->l86))goto l866;a-> -l86=0;l866:;}l68(a);}void cp_set_cablen(e*a,int m){{if(!(a->f==0||a-> -f==4||a->d->f!=2))goto l867;return;l867:;}a->l169=m;l68(a);}void -cp_led(s*b,int m){{if(!(m))goto l868;b->l125|=16;goto l869;l868:;b-> -l125&=~16;l869:;}l(b,0,b->l125);}int cp_get_lq(e*a){unsigned char l76 -,l63,l59;static int l114[]={0,95,195,285};int c;{if(!(a->f!=2))goto -l870;return 0;l870:;}l76=u(a->d,a->l44)&12;l63=u(a->d,a->l44)&12;{c=1 -;l871:if(!(c<20))goto l440;goto l883;l877:++c;goto l871;l883:l63=u(a -->d,a->l44)&12;goto l877;l440:;}l59=u(a->d,a->l44)&12;{c=1;l899:if(!( -c<20))goto l896;goto l897;l895:++c;goto l899;l897:l59=u(a->d,a->l44)& -12;goto l895;l896:;}{if(!(l76<=l63&&l63<=l59))goto l898;return l114[ -l63>>2];l898:;}{if(!(l63<=l59&&l59<=l76))goto l904;return l114[l59>>2 -];l904:;}{if(!(l59<=l76&&l76<=l63))goto l900;return l114[l76>>2];l900 -:;}{if(!(l76<=l59&&l59<=l63))goto l909;return l114[l59>>2];l909:;}{if -(!(l59<=l63&&l63<=l76))goto l454;return l114[l63>>2];l454:;}return -l114[l76>>2];}static void l141(long l199,long y,int*l50,int*l54){{ * -l50=0;l582:if(!(1))goto l352;goto l654;l530:++ *l50;goto l582;l654:{ * -l54=(((2*l199/y)>> *l50)+1)/2-1;{if(!( *l54<0|| *l50>15))goto l289;{ * -l50=0; *l54=0;return;}l289:;}{if(!( *l54<=63))goto l258;return;l258:; -}}goto l530;l352:;}}static void l165(e*a){{if(!(a->f!=2))goto l910; -return;l910:;}cp_set_gsyn(a,a->l61);cp_set_scrambler(a,a->l134);l106( -a,16,(32|64));l106(a,16,1|4);l106(a,17,0);l106(a,20,96);cp_set_lloop( -a,a->l53);}static void l210(e*a){int c;a->l26&=~128;l(a->d,a->l64,a-> -l26);cp_set_gsyn(a,a->l61);cp_set_unfram(a,a->l31);cp_set_phony(a,a-> -l52);cp_set_lloop(a,a->l53);cp_set_monitor(a,a->l167);a->l133=0;i(a, -22,0);i(a,23,0);i(a,21,0);i(a,25,0);i(a,32,155);i(a,33,223);i(a,42, -255);{if(!(a->l38))goto l721;{i(a,170,0);i(a,29,0);i(a,172,0);i(a,160 -,0);i(a,161,0);i(a,162,0);i(a,163,0);i(a,164,0);i(a,165,0);i(a,166,0); -i(a,167,0);i(a,28,0);i(a,80,0);i(a,81,0);i(a,82,0);i(a,83,0);i(a,84,0 -);i(a,85,0);i(a,86,0);i(a,87,0);i(a,176,0);i(a,177,0);i(a,178,0);i(a, -179,0);i(a,180,0);i(a,181,0);i(a,182,0);i(a,183,0);i(a,184,0);i(a,185 -,0);i(a,186,0);i(a,187,0);i(a,9,0);i(a,10,0);i(a,11,0);i(a,12,0);i(a, -13,0);i(a,14,0);i(a,173,0);i(a,174,0);i(a,175,0);i(a,188,0);i(a,189,0 -);i(a,190,0);i(a,191,0);l(a->d,11,255);}l721:;}i(a,64,11);{c=1;l321: -if(!(c<16))goto l560;goto l627;l572:++c;goto l321;l627:i(a,(unsigned -char)(64+c),255);goto l572;l560:;}{if(!(a->l38))goto l797;{i(a,170, -128);i(a,170,0);}goto l720;l797:;{i(a,27,2|8);i(a,27,2);}l720:;}{if(! -(a->l38))goto l675;{i(a,29,2|1);i(a,29,0);}goto l628;l675:;{i(a,27,2| -16);i(a,27,2);}l628:;}l90(a,6,255);l90(a,7,255);l90(a,8,255);a->l26|= -128;l(a->d,a->l64,a->l26);}void cp_set_mux(s*b,int l183){e*a;int l555 -=(l183&&!b->l30);{if(!(b->f!=5&&b->f!=10&&b->f!=11&&b->f!=9))goto l581 -;return;l581:;};switch(l183){case 0:case 2:b->l30=l183;break;default: -b->l30=1;}{if(!(!b->l30))goto l609;l195(b,0);l609:;}{if(!(b->l30))goto -l596;b->l116|=1;goto l566;l596:;b->l116&=~1;l566:;}l(b,8,b->l116);{if -(!(!b->k->l34))goto l559;{cp_set_dir(b->k+1,b->k[1].v);}l559:;}{a=b-> -k;l272:if(!(ak+4))goto l256;goto l287;l304:++a;goto l272;l287:{if -(!(a->f==3))goto l280;{l173(a);l202(a);l599(a);cp_set_ts(a,a->j);} -goto l237;l280:;{if(!(a->f==6))goto l233;{cp_set_ts(a,a->j);}l233:;} -l237:;}goto l304;l256:;}{if(!(l555))goto l230;{{if(!(b->l30!=2))goto -l244;l168(b);l244:;}cp_set_ts(b->k,b->k->j);}l230:;}{if(!(b->l30))goto -l245;cp_set_gsyn(b->k,b->k->l61);l245:;}}void cp_set_dxc(e*a,l72*l149 -){l179(a,l149);}static void l179(e*a,l72*l149){s*b=a->d;e*h;int c;{if -(!(a->f!=3||!a->l34))goto l247;return;l247:;}{if(!(!b->l30))goto l248 -;memset(&a->o,0,sizeof(a->o));goto l249;l248:;memcpy(&a->o,l149, -sizeof(a->o));l249:;}a->o.j[0]=0;{if(!(!a->l46))goto l250;a->o.j[16]= -0;l250:;}{c=1;l251:if(!(c<32))goto l252;goto l253;l894:++c;goto l251; -l253:{if(!(a->o.j[c]&=31))goto l688;{{if(!((b->k+2)->f!=3))goto l680; -a->o.l40[c]&=1;goto l677;l680:;a->o.l40[c]&=3;l677:;}{h=b->k;l673:if( -!(hk+4))goto l152;goto l670;l209:++h;goto l673;l670:{{if(!(h->f!= -3))goto l663;goto l209;l663:;}{if(!(h->p==a->o.l40[c]&&a->o.j[c]==16 -&&!h->l46))goto l660;{a->o.j[c]=0;goto l152;}l660:;}{if(!((h->v==a->o -.l40[c]&&((h->j>>a->o.j[c])&1))||(h->v==a->p&&((h->j>>c)&1))))goto -l658;{a->o.j[c]=0;goto l152;}l658:;}{if(!(h->p==a->p))goto l611;goto -l152;l611:;}}goto l209;l152:;}}l688:;}goto l894;l252:;}l(b,8,b->l116& -~1);l(b,28,a->p<<5);l(b,31,139);{c=1;l606:if(!(c<32))goto l602;goto -l601;l605:++c;goto l606;l601:l(b,31,(!a->o.j[c])?141:(a->o.l40[c]<<5)| -a->o.j[c]);goto l605;l602:;}l(b,8,b->l116);{c=0;l600:if(!(c<4))goto -l598;goto l597;l196:c++;goto l600;l597:{{if(!((b->k+c)->f!=3))goto -l594;goto l196;l594:;}l138(b->k+c);}goto l196;l598:;}}void cp_set_ts( -e*a,unsigned long j){s*b=a->d;e*h;int c;{if(!(a->f!=3&&a->f!=6))goto -l574;return;l574:;}a->j=j&4294967294UL;{if(!(b->k[a->v].l31||b->k[a-> -v].f!=3))goto l573;a->j=0;l573:;}{if(!(!b->k[a->v].l46))goto l570;a-> -j&=~(1<<16);l570:;}{h=b->k;l569:if(!(hk+4))goto l567;goto l564; -l568:++h;goto l569;l564:{if(!((h->f==3||h->f==6)&&h->p!=a->p&&h->v==a -->v))goto l562;a->j&=~h->j;l562:;}goto l568;l567:;}{if(!(b->l30&&b->k -->l34))goto l561;{c=1;l557:if(!(c<32))goto l525;goto l380;l526:++c; -goto l557;l380:{if(!((a->j>>c&1)))goto l490;{l610(b->k+a->v,c);l686(b -->k+a->v,c);}l490:;}goto l526;l525:;}l561:;}{if(!((a->j&65534)==0&&a -->l31!=0))goto l348;a->l33|=16;goto l466;l348:;a->l33&=~16;l466:;}l(a -->d,a->l73,a->l33);;{if(!(a->l38))goto l377;{int c;int j;{if(!(a->l31 -))goto l378;j=4294967295UL;goto l379;l378:;j=a->j;l379:;}l(a->d,9,a-> -p<<6);{c=1;l395:if(!(c<32))goto l323;goto l411;l396:++c;goto l395; -l411:{{l338:if(!(u(a->d,0)&1))goto l413;{outb(128,0);}goto l338;l413: -;}l(a->d,10,(unsigned char)(j>>c&1));}goto l396;l323:;}{l407:if(!(u(a -->d,0)&1))goto l442;{outb(128,0);}goto l407;l442:;}l(a->d,10,( -unsigned char)j&1);{c=1;l325:if(!(c<32))goto l426;goto l412;l425:++c; -goto l325;l412:{{l275:if(!(u(a->d,0)&1))goto l492;{outb(128,0);}goto -l275;l492:;}l(a->d,10,(unsigned char)(j>>c&1));}goto l425;l426:;}{ -l263:if(!(u(a->d,0)&1))goto l444;{outb(128,0);}goto l263;l444:;}l(a-> -d,10,(unsigned char)j&1);}l377:;}{if(!(a->f==3))goto l427;{i(a,34,( -unsigned char)(a->j&254));i(a,34+1,(unsigned char)(a->j>>8));i(a,34+2 -,(unsigned char)(a->j>>16));i(a,34+3,(unsigned char)(a->j>>24));i(a, -43,(unsigned char)(a->j&254));i(a,43+1,(unsigned char)(a->j>>8));i(a, -43+2,(unsigned char)(a->j>>16));i(a,43+3,(unsigned char)(a->j>>24));} -l427:;}{if(!(!a->l34))goto l473;{l138(b->k+0);l138(b->k+1);}goto l294 -;l473:;{{if(!(b->l30!=2))goto l456;l168(b);l456:;}{h=b->k;l487:if(!(h -k+4))goto l489;goto l455;l471:h++;goto l487;l455:l179(h,&h->o); -goto l471;l489:;}}l294:;}cp_set_baud(a,a->y);}static void l168(s*b){e - *a;unsigned long j[4]={0,0,0,0},l159[2]={0,0};l72 o[4];int c;{if(!(! -b->l30||!b->k->l34))goto l474;return;l474:;}{a=b->k;l475:if(!(ak+ -4))goto l246;goto l486;l190:a++;goto l475;l486:{{if(!(a->f!=3&&a->f!= -6))goto l496;goto l190;l496:;}j[a->v]|=a->j;{if(!(!a->l46))goto l488; -j[a->p]|=(1<<16);l488:;}}goto l190;l246:;}l159[0]=~(j[0]|j[1]);l159[1 -]=~(j[2]|j[3]);{c=1;l495:if(!(c<32))goto l491;goto l505;l503:c++;goto -l495;l505:{{if(!((l159[0]>>c)&1))goto l506;{o[0].j[c]=(unsigned char)c -;o[1].j[c]=(unsigned char)c;o[0].l40[c]=1;o[1].l40[c]=0;}goto l799; -l506:;{o[0].j[c]=0;o[1].j[c]=0;o[0].l40[c]=0;o[1].l40[c]=0;}l799:;}{ -if(!((l159[1]>>c)&1))goto l501;{o[2].j[c]=(unsigned char)c;o[3].j[c]= -(unsigned char)c;o[2].l40[c]=3;o[3].l40[c]=2;}goto l502;l501:;{o[2].j -[c]=0;o[3].j[c]=0;o[2].l40[c]=0;o[3].l40[c]=0;}l502:;}}goto l503;l491 -:;}memcpy(&b->k[0].o,o+0,sizeof(l72));memcpy(&b->k[1].o,o+1,sizeof( -l72));memcpy(&b->k[2].o,o+2,sizeof(l72));memcpy(&b->k[3].o,o+3,sizeof -(l72));}void cp_set_higain(e*a,int m){{if(!(a->f!=3))goto l770;return -;l770:;}a->l186=(m!=0);l226(a);}void cp_set_use16(e*a,int m){e*h;{if( -!(a->f!=3))goto l504;return;l504:;}a->l46=(m!=0);l162(a);l173(a);{h=a -->d->k;l822:if(!(hd->k+4))goto l842;goto l813;l821:++h;goto l822; -l813:{if(!(h->v==a->p))goto l830;cp_set_ts(h,h->j);l830:;}goto l821; -l842:;}}void l195(s*b,int m){e*h;{if(!(!b->k->l34))goto l798;return; -l798:;}b->l174=(m&&b->l30)?1:0;{h=b->k;l784:if(!(hk+4))goto l782; -goto l778;l220:++h;goto l784;l778:{{if(!(h->f!=3))goto l551;goto l220 -;l551:;}cp_set_use16(h,m?m:h->l46);l225(h);}goto l220;l782:;}}void -cp_set_phony(e*a,int m){{if(!(a->f==3))goto l679;a->l52=(m!=0);l679:; -}{if(!(a->l52))goto l550;a->v=a->p;l550:;}cp_set_dir(a,a->v);a->l36|= -1310728;{if(!(a->l52))goto l681;{a->l26|=64;a->l36|=4194305;}goto l548 -;l681:;{a->l26&=~64;a->l36&=~4194305;}l548:;} * (volatile unsigned -long* )((a)->x+16)=a->l36;{if(!(a->f==3))goto l683;{l(a->d,a->l64,a-> -l26);cp_set_baud(a,a->y);cp_set_scrambler(a,a->l134);}l683:;}}void -cp_set_crc4(e*a,int m){{if(!(a->f!=3))goto l684;return;l684:;}a->l58= -(m!=0);l162(a);l206(a);}void cp_set_scrambler(e*a,int m){{if(!(a->f!= -2&&!(a->f==3&&a->l38)))goto l685;return;l685:;}{if(!(a->l38&&(a->l52 -||!a->l31)))goto l543;m=0;l543:;}a->l134=(m!=0);{if(!(a->l134))goto -l687;a->l41|=16;goto l542;l687:;a->l41&=~16;l542:;}l(a->d,a->l62,a-> -l41);}void cp_set_gsyn(e*a,int l78){switch(a->f){case 3:{unsigned char -l26=0;e*h;s*b=a->d;{if(!(a->l31&&l78!=0))goto l540;l78=1;l540:;} -switch(l78){default:l78=0;l26=0;break;case 1:l78=2+a->p;l26=1+a->p; -break;case 2:l26=1;break;case 3:l26=2;break;case 4:l26=3;{if(!(b->k[2 -].f!=3))goto l691;return;l691:;}break;case 5:l26=4;{if(!(b->k[3].f!=3 -))goto l692;return;l692:;}break;}{h=b->k;l693:if(!(hk+4))goto l536 -;goto l535;l212:h++;goto l693;l535:{{if(!(h->f!=3||(!b->l30&&h!=a)))goto -l533;goto l212;l533:;}l(b,h->l64,h->l26&~128);h->l26&=~7;h->l26|=l26; -h->l61=(unsigned char)l78;l(b,h->l64,h->l26);}goto l212;l536:;}}break -;case 2:{if(!(l78))goto l699;{a->l61=1;a->l41|=8;}goto l703;l699:;{a -->l61=0;a->l41&=~8;}l703:;}l(a->d,a->l62,a->l41);break;case 4:case 7: -case 8:{if(!(l78))goto l704;a->l61=1;goto l705;l704:;a->l61=0;l705:;} -l68(a);break;}}void cp_register_transmit(e*a,void( *l85)(e* ,void* , -int)){a->l187=l85;}void cp_register_receive(e*a,void( *l85)(e* , -unsigned char* ,int)){a->l171=l85;}void cp_register_error(e*a,void( * -l85)(e* ,int)){a->l65=l85;}static void l188(e*a){unsigned char l77, -l150;unsigned l47,l153,l58,l182,l111,l131;++a->l55;{if(!(!a->l161&&a -->l55<=1))goto l523;return;l523:;}a->t=0;l77=l90(a,6,255);l131=0;{if( -!(l77&2))goto l707;a->t|=64;l707:;}{if(!(l77&8))goto l708;a->t|=8; -l708:;}l47=(((short)(l57(a,0))<<8)|(l57(a,1)));l153=0;l58=0;l182=0;{ -if(!(!a->l31))goto l519;{l150=l57(a,30);{if(!(!a->l46&&(l77&128)))goto -l711;a->t|=256;l711:;}{if(!(!a->l46&&(l77&64)))goto l712;a->t|=512; -l712:;}{if(!(l77&4))goto l713;a->t|=2;l713:;}{if(!(l150&4))goto l717; -{a->t|=32;++l131;}l717:;}{if(!((!a->l46&&(l150&2))||(a->l58&&(l150&1))))goto -l511;{a->t|=1024;++l131;}l511:;}l153=(((short)(l57(a,2))<<4&4032)|( -l57(a,4))>>2);l58=(((short)(l57(a,2))<<8&768)|(l57(a,3)));l182=((( -short)(l57(a,4))<<8&768)|(l57(a,5)));{if(!((a->d->l30||a->l38)&&(l77& -16)))goto l719;++a->n.l120;l719:;}}l519:;}{if(!(a->t&64))goto l510;a -->t=64;goto l723;l510:;{if(!(a->t&8))goto l499;a->t=8;goto l725;l499: -;{if(!(a->t&32))goto l498;a->t=32;goto l727;l498:;{if(!(a->t&1024))goto -l493;a->t&=~(512|256);l493:;}l727:;}l725:;}l723:;}{if(!(!a->t))goto -l470;a->t=1;l470:;}a->n.l47+=l47;a->n.l112+=l153;{if(!(a->l58))goto -l732;{a->n.l121+=l58;a->n.l103+=l182;}l732:;}l111=l153;{if(!(a->l58))goto -l748;l111+=l58;l748:;}{if(!(l77&(8|2)))goto l744;++a->n.l101;goto l374 -;l744:;{{if(!(l47))goto l746;++a->n.l89;l746:;}{if(!(l111||l131||((a -->d->l30||a->l38)&&(l77&16))))goto l747;++a->n.l117;l747:;}{if(!(l131 -))goto l753;++a->n.l110;l753:;}{if(!(l47>=2048||l111>=832))goto l749; -++a->n.l119;goto l754;l749:;{{if(!(l111>1))goto l756;++a->n.l108;l756 -:;}++a->l105;a->l109+=l47+l111;}l754:;}}l374:;}{if(!(a->l55%60==0))goto -l757;{{if(!(a->l109>a->l105*2048/1000))goto l773;++a->n.l100;l773:;}a -->l105=0;a->l109=0;}l757:;}{if(!(a->l55>15*60))goto l769;{int c;{c=47 -;l384:if(!(c>0))goto l772;goto l776;l771:--c;goto l384;l776:a->l118[c -]=a->l118[c-1];goto l771;l772:;}a->l118[0]=a->n;a->l29.l47+=a->n.l47; -a->l29.l112+=a->n.l112;a->l29.l121+=a->n.l121;a->l29.l103+=a->n.l103; -a->l29.l101+=a->n.l101;a->l29.l89+=a->n.l89;a->l29.l117+=a->n.l117;a -->l29.l108+=a->n.l108;a->l29.l119+=a->n.l119;a->l29.l110+=a->n.l110;a -->l29.l120+=a->n.l120;a->l29.l100+=a->n.l100;a->n.l47=0;a->n.l112=0;a -->n.l121=0;a->n.l103=0;a->n.l101=0;a->n.l89=0;a->n.l117=0;a->n.l108=0 -;a->n.l119=0;a->n.l110=0;a->n.l120=0;a->n.l100=0;a->l161+=a->l55;a-> -l55=0;}l769:;}}void cp_g703_timer(e*a){unsigned char l84;int l158;++a -->l55;{if(!(!a->l161&&a->l55<=1))goto l386;return;l386:;}a->t=0;l84=u -(a->d,a->l44);l(a->d,a->l44,l84);l158=cp_get_cd(a);{if(!(l84&1))goto -l775;++a->n.l47;l775:;}{if(!(!l158))goto l777;a->t|=64;l777:;}{if(!( -l84&2))goto l388;a->t|=4096;l388:;}{if(!(l84&16))goto l789;a->t|=2048 -;l789:;}{if(!(!a->t))goto l394;a->t=1;l394:;}{if(!(!l158||(l84&16)))goto -l791;++a->n.l101;goto l792;l791:;{{if(!(l84&1))goto l793;++a->n.l89; -l793:;}++a->l105;{if(!(l158&&(l84&1)))goto l794;++a->l109;l794:;}} -l792:;}{if(!(a->l55/60==0))goto l795;{{if(!(a->l109*2>a->l105))goto -l796;++a->n.l100;l796:;}a->l105=0;a->l109=0;}l795:;}{if(!(a->l55>15* -60))goto l398;{int c;{c=47;l800:if(!(c>0))goto l812;goto l408;l811:-- -c;goto l800;l408:a->l118[c]=a->l118[c-1];goto l811;l812:;}a->l118[0]= -a->n;a->l29.l47+=a->n.l47;a->l29.l112+=a->n.l112;a->l29.l121+=a->n. -l121;a->l29.l103+=a->n.l103;a->l29.l101+=a->n.l101;a->l29.l89+=a->n. -l89;a->l29.l117+=a->n.l117;a->l29.l108+=a->n.l108;a->l29.l119+=a->n. -l119;a->l29.l110+=a->n.l110;a->l29.l120+=a->n.l120;a->l29.l100+=a->n. -l100;memset(&a->n,0,sizeof(a->n));a->l161+=a->l55;a->l55=0;}l398:;}} -void cp_e1_timer(e*a){{if(!(a->f==3&&(l90(a,7,255)&16)))goto l814;{; -l188(a);}l814:;}}void cp_e3_timer(e*a){unsigned char l126;unsigned -long l140;{if(!(a->d->f!=2))goto l815;return;l815:;}l(a->d,11,0);l140 -=u(a->d,11);l140|=u(a->d,12)<<8;l140|=u(a->d,13)<<16;l126=u(a->d,9);l -(a->d,9,a->l669|1);{if(!(l126&2))goto l816;{{if(!(a->l122&&(a->l95&2)!= -0&&!a->l86))goto l817;{a->l86=1;l68(a);}l817:;}a->l95=2;}goto l819; -l816:;{{if(!(a->l122&&(a->l95&2)==0&&a->l86))goto l409;{a->l86=0;l68( -a);}l409:;}a->l95=0;}l819:;}{if(!(l126&1))goto l849;a->l95|=4;l849:;} -{if(!(l126&4&&!(l126&2)))goto l843;a->l95|=8;l843:;}{if(!(!(a->l95&2)))goto -l851;a->l142+=l140;l851:;}a->l148++;{if(!(a->l148>5*60*15))goto l845; -{int c;{c=47;l439:if(!(c>0))goto l848;goto l873;l847:c--;goto l439; -l873:a->l184[c]=a->l184[c-1];goto l847;l848:;}a->l184[0]=a->l142;a-> -l621+=a->l142;a->l616+=a->l148/5;a->l142=0;a->l148=0;}l845:;}}static -void l575(e*a){int w=(( * (volatile unsigned long* )&a->l32[a->l28].t -)>>16&8191);unsigned char l127;{if(!(w>0))goto l424;l127=a->l136[a-> -l28][--w];goto l852;l424:;l127=0;l852:;};{if(!(l127&64))goto l905;{++ -a->l200;{if(!(a->l65))goto l881;a->l65(a,4);l881:;}}goto l875;l905:;{ -if(!(!(l127&128)))goto l876;{++a->l591;{if(!(a->l65))goto l908;a->l65 -(a,1);l908:;}}goto l438;l876:;{if(!(!a->l52&&!(l127&32)))goto l879;{ -++a->l556;{if(!(a->l65))goto l450;a->l65(a,2);l450:;}}goto l903;l879: -;{a->l571+=w;++a->l592;{if(!(a->l171))goto l367;a->l171(a,a->l136[a-> -l28],w);l367:;}}l903:;}l438:;}l875:;} * (volatile unsigned long* )&a -->l32[a->l28].t=0; * (volatile unsigned long* )&a->l32[a->l28].l88=a -->l67[a->l28]; * (volatile unsigned long* )&a->l32[(a->l28+64-1)%64]. -l88=a->l67[a->l28];a->l28=++a->l28%64;}static void l820(e*a){int l205 -=0;int l201=0;{if(!(!a->l32))goto l363;return;l363:;}++a->l635;{if(!( - * (volatile unsigned long* )&a->l32[(a->l28+64-1)%64].t&1073741824))goto -l362;l205++;l362:;}{l360:if(!(( * (volatile unsigned long* )&a->l32[a -->l28].t&1073741824)&&( * (volatile unsigned long* )&a->l67[a->l28]!= - * (volatile unsigned long* )((a)->l102))))goto l358;{l575(a);l201++; -}goto l360;l358:;}{if(!(l205))goto l356;{{if(!(l201<64-1))goto l355;{ -{l350:if(!(( * (volatile unsigned long* )&a->l67[a->l28]!= * ( -volatile unsigned long* )((a)->l102))))goto l349;{ * (volatile -unsigned long* )&a->l32[a->l28].t=0; * (volatile unsigned long* )&a-> -l32[a->l28].l88=a->l67[a->l28]; * (volatile unsigned long* )&a->l32[( -a->l28+64-1)%64].l88=a->l67[a->l28];a->l28=++a->l28%64;}goto l350; -l349:;}}l355:;}++a->l200;{if(!(a->l65))goto l346;a->l65(a,5);l346:;}} -l356:;}}static void l715(e*a){int w=(( * (volatile unsigned long* )&a -->l42[a->l51].w)>>16&8191);void*l79=a->l79[a->l51];;a->l51=++a->l51%4 -;{if(!(a->l51!=a->l45))goto l343;{int l655=(( * (a)->l132)-a->l154[0] -)/sizeof(l128);{if(!(l655==(a->l51+4-1)%4))goto l342;{; * (volatile -unsigned long* )((a->d)->g+0)=1024<p;outb(128,0);}l342:;}}l343:;} -{if(!(w>0))goto l339;{a->l620+=w;++a->l301;{if(!(a->l187))goto l337;a -->l187(a,l79,w);l337:;}}l339:;}}static void l268(e*a){unsigned long -l91;int l219=0;++a->l614;{l185:if(!((l91= * (volatile unsigned long* )& -a->l97[a->l104])!=0))goto l332;{ * (volatile unsigned long* )&a->l97[ -a->l104]=0;a->l104=++a->l104%128;{if(!(!(l91&1073741824)))goto l331;{ -;goto l185;}l331:;}{if(!(l91&33554432))goto l329;{;{if(!(l91&65536))goto -l326;++l219;l326:;}goto l185;}l329:;};{if(!(a->l51!=a->l45&&( * ( -volatile unsigned long* )&a->l42[a->l51].t&1073741824)))goto l322; -l715(a);l322:;}}goto l185;l332:;}{if(!(l219))goto l316;{ * (volatile -unsigned long* )((a)->x+0)=16777216;++a->l261;{if(!(a->l65))goto l314 -;a->l65(a,3);l314:;}}l316:;}}static void l907(s*b){unsigned long l91; -e*a;{l221:if(!((l91= * (volatile unsigned long* )&b->l94[b->l115])!=0 -))goto l310;{ * (volatile unsigned long* )&b->l94[b->l115]=0;b->l115= -++b->l115%128;{if(!((l91&3489660928UL)!=3489660928UL))goto l309;{; -goto l221;}l309:;}{a=b->k;l307:if(!(ak+4))goto l302;goto l299; -l306:++a;goto l307;l299:{if(!(a->f==3&&(l90(a,7,255)&16)))goto l298;{ -;l188(a);}l298:;}goto l306;l302:;}}goto l221;l310:;}}void -cp_handle_interrupt(s*b){e*a;++b->l563;{if(!( * (volatile unsigned -long* )&b->l94[b->l115]))goto l292;l907(b);l292:;}{a=b->k;l291:if(!(a -k+4))goto l284;goto l281;l286:++a;goto l291;l281:{{if(!(~(a->l70)))goto -l279;{{if(!( * (volatile unsigned long* )&a->l97[a->l104]))goto l277; -l268(a);l277:;}{if(!( * (volatile unsigned long* )&a->l67[a->l28]!= * -(volatile unsigned long* )((a)->l102)))goto l271;l820(a);l271:;}}l279 -:;}}goto l286;l284:;}}int cp_interrupt(s*b){int l215=0;{l276:if(!( -cp_interrupt_poll(b,1)!=0))goto l269;{{if(!(++l215>1000))goto l242; -return-1;l242:;}cp_handle_interrupt(b);}goto l276;l269:;}return l215; -}int cp_interrupt_poll(s*b,int l217){unsigned long l192= * (volatile -unsigned long* )((b)->g+4);;{if(!(!l192))goto l243;return 0;l243:;}{ -if(!(l217))goto l825; * (volatile unsigned long* )((b)->g+4)=l192; -l825:;}return 1;}void cp_enable_interrupt(s*b,int m){e*a;{a=b->k;l886 -:if(!(ak+4))goto l554;goto l836;l878:++a;goto l886;l836:{if(!(a-> -f))goto l657;{ * (volatile unsigned long* )((a)->x+84)=m?a->l70:~0;a -->l144=m?1:0;}l657:;}goto l878;l554:;}}int cp_transmit_space(e*a){ -return(4+a->l51-a->l45-1)%4;}int cp_send_packet(e*a,unsigned char*l99 -,int w,void*l79){{if(!(!cp_transmit_space(a)))goto l714;return-1;l714 -:;}{if(!(w<=0||w>1664-1))goto l706;return-2;l706:;}a->l79[a->l45]=l79 -;{if(!(l99!=a->l151[a->l45]))goto l698;memcpy(a->l151[a->l45],l99,w); -l698:;} * (volatile unsigned long* )&a->l42[a->l45].t=0;outb(128,0); * -(volatile unsigned long* )&a->l42[a->l45].w=2147483648UL|1073741824|w -<<16;{if(!(a->l52))goto l694; * (volatile unsigned long* )&a->l42[a-> -l45].w|=536870912;l694:;}outb(128,0); * (volatile unsigned long* )&a -->l42[(a->l45+4-1)%4].w&=~1073741824;outb(128,0);;{if(!(( * (a)->l75)== -0))goto l645;{;( * (a)->l75)=a->l154[a->l51];outb(128,0);( * (a)->l82 -)=524288;outb(128,0); * (volatile unsigned long* )((a->d)->g+0)=513;} -goto l650;l645:;{if(!(a->l51==a->l45))goto l648;{; * (volatile -unsigned long* )((a->d)->g+0)=1024<p;}l648:;}l650:;}outb(128,0);a -->l45=(a->l45+1)%4;return 0;} Index: sys/dev/cp/cserial.h =================================================================== --- sys/dev/cp/cserial.h +++ /dev/null @@ -1,519 +0,0 @@ -/*- - * Ioctl interface to Cronyx serial drivers. - * - * Copyright (C) 1997-2002 Cronyx Engineering. - * Author: Serge Vakulenko, - * - * Copyright (C) 2001-2005 Cronyx Engineering. - * Author: Roman Kurakin, - * - * Copyright (C) 2004-2005 Cronyx Engineering. - * Author: Leo Yuriev, - * - * This software is distributed with NO WARRANTIES, not even the implied - * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * Authors grant any other persons or organisations permission to use - * or modify this software as long as this message is kept with the software, - * all derivative works or modified versions. - * - * Cronyx Id: cserial.h,v 1.4.2.2 2005/11/09 13:01:35 rik Exp $ - * $FreeBSD$ - */ - -/* - * General channel statistics. - */ -struct serial_statistics { - unsigned long rintr; /* receive interrupts */ - unsigned long tintr; /* transmit interrupts */ - unsigned long mintr; /* modem interrupts */ - unsigned long ibytes; /* input bytes */ - unsigned long ipkts; /* input packets */ - unsigned long ierrs; /* input errors */ - unsigned long obytes; /* output bytes */ - unsigned long opkts; /* output packets */ - unsigned long oerrs; /* output errors */ -}; - -/* - * Statistics for E1/G703 channels. - */ -struct e1_counters { - unsigned long bpv; /* bipolar violations */ - unsigned long fse; /* frame sync errors */ - unsigned long crce; /* CRC errors */ - unsigned long rcrce; /* remote CRC errors (E-bit) */ - unsigned long uas; /* unavailable seconds */ - unsigned long les; /* line errored seconds */ - unsigned long es; /* errored seconds */ - unsigned long bes; /* bursty errored seconds */ - unsigned long ses; /* severely errored seconds */ - unsigned long oofs; /* out of frame seconds */ - unsigned long css; /* controlled slip seconds */ - unsigned long dm; /* degraded minutes */ -}; - -struct e1_statistics { - unsigned long status; /* line status bit mask */ - unsigned long cursec; /* seconds in current interval */ - unsigned long totsec; /* total seconds elapsed */ - struct e1_counters currnt; /* current 15-min interval data */ - struct e1_counters total; /* total statistics data */ - struct e1_counters interval [48]; /* 12 hour period data */ -}; - -struct e3_statistics { - unsigned long status; - unsigned long cursec; - unsigned long totsec; - unsigned long ccv; - unsigned long tcv; - unsigned long icv[48]; -}; - -#define M_ASYNC 0 /* asynchronous mode */ -#define M_HDLC 1 /* bit-sync mode (HDLC) */ -#define M_G703 2 -#define M_E1 3 - -/* - * Receive error codes. - */ -#define ER_FRAMING 1 /* framing error */ -#define ER_CHECKSUM 2 /* parity/CRC error */ -#define ER_BREAK 3 /* break state */ -#define ER_OVERFLOW 4 /* receive buffer overflow */ -#define ER_OVERRUN 5 /* receive fifo overrun */ -#define ER_UNDERRUN 6 /* transmit fifo underrun */ -#define ER_SCC_FRAMING 7 /* subchannel framing error */ -#define ER_SCC_OVERFLOW 8 /* subchannel receive buffer overflow */ -#define ER_SCC_OVERRUN 9 /* subchannel receiver overrun */ -#define ER_SCC_UNDERRUN 10 /* subchannel transmitter underrun */ -#define ER_BUS 11 /* system bus is too busy (e.g PCI) */ - -/* - * E1 channel status. - */ -#define E1_NOALARM 0x0001 /* no alarm present */ -#define E1_FARLOF 0x0002 /* receiving far loss of framing */ -#define E1_CRC4E 0x0004 /* crc4 errors */ -#define E1_AIS 0x0008 /* receiving all ones */ -#define E1_LOF 0x0020 /* loss of framing */ -#define E1_LOS 0x0040 /* loss of signal */ -#define E1_AIS16 0x0100 /* receiving all ones in timeslot 16 */ -#define E1_FARLOMF 0x0200 /* receiving alarm in timeslot 16 */ -#define E1_LOMF 0x0400 /* loss of multiframe sync */ -#define E1_TSTREQ 0x0800 /* test code detected */ -#define E1_TSTERR 0x1000 /* test error */ - -#define E3_LOS 0x00000002 /* Lost of synchronization */ -#define E3_TXE 0x00000004 /* Transmit error */ - -/* - * Query the mask of all registered channels, max 128. - */ -#define SERIAL_GETREGISTERED _IOR ('x', 0, char[16]) - -/* - * Attach/detach the protocol to the channel. - * The protocol is given by its name, char[8]. - * For example "async", "hdlc", "cisco", "fr", "ppp". - */ -#define SERIAL_GETPROTO _IOR ('x', 1, char [8]) -#define SERIAL_SETPROTO _IOW ('x', 1, char [8]) - -/* - * Query/set the hardware mode for the channel. - */ -#define SERIAL_GETMODE _IOR ('x', 2, int) -#define SERIAL_SETMODE _IOW ('x', 2, int) - -#define SERIAL_ASYNC 1 -#define SERIAL_HDLC 2 -#define SERIAL_RAW 3 - -/* - * Get/clear the channel statistics. - */ -#define SERIAL_GETSTAT _IOR ('x', 3, struct serial_statistics) -#define SERIAL_GETESTAT _IOR ('x', 3, struct e1_statistics) -#define SERIAL_GETE3STAT _IOR ('x', 3, struct e3_statistics) -#define SERIAL_CLRSTAT _IO ('x', 3) - -/* - * Query/set the synchronization mode and baud rate. - * If baud==0 then the external clock is used. - */ -#define SERIAL_GETBAUD _IOR ('x', 4, long) -#define SERIAL_SETBAUD _IOW ('x', 4, long) - -/* - * Query/set the internal loopback mode, - * useful for debugging purposes. - */ -#define SERIAL_GETLOOP _IOR ('x', 5, int) -#define SERIAL_SETLOOP _IOW ('x', 5, int) - -/* - * Query/set the DPLL mode, commonly used with NRZI - * for channels lacking synchro signals. - */ -#define SERIAL_GETDPLL _IOR ('x', 6, int) -#define SERIAL_SETDPLL _IOW ('x', 6, int) - -/* - * Query/set the NRZI encoding (default is NRZ). - */ -#define SERIAL_GETNRZI _IOR ('x', 7, int) -#define SERIAL_SETNRZI _IOW ('x', 7, int) - -/* - * Invert receive and transmit clock. - */ -#define SERIAL_GETINVCLK _IOR ('x', 8, int) -#define SERIAL_SETINVCLK _IOW ('x', 8, int) - -/* - * Query/set the E1/G703 synchronization mode. - */ -#define SERIAL_GETCLK _IOR ('x', 9, int) -#define SERIAL_SETCLK _IOW ('x', 9, int) - -#define E1CLK_RECOVERY -1 -#define E1CLK_INTERNAL 0 -#define E1CLK_RECEIVE 1 -#define E1CLK_RECEIVE_CHAN0 2 -#define E1CLK_RECEIVE_CHAN1 3 -#define E1CLK_RECEIVE_CHAN2 4 -#define E1CLK_RECEIVE_CHAN3 5 - -/* - * Query/set the E1 timeslot mask. - */ -#define SERIAL_GETTIMESLOTS _IOR ('x', 10, long) -#define SERIAL_SETTIMESLOTS _IOW ('x', 10, long) - -/* - * Query/set the E1 subchannel timeslot mask. - */ -#define SERIAL_GETSUBCHAN _IOR ('x', 11, long) -#define SERIAL_SETSUBCHAN _IOW ('x', 11, long) - -/* - * Query/set the high input sensitivity mode (E1). - */ -#define SERIAL_GETHIGAIN _IOR ('x', 12, int) -#define SERIAL_SETHIGAIN _IOW ('x', 12, int) - -/* - * Query the input signal level in santibells. - */ -#define SERIAL_GETLEVEL _IOR ('x', 13, int) - -/* - * Get the channel name. - */ -#define SERIAL_GETNAME _IOR ('x', 14, char [32]) - -/* - * Get version string. - */ -#define SERIAL_GETVERSIONSTRING _IOR ('x', 15, char [256]) - -/* - * Query/set master channel. - */ -#define SERIAL_GETMASTER _IOR ('x', 16, char [16]) -#define SERIAL_SETMASTER _IOW ('x', 16, char [16]) - -/* - * Query/set keepalive. - */ -#define SERIAL_GETKEEPALIVE _IOR ('x', 17, int) -#define SERIAL_SETKEEPALIVE _IOW ('x', 17, int) - -/* - * Query/set E1 configuration. - */ -#define SERIAL_GETCFG _IOR ('x', 18, char) -#define SERIAL_SETCFG _IOW ('x', 18, char) - -/* - * Query/set debug. - */ -#define SERIAL_GETDEBUG _IOR ('x', 19, int) -#define SERIAL_SETDEBUG _IOW ('x', 19, int) - -/* - * Query/set phony mode (E1). - */ -#define SERIAL_GETPHONY _IOR ('x', 20, int) -#define SERIAL_SETPHONY _IOW ('x', 20, int) - -/* - * Query/set timeslot 16 usage mode (E1). - */ -#define SERIAL_GETUSE16 _IOR ('x', 21, int) -#define SERIAL_SETUSE16 _IOW ('x', 21, int) - -/* - * Query/set crc4 mode (E1). - */ -#define SERIAL_GETCRC4 _IOR ('x', 22, int) -#define SERIAL_SETCRC4 _IOW ('x', 22, int) - -/* - * Query/set the timeout to recover after transmit interrupt loss. - * If timo==0 recover will be disabled. - */ -#define SERIAL_GETTIMO _IOR ('x', 23, long) -#define SERIAL_SETTIMO _IOW ('x', 23, long) - -/* - * Query/set port type for old models of Sigma - * -1 Fixed or cable select - * 0 RS-232 - * 1 V35 - * 2 RS-449 - * 3 E1 (only for Windows 2000) - * 4 G.703 (only for Windows 2000) - * 5 DATA (only for Windows 2000) - * 6 E3 (only for Windows 2000) - * 7 T3 (only for Windows 2000) - * 8 STS1 (only for Windows 2000) - */ -#define SERIAL_GETPORT _IOR ('x', 25, int) -#define SERIAL_SETPORT _IOW ('x', 25, int) - -/* - * Add the virtual channel DLCI (Frame Relay). - */ -#define SERIAL_ADDDLCI _IOW ('x', 26, int) - -/* - * Invert receive clock. - */ -#define SERIAL_GETINVRCLK _IOR ('x', 27, int) -#define SERIAL_SETINVRCLK _IOW ('x', 27, int) - -/* - * Invert transmit clock. - */ -#define SERIAL_GETINVTCLK _IOR ('x', 28, int) -#define SERIAL_SETINVTCLK _IOW ('x', 28, int) - -/* - * Unframed E1 mode. - */ -#define SERIAL_GETUNFRAM _IOR ('x', 29, int) -#define SERIAL_SETUNFRAM _IOW ('x', 29, int) - -/* - * E1 monitoring mode. - */ -#define SERIAL_GETMONITOR _IOR ('x', 30, int) -#define SERIAL_SETMONITOR _IOW ('x', 30, int) - -/* - * Interrupt number. - */ -#define SERIAL_GETIRQ _IOR ('x', 31, int) - -/* - * Reset. - */ -#define SERIAL_RESET _IO ('x', 32) - -/* - * Hard reset. - */ -#define SERIAL_HARDRESET _IO ('x', 33) - -/* - * Query cable type. - */ -#define SERIAL_GETCABLE _IOR ('x', 34, int) - -/* - * Assignment of HDLC ports to E1 channels. - */ -#define SERIAL_GETDIR _IOR ('x', 35, int) -#define SERIAL_SETDIR _IOW ('x', 35, int) - -struct dxc_table { /* cross-connector parameters */ - unsigned char ts [32]; /* timeslot number */ - unsigned char link [32]; /* E1 link number */ -}; - -/* - * DXC cross-connector settings for E1 channels. - */ -#define SERIAL_GETDXC _IOR ('x', 36, struct dxc_table) -#define SERIAL_SETDXC _IOW ('x', 36, struct dxc_table) - -/* - * Scrambler for G.703. - */ -#define SERIAL_GETSCRAMBLER _IOR ('x', 37, int) -#define SERIAL_SETSCRAMBLER _IOW ('x', 37, int) - -/* - * Length of cable for T3 and STS-1. - */ -#define SERIAL_GETCABLEN _IOR ('x', 38, int) -#define SERIAL_SETCABLEN _IOW ('x', 38, int) - -/* - * Remote loopback for E3, T3 and STS-1. - */ -#define SERIAL_GETRLOOP _IOR ('x', 39, int) -#define SERIAL_SETRLOOP _IOW ('x', 39, int) - -/* - * G.703 line code - */ -#define SERIAL_GETLCODE _IOR ('x', 40, int) -#define SERIAL_SETLCODE _IOW ('x', 40, int) - -/* - * MTU - */ -#define SERIAL_GETMTU _IOR ('x', 41, int) -#define SERIAL_SETMTU _IOW ('x', 41, int) - -/* - * Receive Queue Length - */ -#define SERIAL_GETRQLEN _IOR ('x', 42, int) -#define SERIAL_SETRQLEN _IOW ('x', 42, int) - -#ifdef __KERNEL__ -#ifdef CRONYX_LYSAP -# define LYSAP_PEER_ADD _IOWR('x', 101, lysap_peer_config_t) -# define LYSAP_PEER_REMOVE _IOW('x', 102, unsigned) -# define LYSAP_PEER_INFO _IOWR('x', 103, lysap_peer_info_t) -# define LYSAP_PEER_COUNT _IOR('x', 104, unsigned) -# define LYSAP_PEER_ENUM _IOWR('x', 105, unsigned) -# define LYSAP_PEER_CLEAR _IOW('x', 106, unsigned) - -# define LYSAP_CHAN_ADD _IOWR('x', 111, lysap_channel_config_t) -# define LYSAP_CHAN_REMOVE _IO('x', 112) -# define LYSAP_CHAN_INFO _IOR('x', 113, lysap_channel_info_t) -# define LYSAP_CHAN_COUNT _IOR('x', 114, unsigned) -# define LYSAP_CHAN_ENUM _IOWR('x', 115, unsigned) -# define LYSAP_CHAN_CLEAR _IO('x', 116) -# include "lysap-linux.h" -#else /* CRONYX_LYSAP */ - typedef struct _lysap_channel_t lysap_channel_t; - typedef struct _lysap_channel_config_t lysap_channel_config_t; - typedef struct _LYSAP_DeviceInterfaceConfig LYSAP_DeviceInterfaceConfig; - typedef struct _LYSAP_ChannelConfig LYSAP_ChannelConfig; - typedef struct _lysap_buf_t lysap_buf_t; -#endif /* !CRONYX_LYSAP */ - -/* - * Dynamic binder interface. - */ -typedef struct _chan_t chan_t; -typedef struct _proto_t proto_t; - -void binder_register_protocol (proto_t *p); -void binder_unregister_protocol (proto_t *p); - -int binder_register_channel (chan_t *h, char *prefix, int minor); -void binder_unregister_channel (chan_t *h); - -/* - * Hardware channel driver structure. - */ -struct sk_buff; - -struct _chan_t { - char name [16]; - int mtu; /* max packet size */ - int fifosz; /* total hardware i/o buffer size */ - int port; /* hardware base i/o port */ - int irq; /* hardware interrupt line */ - int minor; /* minor number 0..127, assigned by binder */ - int debug; /* debug level, 0..2 */ - int running; /* running, 0..1 */ - struct _proto_t *proto; /* protocol interface data */ - void *sw; /* protocol private data */ - void *hw; /* hardware layer private data */ - - /* Interface to protocol */ - int (*up) (chan_t *h); - void (*down) (chan_t *h); - int (*transmit) (chan_t *h, struct sk_buff *skb); - void (*set_dtr) (chan_t *h, int val); - void (*set_rts) (chan_t *h, int val); - int (*query_dtr) (chan_t *h); - int (*query_rts) (chan_t *h); - int (*query_dsr) (chan_t *h); - int (*query_cts) (chan_t *h); - int (*query_dcd) (chan_t *h); - - /* Interface to async protocol */ - void (*set_async_param) (chan_t *h, int baud, int bits, int parity, - int stop2, int ignpar, int rtscts, - int ixon, int ixany, int symstart, int symstop); - void (*send_break) (chan_t *h, int msec); - void (*send_xon) (chan_t *h); - void (*send_xoff) (chan_t *h); - void (*start_transmitter) (chan_t *h); - void (*stop_transmitter) (chan_t *h); - void (*flush_transmit_buffer) (chan_t *h); - - /* Control interface */ - int (*control) (chan_t *h, unsigned int cmd, unsigned long arg); - - /* LYSAP interface */ - struct lysap_t - { - lysap_channel_t *link; - int (*inspect_config)(chan_t *h, lysap_channel_config_t *, - LYSAP_DeviceInterfaceConfig *, LYSAP_ChannelConfig *); - unsigned long (*probe_freq)(chan_t *h, unsigned long freq); - unsigned long (*set_freq)(chan_t *h, unsigned long freq); - unsigned (*get_status)(chan_t *h); - int (*transmit) (chan_t *h, lysap_buf_t *b); - lysap_buf_t* (*alloc_buf) (chan_t *h, unsigned len); - int (*set_clock_master)(chan_t *h, int enable); - unsigned long (*get_master_freq)(chan_t *h); - } lysap; -}; - -/* - * Protocol driver structure. - */ -struct _proto_t { - char *name; - struct _proto_t *next; - - /* Interface to channel */ - void (*receive) (chan_t *h, struct sk_buff *skb); - void (*receive_error) (chan_t *h, int errcode); - void (*transmit) (chan_t *h); - void (*modem_event) (chan_t *h); - - /* Interface to binder */ - int (*open) (chan_t *h); - void (*close) (chan_t *h); - int (*read) (chan_t *h, unsigned short flg, char *buf, int len); - int (*write) (chan_t *h, unsigned short flg, const char *buf, int len); - int (*select) (chan_t *h, int type, void *st, struct file *filp); - struct fasync_struct *fasync; - - /* Control interface */ - int (*attach) (chan_t *h); - int (*detach) (chan_t *h); - int (*control) (chan_t *h, unsigned int cmd, unsigned long arg); - - /* LYSAP interface */ - void (*transmit_error) (chan_t *h, int errcode); - void (*lysap_notify_receive) (chan_t *h, lysap_buf_t *b); - void (*lysap_notify_transmit) (chan_t *h); - lysap_buf_t* (*lysap_get_data)(chan_t *h); -}; -#endif /* KERNEL */ Index: sys/dev/cp/if_cp.c =================================================================== --- sys/dev/cp/if_cp.c +++ /dev/null @@ -1,1966 +0,0 @@ -/*- - * Cronyx-Tau-PCI adapter driver for FreeBSD. - * Supports PPP/HDLC, Cisco/HDLC and FrameRelay protocol in synchronous mode, - * and asynchronous channels with full modem control. - * Keepalive protocol implemented in both Cisco and PPP modes. - * - * Copyright (C) 1999-2004 Cronyx Engineering. - * Author: Kurakin Roman, - * - * Copyright (C) 1999-2002 Cronyx Engineering. - * Author: Serge Vakulenko, - * - * This software is distributed with NO WARRANTIES, not even the implied - * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * Authors grant any other persons or organisations a permission to use, - * modify and redistribute this software in source and binary forms, - * as long as this message is kept with the software, all derivative - * works or modified versions. - * - * Cronyx Id: if_cp.c,v 1.1.2.41 2004/06/23 17:09:13 rik Exp $ - */ - -#include -__FBSDID("$FreeBSD$"); - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define CP_DEBUG(d,s) ({if (d->chan->debug) {\ - printf ("%s: ", d->name); printf s;}}) -#define CP_DEBUG2(d,s) ({if (d->chan->debug>1) {\ - printf ("%s: ", d->name); printf s;}}) -#define CP_LOCK_NAME "cpX" - -#define CP_LOCK(_bd) mtx_lock (&(_bd)->cp_mtx) -#define CP_UNLOCK(_bd) mtx_unlock (&(_bd)->cp_mtx) -#define CP_LOCK_ASSERT(_bd) mtx_assert (&(_bd)->cp_mtx, MA_OWNED) - -static int cp_probe __P((device_t)); -static int cp_attach __P((device_t)); -static int cp_detach __P((device_t)); - -static device_method_t cp_methods[] = { - /* Device interface */ - DEVMETHOD(device_probe, cp_probe), - DEVMETHOD(device_attach, cp_attach), - DEVMETHOD(device_detach, cp_detach), - - DEVMETHOD_END -}; - -typedef struct _cp_dma_mem_t { - unsigned long phys; - void *virt; - size_t size; - bus_dma_tag_t dmat; - bus_dmamap_t mapp; -} cp_dma_mem_t; - -typedef struct _drv_t { - char name [8]; - int running; - cp_chan_t *chan; - cp_board_t *board; - cp_dma_mem_t dmamem; - char nodename [NG_NODESIZ]; - hook_p hook; - hook_p debug_hook; - node_p node; - struct ifqueue queue; - struct ifqueue hi_queue; - short timeout; - struct callout timeout_handle; - struct cdev *devt; -} drv_t; - -typedef struct _bdrv_t { - cp_board_t *board; - struct resource *cp_res; - struct resource *cp_irq; - void *cp_intrhand; - cp_dma_mem_t dmamem; - drv_t channel [NCHAN]; - struct mtx cp_mtx; -} bdrv_t; - -static driver_t cp_driver = { - "cp", - cp_methods, - sizeof(bdrv_t), -}; - -static devclass_t cp_devclass; - -static void cp_receive (cp_chan_t *c, unsigned char *data, int len); -static void cp_transmit (cp_chan_t *c, void *attachment, int len); -static void cp_error (cp_chan_t *c, int data); -static void cp_up (drv_t *d); -static void cp_start (drv_t *d); -static void cp_down (drv_t *d); -static void cp_watchdog (drv_t *d); -static void cp_watchdog_timer (void *arg); -static struct ng_type typestruct; - -static cp_board_t *adapter [NBRD]; -static drv_t *channel [NBRD*NCHAN]; -static struct callout led_timo [NBRD]; -static struct callout timeout_handle; - -static int cp_destroy = 0; - -static int cp_open (struct cdev *dev, int oflags, int devtype, struct thread *td); -static int cp_close (struct cdev *dev, int fflag, int devtype, struct thread *td); -static int cp_ioctl (struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *td); -static struct cdevsw cp_cdevsw = { - .d_version = D_VERSION, - .d_open = cp_open, - .d_close = cp_close, - .d_ioctl = cp_ioctl, - .d_name = "cp", -}; - -/* - * Make an mbuf from data. - */ -static struct mbuf *makembuf (void *buf, unsigned len) -{ - struct mbuf *m; - - MGETHDR (m, M_NOWAIT, MT_DATA); - if (! m) - return 0; - if (!(MCLGET (m, M_NOWAIT))) { - m_freem (m); - return 0; - } - m->m_pkthdr.len = m->m_len = len; - bcopy (buf, mtod (m, caddr_t), len); - return m; -} - -static int cp_probe (device_t dev) -{ - if ((pci_get_vendor (dev) == cp_vendor_id) && - (pci_get_device (dev) == cp_device_id)) { - device_set_desc (dev, "Cronyx-Tau-PCI serial adapter"); - return BUS_PROBE_DEFAULT; - } - return ENXIO; -} - -static void cp_timeout (void *arg) -{ - drv_t *d; - int s, i, k; - - for (i = 0; i < NBRD; ++i) { - if (adapter[i] == NULL) - continue; - for (k = 0; k < NCHAN; ++k) { - s = splimp (); - if (cp_destroy) { - splx (s); - return; - } - d = channel[i * NCHAN + k]; - if (!d) { - splx (s); - continue; - } - CP_LOCK ((bdrv_t *)d->board->sys); - switch (d->chan->type) { - case T_G703: - cp_g703_timer (d->chan); - break; - case T_E1: - cp_e1_timer (d->chan); - break; - case T_E3: - case T_T3: - case T_STS1: - cp_e3_timer (d->chan); - break; - default: - break; - } - CP_UNLOCK ((bdrv_t *)d->board->sys); - splx (s); - } - } - s = splimp (); - if (!cp_destroy) - callout_reset (&timeout_handle, hz, cp_timeout, 0); - splx (s); -} - -static void cp_led_off (void *arg) -{ - cp_board_t *b = arg; - bdrv_t *bd = (bdrv_t *) b->sys; - int s; - s = splimp (); - if (cp_destroy) { - splx (s); - return; - } - CP_LOCK (bd); - cp_led (b, 0); - CP_UNLOCK (bd); - splx (s); -} - -static void cp_intr (void *arg) -{ - bdrv_t *bd = arg; - cp_board_t *b = bd->board; - int s = splimp (); - if (cp_destroy) { - splx (s); - return; - } - CP_LOCK (bd); - /* Check if we are ready */ - if (b->sys == NULL) { - /* Not we are not, just cleanup. */ - cp_interrupt_poll (b, 1); - CP_UNLOCK (bd); - return; - } - /* Turn LED on. */ - cp_led (b, 1); - - cp_interrupt (b); - - /* Turn LED off 50 msec later. */ - callout_reset (&led_timo[b->num], hz/20, cp_led_off, b); - CP_UNLOCK (bd); - splx (s); - -} - -static void -cp_bus_dmamap_addr (void *arg, bus_dma_segment_t *segs, int nseg, int error) -{ - unsigned long *addr; - - if (error) - return; - - KASSERT(nseg == 1, ("too many DMA segments, %d should be 1", nseg)); - addr = arg; - *addr = segs->ds_addr; -} - -static int -cp_bus_dma_mem_alloc (int bnum, int cnum, cp_dma_mem_t *dmem) -{ - int error; - - error = bus_dma_tag_create (NULL, 16, 0, BUS_SPACE_MAXADDR_32BIT, - BUS_SPACE_MAXADDR, NULL, NULL, dmem->size, 1, - dmem->size, 0, NULL, NULL, &dmem->dmat); - if (error) { - if (cnum >= 0) printf ("cp%d-%d: ", bnum, cnum); - else printf ("cp%d: ", bnum); - printf ("couldn't allocate tag for dma memory\n"); - return 0; - } - error = bus_dmamem_alloc (dmem->dmat, (void **)&dmem->virt, - BUS_DMA_NOWAIT | BUS_DMA_ZERO, &dmem->mapp); - if (error) { - if (cnum >= 0) printf ("cp%d-%d: ", bnum, cnum); - else printf ("cp%d: ", bnum); - printf ("couldn't allocate mem for dma memory\n"); - bus_dma_tag_destroy (dmem->dmat); - return 0; - } - error = bus_dmamap_load (dmem->dmat, dmem->mapp, dmem->virt, - dmem->size, cp_bus_dmamap_addr, &dmem->phys, 0); - if (error) { - if (cnum >= 0) printf ("cp%d-%d: ", bnum, cnum); - else printf ("cp%d: ", bnum); - printf ("couldn't load mem map for dma memory\n"); - bus_dmamem_free (dmem->dmat, dmem->virt, dmem->mapp); - bus_dma_tag_destroy (dmem->dmat); - return 0; - } - return 1; -} - -static void -cp_bus_dma_mem_free (cp_dma_mem_t *dmem) -{ - bus_dmamap_unload (dmem->dmat, dmem->mapp); - bus_dmamem_free (dmem->dmat, dmem->virt, dmem->mapp); - bus_dma_tag_destroy (dmem->dmat); -} - -/* - * Called if the probe succeeded. - */ -static int cp_attach (device_t dev) -{ - bdrv_t *bd = device_get_softc (dev); - int unit = device_get_unit (dev); - char *cp_ln = CP_LOCK_NAME; - unsigned short res; - vm_offset_t vbase; - int rid, error; - cp_board_t *b; - cp_chan_t *c; - drv_t *d; - int s = splimp (); - - gone_in_dev(dev, 14, "Cronyx Tau"); - b = malloc (sizeof(cp_board_t), M_DEVBUF, M_WAITOK); - if (!b) { - printf ("cp%d: couldn't allocate memory\n", unit); - splx (s); - return (ENXIO); - } - bzero (b, sizeof(cp_board_t)); - - bd->board = b; - rid = PCIR_BAR(0); - bd->cp_res = bus_alloc_resource (dev, SYS_RES_MEMORY, &rid, - 0, ~0, 1, RF_ACTIVE); - if (! bd->cp_res) { - printf ("cp%d: cannot map memory\n", unit); - free (b, M_DEVBUF); - splx (s); - return (ENXIO); - } - vbase = (vm_offset_t) rman_get_virtual (bd->cp_res); - - cp_ln[2] = '0' + unit; - mtx_init (&bd->cp_mtx, cp_ln, MTX_NETWORK_LOCK, MTX_DEF|MTX_RECURSE); - res = cp_init (b, unit, (u_char*) vbase); - if (res) { - printf ("cp%d: can't init, error code:%x\n", unit, res); - bus_release_resource (dev, SYS_RES_MEMORY, PCIR_BAR(0), bd->cp_res); - free (b, M_DEVBUF); - splx (s); - return (ENXIO); - } - - bd->dmamem.size = sizeof(cp_qbuf_t); - if (! cp_bus_dma_mem_alloc (unit, -1, &bd->dmamem)) { - free (b, M_DEVBUF); - splx (s); - return (ENXIO); - } - CP_LOCK (bd); - cp_reset (b, bd->dmamem.virt, bd->dmamem.phys); - CP_UNLOCK (bd); - - rid = 0; - bd->cp_irq = bus_alloc_resource (dev, SYS_RES_IRQ, &rid, 0, ~0, 1, - RF_SHAREABLE | RF_ACTIVE); - if (! bd->cp_irq) { - cp_destroy = 1; - printf ("cp%d: cannot map interrupt\n", unit); - bus_release_resource (dev, SYS_RES_MEMORY, - PCIR_BAR(0), bd->cp_res); - mtx_destroy (&bd->cp_mtx); - free (b, M_DEVBUF); - splx (s); - return (ENXIO); - } - callout_init (&led_timo[unit], 1); - error = bus_setup_intr (dev, bd->cp_irq, - INTR_TYPE_NET|INTR_MPSAFE, - NULL, cp_intr, bd, &bd->cp_intrhand); - if (error) { - cp_destroy = 1; - printf ("cp%d: cannot set up irq\n", unit); - bus_release_resource (dev, SYS_RES_IRQ, 0, bd->cp_irq); - bus_release_resource (dev, SYS_RES_MEMORY, - PCIR_BAR(0), bd->cp_res); - mtx_destroy (&bd->cp_mtx); - free (b, M_DEVBUF); - splx (s); - return (ENXIO); - } - printf ("cp%d: %s, clock %ld MHz\n", unit, b->name, b->osc / 1000000); - - for (c = b->chan; c < b->chan + NCHAN; ++c) { - if (! c->type) - continue; - d = &bd->channel[c->num]; - d->dmamem.size = sizeof(cp_buf_t); - if (! cp_bus_dma_mem_alloc (unit, c->num, &d->dmamem)) - continue; - channel [b->num*NCHAN + c->num] = d; - sprintf (d->name, "cp%d.%d", b->num, c->num); - d->board = b; - d->chan = c; - c->sys = d; - callout_init (&d->timeout_handle, 1); - if (ng_make_node_common (&typestruct, &d->node) != 0) { - printf ("%s: cannot make common node\n", d->name); - d->node = NULL; - continue; - } - NG_NODE_SET_PRIVATE (d->node, d); - sprintf (d->nodename, "%s%d", NG_CP_NODE_TYPE, - c->board->num*NCHAN + c->num); - if (ng_name_node (d->node, d->nodename)) { - printf ("%s: cannot name node\n", d->nodename); - NG_NODE_UNREF (d->node); - continue; - } - d->queue.ifq_maxlen = ifqmaxlen; - d->hi_queue.ifq_maxlen = ifqmaxlen; - mtx_init (&d->queue.ifq_mtx, "cp_queue", NULL, MTX_DEF); - mtx_init (&d->hi_queue.ifq_mtx, "cp_queue_hi", NULL, MTX_DEF); - cp_start_e1 (c); - cp_start_chan (c, 1, 1, d->dmamem.virt, d->dmamem.phys); - - /* Register callback functions. */ - cp_register_transmit (c, &cp_transmit); - cp_register_receive (c, &cp_receive); - cp_register_error (c, &cp_error); - d->devt = make_dev (&cp_cdevsw, b->num*NCHAN+c->num, UID_ROOT, - GID_WHEEL, 0600, "cp%d", b->num*NCHAN+c->num); - } - CP_LOCK (bd); - b->sys = bd; - adapter[unit] = b; - CP_UNLOCK (bd); - splx (s); - return 0; -} - -static int cp_detach (device_t dev) -{ - bdrv_t *bd = device_get_softc (dev); - cp_board_t *b = bd->board; - cp_chan_t *c; - int s; - - KASSERT (mtx_initialized (&bd->cp_mtx), ("cp mutex not initialized")); - s = splimp (); - CP_LOCK (bd); - /* Check if the device is busy (open). */ - for (c = b->chan; c < b->chan + NCHAN; ++c) { - drv_t *d = (drv_t*) c->sys; - - if (! d || ! d->chan->type) - continue; - if (d->running) { - CP_UNLOCK (bd); - splx (s); - return EBUSY; - } - } - - /* Ok, we can unload driver */ - /* At first we should stop all channels */ - for (c = b->chan; c < b->chan + NCHAN; ++c) { - drv_t *d = (drv_t*) c->sys; - - if (! d || ! d->chan->type) - continue; - - cp_stop_chan (c); - cp_stop_e1 (c); - cp_set_dtr (d->chan, 0); - cp_set_rts (d->chan, 0); - } - - /* Reset the adapter. */ - cp_destroy = 1; - cp_interrupt_poll (b, 1); - cp_led_off (b); - cp_reset (b, 0 ,0); - callout_stop (&led_timo[b->num]); - - /* Disable the interrupt request. */ - bus_teardown_intr (dev, bd->cp_irq, bd->cp_intrhand); - - for (c=b->chan; cchan+NCHAN; ++c) { - drv_t *d = (drv_t*) c->sys; - - if (! d || ! d->chan->type) - continue; - callout_stop (&d->timeout_handle); - if (d->node) { - ng_rmnode_self (d->node); - NG_NODE_UNREF (d->node); - d->node = NULL; - } - mtx_destroy (&d->queue.ifq_mtx); - mtx_destroy (&d->hi_queue.ifq_mtx); - destroy_dev (d->devt); - } - - b->sys = NULL; - CP_UNLOCK (bd); - - bus_release_resource (dev, SYS_RES_IRQ, 0, bd->cp_irq); - bus_release_resource (dev, SYS_RES_MEMORY, PCIR_BAR(0), bd->cp_res); - - CP_LOCK (bd); - cp_led_off (b); - CP_UNLOCK (bd); - callout_drain (&led_timo[b->num]); - splx (s); - - for (c = b->chan; c < b->chan + NCHAN; ++c) { - drv_t *d = (drv_t*) c->sys; - - if (! d || ! d->chan->type) - continue; - callout_drain (&d->timeout_handle); - channel [b->num*NCHAN + c->num] = NULL; - /* Deallocate buffers. */ - cp_bus_dma_mem_free (&d->dmamem); - } - adapter [b->num] = NULL; - cp_bus_dma_mem_free (&bd->dmamem); - free (b, M_DEVBUF); - mtx_destroy (&bd->cp_mtx); - return 0; -} - - -/* - * Stop the interface. Called on splimp(). - */ -static void cp_down (drv_t *d) -{ - CP_DEBUG (d, ("cp_down\n")); - /* Interface is going down -- stop it. */ - cp_set_dtr (d->chan, 0); - cp_set_rts (d->chan, 0); - - d->running = 0; - callout_stop (&d->timeout_handle); -} - -/* - * Start the interface. Called on splimp(). - */ -static void cp_up (drv_t *d) -{ - CP_DEBUG (d, ("cp_up\n")); - cp_set_dtr (d->chan, 1); - cp_set_rts (d->chan, 1); - d->running = 1; -} - -/* - * Start output on the interface. Get another datagram to send - * off of the interface queue, and copy it to the interface - * before starting the output. - */ -static void cp_send (drv_t *d) -{ - struct mbuf *m; - u_short len; - - CP_DEBUG2 (d, ("cp_send, tn=%d te=%d\n", d->chan->tn, d->chan->te)); - - /* No output if the interface is down. */ - if (! d->running) - return; - - /* No output if the modem is off. */ - if (! (d->chan->lloop || d->chan->type != T_SERIAL || - cp_get_dsr (d->chan))) - return; - - while (cp_transmit_space (d->chan)) { - /* Get the packet to send. */ - IF_DEQUEUE (&d->hi_queue, m); - if (! m) - IF_DEQUEUE (&d->queue, m); - if (! m) - return; - len = m_length (m, NULL); - if (len >= BUFSZ) - printf ("%s: too long packet: %d bytes: ", - d->name, len); - else if (! m->m_next) - cp_send_packet (d->chan, (u_char*) mtod (m, caddr_t), len, 0); - else { - u_char *buf = d->chan->tbuf[d->chan->te]; - m_copydata (m, 0, len, buf); - cp_send_packet (d->chan, buf, len, 0); - } - m_freem (m); - /* Set up transmit timeout, if the transmit ring is not empty.*/ - d->timeout = 10; - } -} - -/* - * Start output on the interface. - * Always called on splimp(). - */ -static void cp_start (drv_t *d) -{ - if (d->running) { - if (! d->chan->dtr) - cp_set_dtr (d->chan, 1); - if (! d->chan->rts) - cp_set_rts (d->chan, 1); - cp_send (d); - callout_reset (&d->timeout_handle, hz, cp_watchdog_timer, d); - } -} - -/* - * Handle transmit timeouts. - * Recover after lost transmit interrupts. - * Always called on splimp(). - */ -static void cp_watchdog (drv_t *d) -{ - CP_DEBUG (d, ("device timeout\n")); - if (d->running) { - cp_stop_chan (d->chan); - cp_stop_e1 (d->chan); - cp_start_e1 (d->chan); - cp_start_chan (d->chan, 1, 1, 0, 0); - cp_set_dtr (d->chan, 1); - cp_set_rts (d->chan, 1); - cp_start (d); - } -} - -static void cp_watchdog_timer (void *arg) -{ - drv_t *d = arg; - bdrv_t *bd = d->board->sys; - - CP_LOCK (bd); - if (d->timeout == 1) - cp_watchdog (d); - if (d->timeout) - d->timeout--; - callout_reset (&d->timeout_handle, hz, cp_watchdog_timer, d); - CP_UNLOCK (bd); -} - -static void cp_transmit (cp_chan_t *c, void *attachment, int len) -{ - drv_t *d = c->sys; - - d->timeout = 0; - cp_start (d); -} - -static void cp_receive (cp_chan_t *c, unsigned char *data, int len) -{ - drv_t *d = c->sys; - struct mbuf *m; - int error; - - if (! d->running) - return; - - m = makembuf (data, len); - if (! m) { - CP_DEBUG (d, ("no memory for packet\n")); - return; - } - if (c->debug > 1) - m_print (m, 0); - m->m_pkthdr.rcvif = 0; - NG_SEND_DATA_ONLY (error, d->hook, m); -} - -static void cp_error (cp_chan_t *c, int data) -{ - drv_t *d = c->sys; - - switch (data) { - case CP_FRAME: - CP_DEBUG (d, ("frame error\n")); - break; - case CP_CRC: - CP_DEBUG (d, ("crc error\n")); - break; - case CP_OVERRUN: - CP_DEBUG (d, ("overrun error\n")); - break; - case CP_OVERFLOW: - CP_DEBUG (d, ("overflow error\n")); - break; - case CP_UNDERRUN: - CP_DEBUG (d, ("underrun error\n")); - d->timeout = 0; - cp_start (d); - break; - default: - CP_DEBUG (d, ("error #%d\n", data)); - break; - } -} - -/* - * You also need read, write, open, close routines. - * This should get you started - */ -static int cp_open (struct cdev *dev, int oflags, int devtype, struct thread *td) -{ - int unit = dev2unit (dev); - drv_t *d; - - if (unit >= NBRD*NCHAN || ! (d = channel[unit])) - return ENXIO; - CP_DEBUG2 (d, ("cp_open\n")); - return 0; -} - -/* - * Only called on the LAST close. - */ -static int cp_close (struct cdev *dev, int fflag, int devtype, struct thread *td) -{ - drv_t *d = channel [dev2unit (dev)]; - - CP_DEBUG2 (d, ("cp_close\n")); - return 0; -} - -static int cp_modem_status (cp_chan_t *c) -{ - drv_t *d = c->sys; - bdrv_t *bd = d->board->sys; - int status, s; - - status = d->running ? TIOCM_LE : 0; - s = splimp (); - CP_LOCK (bd); - if (cp_get_cd (c)) status |= TIOCM_CD; - if (cp_get_cts (c)) status |= TIOCM_CTS; - if (cp_get_dsr (c)) status |= TIOCM_DSR; - if (c->dtr) status |= TIOCM_DTR; - if (c->rts) status |= TIOCM_RTS; - CP_UNLOCK (bd); - splx (s); - return status; -} - -static int cp_ioctl (struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *td) -{ - drv_t *d = channel [dev2unit (dev)]; - bdrv_t *bd = d->board->sys; - cp_chan_t *c = d->chan; - struct serial_statistics *st; - struct e1_statistics *opte1; - struct e3_statistics *opte3; - int error, s; - char mask[16]; - - switch (cmd) { - case SERIAL_GETREGISTERED: - CP_DEBUG2 (d, ("ioctl: getregistered\n")); - bzero (mask, sizeof(mask)); - for (s=0; stype != T_E1 || c->unfram) - return EINVAL; - *(char*)data = c->board->mux ? 'c' : 'a'; - return 0; - - case SERIAL_SETCFG: - CP_DEBUG2 (d, ("ioctl: setcfg\n")); - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_mux (c->board, *((char*)data) == 'c'); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETSTAT: - CP_DEBUG2 (d, ("ioctl: getstat\n")); - st = (struct serial_statistics*) data; - st->rintr = c->rintr; - st->tintr = c->tintr; - st->mintr = 0; - st->ibytes = c->ibytes; - st->ipkts = c->ipkts; - st->obytes = c->obytes; - st->opkts = c->opkts; - st->ierrs = c->overrun + c->frame + c->crc; - st->oerrs = c->underrun; - return 0; - - case SERIAL_GETESTAT: - CP_DEBUG2 (d, ("ioctl: getestat\n")); - if (c->type != T_E1 && c->type != T_G703) - return EINVAL; - opte1 = (struct e1_statistics*) data; - opte1->status = c->status; - opte1->cursec = c->cursec; - opte1->totsec = c->totsec + c->cursec; - - opte1->currnt.bpv = c->currnt.bpv; - opte1->currnt.fse = c->currnt.fse; - opte1->currnt.crce = c->currnt.crce; - opte1->currnt.rcrce = c->currnt.rcrce; - opte1->currnt.uas = c->currnt.uas; - opte1->currnt.les = c->currnt.les; - opte1->currnt.es = c->currnt.es; - opte1->currnt.bes = c->currnt.bes; - opte1->currnt.ses = c->currnt.ses; - opte1->currnt.oofs = c->currnt.oofs; - opte1->currnt.css = c->currnt.css; - opte1->currnt.dm = c->currnt.dm; - - opte1->total.bpv = c->total.bpv + c->currnt.bpv; - opte1->total.fse = c->total.fse + c->currnt.fse; - opte1->total.crce = c->total.crce + c->currnt.crce; - opte1->total.rcrce = c->total.rcrce + c->currnt.rcrce; - opte1->total.uas = c->total.uas + c->currnt.uas; - opte1->total.les = c->total.les + c->currnt.les; - opte1->total.es = c->total.es + c->currnt.es; - opte1->total.bes = c->total.bes + c->currnt.bes; - opte1->total.ses = c->total.ses + c->currnt.ses; - opte1->total.oofs = c->total.oofs + c->currnt.oofs; - opte1->total.css = c->total.css + c->currnt.css; - opte1->total.dm = c->total.dm + c->currnt.dm; - for (s=0; s<48; ++s) { - opte1->interval[s].bpv = c->interval[s].bpv; - opte1->interval[s].fse = c->interval[s].fse; - opte1->interval[s].crce = c->interval[s].crce; - opte1->interval[s].rcrce = c->interval[s].rcrce; - opte1->interval[s].uas = c->interval[s].uas; - opte1->interval[s].les = c->interval[s].les; - opte1->interval[s].es = c->interval[s].es; - opte1->interval[s].bes = c->interval[s].bes; - opte1->interval[s].ses = c->interval[s].ses; - opte1->interval[s].oofs = c->interval[s].oofs; - opte1->interval[s].css = c->interval[s].css; - opte1->interval[s].dm = c->interval[s].dm; - } - return 0; - - case SERIAL_GETE3STAT: - CP_DEBUG2 (d, ("ioctl: gete3stat\n")); - if (c->type != T_E3 && c->type != T_T3 && c->type != T_STS1) - return EINVAL; - opte3 = (struct e3_statistics*) data; - - opte3->status = c->e3status; - opte3->cursec = (c->e3csec_5 * 2 + 1) / 10; - opte3->totsec = c->e3tsec + opte3->cursec; - - opte3->ccv = c->e3ccv; - opte3->tcv = c->e3tcv + opte3->ccv; - - for (s = 0; s < 48; ++s) { - opte3->icv[s] = c->e3icv[s]; - } - return 0; - - case SERIAL_CLRSTAT: - CP_DEBUG2 (d, ("ioctl: clrstat\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - c->rintr = 0; - c->tintr = 0; - c->ibytes = 0; - c->obytes = 0; - c->ipkts = 0; - c->opkts = 0; - c->overrun = 0; - c->frame = 0; - c->crc = 0; - c->underrun = 0; - bzero (&c->currnt, sizeof (c->currnt)); - bzero (&c->total, sizeof (c->total)); - bzero (c->interval, sizeof (c->interval)); - c->e3ccv = 0; - c->e3tcv = 0; - bzero (c->e3icv, sizeof (c->e3icv)); - return 0; - - case SERIAL_GETBAUD: - CP_DEBUG2 (d, ("ioctl: getbaud\n")); - *(long*)data = c->baud; - return 0; - - case SERIAL_SETBAUD: - CP_DEBUG2 (d, ("ioctl: setbaud\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - s = splimp (); - CP_LOCK (bd); - cp_set_baud (c, *(long*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETLOOP: - CP_DEBUG2 (d, ("ioctl: getloop\n")); - *(int*)data = c->lloop; - return 0; - - case SERIAL_SETLOOP: - CP_DEBUG2 (d, ("ioctl: setloop\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - s = splimp (); - CP_LOCK (bd); - cp_set_lloop (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETDPLL: - CP_DEBUG2 (d, ("ioctl: getdpll\n")); - if (c->type != T_SERIAL) - return EINVAL; - *(int*)data = c->dpll; - return 0; - - case SERIAL_SETDPLL: - CP_DEBUG2 (d, ("ioctl: setdpll\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_SERIAL) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_dpll (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETNRZI: - CP_DEBUG2 (d, ("ioctl: getnrzi\n")); - if (c->type != T_SERIAL) - return EINVAL; - *(int*)data = c->nrzi; - return 0; - - case SERIAL_SETNRZI: - CP_DEBUG2 (d, ("ioctl: setnrzi\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_SERIAL) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_nrzi (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETDEBUG: - CP_DEBUG2 (d, ("ioctl: getdebug\n")); - *(int*)data = d->chan->debug; - return 0; - - case SERIAL_SETDEBUG: - CP_DEBUG2 (d, ("ioctl: setdebug\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - d->chan->debug = *(int*)data; - return 0; - - case SERIAL_GETHIGAIN: - CP_DEBUG2 (d, ("ioctl: gethigain\n")); - if (c->type != T_E1) - return EINVAL; - *(int*)data = c->higain; - return 0; - - case SERIAL_SETHIGAIN: - CP_DEBUG2 (d, ("ioctl: sethigain\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_higain (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETPHONY: - CP_DEBUG2 (d, ("ioctl: getphony\n")); - if (c->type != T_E1) - return EINVAL; - *(int*)data = c->phony; - return 0; - - case SERIAL_SETPHONY: - CP_DEBUG2 (d, ("ioctl: setphony\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_phony (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETUNFRAM: - CP_DEBUG2 (d, ("ioctl: getunfram\n")); - if (c->type != T_E1) - return EINVAL; - *(int*)data = c->unfram; - return 0; - - case SERIAL_SETUNFRAM: - CP_DEBUG2 (d, ("ioctl: setunfram\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_unfram (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETSCRAMBLER: - CP_DEBUG2 (d, ("ioctl: getscrambler\n")); - if (c->type != T_G703 && !c->unfram) - return EINVAL; - *(int*)data = c->scrambler; - return 0; - - case SERIAL_SETSCRAMBLER: - CP_DEBUG2 (d, ("ioctl: setscrambler\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_G703 && !c->unfram) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_scrambler (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETMONITOR: - CP_DEBUG2 (d, ("ioctl: getmonitor\n")); - if (c->type != T_E1 && - c->type != T_E3 && - c->type != T_T3 && - c->type != T_STS1) - return EINVAL; - *(int*)data = c->monitor; - return 0; - - case SERIAL_SETMONITOR: - CP_DEBUG2 (d, ("ioctl: setmonitor\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_monitor (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETUSE16: - CP_DEBUG2 (d, ("ioctl: getuse16\n")); - if (c->type != T_E1 || c->unfram) - return EINVAL; - *(int*)data = c->use16; - return 0; - - case SERIAL_SETUSE16: - CP_DEBUG2 (d, ("ioctl: setuse16\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_use16 (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETCRC4: - CP_DEBUG2 (d, ("ioctl: getcrc4\n")); - if (c->type != T_E1 || c->unfram) - return EINVAL; - *(int*)data = c->crc4; - return 0; - - case SERIAL_SETCRC4: - CP_DEBUG2 (d, ("ioctl: setcrc4\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_crc4 (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETCLK: - CP_DEBUG2 (d, ("ioctl: getclk\n")); - if (c->type != T_E1 && - c->type != T_G703 && - c->type != T_E3 && - c->type != T_T3 && - c->type != T_STS1) - return EINVAL; - switch (c->gsyn) { - default: *(int*)data = E1CLK_INTERNAL; break; - case GSYN_RCV: *(int*)data = E1CLK_RECEIVE; break; - case GSYN_RCV0: *(int*)data = E1CLK_RECEIVE_CHAN0; break; - case GSYN_RCV1: *(int*)data = E1CLK_RECEIVE_CHAN1; break; - case GSYN_RCV2: *(int*)data = E1CLK_RECEIVE_CHAN2; break; - case GSYN_RCV3: *(int*)data = E1CLK_RECEIVE_CHAN3; break; - } - return 0; - - case SERIAL_SETCLK: - CP_DEBUG2 (d, ("ioctl: setclk\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_E1 && - c->type != T_G703 && - c->type != T_E3 && - c->type != T_T3 && - c->type != T_STS1) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - switch (*(int*)data) { - default: cp_set_gsyn (c, GSYN_INT); break; - case E1CLK_RECEIVE: cp_set_gsyn (c, GSYN_RCV); break; - case E1CLK_RECEIVE_CHAN0: cp_set_gsyn (c, GSYN_RCV0); break; - case E1CLK_RECEIVE_CHAN1: cp_set_gsyn (c, GSYN_RCV1); break; - case E1CLK_RECEIVE_CHAN2: cp_set_gsyn (c, GSYN_RCV2); break; - case E1CLK_RECEIVE_CHAN3: cp_set_gsyn (c, GSYN_RCV3); break; - } - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETTIMESLOTS: - CP_DEBUG2 (d, ("ioctl: gettimeslots\n")); - if ((c->type != T_E1 || c->unfram) && c->type != T_DATA) - return EINVAL; - *(u_long*)data = c->ts; - return 0; - - case SERIAL_SETTIMESLOTS: - CP_DEBUG2 (d, ("ioctl: settimeslots\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if ((c->type != T_E1 || c->unfram) && c->type != T_DATA) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_ts (c, *(u_long*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETINVCLK: - CP_DEBUG2 (d, ("ioctl: getinvclk\n")); -#if 1 - return EINVAL; -#else - if (c->type != T_SERIAL) - return EINVAL; - *(int*)data = c->invtxc; - return 0; -#endif - - case SERIAL_SETINVCLK: - CP_DEBUG2 (d, ("ioctl: setinvclk\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_SERIAL) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_invtxc (c, *(int*)data); - cp_set_invrxc (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETINVTCLK: - CP_DEBUG2 (d, ("ioctl: getinvtclk\n")); - if (c->type != T_SERIAL) - return EINVAL; - *(int*)data = c->invtxc; - return 0; - - case SERIAL_SETINVTCLK: - CP_DEBUG2 (d, ("ioctl: setinvtclk\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_SERIAL) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_invtxc (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETINVRCLK: - CP_DEBUG2 (d, ("ioctl: getinvrclk\n")); - if (c->type != T_SERIAL) - return EINVAL; - *(int*)data = c->invrxc; - return 0; - - case SERIAL_SETINVRCLK: - CP_DEBUG2 (d, ("ioctl: setinvrclk\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - if (c->type != T_SERIAL) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - cp_set_invrxc (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETLEVEL: - CP_DEBUG2 (d, ("ioctl: getlevel\n")); - if (c->type != T_G703) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - *(int*)data = cp_get_lq (c); - CP_UNLOCK (bd); - splx (s); - return 0; - -#if 0 - case SERIAL_RESET: - CP_DEBUG2 (d, ("ioctl: reset\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - s = splimp (); - CP_LOCK (bd); - cp_reset (c->board, 0, 0); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_HARDRESET: - CP_DEBUG2 (d, ("ioctl: hardreset\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - s = splimp (); - CP_LOCK (bd); - /* hard_reset (c->board); */ - CP_UNLOCK (bd); - splx (s); - return 0; -#endif - - case SERIAL_GETCABLE: - CP_DEBUG2 (d, ("ioctl: getcable\n")); - if (c->type != T_SERIAL) - return EINVAL; - s = splimp (); - CP_LOCK (bd); - *(int*)data = cp_get_cable (c); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETDIR: - CP_DEBUG2 (d, ("ioctl: getdir\n")); - if (c->type != T_E1 && c->type != T_DATA) - return EINVAL; - *(int*)data = c->dir; - return 0; - - case SERIAL_SETDIR: - CP_DEBUG2 (d, ("ioctl: setdir\n")); - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - s = splimp (); - CP_LOCK (bd); - cp_set_dir (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETRLOOP: - CP_DEBUG2 (d, ("ioctl: getrloop\n")); - if (c->type != T_G703 && - c->type != T_E3 && - c->type != T_T3 && - c->type != T_STS1) - return EINVAL; - *(int*)data = cp_get_rloop (c); - return 0; - - case SERIAL_SETRLOOP: - CP_DEBUG2 (d, ("ioctl: setloop\n")); - if (c->type != T_E3 && c->type != T_T3 && c->type != T_STS1) - return EINVAL; - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - s = splimp (); - CP_LOCK (bd); - cp_set_rloop (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case SERIAL_GETCABLEN: - CP_DEBUG2 (d, ("ioctl: getcablen\n")); - if (c->type != T_T3 && c->type != T_STS1) - return EINVAL; - *(int*)data = c->cablen; - return 0; - - case SERIAL_SETCABLEN: - CP_DEBUG2 (d, ("ioctl: setloop\n")); - if (c->type != T_T3 && c->type != T_STS1) - return EINVAL; - /* Only for superuser! */ - error = priv_check (td, PRIV_DRIVER); - if (error) - return error; - s = splimp (); - CP_LOCK (bd); - cp_set_cablen (c, *(int*)data); - CP_UNLOCK (bd); - splx (s); - return 0; - - case TIOCSDTR: /* Set DTR */ - s = splimp (); - CP_LOCK (bd); - cp_set_dtr (c, 1); - CP_UNLOCK (bd); - splx (s); - return 0; - - case TIOCCDTR: /* Clear DTR */ - s = splimp (); - CP_LOCK (bd); - cp_set_dtr (c, 0); - CP_UNLOCK (bd); - splx (s); - return 0; - - case TIOCMSET: /* Set DTR/RTS */ - s = splimp (); - CP_LOCK (bd); - cp_set_dtr (c, (*(int*)data & TIOCM_DTR) ? 1 : 0); - cp_set_rts (c, (*(int*)data & TIOCM_RTS) ? 1 : 0); - CP_UNLOCK (bd); - splx (s); - return 0; - - case TIOCMBIS: /* Add DTR/RTS */ - s = splimp (); - CP_LOCK (bd); - if (*(int*)data & TIOCM_DTR) cp_set_dtr (c, 1); - if (*(int*)data & TIOCM_RTS) cp_set_rts (c, 1); - CP_UNLOCK (bd); - splx (s); - return 0; - - case TIOCMBIC: /* Clear DTR/RTS */ - s = splimp (); - CP_LOCK (bd); - if (*(int*)data & TIOCM_DTR) cp_set_dtr (c, 0); - if (*(int*)data & TIOCM_RTS) cp_set_rts (c, 0); - CP_UNLOCK (bd); - splx (s); - return 0; - - case TIOCMGET: /* Get modem status */ - *(int*)data = cp_modem_status (c); - return 0; - } - return ENOTTY; -} - -static int ng_cp_constructor (node_p node) -{ - drv_t *d = NG_NODE_PRIVATE (node); - CP_DEBUG (d, ("Constructor\n")); - return EINVAL; -} - -static int ng_cp_newhook (node_p node, hook_p hook, const char *name) -{ - int s; - drv_t *d = NG_NODE_PRIVATE (node); - bdrv_t *bd = d->board->sys; - - CP_DEBUG (d, ("Newhook\n")); - /* Attach debug hook */ - if (strcmp (name, NG_CP_HOOK_DEBUG) == 0) { - NG_HOOK_SET_PRIVATE (hook, NULL); - d->debug_hook = hook; - return 0; - } - - /* Check for raw hook */ - if (strcmp (name, NG_CP_HOOK_RAW) != 0) - return EINVAL; - - NG_HOOK_SET_PRIVATE (hook, d); - d->hook = hook; - s = splimp (); - CP_LOCK (bd); - cp_up (d); - CP_UNLOCK (bd); - splx (s); - return 0; -} - -static char *format_timeslots (u_long s) -{ - static char buf [100]; - char *p = buf; - int i; - - for (i=1; i<32; ++i) - if ((s >> i) & 1) { - int prev = (i > 1) & (s >> (i-1)); - int next = (i < 31) & (s >> (i+1)); - - if (prev) { - if (next) - continue; - *p++ = '-'; - } else if (p > buf) - *p++ = ','; - - if (i >= 10) - *p++ = '0' + i / 10; - *p++ = '0' + i % 10; - } - *p = 0; - return buf; -} - -static int print_modems (char *s, cp_chan_t *c, int need_header) -{ - int status = cp_modem_status (c); - int length = 0; - - if (need_header) - length += sprintf (s + length, " LE DTR DSR RTS CTS CD\n"); - length += sprintf (s + length, "%4s %4s %4s %4s %4s %4s\n", - status & TIOCM_LE ? "On" : "-", - status & TIOCM_DTR ? "On" : "-", - status & TIOCM_DSR ? "On" : "-", - status & TIOCM_RTS ? "On" : "-", - status & TIOCM_CTS ? "On" : "-", - status & TIOCM_CD ? "On" : "-"); - return length; -} - -static int print_stats (char *s, cp_chan_t *c, int need_header) -{ - int length = 0; - - if (need_header) - length += sprintf (s + length, " Rintr Tintr Mintr Ibytes Ipkts Ierrs Obytes Opkts Oerrs\n"); - length += sprintf (s + length, "%7ld %7ld %7ld %8lu %7ld %7ld %8lu %7ld %7ld\n", - c->rintr, c->tintr, 0l, (unsigned long) c->ibytes, - c->ipkts, c->overrun + c->frame + c->crc, - (unsigned long) c->obytes, c->opkts, c->underrun); - return length; -} - -static char *format_e1_status (u_char status) -{ - static char buf [80]; - - if (status & E1_NOALARM) - return "Ok"; - buf[0] = 0; - if (status & E1_LOS) strcat (buf, ",LOS"); - if (status & E1_AIS) strcat (buf, ",AIS"); - if (status & E1_LOF) strcat (buf, ",LOF"); - if (status & E1_LOMF) strcat (buf, ",LOMF"); - if (status & E1_FARLOF) strcat (buf, ",FARLOF"); - if (status & E1_AIS16) strcat (buf, ",AIS16"); - if (status & E1_FARLOMF) strcat (buf, ",FARLOMF"); - if (status & E1_TSTREQ) strcat (buf, ",TSTREQ"); - if (status & E1_TSTERR) strcat (buf, ",TSTERR"); - if (buf[0] == ',') - return buf+1; - return "Unknown"; -} - -static int print_frac (char *s, int leftalign, u_long numerator, u_long divider) -{ - int n, length = 0; - - if (numerator < 1 || divider < 1) { - length += sprintf (s+length, leftalign ? "/- " : " -"); - return length; - } - n = (int) (0.5 + 1000.0 * numerator / divider); - if (n < 1000) { - length += sprintf (s+length, leftalign ? "/.%-3d" : " .%03d", n); - return length; - } - *(s + length) = leftalign ? '/' : ' '; - length ++; - - if (n >= 1000000) n = (n+500) / 1000 * 1000; - else if (n >= 100000) n = (n+50) / 100 * 100; - else if (n >= 10000) n = (n+5) / 10 * 10; - - switch (n) { - case 1000: length += printf (s+length, ".999"); return length; - case 10000: n = 9990; break; - case 100000: n = 99900; break; - case 1000000: n = 999000; break; - } - if (n < 10000) length += sprintf (s+length, "%d.%d", n/1000, n/10%100); - else if (n < 100000) length += sprintf (s+length, "%d.%d", n/1000, n/100%10); - else if (n < 1000000) length += sprintf (s+length, "%d.", n/1000); - else length += sprintf (s+length, "%d", n/1000); - - return length; -} - -static int print_e1_stats (char *s, cp_chan_t *c) -{ - struct e1_counters total; - u_long totsec; - int length = 0; - - totsec = c->totsec + c->cursec; - total.bpv = c->total.bpv + c->currnt.bpv; - total.fse = c->total.fse + c->currnt.fse; - total.crce = c->total.crce + c->currnt.crce; - total.rcrce = c->total.rcrce + c->currnt.rcrce; - total.uas = c->total.uas + c->currnt.uas; - total.les = c->total.les + c->currnt.les; - total.es = c->total.es + c->currnt.es; - total.bes = c->total.bes + c->currnt.bes; - total.ses = c->total.ses + c->currnt.ses; - total.oofs = c->total.oofs + c->currnt.oofs; - total.css = c->total.css + c->currnt.css; - total.dm = c->total.dm + c->currnt.dm; - - length += sprintf (s + length, " Unav/Degr Bpv/Fsyn CRC/RCRC Err/Lerr Sev/Bur Oof/Slp Status\n"); - - /* Unavailable seconds, degraded minutes */ - length += print_frac (s + length, 0, c->currnt.uas, c->cursec); - length += print_frac (s + length, 1, 60 * c->currnt.dm, c->cursec); - - /* Bipolar violations, frame sync errors */ - length += print_frac (s + length, 0, c->currnt.bpv, c->cursec); - length += print_frac (s + length, 1, c->currnt.fse, c->cursec); - - /* CRC errors, remote CRC errors (E-bit) */ - length += print_frac (s + length, 0, c->currnt.crce, c->cursec); - length += print_frac (s + length, 1, c->currnt.rcrce, c->cursec); - - /* Errored seconds, line errored seconds */ - length += print_frac (s + length, 0, c->currnt.es, c->cursec); - length += print_frac (s + length, 1, c->currnt.les, c->cursec); - - /* Severely errored seconds, burst errored seconds */ - length += print_frac (s + length, 0, c->currnt.ses, c->cursec); - length += print_frac (s + length, 1, c->currnt.bes, c->cursec); - - /* Out of frame seconds, controlled slip seconds */ - length += print_frac (s + length, 0, c->currnt.oofs, c->cursec); - length += print_frac (s + length, 1, c->currnt.css, c->cursec); - - length += sprintf (s + length, " %s\n", format_e1_status (c->status)); - - /* Print total statistics. */ - length += print_frac (s + length, 0, total.uas, totsec); - length += print_frac (s + length, 1, 60 * total.dm, totsec); - - length += print_frac (s + length, 0, total.bpv, totsec); - length += print_frac (s + length, 1, total.fse, totsec); - - length += print_frac (s + length, 0, total.crce, totsec); - length += print_frac (s + length, 1, total.rcrce, totsec); - - length += print_frac (s + length, 0, total.es, totsec); - length += print_frac (s + length, 1, total.les, totsec); - - length += print_frac (s + length, 0, total.ses, totsec); - length += print_frac (s + length, 1, total.bes, totsec); - - length += print_frac (s + length, 0, total.oofs, totsec); - length += print_frac (s + length, 1, total.css, totsec); - - length += sprintf (s + length, " -- Total\n"); - return length; -} - -static int print_chan (char *s, cp_chan_t *c) -{ - drv_t *d = c->sys; - bdrv_t *bd = d->board->sys; - int length = 0; - - length += sprintf (s + length, "cp%d", c->board->num * NCHAN + c->num); - if (d->chan->debug) - length += sprintf (s + length, " debug=%d", d->chan->debug); - - if (c->board->mux) { - length += sprintf (s + length, " cfg=C"); - } else { - length += sprintf (s + length, " cfg=A"); - } - - if (c->baud) - length += sprintf (s + length, " %ld", c->baud); - else - length += sprintf (s + length, " extclock"); - - if (c->type == T_E1 || c->type == T_G703) - switch (c->gsyn) { - case GSYN_INT : length += sprintf (s + length, " syn=int"); break; - case GSYN_RCV : length += sprintf (s + length, " syn=rcv"); break; - case GSYN_RCV0 : length += sprintf (s + length, " syn=rcv0"); break; - case GSYN_RCV1 : length += sprintf (s + length, " syn=rcv1"); break; - case GSYN_RCV2 : length += sprintf (s + length, " syn=rcv2"); break; - case GSYN_RCV3 : length += sprintf (s + length, " syn=rcv3"); break; - } - if (c->type == T_SERIAL) { - length += sprintf (s + length, " dpll=%s", c->dpll ? "on" : "off"); - length += sprintf (s + length, " nrzi=%s", c->nrzi ? "on" : "off"); - length += sprintf (s + length, " invclk=%s", c->invtxc ? "on" : "off"); - } - if (c->type == T_E1) - length += sprintf (s + length, " higain=%s", c->higain ? "on" : "off"); - - length += sprintf (s + length, " loop=%s", c->lloop ? "on" : "off"); - - if (c->type == T_E1) - length += sprintf (s + length, " ts=%s", format_timeslots (c->ts)); - if (c->type == T_G703) { - int lq, x; - - x = splimp (); - CP_LOCK (bd); - lq = cp_get_lq (c); - CP_UNLOCK (bd); - splx (x); - length += sprintf (s + length, " (level=-%.1fdB)", lq / 10.0); - } - length += sprintf (s + length, "\n"); - return length; -} - -static int ng_cp_rcvmsg (node_p node, item_p item, hook_p lasthook) -{ - drv_t *d = NG_NODE_PRIVATE (node); - struct ng_mesg *msg; - struct ng_mesg *resp = NULL; - int error = 0; - - CP_DEBUG (d, ("Rcvmsg\n")); - NGI_GET_MSG (item, msg); - switch (msg->header.typecookie) { - default: - error = EINVAL; - break; - - case NGM_CP_COOKIE: - printf ("Not implemented yet\n"); - error = EINVAL; - break; - - case NGM_GENERIC_COOKIE: - switch (msg->header.cmd) { - default: - error = EINVAL; - break; - - case NGM_TEXT_STATUS: { - char *s; - int l = 0; - int dl = sizeof (struct ng_mesg) + 730; - - NG_MKRESPONSE (resp, msg, dl, M_NOWAIT); - if (! resp) { - error = ENOMEM; - break; - } - s = (resp)->data; - if (d) { - l += print_chan (s + l, d->chan); - l += print_stats (s + l, d->chan, 1); - l += print_modems (s + l, d->chan, 1); - l += print_e1_stats (s + l, d->chan); - } else - l += sprintf (s + l, "Error: node not connect to channel"); - strncpy ((resp)->header.cmdstr, "status", NG_CMDSTRSIZ); - } - break; - } - break; - } - NG_RESPOND_MSG (error, node, item, resp); - NG_FREE_MSG (msg); - return error; -} - -static int ng_cp_rcvdata (hook_p hook, item_p item) -{ - drv_t *d = NG_NODE_PRIVATE (NG_HOOK_NODE(hook)); - struct mbuf *m; - struct ng_tag_prio *ptag; - bdrv_t *bd = d->board->sys; - struct ifqueue *q; - int s; - - CP_DEBUG2 (d, ("Rcvdata\n")); - NGI_GET_M (item, m); - NG_FREE_ITEM (item); - if (! NG_HOOK_PRIVATE (hook) || ! d) { - NG_FREE_M (m); - return ENETDOWN; - } - - /* Check for high priority data */ - if ((ptag = (struct ng_tag_prio *)m_tag_locate(m, NGM_GENERIC_COOKIE, - NG_TAG_PRIO, NULL)) != NULL && (ptag->priority > NG_PRIO_CUTOFF) ) - q = &d->hi_queue; - else - q = &d->queue; - - s = splimp (); - CP_LOCK (bd); - IF_LOCK (q); - if (_IF_QFULL (q)) { - IF_UNLOCK (q); - CP_UNLOCK (bd); - splx (s); - NG_FREE_M (m); - return ENOBUFS; - } - _IF_ENQUEUE (q, m); - IF_UNLOCK (q); - cp_start (d); - CP_UNLOCK (bd); - splx (s); - return 0; -} - -static int ng_cp_rmnode (node_p node) -{ - drv_t *d = NG_NODE_PRIVATE (node); - - CP_DEBUG (d, ("Rmnode\n")); - if (d && d->running) { - bdrv_t *bd = d->board->sys; - int s = splimp (); - CP_LOCK (bd); - cp_down (d); - CP_UNLOCK (bd); - splx (s); - } -#ifdef KLD_MODULE - if (node->nd_flags & NGF_REALLY_DIE) { - NG_NODE_SET_PRIVATE (node, NULL); - NG_NODE_UNREF (node); - } - NG_NODE_REVIVE(node); /* Persistent node */ -#endif - return 0; -} - -static int ng_cp_connect (hook_p hook) -{ - drv_t *d = NG_NODE_PRIVATE (NG_HOOK_NODE (hook)); - - if (d) { - CP_DEBUG (d, ("Connect\n")); - callout_reset (&d->timeout_handle, hz, cp_watchdog_timer, d); - } - - return 0; -} - -static int ng_cp_disconnect (hook_p hook) -{ - drv_t *d = NG_NODE_PRIVATE (NG_HOOK_NODE (hook)); - - if (d) { - CP_DEBUG (d, ("Disconnect\n")); - if (NG_HOOK_PRIVATE (hook)) - { - bdrv_t *bd = d->board->sys; - int s = splimp (); - CP_LOCK (bd); - cp_down (d); - CP_UNLOCK (bd); - splx (s); - } - /* If we were wait it than it reasserted now, just stop it. */ - if (!callout_drain (&d->timeout_handle)) - callout_stop (&d->timeout_handle); - } - return 0; -} - -static int cp_modevent (module_t mod, int type, void *unused) -{ - static int load_count = 0; - - switch (type) { - case MOD_LOAD: - if (ng_newtype (&typestruct)) - printf ("Failed to register ng_cp\n"); - ++load_count; - callout_init (&timeout_handle, 1); - callout_reset (&timeout_handle, hz*5, cp_timeout, 0); - break; - case MOD_UNLOAD: - if (load_count == 1) { - printf ("Removing device entry for Tau-PCI\n"); - ng_rmtype (&typestruct); - } - /* If we were wait it than it reasserted now, just stop it. - * Actually we shouldn't get this condition. But code could be - * changed in the future, so just be a litle paranoid. - */ - if (!callout_drain (&timeout_handle)) - callout_stop (&timeout_handle); - --load_count; - break; - case MOD_SHUTDOWN: - break; - } - return 0; -} - -static struct ng_type typestruct = { - .version = NG_ABI_VERSION, - .name = NG_CP_NODE_TYPE, - .constructor = ng_cp_constructor, - .rcvmsg = ng_cp_rcvmsg, - .shutdown = ng_cp_rmnode, - .newhook = ng_cp_newhook, - .connect = ng_cp_connect, - .rcvdata = ng_cp_rcvdata, - .disconnect = ng_cp_disconnect, -}; - -MODULE_DEPEND (ng_cp, netgraph, NG_ABI_VERSION, NG_ABI_VERSION, NG_ABI_VERSION); -DRIVER_MODULE (cp, pci, cp_driver, cp_devclass, cp_modevent, NULL); -MODULE_VERSION (cp, 1); Index: sys/dev/cp/machdep.h =================================================================== --- sys/dev/cp/machdep.h +++ /dev/null @@ -1,97 +0,0 @@ -/*- - * Cronyx DDK: platform dependent definitions. - * - * Copyright (C) 1998-1999 Cronyx Engineering - * Author: Alexander Kvitchenko, - * - * Copyright (C) 2001-2003 Cronyx Engineering. - * Author: Roman Kurakin, - * - * This software is distributed with NO WARRANTIES, not even the implied - * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * Authors grant any other persons or organisations permission to use - * or modify this software as long as this message is kept with the software, - * all derivative works or modified versions. - * - * Cronyx Id: machdep.h,v 1.3.4.3 2003/11/27 14:21:58 rik Exp $ - * $FreeBSD$ - */ - -/* - * DOS (Borland Turbo C++ 1.0) - */ -#if defined (MSDOS) || defined (__MSDOS__) -# include -# include -# define inb(port) inportb(port) -# define inw(port) inport(port) -# define outb(port,b) outportb(port,b) -# define outw(port,w) outport(port,w) -# define GETTICKS() biostime(0,0L) -#else - -/* - * Windows NT - */ -#ifdef NDIS_MINIPORT_DRIVER -# include -# define inb(port) inp((unsigned short)(port)) -# define inw(port) inpw((unsigned short)(port)) -# define outb(port,b) outp((unsigned short)(port),b) -# define outw(port,w) outpw((unsigned short)(port),(unsigned short)(w)) -#pragma warning (disable: 4761) -#pragma warning (disable: 4242) -#pragma warning (disable: 4244) -#define ulong64 unsigned __int64 -#else - -/* - * Linux - */ -#ifdef __linux__ -# undef REALLY_SLOW_IO -# include /* should swap outb() arguments */ -# include -# include - static inline void __ddk_outb (unsigned port, unsigned char byte) - { outb (byte, port); } - static inline void __ddk_outw (unsigned port, unsigned short word) - { outw (word, port); } -# undef outb -# undef outw -# define outb(port,val) __ddk_outb(port, val) -# define outw(port,val) __ddk_outw(port, val) -# define GETTICKS() (jiffies * 200 / 11 / HZ) -#else - -/* - * FreeBSD and BSD/OS - */ -#ifdef __FreeBSD__ -# include -# include -# include -# include -# define port_t int - -#ifndef _SYS_CDEFS_H_ -#error this file needs sys/cdefs.h as a prerequisite -#endif -#endif - -#endif -#endif -#endif - -#ifndef inline -# ifdef __CC_SUPPORTS___INLINE__ -# define inline __inline__ -# else -# define inline /**/ -# endif -#endif - -#ifndef ulong64 -#define ulong64 unsigned long long -#endif Index: sys/dev/cp/ng_cp.h =================================================================== --- sys/dev/cp/ng_cp.h +++ /dev/null @@ -1,27 +0,0 @@ -/*- - * Defines for Cronyx-Tau-PCI adapter driver. - * - * Copyright (C) 1999-2004 Cronyx Engineering. - * Author: Kurakin Roman, - * - * This software is distributed with NO WARRANTIES, not even the implied - * warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * Authors grant any other persons or organisations a permission to use, - * modify and redistribute this software in source and binary forms, - * as long as this message is kept with the software, all derivative - * works or modified versions. - * - * $Cronyx: ng_cp.h,v 1.1.2.4 2004/01/27 14:39:11 rik Exp $ - * $FreeBSD$ - */ - -#ifndef _CP_NETGRAPH_H_ -#define _CP_NETGRAPH_H_ - -#define NG_CP_NODE_TYPE "cp" -#define NGM_CP_COOKIE 941049562 -#define NG_CP_HOOK_RAW "rawdata" -#define NG_CP_HOOK_DEBUG "debug" - -#endif /* _CP_NETGRAPH_H_ */ Index: sys/modules/Makefile =================================================================== --- sys/modules/Makefile +++ sys/modules/Makefile @@ -86,7 +86,6 @@ ${_chromebook_platform} \ ${_ciss} \ ${_coretemp} \ - ${_cp} \ ${_cpsw} \ ${_cpuctl} \ ${_cpufreq} \ @@ -764,9 +763,6 @@ # XXX some of these can move now, but are untested on other architectures. _3dfx= 3dfx _3dfx_linux= 3dfx_linux -.if ${MK_SOURCELESS_HOST} != "no" -_cp= cp -.endif _glxiic= glxiic _glxsb= glxsb _pcfclock= pcfclock Index: sys/modules/cp/Makefile =================================================================== --- sys/modules/cp/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -# $Cronyx: sys.modules.cp.Makefile,v 1.1.2.3 2004/04/28 16:17:57 rik Exp $ -# $FreeBSD$ - -.PATH: ${SRCTOP}/sys/dev/cp -KMOD = if_cp -SRCS = if_cp.c cpddk.c -SRCS += device_if.h bus_if.h pci_if.h - -.include - -CWARNFLAGS.cpddk.c+= ${NO_WMISLEADING_INDENTATION}