From 0db5e5c59f28270ffff7f5c2ce3ec0d2d8361bf5 Mon Sep 17 00:00:00 2001 From: Polprzewodnikowy Date: Sun, 15 Aug 2021 21:49:02 +0200 Subject: [PATCH] nice --- fw/SummerCart64.qsf | 109 ++++------------ fw/btldr/bin2sv.py | 2 +- fw/btldr/btldr.bin | Bin 80 -> 80 bytes fw/btldr/btldr.c | 8 +- fw/btldr/btldr.elf | Bin 4984 -> 4984 bytes fw/btldr/btldr.h | 17 ++- fw/btldr/btldr.ld | 2 +- fw/btldr/btldr.sv | 70 +++++------ fw/btldr/btldr_template.sv | 34 +++-- fw/cntrllr/cntrllr.bin | Bin 24576 -> 24576 bytes fw/cntrllr/cntrllr.elf | Bin 6600 -> 6588 bytes fw/cntrllr/main.c | 6 +- fw/cntrllr/sys.h | 17 ++- fw/cntrllr/time.dat | Bin 7 -> 7 bytes fw/rtl/SummerCart64.sv | 26 ++-- fw/rtl/cpu/cpu_bus.sv | 78 +++++++----- fw/rtl/cpu/cpu_gpio.sv | 36 +++--- fw/rtl/cpu/cpu_i2c.sv | 70 +++++------ fw/rtl/cpu/cpu_ram.sv | 60 ++++----- fw/rtl/cpu/cpu_soc.sv | 116 +++++------------ fw/rtl/cpu/cpu_uart.sv | 134 ++++++++++---------- fw/rtl/cpu/cpu_usb.sv | 116 ++++++++--------- fw/rtl/cpu/cpu_wrapper.sv | 49 ++++++++ fw/rtl/intel/fifo/fifo8.qip | 4 + fw/rtl/intel/fifo/fifo8.v | 179 ++++++++++++++++++++++++++ fw/rtl/system/system.sv | 8 +- fw/rtl/usb/usb_fifo.sv | 46 +++++++ fw/rtl/usb/usb_ft1248.sv | 242 +++++++++++++++++++++++------------- fw/stp.stp | 234 ++-------------------------------- 29 files changed, 829 insertions(+), 834 deletions(-) create mode 100644 fw/rtl/cpu/cpu_wrapper.sv create mode 100644 fw/rtl/intel/fifo/fifo8.qip create mode 100644 fw/rtl/intel/fifo/fifo8.v create mode 100644 fw/rtl/usb/usb_fifo.sv diff --git a/fw/SummerCart64.qsf b/fw/SummerCart64.qsf index 0af918b..3b2cc96 100644 --- a/fw/SummerCart64.qsf +++ b/fw/SummerCart64.qsf @@ -19,7 +19,7 @@ # # Quartus Prime # Version 20.1.1 Build 720 11/11/2020 SJ Lite Edition -# Date created = 20:28:54 August 10, 2021 +# Date created = 18:00:40 August 15, 2021 # # -------------------------------------------------------------------------- # # @@ -59,11 +59,14 @@ set_global_assignment -name SYSTEMVERILOG_FILE rtl/cpu/cpu_ram.sv set_global_assignment -name SYSTEMVERILOG_FILE rtl/cpu/cpu_soc.sv set_global_assignment -name SYSTEMVERILOG_FILE rtl/cpu/cpu_uart.sv set_global_assignment -name SYSTEMVERILOG_FILE rtl/cpu/cpu_usb.sv +set_global_assignment -name SYSTEMVERILOG_FILE rtl/cpu/cpu_wrapper.sv +set_global_assignment -name SYSTEMVERILOG_FILE rtl/usb/usb_fifo.sv set_global_assignment -name SYSTEMVERILOG_FILE rtl/usb/usb_ft1248.sv set_global_assignment -name SYSTEMVERILOG_FILE rtl/SummerCart64.sv set_global_assignment -name SYSTEMVERILOG_FILE rtl/system/system.sv set_global_assignment -name SYSTEMVERILOG_FILE rtl/old/usb_ftdi_fsi.sv set_global_assignment -name SOURCE_FILE sfp.spf +set_global_assignment -name QIP_FILE rtl/intel/fifo/fifo8.qip # Pin & Location Assignments # ========================== @@ -222,104 +225,34 @@ set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" - # Fitter Assignments # ================== -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_nmi -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_aleh -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_alel -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_read -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_write -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_reset -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_si_clk -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_n64_si_dq -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_n64_irq -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_cs -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[0] -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[1] -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[2] -set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[3] + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_nmi + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_aleh + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_alel + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_read + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_pi_write + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_reset + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to i_n64_si_clk + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to io_n64_si_dq + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_n64_irq + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_cs + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[0] + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[1] + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[2] + set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to o_usb_miosi[3] # start DESIGN_PARTITION(Top) # --------------------------- # Incremental Compilation Assignments # =================================== -set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top -set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top -set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top + set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top + set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top + set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top # end DESIGN_PARTITION(Top) # ------------------------- # end ENTITY(SummerCart64) # ------------------------ -set_global_assignment -name SLD_NODE_CREATOR_ID 110 -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_ENTITY_NAME sld_signaltap -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_trigger_in[0] -to i_n64_reset -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_trigger_in[1] -to i_n64_si_clk -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_data_in[0] -to i_n64_reset -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_data_in[1] -to i_n64_si_clk -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_RAM_BLOCK_TYPE=AUTO" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_STORAGE_QUALIFIER_BITS=42" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_NODE_INFO=805334528" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_POWER_UP_TRIGGER=0" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_STORAGE_QUALIFIER_INVERSION_MASK_LENGTH=0" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_ATTRIBUTE_MEM_MODE=OFF" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_STATE_FLOW_USE_GENERATED=0" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_STATE_BITS=11" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_BUFFER_FULL_STOP=1" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_CURRENT_RESOURCE_WIDTH=1" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_INCREMENTAL_ROUTING=1" -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[0] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[2] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[3] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[8] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[9] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[10] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[13] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[14] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[15] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[17] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[23] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[25] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[28] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[31] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_TRIGGER_LEVEL=1" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_TRIGGER_IN_ENABLED=0" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_TRIGGER_PIPELINE=0" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_RAM_PIPELINE=0" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_COUNTER_PIPELINE=0" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_ADVANCED_TRIGGER_ENTITY=basic,1," -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_TRIGGER_LEVEL_PIPELINE=1" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_ENABLE_ADVANCED_TRIGGER=0" -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[30] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_SEGMENT_SIZE=65536" -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[20] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[22] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_SAMPLE_DEPTH=65536" -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_clk -to i_clk -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[5] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[12] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_trigger_in[2] -to io_avr_mosi -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_trigger_in[3] -to io_n64_cic_clk -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_trigger_in[4] -to io_n64_cic_dq -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_data_in[2] -to io_avr_mosi -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_data_in[3] -to io_n64_cic_clk -section_id auto_signaltap_0 -set_instance_assignment -name CONNECT_TO_SLD_NODE_ENTITY_PORT acq_data_in[4] -to io_n64_cic_dq -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_DATA_BITS=5" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_TRIGGER_BITS=5" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_INVERSION_MASK=000000000000000000000000000000000000000000000" -section_id auto_signaltap_0 -set_global_assignment -name SLD_NODE_PARAMETER_ASSIGNMENT "SLD_INVERSION_MASK_LENGTH=45" -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[1] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[4] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[6] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[7] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[11] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[16] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[18] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[19] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[21] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[24] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[26] -to auto_signaltap_0|vcc -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[27] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 -set_instance_assignment -name POST_FIT_CONNECT_TO_SLD_NODE_ENTITY_PORT crc[29] -to auto_signaltap_0|gnd -section_id auto_signaltap_0 set_global_assignment -name SLD_FILE db/stp_auto_stripped.stp set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/fw/btldr/bin2sv.py b/fw/btldr/bin2sv.py index 50db27a..44ddc49 100644 --- a/fw/btldr/bin2sv.py +++ b/fw/btldr/bin2sv.py @@ -23,7 +23,7 @@ try: if (not line): break value = format(struct.unpack('FB2LO}zCjjG&2mX@>-~%H9_W-vB06>u(D+%!DfWZ52@Spuc CWD&Ih delta 44 zcmV+{0Mq|aP#iZ00I-8c2LO}zCjjG&2mX@>-~%HB_W-vB0I-o9D+v(ifWZ52@Spur CY!SBr diff --git a/fw/btldr/btldr.c b/fw/btldr/btldr.c index cf078c7..48bcad4 100644 --- a/fw/btldr/btldr.c +++ b/fw/btldr/btldr.c @@ -3,12 +3,12 @@ int reset_handler (void) { io8_t pointer = &RAM; - while (!(UART_SR & UART_SR_TXE)); - UART_TX = '>'; + while (!(USB_SR & USB_SR_TXE)); + USB_DR = '>'; while (1) { - if (UART_SR & UART_SR_RXNE) { - *pointer++ = UART_RX; + if (USB_SR & USB_SR_RXNE) { + *pointer++ = USB_DR; } if ((uint32_t)pointer == (24 * 1024)) { __asm__("call 0"); diff --git a/fw/btldr/btldr.elf b/fw/btldr/btldr.elf index 670a0b72be393f6c4ad26b03ee76064c6c3988c1..7a85c724812b01b516df2bec13d9f2b434515895 100644 GIT binary patch delta 93 zcmeyN_CsxgG^4;o8D&-h1_lO!jV}B7B^{dG*%>B(S7&(K!~SnF`vYcWrtb{f*%%xq v%Lr&Qewgeb;Lj*9d4@o|pg;gnlMn+VgE)`|vIRDC2--6;3T*ZeGGGJ%)M^&2 delta 93 zcmeyN_CsxgG~_o5#PL?PN8`wbFAcCnviY%!Fi&Ulvl7I+8EVUc7P|zmM52O)4 zAcdCO#Xrz4O4M{_eXdw+yqn^@=G;412TTX7l-&UoW77__b7P~zYXYr|#I6QT1~yDo z!01B8N;vS2U(pHO*vKH?t*%+kzwTjqPs>T@{&2qz(qAQlB!6?io#aRfq)5MbZ5_1N zP%@gTYyth#G5D3FndXNQ6`C2ob3adc_^E_Wa>)HmlBu6%bC$S+>F^}w=70tf2LVRYG s8O*?{lV9aE;x=y)-zC1Ep1WnsDGNvwmI!%5kx(L3`%l8%zO)zq0YUwC?EnA( delta 381 zcmXYtze@sP9LAsbUe7nT;8ib3D7Xu0iwKekxxmXQXmE%SEEHM-#|VNh3>uo`+I5Nk z0EdDauBo*lur0&Ntvj=@hP3a6!}Gk)=Y7B5_m}N5+hrMT8<30*%P`}Y0{4|w6~(hK zc5Hy(3CO)9iW6d#HMGNGAk`T3<0i^};nxxNOf@yH)PAbF=|gkO^9x_x%E9xezNKmh z{K>6Szc5{;7%__?5(T34!wP;Hl62Jur*s%F4Gx1s@mjM(E= z2;4YAW%?EsV{cO`6h#os;LsxCLkC;h zLAiqt4jC#sT2in>hjwcJ1LIVs)qp zd-PVM_Tv0+SsMrW$FtUq|B|&S<2}zphTNC+5pd^(r+WXqpoGrjUC5V;GmRgfRprdq zcUddaw|;t7WIUEN-#GgRuJg_nQP3?Xyj?_3Ic;<%XAVyNiNgNiC4%S`isQRk&y)U6F*PB z;V)98;CGd5>G#LN2Scn}uC&M@PFzU*KDkOaH#_XllPmN?iEHw@0A7=3|8sJLVP0r_ zkz8Q36JI7T@r5>N&RZwr2K2q)h`8IC3z|Z7_1A%r*~yi}7k!pFqbHeX^&ImJy_5_7 E1NUB@&;S4c delta 665 zcmXYuJ!n%=7>3`|lap%)G0Dj<7OdQ8a1g2u7>dLQrqw|Ztk9tlB?TP{5f>2>8j0Xg z2jvuW5Sl^JQHh{nh6Dt=2o6f!tTfuq-2P~Fu=*akT)y}Dp7VDP_qIouM(+-bXZQBI zs;7Y7^E2H&V}3gv|$F4qD1)`7mBK{@I8eFCdNXGg0T+*`}2c%?tasUI-8 z(9wa#-)1(HpDXO@d!-+;IElWu@0V6}>szuoV|`nzj`dABkp*{7YiIkfPGr!!y$1Q% z;hM#DtuV;7>#~@pf8NxpVBM3&sPzrs`?45-Oy5LfxQj;mB(xBsVh)AJ#EO{-yJuJU za_!=V;N~^ - - + - - + + - + - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 'i_n64_reset' == low && 'io_n64_cic_dq' == rising edge - - - - - - - 111111111111111111111111111111111111111111 - 111111111111111111111111111111111111111111 - - - - - - - - - - - - - - - - - - - 10111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111111111111110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011110111101111111111111101111011110111101111011110111101111011110111101111011110111101111011110111101111011111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111101111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111101111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111011110111111111111111111111111111111111111111111111111111111111111111111111111100111 - 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 - - - @@ -245,8 +25,8 @@ - - + +