diff --git a/MANIFEST b/MANIFEST deleted file mode 100644 index 3d917d208a..0000000000 --- a/MANIFEST +++ /dev/null @@ -1,96 +0,0 @@ -# file GENERATED by distutils, do NOT edit -LICENSE -setup.py -workspace_tools/__init__.py -workspace_tools/__init__.pyc -workspace_tools/autotest.py -workspace_tools/build.py -workspace_tools/build_api.py -workspace_tools/build_release.py -workspace_tools/client.py -workspace_tools/export_test.py -workspace_tools/hooks.py -workspace_tools/libraries.py -workspace_tools/make.py -workspace_tools/options.py -workspace_tools/patch.py -workspace_tools/paths.py -workspace_tools/project.py -workspace_tools/server.py -workspace_tools/settings.py -workspace_tools/size.py -workspace_tools/syms.py -workspace_tools/synch.py -workspace_tools/targets.py -workspace_tools/tests.py -workspace_tools/utils.py -workspace_tools/data/__init__.py -workspace_tools/data/example_test_spec.json -workspace_tools/data/support.py -workspace_tools/data/rpc/RPCClasses.h -workspace_tools/data/rpc/class.cpp -workspace_tools/dev/__init__.py -workspace_tools/dev/dsp_fir.py -workspace_tools/dev/rpc_classes.py -workspace_tools/export/__init__.py -workspace_tools/export/codered.py -workspace_tools/export/codered_lpc1768_cproject.tmpl -workspace_tools/export/codered_lpc1768_project.tmpl -workspace_tools/export/codered_lpc4088_cproject.tmpl -workspace_tools/export/codered_lpc4088_project.tmpl -workspace_tools/export/codesourcery.py -workspace_tools/export/codesourcery_lpc1768.tmpl -workspace_tools/export/ds5_5.py -workspace_tools/export/ds5_5_lpc11u24.cproject.tmpl -workspace_tools/export/ds5_5_lpc11u24.launch.tmpl -workspace_tools/export/ds5_5_lpc11u24.project.tmpl -workspace_tools/export/ds5_5_lpc1768.cproject.tmpl -workspace_tools/export/ds5_5_lpc1768.launch.tmpl -workspace_tools/export/ds5_5_lpc1768.project.tmpl -workspace_tools/export/exporters.py -workspace_tools/export/gcc_arm_lpc1768.tmpl -workspace_tools/export/gccarm.py -workspace_tools/export/iar.ewp.tmpl -workspace_tools/export/iar.eww.tmpl -workspace_tools/export/iar.py -workspace_tools/export/uvision4.py -workspace_tools/export/uvision4_kl25z.uvopt.tmpl -workspace_tools/export/uvision4_kl25z.uvproj.tmpl -workspace_tools/export/uvision4_lpc1114.uvopt.tmpl -workspace_tools/export/uvision4_lpc1114.uvproj.tmpl -workspace_tools/export/uvision4_lpc11c24.uvopt.tmpl -workspace_tools/export/uvision4_lpc11c24.uvproj.tmpl -workspace_tools/export/uvision4_lpc11u24.uvopt.tmpl -workspace_tools/export/uvision4_lpc11u24.uvproj.tmpl -workspace_tools/export/uvision4_lpc1347.uvopt.tmpl -workspace_tools/export/uvision4_lpc1347.uvproj.tmpl -workspace_tools/export/uvision4_lpc1768.uvopt.tmpl -workspace_tools/export/uvision4_lpc1768.uvproj.tmpl -workspace_tools/export/uvision4_lpc4088.uvopt.tmpl -workspace_tools/export/uvision4_lpc4088.uvproj.tmpl -workspace_tools/export/uvision4_lpc812.uvopt.tmpl -workspace_tools/export/uvision4_lpc812.uvproj.tmpl -workspace_tools/host_tests/__init__.py -workspace_tools/host_tests/echo.py -workspace_tools/host_tests/host_test.py -workspace_tools/host_tests/mbedrpc.py -workspace_tools/host_tests/net_test.py -workspace_tools/host_tests/rpc.py -workspace_tools/host_tests/tcpecho_client.py -workspace_tools/host_tests/tcpecho_server.py -workspace_tools/host_tests/tcpecho_server_loop.py -workspace_tools/host_tests/udpecho_client.py -workspace_tools/host_tests/udpecho_server.py -workspace_tools/host_tests/example/BroadcastReceive.py -workspace_tools/host_tests/example/BroadcastSend.py -workspace_tools/host_tests/example/MulticastReceive.py -workspace_tools/host_tests/example/MulticastSend.py -workspace_tools/host_tests/example/TCPEchoClient.py -workspace_tools/host_tests/example/TCPEchoServer.py -workspace_tools/host_tests/example/UDPEchoClient.py -workspace_tools/host_tests/example/UDPEchoServer.py -workspace_tools/host_tests/example/__init__.py -workspace_tools/toolchains/__init__.py -workspace_tools/toolchains/arm.py -workspace_tools/toolchains/gcc.py -workspace_tools/toolchains/iar.py diff --git a/MANIFEST.in b/MANIFEST.in index 8294764a5c..17993153c5 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,2 +1,3 @@ graft workspace_tools -include __init__.py LICENSE +recursive-exclude workspace_tools *.pyc +include LICENSE diff --git a/README.md b/README.md index 552a2e8737..9c9998661b 100644 --- a/README.md +++ b/README.md @@ -35,8 +35,9 @@ NXP: * LPC11C24 (Cortex-M0) Freescale: -* [KL25Z](http://mbed.org/platforms/KL25Z/) (Cortex-M0+) * KL05Z (Cortex-M0+) +* [KL25Z](http://mbed.org/platforms/KL25Z/) (Cortex-M0+) +* [KL46Z](https://mbed.org/platforms/FRDM-KL46Z/) (Cortex-M0+) STMicroelectronics: * STM32F407 (Cortex-M4) diff --git a/libraries/USBDevice/USBDevice/USBEndpoints.h b/libraries/USBDevice/USBDevice/USBEndpoints.h index 36ed605d11..1c3409bd14 100644 --- a/libraries/USBDevice/USBDevice/USBEndpoints.h +++ b/libraries/USBDevice/USBDevice/USBEndpoints.h @@ -43,6 +43,8 @@ typedef enum { #include "USBEndpoints_LPC11U.h" #elif defined(TARGET_KL25Z) #include "USBEndpoints_KL25Z.h" +#elif defined (TARGET_STM32F4XX) +#include "USBEndpoints_STM32F4.h" #else #error "Unknown target type" #endif diff --git a/libraries/USBDevice/USBDevice/USBEndpoints_STM32F4.h b/libraries/USBDevice/USBDevice/USBEndpoints_STM32F4.h new file mode 100644 index 0000000000..1c95f2c807 --- /dev/null +++ b/libraries/USBDevice/USBDevice/USBEndpoints_STM32F4.h @@ -0,0 +1,61 @@ +/* Copyright (c) 2010-2011 mbed.org, MIT License +* +* Permission is hereby granted, free of charge, to any person obtaining a copy of this software +* and associated documentation files (the "Software"), to deal in the Software without +* restriction, including without limitation the rights to use, copy, modify, merge, publish, +* distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the +* Software is furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included in all copies or +* substantial portions of the Software. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING +* BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ + +#define NUMBER_OF_LOGICAL_ENDPOINTS (4) +#define NUMBER_OF_PHYSICAL_ENDPOINTS (NUMBER_OF_LOGICAL_ENDPOINTS * 2) + +/* Define physical endpoint numbers */ + +/* Endpoint No. Type(s) MaxPacket DoubleBuffer */ +/* ---------------- ------------ ---------- --- */ +#define EP0OUT (0) /* Control 64 No */ +#define EP0IN (1) /* Control 64 No */ +#define EP1OUT (2) /* Int/Bulk/Iso 64/64/1023 Yes */ +#define EP1IN (3) /* Int/Bulk/Iso 64/64/1023 Yes */ +#define EP2OUT (4) /* Int/Bulk/Iso 64/64/1023 Yes */ +#define EP2IN (5) /* Int/Bulk/Iso 64/64/1023 Yes */ +#define EP3OUT (6) /* Int/Bulk/Iso 64/64/1023 Yes */ +#define EP3IN (7) /* Int/Bulk/Iso 64/64/1023 Yes */ + +/* Maximum Packet sizes */ + +#define MAX_PACKET_SIZE_EP0 (64) +#define MAX_PACKET_SIZE_EP1 (64) /* Int/Bulk */ +#define MAX_PACKET_SIZE_EP2 (64) /* Int/Bulk */ +#define MAX_PACKET_SIZE_EP3 (64) /* Int/Bulk */ + +#define MAX_PACKET_SIZE_EP1_ISO (1023) /* Isochronous */ +#define MAX_PACKET_SIZE_EP2_ISO (1023) /* Isochronous */ +#define MAX_PACKET_SIZE_EP3_ISO (1023) /* Isochronous */ + +/* Generic endpoints - intended to be portable accross devices */ +/* and be suitable for simple USB devices. */ + +/* Bulk endpoint */ +#define EPBULK_OUT (EP2OUT) +#define EPBULK_IN (EP2IN) +/* Interrupt endpoint */ +#define EPINT_OUT (EP1OUT) +#define EPINT_IN (EP1IN) +/* Isochronous endpoint */ +#define EPISO_OUT (EP3OUT) +#define EPISO_IN (EP3IN) + +#define MAX_PACKET_SIZE_EPBULK (MAX_PACKET_SIZE_EP2) +#define MAX_PACKET_SIZE_EPINT (MAX_PACKET_SIZE_EP1) +#define MAX_PACKET_SIZE_EPISO (MAX_PACKET_SIZE_EP3_ISO) diff --git a/libraries/USBDevice/USBDevice/USBHAL.h b/libraries/USBDevice/USBDevice/USBHAL.h index 886da0c2d3..29516e6e40 100644 --- a/libraries/USBDevice/USBDevice/USBHAL.h +++ b/libraries/USBDevice/USBDevice/USBHAL.h @@ -74,9 +74,9 @@ protected: virtual bool EP2_IN_callback(){return false;}; virtual bool EP3_OUT_callback(){return false;}; virtual bool EP3_IN_callback(){return false;}; +#if !defined(TARGET_STM32F4) virtual bool EP4_OUT_callback(){return false;}; virtual bool EP4_IN_callback(){return false;}; - #if !defined(TARGET_LPC11U24) virtual bool EP5_OUT_callback(){return false;}; virtual bool EP5_IN_callback(){return false;}; @@ -101,6 +101,7 @@ protected: virtual bool EP15_OUT_callback(){return false;}; virtual bool EP15_IN_callback(){return false;}; #endif +#endif private: void usbisr(void); @@ -109,6 +110,8 @@ private: #if defined(TARGET_LPC11U24) bool (USBHAL::*epCallback[10 - 2])(void); +#elif defined(TARGET_STM32F4XX) + bool (USBHAL::*epCallback[8 - 2])(void); #else bool (USBHAL::*epCallback[32 - 2])(void); #endif diff --git a/libraries/USBDevice/USBDevice/USBHAL_STM32F4.cpp b/libraries/USBDevice/USBDevice/USBHAL_STM32F4.cpp new file mode 100644 index 0000000000..af1c3c3107 --- /dev/null +++ b/libraries/USBDevice/USBDevice/USBHAL_STM32F4.cpp @@ -0,0 +1,402 @@ +/* Copyright (c) 2010-2011 mbed.org, MIT License +* +* Permission is hereby granted, free of charge, to any person obtaining a copy of this software +* and associated documentation files (the "Software"), to deal in the Software without +* restriction, including without limitation the rights to use, copy, modify, merge, publish, +* distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the +* Software is furnished to do so, subject to the following conditions: +* +* The above copyright notice and this permission notice shall be included in all copies or +* substantial portions of the Software. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING +* BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/ + +#if defined(TARGET_STM32F4XX) + +#include "USBHAL.h" +#include "USBRegs_STM32.h" +#include "pinmap.h" + +USBHAL * USBHAL::instance; + +static volatile int epComplete = 0; + +static uint32_t bufferEnd = 0; +static const uint32_t rxFifoSize = 512; +static uint32_t rxFifoCount = 0; + +static uint32_t setupBuffer[MAX_PACKET_SIZE_EP0 >> 2]; + +uint32_t USBHAL::endpointReadcore(uint8_t endpoint, uint8_t *buffer) { + return 0; +} + +USBHAL::USBHAL(void) { + NVIC_DisableIRQ(OTG_FS_IRQn); + epCallback[0] = &USBHAL::EP1_OUT_callback; + epCallback[1] = &USBHAL::EP1_IN_callback; + epCallback[2] = &USBHAL::EP2_OUT_callback; + epCallback[3] = &USBHAL::EP2_IN_callback; + epCallback[4] = &USBHAL::EP3_OUT_callback; + epCallback[5] = &USBHAL::EP3_IN_callback; + + // Enable power and clocking + RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN; + + pin_function(PA_8, STM_PIN_DATA(2, 10)); + pin_function(PA_9, STM_PIN_DATA(0, 0)); + pin_function(PA_10, STM_PIN_DATA(2, 10)); + pin_function(PA_11, STM_PIN_DATA(2, 10)); + pin_function(PA_12, STM_PIN_DATA(2, 10)); + + // Set ID pin to open drain with pull-up resistor + pin_mode(PA_10, OpenDrain); + GPIOA->PUPDR &= ~(0x3 << 20); + GPIOA->PUPDR |= 1 << 20; + + // Set VBUS pin to open drain + pin_mode(PA_9, OpenDrain); + + RCC->AHB2ENR |= RCC_AHB2ENR_OTGFSEN; + + // Enable interrupts + OTG_FS->GREGS.GAHBCFG |= (1 << 0); + + // Turnaround time to maximum value - too small causes packet loss + OTG_FS->GREGS.GUSBCFG |= (0xF << 10); + + // Unmask global interrupts + OTG_FS->GREGS.GINTMSK |= (1 << 3) | // SOF + (1 << 4) | // RX FIFO not empty + (1 << 12); // USB reset + + OTG_FS->DREGS.DCFG |= (0x3 << 0) | // Full speed + (1 << 2); // Non-zero-length status OUT handshake + + OTG_FS->GREGS.GCCFG |= (1 << 19) | // Enable VBUS sensing + (1 << 16); // Power Up + + instance = this; + NVIC_SetVector(OTG_FS_IRQn, (uint32_t)&_usbisr); + NVIC_SetPriority(OTG_FS_IRQn, 1); +} + +USBHAL::~USBHAL(void) { +} + +void USBHAL::connect(void) { + NVIC_EnableIRQ(OTG_FS_IRQn); +} + +void USBHAL::disconnect(void) { + NVIC_DisableIRQ(OTG_FS_IRQn); +} + +void USBHAL::configureDevice(void) { + // Not needed +} + +void USBHAL::unconfigureDevice(void) { + // Not needed +} + +void USBHAL::setAddress(uint8_t address) { + OTG_FS->DREGS.DCFG |= (address << 4); + EP0write(0, 0); +} + +bool USBHAL::realiseEndpoint(uint8_t endpoint, uint32_t maxPacket, + uint32_t flags) { + uint32_t epIndex = endpoint >> 1; + + uint32_t type; + switch (endpoint) { + case EP0IN: + case EP0OUT: + type = 0; + break; + case EPISO_IN: + case EPISO_OUT: + type = 1; + case EPBULK_IN: + case EPBULK_OUT: + type = 2; + break; + case EPINT_IN: + case EPINT_OUT: + type = 3; + break; + } + + // Generic in or out EP controls + uint32_t control = (maxPacket << 0) | // Packet size + (1 << 15) | // Active endpoint + (type << 18); // Endpoint type + + if (endpoint & 0x1) { // In Endpoint + // Set up the Tx FIFO + if (endpoint == EP0IN) { + OTG_FS->GREGS.DIEPTXF0_HNPTXFSIZ = ((maxPacket >> 2) << 16) | + (bufferEnd << 0); + } + else { + OTG_FS->GREGS.DIEPTXF[epIndex - 1] = ((maxPacket >> 2) << 16) | + (bufferEnd << 0); + } + bufferEnd += maxPacket >> 2; + + // Set the In EP specific control settings + if (endpoint != EP0IN) { + control |= (1 << 28); // SD0PID + } + + control |= (epIndex << 22) | // TxFIFO index + (1 << 27); // SNAK + OTG_FS->INEP_REGS[epIndex].DIEPCTL = control; + + // Unmask the interrupt + OTG_FS->DREGS.DAINTMSK |= (1 << epIndex); + } + else { // Out endpoint + // Set the out EP specific control settings + control |= (1 << 26); // CNAK + OTG_FS->OUTEP_REGS[epIndex].DOEPCTL = control; + + // Unmask the interrupt + OTG_FS->DREGS.DAINTMSK |= (1 << (epIndex + 16)); + } + return true; +} + +// read setup packet +void USBHAL::EP0setup(uint8_t *buffer) { + memcpy(buffer, setupBuffer, MAX_PACKET_SIZE_EP0); +} + +void USBHAL::EP0readStage(void) { +} + +void USBHAL::EP0read(void) { +} + +uint32_t USBHAL::EP0getReadResult(uint8_t *buffer) { + uint32_t* buffer32 = (uint32_t *) buffer; + uint32_t length = rxFifoCount; + for (uint32_t i = 0; i < length; i += 4) { + buffer32[i >> 2] = OTG_FS->FIFO[0][0]; + } + + rxFifoCount = 0; + return length; +} + +void USBHAL::EP0write(uint8_t *buffer, uint32_t size) { + endpointWrite(0, buffer, size); +} + +void USBHAL::EP0getWriteResult(void) { +} + +void USBHAL::EP0stall(void) { + // If we stall the out endpoint here then we have problems transferring + // and setup requests after the (stalled) get device qualifier requests. + // TODO: Find out if this is correct behavior, or whether we are doing + // something else wrong + stallEndpoint(EP0IN); +// stallEndpoint(EP0OUT); +} + +EP_STATUS USBHAL::endpointRead(uint8_t endpoint, uint32_t maximumSize) { + uint32_t epIndex = endpoint >> 1; + uint32_t size = (1 << 19) | // 1 packet + (maximumSize << 0); // Packet size +// if (endpoint == EP0OUT) { + size |= (1 << 29); // 1 setup packet +// } + OTG_FS->OUTEP_REGS[epIndex].DOEPTSIZ = size; + OTG_FS->OUTEP_REGS[epIndex].DOEPCTL |= (1 << 31) | // Enable endpoint + (1 << 26); // Clear NAK + + epComplete &= ~(1 << endpoint); + return EP_PENDING; +} + +EP_STATUS USBHAL::endpointReadResult(uint8_t endpoint, uint8_t * buffer, uint32_t *bytesRead) { + if (!(epComplete & (1 << endpoint))) { + return EP_PENDING; + } + + uint32_t* buffer32 = (uint32_t *) buffer; + uint32_t length = rxFifoCount; + for (uint32_t i = 0; i < length; i += 4) { + buffer32[i >> 2] = OTG_FS->FIFO[endpoint >> 1][0]; + } + rxFifoCount = 0; + *bytesRead = length; + return EP_COMPLETED; +} + +EP_STATUS USBHAL::endpointWrite(uint8_t endpoint, uint8_t *data, uint32_t size) { + uint32_t epIndex = endpoint >> 1; + OTG_FS->INEP_REGS[epIndex].DIEPTSIZ = (1 << 19) | // 1 packet + (size << 0); // Size of packet + OTG_FS->INEP_REGS[epIndex].DIEPCTL |= (1 << 31) | // Enable endpoint + (1 << 26); // CNAK + OTG_FS->DREGS.DIEPEMPMSK = (1 << epIndex); + + while ((OTG_FS->INEP_REGS[epIndex].DTXFSTS & 0XFFFF) < ((size + 3) >> 2)); + + for (uint32_t i=0; i<(size + 3) >> 2; i++, data+=4) { + OTG_FS->FIFO[epIndex][0] = *(uint32_t *)data; + } + + epComplete &= ~(1 << endpoint); + + return EP_PENDING; +} + +EP_STATUS USBHAL::endpointWriteResult(uint8_t endpoint) { + if (epComplete & (1 << endpoint)) { + epComplete &= ~(1 << endpoint); + return EP_COMPLETED; + } + + return EP_PENDING; +} + +void USBHAL::stallEndpoint(uint8_t endpoint) { + if (endpoint & 0x1) { // In EP + OTG_FS->INEP_REGS[endpoint >> 1].DIEPCTL |= (1 << 30) | // Disable + (1 << 21); // Stall + } + else { // Out EP + OTG_FS->DREGS.DCTL |= (1 << 9); // Set global out NAK + OTG_FS->OUTEP_REGS[endpoint >> 1].DOEPCTL |= (1 << 30) | // Disable + (1 << 21); // Stall + } +} + +void USBHAL::unstallEndpoint(uint8_t endpoint) { + +} + +bool USBHAL::getEndpointStallState(uint8_t endpoint) { + return false; +} + +void USBHAL::remoteWakeup(void) { +} + + +void USBHAL::_usbisr(void) { + instance->usbisr(); +} + + +void USBHAL::usbisr(void) { + if (OTG_FS->GREGS.GINTSTS & (1 << 12)) { // USB Reset + // Set SNAK bits + OTG_FS->OUTEP_REGS[0].DOEPCTL |= (1 << 27); + OTG_FS->OUTEP_REGS[1].DOEPCTL |= (1 << 27); + OTG_FS->OUTEP_REGS[2].DOEPCTL |= (1 << 27); + OTG_FS->OUTEP_REGS[3].DOEPCTL |= (1 << 27); + + OTG_FS->DREGS.DIEPMSK = (1 << 0); + + bufferEnd = 0; + + // Set the receive FIFO size + OTG_FS->GREGS.GRXFSIZ = rxFifoSize >> 2; + bufferEnd += rxFifoSize >> 2; + + // Create the endpoints, and wait for setup packets on out EP0 + realiseEndpoint(EP0IN, MAX_PACKET_SIZE_EP0, 0); + realiseEndpoint(EP0OUT, MAX_PACKET_SIZE_EP0, 0); + endpointRead(EP0OUT, MAX_PACKET_SIZE_EP0); + + OTG_FS->GREGS.GINTSTS = (1 << 12); + } + + if (OTG_FS->GREGS.GINTSTS & (1 << 4)) { // RX FIFO not empty + uint32_t status = OTG_FS->GREGS.GRXSTSP; + + uint32_t endpoint = (status & 0xF) << 1; + uint32_t length = (status >> 4) & 0x7FF; + uint32_t type = (status >> 17) & 0xF; + + rxFifoCount = length; + + if (type == 0x6) { + // Setup packet + for (uint32_t i=0; i> 2] = OTG_FS->FIFO[0][i >> 2]; + } + rxFifoCount = 0; + } + + if (type == 0x4) { + // Setup complete + EP0setupCallback(); + endpointRead(EP0OUT, MAX_PACKET_SIZE_EP0); + } + + if (type == 0x2) { + // Out packet + if (endpoint == EP0OUT) { + EP0out(); + } + else { + epComplete |= (1 << endpoint); + if ((instance->*(epCallback[endpoint - 2]))()) { + epComplete &= (1 << endpoint); + } + } + } + + for (uint32_t i=0; iFIFO[0][0]; + } + OTG_FS->GREGS.GINTSTS = (1 << 4); + } + + if (OTG_FS->GREGS.GINTSTS & (1 << 18)) { // In endpoint interrupt + // Loop through the in endpoints + for (uint32_t i=0; i<4; i++) { + if (OTG_FS->DREGS.DAINT & (1 << i)) { // Interrupt is on endpoint + + if (OTG_FS->INEP_REGS[i].DIEPINT & (1 << 7)) {// Tx FIFO empty + // If the Tx FIFO is empty on EP0 we need to send a further + // packet, so call EP0in() + if (i == 0) { + EP0in(); + } + // Clear the interrupt + OTG_FS->INEP_REGS[i].DIEPINT = (1 << 7); + // Stop firing Tx empty interrupts + // Will get turned on again if another write is called + OTG_FS->DREGS.DIEPEMPMSK &= ~(1 << i); + } + + // If the transfer is complete + if (OTG_FS->INEP_REGS[i].DIEPINT & (1 << 0)) { // Tx Complete + epComplete |= (1 << (1 + (i << 1))); + OTG_FS->INEP_REGS[i].DIEPINT = (1 << 0); + } + } + } + OTG_FS->GREGS.GINTSTS = (1 << 18); + } + + if (OTG_FS->GREGS.GINTSTS & (1 << 3)) { // Start of frame + SOF((OTG_FS->GREGS.GRXSTSR >> 17) & 0xF); + OTG_FS->GREGS.GINTSTS = (1 << 3); + } +} + + +#endif diff --git a/libraries/USBDevice/USBDevice/USBRegs_STM32.h b/libraries/USBDevice/USBDevice/USBRegs_STM32.h new file mode 100644 index 0000000000..303338cc92 --- /dev/null +++ b/libraries/USBDevice/USBDevice/USBRegs_STM32.h @@ -0,0 +1,149 @@ +/** + ****************************************************************************** + * @file usb_regs.h + * @author MCD Application Team + * @version V2.1.0 + * @date 19-March-2012 + * @brief hardware registers + ****************************************************************************** + * @attention + * + *

© COPYRIGHT 2012 STMicroelectronics

+ * + * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License"); + * You may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.st.com/software_license_agreement_liberty_v2 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ****************************************************************************** + */ + +#ifndef __USB_OTG_REGS_H__ +#define __USB_OTG_REGS_H__ + +typedef struct //000h +{ + __IO uint32_t GOTGCTL; /* USB_OTG Control and Status Register 000h*/ + __IO uint32_t GOTGINT; /* USB_OTG Interrupt Register 004h*/ + __IO uint32_t GAHBCFG; /* Core AHB Configuration Register 008h*/ + __IO uint32_t GUSBCFG; /* Core USB Configuration Register 00Ch*/ + __IO uint32_t GRSTCTL; /* Core Reset Register 010h*/ + __IO uint32_t GINTSTS; /* Core Interrupt Register 014h*/ + __IO uint32_t GINTMSK; /* Core Interrupt Mask Register 018h*/ + __IO uint32_t GRXSTSR; /* Receive Sts Q Read Register 01Ch*/ + __IO uint32_t GRXSTSP; /* Receive Sts Q Read & POP Register 020h*/ + __IO uint32_t GRXFSIZ; /* Receive FIFO Size Register 024h*/ + __IO uint32_t DIEPTXF0_HNPTXFSIZ; /* EP0 / Non Periodic Tx FIFO Size Register 028h*/ + __IO uint32_t HNPTXSTS; /* Non Periodic Tx FIFO/Queue Sts reg 02Ch*/ + uint32_t Reserved30[2]; /* Reserved 030h*/ + __IO uint32_t GCCFG; /* General Purpose IO Register 038h*/ + __IO uint32_t CID; /* User ID Register 03Ch*/ + uint32_t Reserved40[48]; /* Reserved 040h-0FFh*/ + __IO uint32_t HPTXFSIZ; /* Host Periodic Tx FIFO Size Reg 100h*/ + __IO uint32_t DIEPTXF[3];/* dev Periodic Transmit FIFO */ +} +USB_OTG_GREGS; + +typedef struct // 800h +{ + __IO uint32_t DCFG; /* dev Configuration Register 800h*/ + __IO uint32_t DCTL; /* dev Control Register 804h*/ + __IO uint32_t DSTS; /* dev Status Register (RO) 808h*/ + uint32_t Reserved0C; /* Reserved 80Ch*/ + __IO uint32_t DIEPMSK; /* dev IN Endpoint Mask 810h*/ + __IO uint32_t DOEPMSK; /* dev OUT Endpoint Mask 814h*/ + __IO uint32_t DAINT; /* dev All Endpoints Itr Reg 818h*/ + __IO uint32_t DAINTMSK; /* dev All Endpoints Itr Mask 81Ch*/ + uint32_t Reserved20; /* Reserved 820h*/ + uint32_t Reserved9; /* Reserved 824h*/ + __IO uint32_t DVBUSDIS; /* dev VBUS discharge Register 828h*/ + __IO uint32_t DVBUSPULSE; /* dev VBUS Pulse Register 82Ch*/ + __IO uint32_t DTHRCTL; /* dev thr 830h*/ + __IO uint32_t DIEPEMPMSK; /* dev empty msk 834h*/ +} +USB_OTG_DREGS; + +typedef struct +{ + __IO uint32_t DIEPCTL; /* dev IN Endpoint Control Reg 900h + (ep_num * 20h) + 00h*/ + uint32_t Reserved04; /* Reserved 900h + (ep_num * 20h) + 04h*/ + __IO uint32_t DIEPINT; /* dev IN Endpoint Itr Reg 900h + (ep_num * 20h) + 08h*/ + uint32_t Reserved0C; /* Reserved 900h + (ep_num * 20h) + 0Ch*/ + __IO uint32_t DIEPTSIZ; /* IN Endpoint Txfer Size 900h + (ep_num * 20h) + 10h*/ + uint32_t Reserved14; + __IO uint32_t DTXFSTS;/*IN Endpoint Tx FIFO Status Reg 900h + (ep_num * 20h) + 18h*/ + uint32_t Reserved1C; /* Reserved 900h+(ep_num*20h)+1Ch-900h+ (ep_num * 20h) + 1Ch*/ +} +USB_OTG_INEPREGS; + +typedef struct +{ + __IO uint32_t DOEPCTL; /* dev OUT Endpoint Control Reg B00h + (ep_num * 20h) + 00h*/ + uint32_t Reserved04; /* Reserved B00h + (ep_num * 20h) + 04h*/ + __IO uint32_t DOEPINT; /* dev OUT Endpoint Itr Reg B00h + (ep_num * 20h) + 08h*/ + uint32_t Reserved0C; /* Reserved B00h + (ep_num * 20h) + 0Ch*/ + __IO uint32_t DOEPTSIZ; /* dev OUT Endpoint Txfer Size B00h + (ep_num * 20h) + 10h*/ + uint32_t Reserved14[3]; +} +USB_OTG_OUTEPREGS; + +typedef struct +{ + __IO uint32_t HCFG; /* Host Configuration Register 400h*/ + __IO uint32_t HFIR; /* Host Frame Interval Register 404h*/ + __IO uint32_t HFNUM; /* Host Frame Nbr/Frame Remaining 408h*/ + uint32_t Reserved40C; /* Reserved 40Ch*/ + __IO uint32_t HPTXSTS; /* Host Periodic Tx FIFO/ Queue Status 410h*/ + __IO uint32_t HAINT; /* Host All Channels Interrupt Register 414h*/ + __IO uint32_t HAINTMSK; /* Host All Channels Interrupt Mask 418h*/ +} +USB_OTG_HREGS; + +typedef struct +{ + __IO uint32_t HCCHAR; + __IO uint32_t HCSPLT; + __IO uint32_t HCINT; + __IO uint32_t HCINTMSK; + __IO uint32_t HCTSIZ; + uint32_t Reserved[3]; +} +USB_OTG_HC_REGS; + +typedef struct +{ + USB_OTG_GREGS GREGS; + uint32_t RESERVED0[188]; + USB_OTG_HREGS HREGS; + uint32_t RESERVED1[9]; + __IO uint32_t HPRT; + uint32_t RESERVED2[47]; + USB_OTG_HC_REGS HC_REGS[8]; + uint32_t RESERVED3[128]; + USB_OTG_DREGS DREGS; + uint32_t RESERVED4[50]; + USB_OTG_INEPREGS INEP_REGS[4]; + uint32_t RESERVED5[96]; + USB_OTG_OUTEPREGS OUTEP_REGS[4]; + uint32_t RESERVED6[160]; + __IO uint32_t PCGCCTL; + uint32_t RESERVED7[127]; + __IO uint32_t FIFO[4][1024]; +} +USB_OTG_CORE_REGS; + + +#define OTG_FS_BASE (AHB2PERIPH_BASE + 0x0000) +#define OTG_FS ((USB_OTG_CORE_REGS *) OTG_FS_BASE) + +#endif //__USB_OTG_REGS_H__ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ + diff --git a/libraries/USBHost/USBHost/USBHostConf.h b/libraries/USBHost/USBHost/USBHostConf.h index b0d9ff76b8..d5515edc3b 100644 --- a/libraries/USBHost/USBHost/USBHostConf.h +++ b/libraries/USBHost/USBHost/USBHostConf.h @@ -49,7 +49,7 @@ #define USBHOST_MOUSE 1 /* -* Enable USBHostSerial +* Enable USBHostSerial or USBHostMultiSerial (if set > 1) */ #define USBHOST_SERIAL 1 diff --git a/libraries/USBHost/USBHost/dbg.h b/libraries/USBHost/USBHost/dbg.h index 950e61f830..33deb48437 100644 --- a/libraries/USBHost/USBHost/dbg.h +++ b/libraries/USBHost/USBHost/dbg.h @@ -18,17 +18,35 @@ #define USB_DEBUG_H //Debug is disabled by default -#define DEBUG 0 +#define DEBUG 3 /*INFO,ERR,WARN*/ #define DEBUG_TRANSFER 0 #define DEBUG_EP_STATE 0 #define DEBUG_EVENT 0 -#if (DEBUG) +#if (DEBUG > 3) #define USB_DBG(x, ...) std::printf("[USB_DBG: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); #else #define USB_DBG(x, ...) #endif +#if (DEBUG > 2) +#define USB_INFO(x, ...) std::printf("[USB_INFO: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); +#else +#define USB_INFO(x, ...) +#endif + +#if (DEBUG > 1) +#define USB_WARN(x, ...) std::printf("[USB_WARNING: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); +#else +#define USB_WARN(x, ...) +#endif + +#if (DEBUG > 0) +#define USB_ERR(x, ...) std::printf("[USB_ERR: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); +#else +#define USB_ERR(x, ...) +#endif + #if (DEBUG_TRANSFER) #define USB_DBG_TRANSFER(x, ...) std::printf("[USB_TRANSFER: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); #else @@ -41,9 +59,6 @@ #define USB_DBG_EVENT(x, ...) #endif -#define USB_INFO(x, ...) std::printf("[USB_INFO: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); -#define USB_WARN(x, ...) std::printf("[USB_WARNING: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); -#define USB_ERR(x, ...) std::printf("[USB_ERR: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__); #endif diff --git a/libraries/USBHost/USBHostSerial/USBHostSerial.cpp b/libraries/USBHost/USBHostSerial/USBHostSerial.cpp index 52db31a4bb..2124c3aa60 100644 --- a/libraries/USBHost/USBHostSerial/USBHostSerial.cpp +++ b/libraries/USBHost/USBHostSerial/USBHostSerial.cpp @@ -20,27 +20,17 @@ #include "dbg.h" -#define SET_LINE_CODING 0x20 +#define CHECK_INTERFACE(cls,subcls,proto) \ + (((cls == 0xFF) && (subcls == 0xFF) && (proto == 0xFF)) /* QUALCOM CDC */ || \ + ((cls == SERIAL_CLASS) && (subcls == 0x00) && (proto == 0x00)) /* STANDARD CDC */ ) -USBHostSerial::USBHostSerial(): circ_buf() { +#if (USBHOST_SERIAL <= 1) + +USBHostSerial::USBHostSerial() +{ host = USBHost::getHostInst(); - size_bulk_in = 0; - size_bulk_out = 0; - init(); -} - -void USBHostSerial::init() { - dev = NULL; - bulk_in = NULL; - bulk_out = NULL; + ports_found = 0; dev_connected = false; - serial_intf = -1; - serial_device_found = false; - line_coding.baudrate = 9600; - line_coding.data_bits = 8; - line_coding.parity = None; - line_coding.stop_bits = 1; - circ_buf.flush(); } bool USBHostSerial::connected() @@ -48,49 +38,219 @@ bool USBHostSerial::connected() return dev_connected; } +void USBHostSerial::disconnect(void) +{ + ports_found = 0; + dev = NULL; +} + bool USBHostSerial::connect() { - if (dev_connected) { - return true; + if (dev) + { + for (uint8_t i = 0; i < MAX_DEVICE_CONNECTED; i++) + { + USBDeviceConnected* d = host->getDevice(i); + if (dev == d) + return true; + } + disconnect(); } - for (uint8_t i = 0; i < MAX_DEVICE_CONNECTED; i++) { - if ((dev = host->getDevice(i)) != NULL) { + for (uint8_t i = 0; i < MAX_DEVICE_CONNECTED; i++) + { + USBDeviceConnected* d = host->getDevice(i); + if (d != NULL) { - USB_DBG("Trying to connect serial device\r\n"); - - if(host->enumerate(dev, this)) + USB_DBG("Trying to connect serial device \r\n"); + if(host->enumerate(d, this)) break; - if (serial_device_found) { - bulk_in = dev->getEndpoint(serial_intf, BULK_ENDPOINT, IN); - bulk_out = dev->getEndpoint(serial_intf, BULK_ENDPOINT, OUT); - - if (!bulk_in || !bulk_out) - break; - - USB_INFO("New Serial device: VID:%04x PID:%04x [dev: %p - intf: %d]", dev->getVid(), dev->getPid(), dev, serial_intf); - dev->setName("Serial", serial_intf); - host->registerDriver(dev, serial_intf, this, &USBHostSerial::init); - - baud(9600); - - size_bulk_in = bulk_in->getSize(); - size_bulk_out = bulk_out->getSize(); - - bulk_in->attach(this, &USBHostSerial::rxHandler); - bulk_out->attach(this, &USBHostSerial::txHandler); - - host->bulkRead(dev, bulk_in, buf, size_bulk_in, false); - dev_connected = true; - return true; + USBEndpoint* bulk_in = d->getEndpoint(port_intf, BULK_ENDPOINT, IN); + USBEndpoint* bulk_out = d->getEndpoint(port_intf, BULK_ENDPOINT, OUT); + if (bulk_in && bulk_out) + { + USBHostSerialPort::connect(host,d,port_intf,bulk_in, bulk_out); + dev = d; } } } - init(); + return dev != NULL; +} + +/*virtual*/ void USBHostSerial::setVidPid(uint16_t vid, uint16_t pid) +{ + // we don't check VID/PID for MSD driver +} + +/*virtual*/ bool USBHostSerial::parseInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol) //Must return true if the interface should be parsed +{ + if (!ports_found && + CHECK_INTERFACE(intf_class, intf_subclass, intf_protocol)) { + port_intf = intf_nb; + ports_found = true; + return true; + } return false; } -void USBHostSerial::rxHandler() { +/*virtual*/ bool USBHostSerial::useEndpoint(uint8_t intf_nb, ENDPOINT_TYPE type, ENDPOINT_DIRECTION dir) //Must return true if the endpoint will be used +{ + if (ports_found && (intf_nb == port_intf)) { + if (type == BULK_ENDPOINT) + return true; + } + return false; +} + +#else // (USBHOST_SERIAL > 1) + +//------------------------------------------------------------------------------ + +USBHostMultiSerial::USBHostMultiSerial() +{ + host = USBHost::getHostInst(); + dev = NULL; + memset(ports, NULL, sizeof(ports)); + ports_found = 0; + dev_connected = false; +} + +USBHostMultiSerial::~USBHostMultiSerial() +{ + disconnect(); +} + +bool USBHostMultiSerial::connected() +{ + return dev_connected; +} + +void USBHostMultiSerial::disconnect(void) +{ + for (int port = 0; port < USBHOST_SERIAL; port ++) + { + if (ports[port]) + { + delete ports[port]; + ports[port] = NULL; + } + } + ports_found = 0; + dev = NULL; +} + +bool USBHostMultiSerial::connect() { + + if (dev) + { + for (uint8_t i = 0; i < MAX_DEVICE_CONNECTED; i++) + { + USBDeviceConnected* d = host->getDevice(i); + if (dev == d) + return true; + } + disconnect(); + } + for (uint8_t i = 0; i < MAX_DEVICE_CONNECTED; i++) + { + USBDeviceConnected* d = host->getDevice(i); + if (d != NULL) { + + USB_DBG("Trying to connect serial device \r\n"); + if(host->enumerate(d, this)) + break; + + for (int port = 0; port < ports_found; port ++) + { + USBEndpoint* bulk_in = d->getEndpoint(port_intf[port], BULK_ENDPOINT, IN); + USBEndpoint* bulk_out = d->getEndpoint(port_intf[port], BULK_ENDPOINT, OUT); + if (bulk_in && bulk_out) + { + ports[port] = new USBHostSerialPort(); + if (ports[port]) + { + ports[port]->connect(host,d,port_intf[port],bulk_in, bulk_out); + dev = d; + } + } + } + } + } + return dev != NULL; +} + +/*virtual*/ void USBHostMultiSerial::setVidPid(uint16_t vid, uint16_t pid) +{ + // we don't check VID/PID for MSD driver +} + +/*virtual*/ bool USBHostMultiSerial::parseInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol) //Must return true if the interface should be parsed +{ + if ((ports_found < USBHOST_SERIAL) && + CHECK_INTERFACE(intf_class, intf_subclass, intf_protocol)) { + port_intf[ports_found++] = intf_nb; + return true; + } + return false; +} + +/*virtual*/ bool USBHostMultiSerial::useEndpoint(uint8_t intf_nb, ENDPOINT_TYPE type, ENDPOINT_DIRECTION dir) //Must return true if the endpoint will be used +{ + if ((ports_found > 0) && (intf_nb == port_intf[ports_found-1])) { + if (type == BULK_ENDPOINT) + return true; + } + return false; +} + +#endif + +//------------------------------------------------------------------------------ + +#define SET_LINE_CODING 0x20 + +USBHostSerialPort::USBHostSerialPort(): circ_buf() +{ + init(); +} + +void USBHostSerialPort::init(void) +{ + host = NULL; + dev = NULL; + serial_intf = NULL; + size_bulk_in = 0; + size_bulk_out = 0; + bulk_in = NULL; + bulk_out = NULL; + line_coding.baudrate = 9600; + line_coding.data_bits = 8; + line_coding.parity = None; + line_coding.stop_bits = 1; + circ_buf.flush(); +} + +void USBHostSerialPort::connect(USBHost* _host, USBDeviceConnected * _dev, + uint8_t _serial_intf, USBEndpoint* _bulk_in, USBEndpoint* _bulk_out) +{ + host = _host; + dev = _dev; + serial_intf = _serial_intf; + bulk_in = _bulk_in; + bulk_out = _bulk_out; + + USB_INFO("New Serial device: VID:%04x PID:%04x [dev: %p - intf: %d]", dev->getVid(), dev->getPid(), dev, serial_intf); + dev->setName("Serial", serial_intf); + host->registerDriver(dev, serial_intf, this, &USBHostSerialPort::init); + //baud(9600); + size_bulk_in = bulk_in->getSize(); + size_bulk_out = bulk_out->getSize(); + bulk_in->attach(this, &USBHostSerialPort::rxHandler); + bulk_out->attach(this, &USBHostSerialPort::txHandler); + host->bulkRead(dev, bulk_in, buf, size_bulk_in, false); +} + +void USBHostSerialPort::rxHandler() { if (bulk_in) { int len = bulk_in->getLengthTransferred(); if (bulk_in->getState() == USB_TYPE_IDLE) { @@ -103,7 +263,7 @@ void USBHostSerial::rxHandler() { } } -void USBHostSerial::txHandler() { +void USBHostSerialPort::txHandler() { if (bulk_out) { if (bulk_out->getState() == USB_TYPE_IDLE) { tx.call(); @@ -111,7 +271,7 @@ void USBHostSerial::txHandler() { } } -int USBHostSerial::_putc(int c) { +int USBHostSerialPort::_putc(int c) { if (bulk_out) { if (host->bulkWrite(dev, bulk_out, (uint8_t *)&c, 1) == USB_TYPE_OK) { return 1; @@ -120,12 +280,12 @@ int USBHostSerial::_putc(int c) { return -1; } -void USBHostSerial::baud(int baudrate) { +void USBHostSerialPort::baud(int baudrate) { line_coding.baudrate = baudrate; format(line_coding.data_bits, (Parity)line_coding.parity, line_coding.stop_bits); } -void USBHostSerial::format(int bits, Parity parity, int stop_bits) { +void USBHostSerialPort::format(int bits, Parity parity, int stop_bits) { line_coding.data_bits = bits; line_coding.parity = parity; line_coding.stop_bits = (stop_bits == 1) ? 0 : 2; @@ -137,7 +297,7 @@ void USBHostSerial::format(int bits, Parity parity, int stop_bits) { 0, serial_intf, (uint8_t *)&line_coding, 7); } -int USBHostSerial::_getc() { +int USBHostSerialPort::_getc() { uint8_t c = 0; if (bulk_in == NULL) { init(); @@ -148,37 +308,36 @@ int USBHostSerial::_getc() { return c; } +int USBHostSerialPort::writeBuf(const char* b, int s) +{ + int c = 0; + if (bulk_out) + { + while (c < s) + { + int i = (s < size_bulk_out) ? s : size_bulk_out; + if (host->bulkWrite(dev, bulk_out, (uint8_t *)(b+c), i) == USB_TYPE_OK) + c += i; + } + } + return s; +} -uint8_t USBHostSerial::available() { +int USBHostSerialPort::readBuf(char* b, int s) +{ + int i = 0; + if (bulk_in) + { + for (i = 0; i < s; ) + b[i++] = getc(); + } + return i; +} + +uint8_t USBHostSerialPort::available() { return circ_buf.available(); } -/*virtual*/ void USBHostSerial::setVidPid(uint16_t vid, uint16_t pid) -{ - // we don't check VID/PID for MSD driver -} -/*virtual*/ bool USBHostSerial::parseInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol) //Must return true if the interface should be parsed -{ - if ((serial_intf == -1) && - (intf_class == SERIAL_CLASS) && - (intf_subclass == 0x00) && - (intf_protocol == 0x00)) { - serial_intf = intf_nb; - return true; - } - return false; -} - -/*virtual*/ bool USBHostSerial::useEndpoint(uint8_t intf_nb, ENDPOINT_TYPE type, ENDPOINT_DIRECTION dir) //Must return true if the endpoint will be used -{ - if (intf_nb == serial_intf) { - if (type == BULK_ENDPOINT) { - serial_device_found = true; - return true; - } - } - return false; -} #endif diff --git a/libraries/USBHost/USBHostSerial/USBHostSerial.h b/libraries/USBHost/USBHostSerial/USBHostSerial.h index 8e386c42fd..53466da249 100644 --- a/libraries/USBHost/USBHostSerial/USBHostSerial.h +++ b/libraries/USBHost/USBHostSerial/USBHostSerial.h @@ -28,12 +28,12 @@ /** * A class to communicate a USB virtual serial port */ -class USBHostSerial : public IUSBEnumerator, public Stream { +class USBHostSerialPort : public Stream { public: /** * Constructor */ - USBHostSerial(); + USBHostSerialPort(); enum IrqType { RxIrq, @@ -48,20 +48,9 @@ public: Space }; - /** - * Check if a virtual serial port is connected - * - * @returns true if a serial device is connected - */ - bool connected(); - - /** - * Try to connect a serial device - * - * @return true if connection was successful - */ - bool connect(); - + void connect(USBHost* _host, USBDeviceConnected * _dev, + uint8_t _serial_intf, USBEndpoint* _bulk_in, USBEndpoint* _bulk_out); + /** * Check the number of bytes available. * @@ -111,34 +100,29 @@ public: /** Set the transmission format used by the Serial port * * @param bits The number of bits in a word (default = 8) - * @param parity The parity used (USBHostSerial::None, USBHostSerial::Odd, USBHostSerial::Even, USBHostSerial::Mark, USBHostSerial::Space; default = USBHostSerial::None) + * @param parity The parity used (USBHostSerialPort::None, USBHostSerialPort::Odd, USBHostSerialPort::Even, USBHostSerialPort::Mark, USBHostSerialPort::Space; default = USBHostSerialPort::None) * @param stop The number of stop bits (1 or 2; default = 1) */ - void format(int bits = 8, Parity parity = USBHostSerial::None, int stop_bits = 1); - + void format(int bits = 8, Parity parity = USBHostSerialPort::None, int stop_bits = 1); + virtual int writeBuf(const char* b, int s); + virtual int readBuf(char* b, int s); protected: - //From IUSBEnumerator - virtual void setVidPid(uint16_t vid, uint16_t pid); - virtual bool parseInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol); //Must return true if the interface should be parsed - virtual bool useEndpoint(uint8_t intf_nb, ENDPOINT_TYPE type, ENDPOINT_DIRECTION dir); //Must return true if the endpoint will be used - virtual int _getc(); virtual int _putc(int c); private: USBHost * host; USBDeviceConnected * dev; + USBEndpoint * bulk_in; USBEndpoint * bulk_out; uint32_t size_bulk_in; uint32_t size_bulk_out; - bool dev_connected; - void init(); - MtxCircBuffer circ_buf; + MtxCircBuffer circ_buf; uint8_t buf[64]; @@ -156,11 +140,92 @@ private: FunctionPointer rx; FunctionPointer tx; - int serial_intf; - bool serial_device_found; - + uint8_t serial_intf; }; +#if (USBHOST_SERIAL <= 1) + +class USBHostSerial : public IUSBEnumerator, public USBHostSerialPort +{ +public: + USBHostSerial(); + + /** + * Try to connect a serial device + * + * @return true if connection was successful + */ + bool connect(); + + void disconnect(); + + /** + * Check if a any serial port is connected + * + * @returns true if a serial device is connected + */ + bool connected(); + +protected: + USBHost* host; + USBDeviceConnected* dev; + uint8_t port_intf; + int ports_found; + + //From IUSBEnumerator + virtual void setVidPid(uint16_t vid, uint16_t pid); + virtual bool parseInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol); //Must return true if the interface should be parsed + virtual bool useEndpoint(uint8_t intf_nb, ENDPOINT_TYPE type, ENDPOINT_DIRECTION dir); //Must return true if the endpoint will be used + +private: + bool dev_connected; +}; + +#else // (USBHOST_SERIAL > 1) + +class USBHostMultiSerial : public IUSBEnumerator { +public: + USBHostMultiSerial(); + virtual ~USBHostMultiSerial(); + + USBHostSerialPort* getPort(int port) + { + return port < USBHOST_SERIAL ? ports[port] : NULL; + } + + /** + * Try to connect a serial device + * + * @return true if connection was successful + */ + bool connect(); + + void disconnect(); + + /** + * Check if a any serial port is connected + * + * @returns true if a serial device is connected + */ + bool connected(); + +protected: + USBHost* host; + USBDeviceConnected* dev; + USBHostSerialPort* ports[USBHOST_SERIAL]; + uint8_t port_intf[USBHOST_SERIAL]; + int ports_found; + + //From IUSBEnumerator + virtual void setVidPid(uint16_t vid, uint16_t pid); + virtual bool parseInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol); //Must return true if the interface should be parsed + virtual bool useEndpoint(uint8_t intf_nb, ENDPOINT_TYPE type, ENDPOINT_DIRECTION dir); //Must return true if the endpoint will be used + +private: + bool dev_connected; +}; +#endif // (USBHOST_SERIAL <= 1) + #endif #endif diff --git a/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KL05Z/TOOLCHAIN_GCC_ARM/MKL05Z4.ld b/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KL05Z/TOOLCHAIN_GCC_ARM/MKL05Z4.ld new file mode 100644 index 0000000000..5585ee7b83 --- /dev/null +++ b/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KL05Z/TOOLCHAIN_GCC_ARM/MKL05Z4.ld @@ -0,0 +1,154 @@ +/* + * KL05Z ARM GCC linker script file, Martin Kojtal (0xc0170) + */ + +MEMORY +{ + VECTORS (rx) : ORIGIN = 0x00000000, LENGTH = 0x00000410 + FLASH (rx) : ORIGIN = 0x00000410, LENGTH = 32K - 0x00000410 + RAM (rwx) : ORIGIN = 0x1FFFFC00, LENGTH = 4K - 0xC0 +} + +/* Linker script to place sections and symbol values. Should be used together + * with other linker script that defines memory regions FLASH and RAM. + * It references following symbols, which must be defined in code: + * _reset_init : Entry of reset handler + * + * It defines following symbols, which code can use without definition: + * __exidx_start + * __exidx_end + * __etext + * __data_start__ + * __preinit_array_start + * __preinit_array_end + * __init_array_start + * __init_array_end + * __fini_array_start + * __fini_array_end + * __data_end__ + * __bss_start__ + * __bss_end__ + * __end__ + * end + * __HeapLimit + * __StackLimit + * __StackTop + * __stack + */ +ENTRY(Reset_Handler) + +SECTIONS +{ + .isr_vector : + { + __vector_table = .; + KEEP(*(.vector_table)) + . = ALIGN(4); + } > VECTORS + + .text : + { + *(.text*) + + KEEP(*(.init)) + KEEP(*(.fini)) + + /* .ctors */ + *crtbegin.o(.ctors) + *crtbegin?.o(.ctors) + *(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors) + *(SORT(.ctors.*)) + *(.ctors) + + /* .dtors */ + *crtbegin.o(.dtors) + *crtbegin?.o(.dtors) + *(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors) + *(SORT(.dtors.*)) + *(.dtors) + + *(.rodata*) + + KEEP(*(.eh_frame*)) + } > FLASH + + .ARM.extab : + { + *(.ARM.extab* .gnu.linkonce.armextab.*) + } > FLASH + + __exidx_start = .; + .ARM.exidx : + { + *(.ARM.exidx* .gnu.linkonce.armexidx.*) + } > FLASH + __exidx_end = .; + + __etext = .; + + .data : AT (__etext) + { + __data_start__ = .; + *(vtable) + *(.data*) + + . = ALIGN(4); + /* preinit data */ + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP(*(.preinit_array)) + PROVIDE_HIDDEN (__preinit_array_end = .); + + . = ALIGN(4); + /* init data */ + PROVIDE_HIDDEN (__init_array_start = .); + KEEP(*(SORT(.init_array.*))) + KEEP(*(.init_array)) + PROVIDE_HIDDEN (__init_array_end = .); + + + . = ALIGN(4); + /* finit data */ + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP(*(SORT(.fini_array.*))) + KEEP(*(.fini_array)) + PROVIDE_HIDDEN (__fini_array_end = .); + + . = ALIGN(4); + /* All data end */ + __data_end__ = .; + + } > RAM + + .bss : + { + __bss_start__ = .; + *(.bss*) + *(COMMON) + __bss_end__ = .; + } > RAM + + .heap : + { + __end__ = .; + end = __end__; + *(.heap*) + __HeapLimit = .; + } > RAM + + /* .stack_dummy section doesn't contains any symbols. It is only + * used for linker to calculate size of stack sections, and assign + * values to stack symbols later */ + .stack_dummy : + { + *(.stack) + } > RAM + + /* Set stack top to end of RAM, and stack limit move down by + * size of stack_dummy section */ + __StackTop = ORIGIN(RAM) + LENGTH(RAM); + __StackLimit = __StackTop - SIZEOF(.stack_dummy); + PROVIDE(__stack = __StackTop); + + /* Check if data + heap + stack exceeds RAM limit */ + ASSERT(__StackLimit >= __HeapLimit, "region RAM overflowed with stack") +} diff --git a/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KL05Z/TOOLCHAIN_GCC_ARM/startup_MKL05Z4.s b/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KL05Z/TOOLCHAIN_GCC_ARM/startup_MKL05Z4.s new file mode 100644 index 0000000000..384c489e2e --- /dev/null +++ b/libraries/mbed/targets/cmsis/TARGET_Freescale/TARGET_KL05Z/TOOLCHAIN_GCC_ARM/startup_MKL05Z4.s @@ -0,0 +1,225 @@ +/* KL05Z startup ARM GCC, Martin Kojtal (0xc0170) + * Purpose: startup file for Cortex-M0 devices. Should use with + * GCC for ARM Embedded Processors + * Version: V1.2 + * Date: 15 Nov 2011 + * + * Copyright (c) 2011, ARM Limited + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the ARM Limited nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL ARM LIMITED BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + .syntax unified + .arch armv6-m + +/* Memory Model + The HEAP starts at the end of the DATA section and grows upward. + + The STACK starts at the end of the RAM and grows downward. + + The HEAP and stack STACK are only checked at compile time: + (DATA_SIZE + HEAP_SIZE + STACK_SIZE) < RAM_SIZE + + This is just a check for the bare minimum for the Heap+Stack area before + aborting compilation, it is not the run time limit: + Heap_Size + Stack_Size = 0x80 + 0x80 = 0x100 + */ + .section .stack + .align 3 +#ifdef __STACK_SIZE + .equ Stack_Size, __STACK_SIZE +#else + .equ Stack_Size, 0x80 +#endif + .globl __StackTop + .globl __StackLimit +__StackLimit: + .space Stack_Size + .size __StackLimit, . - __StackLimit +__StackTop: + .size __StackTop, . - __StackTop + + .section .heap + .align 3 +#ifdef __HEAP_SIZE + .equ Heap_Size, __HEAP_SIZE +#else + .equ Heap_Size, 0x80 +#endif + .globl __HeapBase + .globl __HeapLimit +__HeapBase: + .space Heap_Size + .size __HeapBase, . - __HeapBase +__HeapLimit: + .size __HeapLimit, . - __HeapLimit + + .section .vector_table,"a",%progbits + .align 2 + .globl __isr_vector +__isr_vector: + .long __StackTop /* Top of Stack */ + .long Reset_Handler /* Reset Handler */ + .long NMI_Handler /* NMI Handler */ + .long HardFault_Handler /* Hard Fault Handler */ + .long 0 /* Reserved */ + .long 0 /* Reserved */ + .long 0 /* Reserved */ + .long 0 /* Reserved */ + .long 0 /* Reserved */ + .long 0 /* Reserved */ + .long 0 /* Reserved */ + .long SVC_Handler /* SVCall Handler */ + .long 0 /* Reserved */ + .long 0 /* Reserved */ + .long PendSV_Handler /* PendSV Handler */ + .long SysTick_Handler /* SysTick Handler */ + + /* External interrupts */ + .long DMA0_IRQHandler /* DMA channel 0 transfer complete interrupt */ + .long DMA1_IRQHandler /* DMA channel 1 transfer complete interrupt */ + .long DMA2_IRQHandler /* DMA channel 2 transfer complete interrupt */ + .long DMA3_IRQHandler /* DMA channel 3 transfer complete interrupt */ + .long Default_Handler /* Reserved interrupt 20 */ + .long FTFA_IRQHandler /* FTFA interrupt */ + .long LVD_LVW_IRQHandler /* Low Voltage Detect, Low Voltage Warning */ + .long LLW_IRQHandler /* Low Leakage Wakeup */ + .long I2C0_IRQHandler /* I2C0 interrupt */ + .long Default_Handler /* Reserved interrupt 25 */ + .long SPI0_IRQHandler /* SPI0 interrupt */ + .long Default_Handler /* Reserved interrupt 27 */ + .long UART0_IRQHandler /* UART0 status/error interrupt */ + .long Default_Handler /* Reserved interrupt 29 */ + .long Default_Handler /* Reserved interrupt 30 */ + .long ADC0_IRQHandler /* ADC0 interrupt */ + .long CMP0_IRQHandler /* CMP0 interrupt */ + .long TPM0_IRQHandler /* TPM0 fault, overflow and channels interrupt */ + .long TPM1_IRQHandler /* TPM1 fault, overflow and channels interrupt */ + .long Default_Handler /* Reserved interrupt 35 */ + .long RTC_IRQHandler /* RTC interrupt */ + .long RTC_Seconds_IRQHandler /* RTC seconds interrupt */ + .long PIT_IRQHandler /* PIT timer interrupt */ + .long Default_Handler /* Reserved interrupt 39 */ + .long Default_Handler /* Reserved interrupt 40 */ + .long DAC0_IRQHandler /* DAC interrupt */ + .long TSI0_IRQHandler /* TSI0 interrupt */ + .long MCG_IRQHandler /* MCG interrupt */ + .long LPTimer_IRQHandler /* LPTimer interrupt */ + .long Default_Handler /* Reserved interrupt 45 */ + .long PORTA_IRQHandler /* Port A interrupt */ + .long PORTB_IRQHandler /* Port B interrupt */ + + .size __isr_vector, . - __isr_vector + .org 0x400, 0xff + + .long 0xffffffff + .long 0xffffffff + .long 0xffffffff + .long 0xfffffffe + + .section .text.Reset_Handler + .thumb + .thumb_func + .align 2 + .globl Reset_Handler + .type Reset_Handler, %function +Reset_Handler: +/* Loop to copy data from read only memory to RAM. The ranges + * of copy from/to are specified by following symbols evaluated in + * linker script. + * __etext: End of code section, i.e., begin of data sections to copy from. + * __data_start__/__data_end__: RAM address range that data should be + * copied to. Both must be aligned to 4 bytes boundary. */ + + ldr r1, =__etext + ldr r2, =__data_start__ + ldr r3, =__data_end__ + + subs r3, r2 + ble .flash_to_ram_loop_end + + movs r4, 0 +.flash_to_ram_loop: + ldr r0, [r1,r4] + str r0, [r2,r4] + adds r4, 4 + cmp r4, r3 + blt .flash_to_ram_loop +.flash_to_ram_loop_end: + + ldr r0, =SystemInit + blx r0 + ldr r0, =_start + bx r0 + .pool + .size Reset_Handler, . - Reset_Handler + + .text +/* Macro to define default handlers. Default handler + * will be weak symbol and just dead loops. They can be + * overwritten by other handlers */ + .macro def_default_handler handler_name + .align 1 + .thumb_func + .weak \handler_name + .type \handler_name, %function +\handler_name : + b . + .size \handler_name, . - \handler_name + .endm + + def_default_handler NMI_Handler + def_default_handler HardFault_Handler + def_default_handler SVC_Handler + def_default_handler PendSV_Handler + def_default_handler SysTick_Handler + def_default_handler Default_Handler + + def_default_handler DMA0_IRQHandler + def_default_handler DMA1_IRQHandler + def_default_handler DMA2_IRQHandler + def_default_handler DMA3_IRQHandler + def_default_handler FTFA_IRQHandler + def_default_handler LVD_LVW_IRQHandler + def_default_handler LLW_IRQHandler + def_default_handler I2C0_IRQHandler + def_default_handler SPI0_IRQHandler + def_default_handler UART0_IRQHandler + def_default_handler ADC0_IRQHandler + def_default_handler CMP0_IRQHandler + def_default_handler TPM0_IRQHandler + def_default_handler TPM1_IRQHandler + def_default_handler RTC_IRQHandler + def_default_handler RTC_Seconds_IRQHandler + def_default_handler PIT_IRQHandler + def_default_handler DAC0_IRQHandler + def_default_handler TSI0_IRQHandler + def_default_handler MCG_IRQHandler + def_default_handler LPTimer_IRQHandler + def_default_handler PORTA_IRQHandler + def_default_handler PORTB_IRQHandler + + .weak DEF_IRQHandler + .set DEF_IRQHandler, Default_Handler + + .end diff --git a/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/TARGET_LPC4088_EA/LPC407X_8X.sct b/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/LPC407X_8X.sct similarity index 67% rename from libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/TARGET_LPC4088_EA/LPC407X_8X.sct rename to libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/LPC407X_8X.sct index 2357956790..a33b0d3460 100644 --- a/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/TARGET_LPC4088_EA/LPC407X_8X.sct +++ b/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/LPC407X_8X.sct @@ -6,7 +6,9 @@ LR_IROM1 0x00000000 0x00080000 { ; load region size_region ER_IROM1 0x00000000 0x00080000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) - .ANY (+RO) + *.o (+RO-CODE) ; forces all CODE to IFLASH + .ANY2 (+RO-DATA) ; prioritizes DATA in IFLASH before SPIFI + .ANY (+RO) ; remaining RO } RW_IRAM1 0x100000E8 0x0000FF18 { ; RW data .ANY (+RW +ZI) @@ -21,7 +23,8 @@ LR_IROM1 0x00000000 0x00080000 { ; load region size_region LR_IROM2 0x28000000 0x01000000 { ER_IROM2 0x28000000 0x01000000 { ; load address = execution address - .ANY (+RO) + .ANY1 (+RO-DATA) ; all DATA not fitting in IFLASH + .ANY (SPIFI_MEM) ; DATA tagged as SPIFI_MEM } } diff --git a/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/TARGET_LPC4088/LPC407X_8X.sct b/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/TARGET_LPC4088/LPC407X_8X.sct deleted file mode 100644 index 45c2fdf69e..0000000000 --- a/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC408X/TOOLCHAIN_ARM_STD/TARGET_LPC4088/LPC407X_8X.sct +++ /dev/null @@ -1,18 +0,0 @@ -; ************************************************************* -; *** Scatter-Loading Description File generated by uVision *** -; ************************************************************* - -LR_IROM1 0x00000000 0x00080000 { ; load region size_region - ER_IROM1 0x00000000 0x00080000 { ; load address = execution address - *.o (RESET, +First) - *(InRoot$$Sections) - .ANY (+RO) - } - RW_IRAM1 0x100000E8 0x0000FF18 { ; RW data - .ANY (+RW +ZI) - } - RW_IRAM2 0x20000000 0x00008000 { - .ANY (AHBSRAM1) - } -} - diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_MICRO/startup_stm32f10x_md.s b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_MICRO/startup_stm32f10x_md.s index be729c2305..55554f1ae3 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_MICRO/startup_stm32f10x_md.s +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_MICRO/startup_stm32f10x_md.s @@ -1,19 +1,7 @@ -;******************** (C) COPYRIGHT 2011 STMicroelectronics ******************** +;******************************************************************************* ;* File Name : startup_stm32f10x_md.s -;* Author : MCD Application Team -;* Version : V3.5.0 -;* Date : 11-March-2011 ;* Description : STM32F10x Medium Density Devices vector table for MDK-ARM -;* toolchain. -;* This module performs: -;* - Set the initial SP -;* - Set the initial PC == Reset_Handler -;* - Set the vector table entries with the exceptions ISR address -;* - Configure the clock system -;* - Branches to __main in the C library (which eventually -;* calls main()). -;* After Reset the CortexM3 processor is in Thread mode, -;* priority is Privileged, and the Stack is set to Main. +;* toolchain + ARM_MICRO compiler ;* <<< Use Configuration Wizard in Context Menu >>> ;******************************************************************************* ; THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS @@ -33,6 +21,8 @@ Stack_Size EQU 0x00000400 AREA STACK, NOINIT, READWRITE, ALIGN=3 + EXPORT __initial_sp + Stack_Mem SPACE Stack_Size __initial_sp EQU 0x20005000 ; Top of RAM @@ -41,9 +31,12 @@ __initial_sp EQU 0x20005000 ; Top of RAM ; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> ; -Heap_Size EQU 0x00000200 +Heap_Size EQU 0x00000000 AREA HEAP, NOINIT, READWRITE, ALIGN=3 + EXPORT __heap_base + EXPORT __heap_limit + __heap_base Heap_Mem SPACE Heap_Size __heap_limit @@ -275,33 +268,4 @@ USBWakeUp_IRQHandler ENDP ALIGN - -;******************************************************************************* -; User Stack and Heap initialization -;******************************************************************************* - IF :DEF:__MICROLIB - - EXPORT __initial_sp - EXPORT __heap_base - EXPORT __heap_limit - - ELSE - - IMPORT __use_two_region_memory - EXPORT __user_initial_stackheap - -__user_initial_stackheap - - LDR R0, = Heap_Mem - LDR R1, =(Stack_Mem + Stack_Size) - LDR R2, = (Heap_Mem + Heap_Size) - LDR R3, = Stack_Mem - BX LR - - ALIGN - - ENDIF - - END - -;******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE***** + END diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_STD/startup_stm32f10x_md.s b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_STD/startup_stm32f10x_md.s index be729c2305..4c731b1717 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_STD/startup_stm32f10x_md.s +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/TOOLCHAIN_ARM_STD/startup_stm32f10x_md.s @@ -1,19 +1,7 @@ -;******************** (C) COPYRIGHT 2011 STMicroelectronics ******************** +;******************************************************************************* ;* File Name : startup_stm32f10x_md.s -;* Author : MCD Application Team -;* Version : V3.5.0 -;* Date : 11-March-2011 ;* Description : STM32F10x Medium Density Devices vector table for MDK-ARM -;* toolchain. -;* This module performs: -;* - Set the initial SP -;* - Set the initial PC == Reset_Handler -;* - Set the vector table entries with the exceptions ISR address -;* - Configure the clock system -;* - Branches to __main in the C library (which eventually -;* calls main()). -;* After Reset the CortexM3 processor is in Thread mode, -;* priority is Privileged, and the Stack is set to Main. +;* toolchain + ARM_STD compiler ;* <<< Use Configuration Wizard in Context Menu >>> ;******************************************************************************* ; THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS @@ -24,30 +12,8 @@ ; INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. ;******************************************************************************* -; Amount of memory (in bytes) allocated for Stack -; Tailor this value to your application needs -; Stack Configuration -; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Stack_Size EQU 0x00000400 - - AREA STACK, NOINIT, READWRITE, ALIGN=3 -Stack_Mem SPACE Stack_Size __initial_sp EQU 0x20005000 ; Top of RAM - -; Heap Configuration -; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Heap_Size EQU 0x00000200 - - AREA HEAP, NOINIT, READWRITE, ALIGN=3 -__heap_base -Heap_Mem SPACE Heap_Size -__heap_limit - PRESERVE8 THUMB @@ -275,33 +241,4 @@ USBWakeUp_IRQHandler ENDP ALIGN - -;******************************************************************************* -; User Stack and Heap initialization -;******************************************************************************* - IF :DEF:__MICROLIB - - EXPORT __initial_sp - EXPORT __heap_base - EXPORT __heap_limit - - ELSE - - IMPORT __use_two_region_memory - EXPORT __user_initial_stackheap - -__user_initial_stackheap - - LDR R0, = Heap_Mem - LDR R1, =(Stack_Mem + Stack_Size) - LDR R2, = (Heap_Mem + Heap_Size) - LDR R3, = Stack_Mem - BX LR - - ALIGN - - ENDIF - - END - -;******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE***** + END diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/system_stm32f10x.c b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/system_stm32f10x.c index 71efc858c8..2102cbbcda 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/system_stm32f10x.c +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_NUCLEO_F103RB/system_stm32f10x.c @@ -105,14 +105,14 @@ #if defined (STM32F10X_LD_VL) || (defined STM32F10X_MD_VL) || (defined STM32F10X_HD_VL) /* #define SYSCLK_FREQ_HSE HSE_VALUE */ - #define SYSCLK_FREQ_24MHz 24000000 +/* #define SYSCLK_FREQ_24MHz 24000000 */ #else /* #define SYSCLK_FREQ_HSE HSE_VALUE */ /* #define SYSCLK_FREQ_24MHz 24000000 */ /* #define SYSCLK_FREQ_36MHz 36000000 */ /* #define SYSCLK_FREQ_48MHz 48000000 */ /* #define SYSCLK_FREQ_56MHz 56000000 */ -#define SYSCLK_FREQ_72MHz 72000000 +/* #define SYSCLK_FREQ_72MHz 72000000 */ #endif /*!< Uncomment the following line if you need to use external SRAM mounted diff --git a/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL05Z/us_ticker.c b/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL05Z/us_ticker.c index f4a99cf2b8..9253313a44 100644 --- a/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL05Z/us_ticker.c +++ b/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL05Z/us_ticker.c @@ -114,7 +114,7 @@ static void lptmr_isr(void) { } } -void us_ticker_set_interrupt(uint32_t timestamp) { +void us_ticker_set_interrupt(unsigned int timestamp) { int32_t delta = (int32_t)(timestamp - us_ticker_read()); if (delta <= 0) { // This event was in the past: diff --git a/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL46Z/PinNames.h b/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL46Z/PinNames.h index d4450f7bc2..e9e3f79ac7 100644 --- a/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL46Z/PinNames.h +++ b/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KL46Z/PinNames.h @@ -231,10 +231,11 @@ typedef enum { NC = (int)0xFFFFFFFF } PinName; -/* PullDown not available for KL46 */ +/* Pull modes for input pins */ typedef enum { PullNone = 0, - PullUp = 2, + PullDown = 2, + PullUp = 3 } PinMode; #ifdef __cplusplus diff --git a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/PeripheralNames.h b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_301/PeripheralNames.h similarity index 100% rename from libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/PeripheralNames.h rename to libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_301/PeripheralNames.h diff --git a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/PinNames.h b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_301/PinNames.h similarity index 100% rename from libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/PinNames.h rename to libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_301/PinNames.h diff --git a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_401/PeripheralNames.h b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_401/PeripheralNames.h new file mode 100644 index 0000000000..705034a2fb --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_401/PeripheralNames.h @@ -0,0 +1,87 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef MBED_PERIPHERALNAMES_H +#define MBED_PERIPHERALNAMES_H + +#include "cmsis.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + UART_0 = (int)LPC_USART_BASE +} UARTName; + +typedef enum { + I2C_0 = (int)LPC_I2C_BASE +} I2CName; + +typedef enum { + ADC0_0 = 0, + ADC0_1, + ADC0_2, + ADC0_3, + ADC0_4, + ADC0_5, + ADC0_6, + ADC0_7 +} ADCName; + +typedef enum { + SPI_0 = (int)LPC_SSP0_BASE, + SPI_1 = (int)LPC_SSP1_BASE +} SPIName; + +typedef enum { + PWM_1 = 0, + PWM_2, + PWM_3, + PWM_4, + PWM_5, + PWM_6, + PWM_7, + PWM_8, + PWM_9, + PWM_10, + PWM_11 +} PWMName; + +#define STDIO_UART_TX USBTX +#define STDIO_UART_RX USBRX +#define STDIO_UART UART_0 + +// Default peripherals +#define MBED_SPI0 p5, p6, p7, p8 +#define MBED_SPI1 p11, p12, p13, p14 + +#define MBED_UART0 p9, p10 +#define MBED_UARTUSB USBTX, USBRX + +#define MBED_I2C0 p28, p27 + +#define MBED_ANALOGIN0 p15 +#define MBED_ANALOGIN1 p16 +#define MBED_ANALOGIN2 p17 +#define MBED_ANALOGIN3 p18 +#define MBED_ANALOGIN4 p19 +#define MBED_ANALOGIN5 p20 + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_401/PinNames.h b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_401/PinNames.h new file mode 100644 index 0000000000..4e45c040b7 --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U24_401/PinNames.h @@ -0,0 +1,165 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef MBED_PINNAMES_H +#define MBED_PINNAMES_H + +#include "cmsis.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + PIN_INPUT, + PIN_OUTPUT +} PinDirection; + +#define PORT_SHIFT 5 + +typedef enum { + // LPC11U Pin Names + P0_0 = 0, + P0_1 = 1, + P0_2 = 2, + P0_3 = 3, + P0_4 = 4, + P0_5 = 5, + P0_6 = 6, + P0_7 = 7, + P0_8 = 8, + P0_9 = 9, + P0_10 = 10, + P0_11 = 11, + P0_12 = 12, + P0_13 = 13, + P0_14 = 14, + P0_15 = 15, + P0_16 = 16, + P0_17 = 17, + P0_18 = 18, + P0_19 = 19, + P0_20 = 20, + P0_21 = 21, + P0_22 = 22, + P0_23 = 23, + P0_24 = 24, + P0_25 = 25, + P0_26 = 26, + P0_27 = 27, + + P1_0 = 32, + P1_1 = 33, + P1_2 = 34, + P1_3 = 35, + P1_4 = 36, + P1_5 = 37, + P1_6 = 38, + P1_7 = 39, + P1_8 = 40, + P1_9 = 41, + P1_10 = 42, + P1_11 = 43, + P1_12 = 44, + P1_13 = 45, + P1_14 = 46, + P1_15 = 47, + P1_16 = 48, + P1_17 = 49, + P1_18 = 50, + P1_19 = 51, + P1_20 = 52, + P1_21 = 53, + P1_22 = 54, + P1_23 = 55, + P1_24 = 56, + P1_25 = 57, + P1_26 = 58, + P1_27 = 59, + P1_28 = 60, + P1_29 = 61, + + P1_31 = 63, + + // mbed DIP Pin Names + p5 = P0_9, + p6 = P0_8, + p7 = P1_29, + p8 = P0_2, + p9 = P1_27, + p10 = P1_26, + p11 = P1_22, + p12 = P1_21, + p13 = P1_20, + p14 = P1_23, + p15 = P0_11, + p16 = P0_12, + p17 = P0_13, + p18 = P0_14, + p19 = P0_16, + p20 = P0_22, + p21 = P0_7, + p22 = P0_17, + p23 = P1_17, + p24 = P1_18, + p25 = P1_24, + p26 = P1_25, + p27 = P0_4, + p28 = P0_5, + p29 = P1_5, + p30 = P1_2, + + p33 = P0_3, + p34 = P1_15, + p35 = P0_20, + p36 = P0_21, + + // Other mbed Pin Names + LED1 = P1_8, + LED2 = P1_9, + LED3 = P1_10, + LED4 = P1_11, + + USBTX = P0_19, + USBRX = P0_18, + + // Not connected + NC = (int)0xFFFFFFFF, +} PinName; + +typedef enum { + CHANNEL0 = FLEX_INT0_IRQn, + CHANNEL1 = FLEX_INT1_IRQn, + CHANNEL2 = FLEX_INT2_IRQn, + CHANNEL3 = FLEX_INT3_IRQn, + CHANNEL4 = FLEX_INT4_IRQn, + CHANNEL5 = FLEX_INT5_IRQn, + CHANNEL6 = FLEX_INT6_IRQn, + CHANNEL7 = FLEX_INT7_IRQn +} Channel; + +typedef enum { + PullUp = 2, + PullDown = 1, + PullNone = 0, + Repeater = 3, + OpenDrain = 4 +} PinMode; + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U35_401/PeripheralNames.h b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U35_401/PeripheralNames.h new file mode 100644 index 0000000000..969f15f2f6 --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U35_401/PeripheralNames.h @@ -0,0 +1,71 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef MBED_PERIPHERALNAMES_H +#define MBED_PERIPHERALNAMES_H + +#include "cmsis.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + UART_0 = (int)LPC_USART_BASE +} UARTName; + +typedef enum { + I2C_0 = (int)LPC_I2C_BASE +} I2CName; + +typedef enum { + ADC0_0 = 0, + ADC0_1, + ADC0_2, + ADC0_3, + ADC0_4, + ADC0_5, + ADC0_6, + ADC0_7 +} ADCName; + +typedef enum { + SPI_0 = (int)LPC_SSP0_BASE, + SPI_1 = (int)LPC_SSP1_BASE +} SPIName; + +typedef enum { + PWM_1 = 0, + PWM_2, + PWM_3, + PWM_4, + PWM_5, + PWM_6, + PWM_7, + PWM_8, + PWM_9, + PWM_10, + PWM_11 +} PWMName; + +#define STDIO_UART_TX UART_TX +#define STDIO_UART_RX UART_RX +#define STDIO_UART UART_0 + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U35_401/PinNames.h b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U35_401/PinNames.h new file mode 100644 index 0000000000..09552ec07d --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U35_401/PinNames.h @@ -0,0 +1,160 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef MBED_PINNAMES_H +#define MBED_PINNAMES_H + +#include "cmsis.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + PIN_INPUT, + PIN_OUTPUT +} PinDirection; + +#define PORT_SHIFT 5 + +typedef enum { + // LPC11U Pin Names + P0_0 = 0, + P0_1 = 1, + P0_2 = 2, + P0_3 = 3, + P0_4 = 4, + P0_5 = 5, + P0_6 = 6, + P0_7 = 7, + P0_8 = 8, + P0_9 = 9, + P0_10 = 10, + P0_11 = 11, + P0_12 = 12, + P0_13 = 13, + P0_14 = 14, + P0_15 = 15, + P0_16 = 16, + P0_17 = 17, + P0_18 = 18, + P0_19 = 19, + P0_20 = 20, + P0_21 = 21, + P0_22 = 22, + P0_23 = 23, + P0_24 = 24, + P0_25 = 25, + P0_26 = 26, + P0_27 = 27, + + P1_0 = 32, + P1_1 = 33, + P1_2 = 34, + P1_3 = 35, + P1_4 = 36, + P1_5 = 37, + P1_6 = 38, + P1_7 = 39, + P1_8 = 40, + P1_9 = 41, + P1_10 = 42, + P1_11 = 43, + P1_12 = 44, + P1_13 = 45, + P1_14 = 46, + P1_15 = 47, + P1_16 = 48, + P1_17 = 49, + P1_18 = 50, + P1_19 = 51, + P1_20 = 52, + P1_21 = 53, + P1_22 = 54, + P1_23 = 55, + P1_24 = 56, + P1_25 = 57, + P1_26 = 58, + P1_27 = 59, + P1_28 = 60, + P1_29 = 61, + + P1_31 = 63, + + // mbed DIP Pin Names + p3 = P0_7, + p4 = P0_8, + p5 = P0_9, + p6 = P0_10, + p7 = P0_22, + p8 = P0_11, + p9 = P0_12, + p10 = P0_13, + p11 = P0_14, + p12 = P0_15, + p13 = P0_16, + p14 = P0_23, + p15 = P1_15, + p16 = P0_17, + p17 = P0_18, + p18 = P0_19, + p19 = P0_1, + p20 = P1_19, + p21 = P0_0, + p22 = P0_20, + p23 = P0_2, + p24 = P0_3, + p25 = P0_4, + p26 = P0_5, + p27 = P0_21, + p28 = P0_6, + + // Other mbed Pin Names + LED1 = P0_7, + LED2 = P0_7, + LED3 = P0_7, + LED4 = P0_7, + + UART_TX = P0_19, + UART_RX = P0_18, + + // Not connected + NC = (int)0xFFFFFFFF, +} PinName; + +typedef enum { + CHANNEL0 = FLEX_INT0_IRQn, + CHANNEL1 = FLEX_INT1_IRQn, + CHANNEL2 = FLEX_INT2_IRQn, + CHANNEL3 = FLEX_INT3_IRQn, + CHANNEL4 = FLEX_INT4_IRQn, + CHANNEL5 = FLEX_INT5_IRQn, + CHANNEL6 = FLEX_INT6_IRQn, + CHANNEL7 = FLEX_INT7_IRQn +} Channel; + +typedef enum { + PullUp = 2, + PullDown = 1, + PullNone = 0, + Repeater = 3, + OpenDrain = 4 +} PinMode; + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/serial_api.c b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/serial_api.c index 42e9cccfa9..57ee01da35 100644 --- a/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/serial_api.c +++ b/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/serial_api.c @@ -63,9 +63,11 @@ void serial_init(serial_t *obj, PinName tx, PinName rx) { // [TODO] Consider more elegant approach // disconnect USBTX/RX mapping mux, for case when switching ports +#ifdef USBTX pin_function(USBTX, 0); pin_function(USBRX, 0); - +#endif + // enable fifos and default rx trigger level obj->uart->FCR = 1 << 0 // FIFO Enable - 0 = Disables, 1 = Enabled | 0 << 1 // Rx Fifo Reset diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PeripheralNames.h b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PeripheralNames.h index 2a777210ed..775c6b9147 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PeripheralNames.h +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PeripheralNames.h @@ -32,8 +32,8 @@ typedef enum { UART_2 = (int)USART2_BASE } UARTName; -#define STDIO_UART_TX UART_TX -#define STDIO_UART_RX UART_RX +#define STDIO_UART_TX PA_2 +#define STDIO_UART_RX PA_3 #define STDIO_UART UART_2 typedef enum { diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PinNames.h b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PinNames.h index f0cfb90438..c2dd5a84a3 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PinNames.h +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/PinNames.h @@ -88,45 +88,10 @@ typedef enum { PC_14 = 0x2E, PC_15 = 0x2F, - PD_0 = 0x30, - PD_1 = 0x31, PD_2 = 0x32, - PD_3 = 0x33, - PD_4 = 0x34, - PD_5 = 0x35, - PD_6 = 0x36, - PD_7 = 0x37, PD_8 = 0x38, - PD_9 = 0x39, - PD_10 = 0x3A, - PD_11 = 0x3B, - PD_12 = 0x3C, - PD_13 = 0x3D, - PD_14 = 0x3E, - PD_15 = 0x3F, - PE_0 = 0x40, - PE_1 = 0x41, - PE_2 = 0x42, - PE_3 = 0x43, - PE_4 = 0x44, - PE_5 = 0x45, - PE_6 = 0x46, - PE_7 = 0x47, - PE_8 = 0x48, - PE_9 = 0x49, - PE_10 = 0x4A, - PE_11 = 0x4B, - PE_12 = 0x4C, - PE_13 = 0x4D, - PE_14 = 0x4E, - PE_15 = 0x4F, - - //-------------------- - // NUCLEO_F103RB board - //-------------------- - - // Arduino connectors + // Arduino connector namings A0 = PA_0, A1 = PA_1, A2 = PA_4, @@ -150,15 +115,21 @@ typedef enum { D14 = PB_9, D15 = PB_8, + // Generic signals namings + LED1 = PA_5, + LED2 = PA_5, + LED3 = PA_5, + LED4 = PA_5, USER_BUTTON = PC_13, - UART_TX = PA_2, - UART_RX = PA_3, - - // mbed mandatory namings - LED1 = PA_5, - LED2 = PA_5, - LED3 = PA_5, - LED4 = PA_5, + SERIAL_TX = PA_2, + SERIAL_RX = PA_3, + I2C_SCL = PB_8, + I2C_SDA = PB_9, + SPI_MOSI = PA_7, + SPI_MISO = PA_6, + SPI_SCK = PA_5, + SPI_CS = PB_6, + PWM_OUT = PB_3, // Not connected NC = (int)0xFFFFFFFF diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/analogin_api.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/analogin_api.c index b0946658ee..2ba470ef58 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/analogin_api.c +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/analogin_api.c @@ -13,9 +13,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -//============================================================================== -// STM32F103 -//============================================================================== #include "analogin_api.h" #include "wait_api.h" diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/device.h b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/device.h index eb6ebe28aa..aa0959d66f 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/device.h +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/device.h @@ -20,31 +20,31 @@ #define DEVICE_PORTOUT 1 #define DEVICE_PORTINOUT 1 -#define DEVICE_INTERRUPTIN 0 +#define DEVICE_INTERRUPTIN 1 #define DEVICE_ANALOGIN 1 #define DEVICE_ANALOGOUT 0 #define DEVICE_SERIAL 1 -#define DEVICE_I2C 0 +#define DEVICE_I2C 1 #define DEVICE_I2CSLAVE 0 #define DEVICE_SPI 1 #define DEVICE_SPISLAVE 0 -#define DEVICE_RTC 0 +#define DEVICE_RTC 1 #define DEVICE_PWMOUT 1 +#define DEVICE_SLEEP 1 + //======================================= #define DEVICE_SEMIHOST 0 #define DEVICE_LOCALFILESYSTEM 0 #define DEVICE_ID_LENGTH 24 -#define DEVICE_SLEEP 0 - #define DEVICE_DEBUG_AWARENESS 0 #define DEVICE_STDIO_MESSAGES 1 diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/gpio_irq_api.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/gpio_irq_api.c new file mode 100644 index 0000000000..040df710ce --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/gpio_irq_api.c @@ -0,0 +1,242 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include +#include "cmsis.h" + +#include "gpio_irq_api.h" +#include "error.h" + +#define EDGE_NONE (0) +#define EDGE_RISE (1) +#define EDGE_FALL (2) +#define EDGE_BOTH (3) + +#define CHANNEL_NUM (16) + +static uint32_t channel_ids[CHANNEL_NUM] = {0}; + +static gpio_irq_handler irq_handler; + +static void handle_interrupt_in(uint32_t channel) { + if (channel_ids[channel] == 0) return; + + uint32_t exti_line = (uint32_t)(1 << channel); + if (EXTI_GetITStatus(exti_line) != RESET) + { + EXTI_ClearITPendingBit(exti_line); + } + + // Warning: + // On this device we don't know if a rising or falling event occured. + // In case both rise and fall events are set, only the FALL event will be reported. + if (EXTI->FTSR & (uint32_t)(1 << channel)) { + irq_handler(channel_ids[channel], IRQ_FALL); + } + else { + irq_handler(channel_ids[channel], IRQ_RISE); + } +} + +static void gpio_irq0(void) {handle_interrupt_in(0);} +static void gpio_irq1(void) {handle_interrupt_in(1);} +static void gpio_irq2(void) {handle_interrupt_in(2);} +static void gpio_irq3(void) {handle_interrupt_in(3);} +static void gpio_irq4(void) {handle_interrupt_in(4);} +static void gpio_irq5(void) {handle_interrupt_in(5);} +static void gpio_irq6(void) {handle_interrupt_in(6);} +static void gpio_irq7(void) {handle_interrupt_in(7);} +static void gpio_irq8(void) {handle_interrupt_in(8);} +static void gpio_irq9(void) {handle_interrupt_in(9);} +static void gpio_irq10(void) {handle_interrupt_in(10);} +static void gpio_irq11(void) {handle_interrupt_in(11);} +static void gpio_irq12(void) {handle_interrupt_in(12);} +static void gpio_irq13(void) {handle_interrupt_in(13);} +static void gpio_irq14(void) {handle_interrupt_in(14);} +static void gpio_irq15(void) {handle_interrupt_in(15);} + +int gpio_irq_init(gpio_irq_t *obj, PinName pin, gpio_irq_handler handler, uint32_t id) { + IRQn_Type irq_n = (IRQn_Type)0; + uint32_t vector = 0; + + if (pin == NC) return -1; + + uint32_t pin_number = (uint32_t)pin; + uint32_t pin_index = (pin_number & 0xF); + uint32_t port_index = (pin_number >> 4); + + // Select irq number and vector + switch (pin_index) { + case 0: + irq_n = EXTI0_IRQn; + vector = (uint32_t)&gpio_irq0; + break; + case 1: + irq_n = EXTI1_IRQn; + vector = (uint32_t)&gpio_irq1; + break; + case 2: + irq_n = EXTI2_IRQn; + vector = (uint32_t)&gpio_irq2; + break; + case 3: + irq_n = EXTI3_IRQn; + vector = (uint32_t)&gpio_irq3; + break; + case 4: + irq_n = EXTI4_IRQn; + vector = (uint32_t)&gpio_irq4; + break; + case 5: + irq_n = EXTI9_5_IRQn; + vector = (uint32_t)&gpio_irq5; + break; + case 6: + irq_n = EXTI9_5_IRQn; + vector = (uint32_t)&gpio_irq6; + break; + case 7: + irq_n = EXTI9_5_IRQn; + vector = (uint32_t)&gpio_irq7; + break; + case 8: + irq_n = EXTI9_5_IRQn; + vector = (uint32_t)&gpio_irq8; + break; + case 9: + irq_n = EXTI9_5_IRQn; + vector = (uint32_t)&gpio_irq9; + break; + case 10: + irq_n = EXTI15_10_IRQn; + vector = (uint32_t)&gpio_irq10; + break; + case 11: + irq_n = EXTI15_10_IRQn; + vector = (uint32_t)&gpio_irq11; + break; + case 12: + irq_n = EXTI15_10_IRQn; + vector = (uint32_t)&gpio_irq12; + break; + case 13: + irq_n = EXTI15_10_IRQn; + vector = (uint32_t)&gpio_irq13; + break; + case 14: + irq_n = EXTI15_10_IRQn; + vector = (uint32_t)&gpio_irq14; + break; + case 15: + irq_n = EXTI15_10_IRQn; + vector = (uint32_t)&gpio_irq15; + break; + default: + return -1; + } + + // Enable GPIO and AFIO clocks + RCC_APB2PeriphClockCmd((uint32_t)(RCC_APB2Periph_GPIOA << port_index), ENABLE); + RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); + + // Connect EXTI line to pin + GPIO_EXTILineConfig(port_index, pin_index); + + // Configure EXTI line + EXTI_InitTypeDef EXTI_InitStructure; + EXTI_InitStructure.EXTI_Line = (uint32_t)(1 << pin_index); + EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; + EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; + EXTI_InitStructure.EXTI_LineCmd = ENABLE; + EXTI_Init(&EXTI_InitStructure); + + // Enable and set EXTI interrupt to the lowest priority + NVIC_InitTypeDef NVIC_InitStructure; + NVIC_InitStructure.NVIC_IRQChannel = irq_n; + NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x0F; + NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x0F; + NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; + NVIC_Init(&NVIC_InitStructure); + + NVIC_SetVector(irq_n, vector); + NVIC_EnableIRQ(irq_n); + + // Save for future use + obj->ch = pin_index; + obj->irq_n = irq_n; + obj->event = EDGE_NONE; + + channel_ids[obj->ch] = id; + + irq_handler = handler; + + return 0; +} + +void gpio_irq_free(gpio_irq_t *obj) { + channel_ids[obj->ch] = 0; + // Disable EXTI line + EXTI_InitTypeDef EXTI_InitStructure; + EXTI_StructInit(&EXTI_InitStructure); + EXTI_Init(&EXTI_InitStructure); + obj->event = EDGE_NONE; +} + +void gpio_irq_set(gpio_irq_t *obj, gpio_irq_event event, uint32_t enable) { + EXTI_InitTypeDef EXTI_InitStructure; + + EXTI_InitStructure.EXTI_Line = (uint32_t)(1 << obj->ch); + EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; + + if (event == IRQ_RISE) { + if ((obj->event == EDGE_FALL) || (obj->event == EDGE_BOTH)) { + EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling; + obj->event = EDGE_BOTH; + } + else { // NONE or RISE + EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; + obj->event = EDGE_RISE; + } + } + + if (event == IRQ_FALL) { + if ((obj->event == EDGE_RISE) || (obj->event == EDGE_BOTH)) { + EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling; + obj->event = EDGE_BOTH; + } + else { // NONE or FALL + EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; + obj->event = EDGE_FALL; + } + } + + if (enable) { + EXTI_InitStructure.EXTI_LineCmd = ENABLE; + } + else { + EXTI_InitStructure.EXTI_LineCmd = DISABLE; + } + + EXTI_Init(&EXTI_InitStructure); +} + +void gpio_irq_enable(gpio_irq_t *obj) { + NVIC_EnableIRQ(obj->irq_n); +} + +void gpio_irq_disable(gpio_irq_t *obj) { + NVIC_DisableIRQ(obj->irq_n); + obj->event = EDGE_NONE; +} diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/i2c_api.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/i2c_api.c new file mode 100644 index 0000000000..c69a46b6b3 --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/i2c_api.c @@ -0,0 +1,323 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include "i2c_api.h" + +#if DEVICE_I2C + +#include "cmsis.h" +#include "pinmap.h" +#include "error.h" + +/* Timeout values for flags and events waiting loops. These timeouts are + not based on accurate values, they just guarantee that the application will + not remain stuck if the I2C communication is corrupted. */ +#define FLAG_TIMEOUT ((int)0x1000) +#define LONG_TIMEOUT ((int)0x8000) + +static const PinMap PinMap_I2C_SDA[] = { + {PB_9, I2C_1, STM_PIN_DATA(GPIO_Mode_AF_OD, 8)}, // GPIO_Remap_I2C1 + {NC, NC, 0} +}; + +static const PinMap PinMap_I2C_SCL[] = { + {PB_8, I2C_1, STM_PIN_DATA(GPIO_Mode_AF_OD, 8)}, // GPIO_Remap_I2C1 + {NC, NC, 0} +}; + +void i2c_init(i2c_t *obj, PinName sda, PinName scl) { + // Determine the I2C to use + I2CName i2c_sda = (I2CName)pinmap_peripheral(sda, PinMap_I2C_SDA); + I2CName i2c_scl = (I2CName)pinmap_peripheral(scl, PinMap_I2C_SCL); + + obj->i2c = (I2CName)pinmap_merge(i2c_sda, i2c_scl); + + if (obj->i2c == (I2CName)NC) { + error("I2C pin mapping failed"); + } + + // Enable I2C clock + if (obj->i2c == I2C_1) { + RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1, ENABLE); + } + if (obj->i2c == I2C_2) { + RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C2, ENABLE); + } + + // Configure I2C pins + pinmap_pinout(sda, PinMap_I2C_SDA); + pinmap_pinout(scl, PinMap_I2C_SCL); + pin_mode(sda, OpenDrain); + pin_mode(scl, OpenDrain); + + // Reset to clear pending flags if any + i2c_reset(obj); + + // I2C configuration + i2c_frequency(obj, 100000); // 100 kHz per default +} + +void i2c_frequency(i2c_t *obj, int hz) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + I2C_InitTypeDef I2C_InitStructure; + + if ((hz != 0) && (hz <= 400000)) { + // I2C configuration + I2C_InitStructure.I2C_Mode = I2C_Mode_I2C; + I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2; + I2C_InitStructure.I2C_OwnAddress1 = 0; + I2C_InitStructure.I2C_Ack = I2C_Ack_Enable; + I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit; + I2C_InitStructure.I2C_ClockSpeed = hz; + I2C_Cmd(i2c, ENABLE); + I2C_Init(i2c, &I2C_InitStructure); + } +} + +inline int i2c_start(i2c_t *obj) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + int timeout; + + I2C_ClearFlag(i2c, I2C_FLAG_AF); // Clear Acknowledge failure flag + + // Generate the START condition + I2C_GenerateSTART(i2c, ENABLE); + + // Wait the START condition has been correctly sent + timeout = FLAG_TIMEOUT; + //while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_MODE_SELECT) == ERROR) { + while (I2C_GetFlagStatus(i2c, I2C_FLAG_SB) == RESET) { + if ((timeout--) == 0) { + return 1; + } + } + + return 0; +} + +inline int i2c_stop(i2c_t *obj) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + + I2C_GenerateSTOP(i2c, ENABLE); + + return 0; +} + +int i2c_read(i2c_t *obj, int address, char *data, int length, int stop) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + int timeout; + int count; + int value; + + if (length == 0) return 0; + +/* + // Wait until the bus is not busy anymore + timeout = LONG_TIMEOUT; + while (I2C_GetFlagStatus(i2c, I2C_FLAG_BUSY) == SET) { + if ((timeout--) == 0) { + return 0; + } + } +*/ + + i2c_start(obj); + + // Send slave address for read + I2C_Send7bitAddress(i2c, address, I2C_Direction_Receiver); + + // Wait address is acknowledged + timeout = FLAG_TIMEOUT; + while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_RECEIVER_MODE_SELECTED) == ERROR) { + if ((timeout--) == 0) { + return 0; + } + } + + // Read all bytes except last one + for (count = 0; count < (length - 1); count++) { + value = i2c_byte_read(obj, 0); + data[count] = (char)value; + } + + // If not repeated start, send stop. + // Warning: must be done BEFORE the data is read. + if (stop) { + i2c_stop(obj); + } + + // Read the last byte + value = i2c_byte_read(obj, 1); + data[count] = (char)value; + + return length; +} + +int i2c_write(i2c_t *obj, int address, const char *data, int length, int stop) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + int timeout; + int count; + +/* + // Wait until the bus is not busy anymore + timeout = LONG_TIMEOUT; + while (I2C_GetFlagStatus(i2c, I2C_FLAG_BUSY) == SET) { + if ((timeout--) == 0) { + return 0; + } + } +*/ + + i2c_start(obj); + + // Send slave address for write + I2C_Send7bitAddress(i2c, address, I2C_Direction_Transmitter); + + // Wait address is acknowledged + timeout = FLAG_TIMEOUT; + while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED) == ERROR) { + if ((timeout--) == 0) { + return 0; + } + } + + for (count = 0; count < length; count++) { + if (i2c_byte_write(obj, data[count]) != 1) { + i2c_stop(obj); + return 0; + } + } + + // If not repeated start, send stop. + if (stop) { + i2c_stop(obj); + } + + return count; +} + +int i2c_byte_read(i2c_t *obj, int last) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + uint8_t data; + int timeout; + + if (last) { + // Don't acknowledge the last byte + I2C_AcknowledgeConfig(i2c, DISABLE); + } else { + // Acknowledge the byte + I2C_AcknowledgeConfig(i2c, ENABLE); + } + + // Wait until the byte is received + timeout = FLAG_TIMEOUT; + while (I2C_GetFlagStatus(i2c, I2C_FLAG_RXNE) == RESET) { + if ((timeout--) == 0) { + return 0; + } + } + + data = I2C_ReceiveData(i2c); + + return (int)data; +} + +int i2c_byte_write(i2c_t *obj, int data) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + int timeout; + + I2C_SendData(i2c, (uint8_t)data); + + // Wait until the byte is transmitted + timeout = FLAG_TIMEOUT; + //while (I2C_CheckEvent(i2c, I2C_EVENT_MASTER_BYTE_TRANSMITTED) == ERROR) { + while ((I2C_GetFlagStatus(i2c, I2C_FLAG_TXE) == RESET) && + (I2C_GetFlagStatus(i2c, I2C_FLAG_BTF) == RESET)) { + if ((timeout--) == 0) { + return 0; + } + } + + return 1; +} + +void i2c_reset(i2c_t *obj) { + if (obj->i2c == I2C_1) { + RCC_APB1PeriphResetCmd(RCC_APB1Periph_I2C1, ENABLE); + RCC_APB1PeriphResetCmd(RCC_APB1Periph_I2C1, DISABLE); + } + if (obj->i2c == I2C_2) { + RCC_APB1PeriphResetCmd(RCC_APB1Periph_I2C2, ENABLE); + RCC_APB1PeriphResetCmd(RCC_APB1Periph_I2C2, DISABLE); + } +} + +#if DEVICE_I2CSLAVE + +void i2c_slave_address(i2c_t *obj, int idx, uint32_t address, uint32_t mask) { + I2C_TypeDef *i2c = (I2C_TypeDef *)(obj->i2c); + uint16_t tmpreg; + + // Get the old register value + tmpreg = i2c->OAR1; + // Reset address bits + tmpreg &= 0xFC00; + // Set new address + tmpreg |= (uint16_t)((uint16_t)address & (uint16_t)0x00FE); // 7-bits + // Store the new register value + i2c->OAR1 = tmpreg; +} + +void i2c_slave_mode(i2c_t *obj, int enable_slave) { + // Nothing to do +} + +// See I2CSlave.h +#define NoData 0 // the slave has not been addressed +#define ReadAddressed 1 // the master has requested a read from this slave (slave = transmitter) +#define WriteGeneral 2 // the master is writing to all slave +#define WriteAddressed 3 // the master is writing to this slave (slave = receiver) + +int i2c_slave_receive(i2c_t *obj) { + // TO BE DONE + return(0); +} + +int i2c_slave_read(i2c_t *obj, char *data, int length) { + int count = 0; + + // Read all bytes + for (count = 0; count < length; count++) { + data[count] = i2c_byte_read(obj, 0); + } + + return count; +} + +int i2c_slave_write(i2c_t *obj, const char *data, int length) { + int count = 0; + + // Write all bytes + for (count = 0; count < length; count++) { + i2c_byte_write(obj, data[count]); + } + + return count; +} + + +#endif // DEVICE_I2CSLAVE + +#endif // DEVICE_I2C diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/objects.h b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/objects.h index c4e4a3e8b4..cc363fddad 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/objects.h +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/objects.h @@ -26,9 +26,9 @@ extern "C" { #endif struct gpio_irq_s { - uint32_t port; - uint32_t pin; uint32_t ch; + IRQn_Type irq_n; + uint32_t event; // 0=none, 1=rise, 2=fall, 3=rise+fall }; struct port_s { @@ -65,7 +65,6 @@ struct spi_s { struct i2c_s { I2CName i2c; - uint32_t clk_speed; }; struct pwmout_s { diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pinmap.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pinmap.c index 0f0e6ce854..d21fab0375 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pinmap.c +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pinmap.c @@ -18,14 +18,15 @@ // Alternate-function mapping static const uint32_t AF_mapping[] = { - 0, // 0 = No AF - GPIO_Remap_SPI1, // 1 - GPIO_Remap_I2C1, // 2 - GPIO_Remap_USART1, // 3 - GPIO_Remap_USART2, // 4 - GPIO_FullRemap_TIM2, // 5 - GPIO_FullRemap_TIM3, // 6 - GPIO_Remap_I2C1 // 7 + 0, // 0 = No AF + GPIO_Remap_SPI1, // 1 + GPIO_Remap_I2C1, // 2 + GPIO_Remap_USART1, // 3 + GPIO_Remap_USART2, // 4 + GPIO_FullRemap_TIM2, // 5 + GPIO_FullRemap_TIM3, // 6 + GPIO_PartialRemap_TIM3, // 7 + GPIO_Remap_I2C1 // 8 }; /** diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pwmout_api.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pwmout_api.c index a63f9f13c4..51f02c6c62 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pwmout_api.c +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/pwmout_api.c @@ -21,25 +21,19 @@ // Only TIM2 and TIM3 can be used (TIM1 and TIM4 are used by the us_ticker) static const PinMap PinMap_PWM[] = { - // TIM2 - {PA_2, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM2_CH3 OK - {PA_3, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM2_CH4 OK - // TIM2 remap - {PA_15, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 5)}, // TIM2r_CH1 FAIL - {PB_3, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 5)}, // TIM2r_CH2 FAIL - ARDUINO D3 - {PB_10, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 5)}, // TIM2r_CH3 OK - ARDUINO D6 - {PB_11, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 5)}, // TIM2r_CH4 OK - // TIM3 - {PA_6, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM3_CH1 OK - {PA_7, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM3_CH2 OK - ARDUINO D11 - {PB_1, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM3_CH4 OK - // TIM3 remap - {PB_4, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 6)}, // TIM3r_CH1 FAIL - ARDUINO D5 - {PC_6, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 6)}, // TIM3r_CH1 OK - {PC_7, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 6)}, // TIM3r_CH2 OK - ARDUINO D9 - {PB_5, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 6)}, // TIM3r_CH2 FAIL - Bug confirmed in ES - {PC_8, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 6)}, // TIM3r_CH3 OK - {PC_9, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 6)}, // TIM3r_CH4 OK + // TIM2 default + //{PA_2, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM2_CH3 - ARDUINO D1 + //{PA_3, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM2_CH4 - ARDUINO D0 + // TIM2 full remap + {PB_3, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 5)}, // TIM2fr_CH2 - ARDUINO D3 + //{PB_10, PWM_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 5)}, // TIM2fr_CH3 - ARDUINO D6 + // TIM3 default + //{PA_6, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM3_CH1 - ARDUINO D12 + //{PA_7, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, // TIM3_CH2 - ARDUINO D11 + // TIM3 full remap + //{PC_7, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 6)}, // TIM3fr_CH2 - ARDUINO D9 + // TIM3 partial remap + {PB_4, PWM_3, STM_PIN_DATA(GPIO_Mode_AF_PP, 7)}, // TIM3pr_CH1 - ARDUINO D5 {NC, NC, 0} }; @@ -90,25 +84,29 @@ void pwmout_write(pwmout_t* obj, float value) { TIM_OCInitStructure.TIM_Pulse = obj->pulse; TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; - if ((obj->pin == PA_6) || (obj->pin == PA_15) || (obj->pin == PB_4) || (obj->pin == PC_6)) { // TIM Channel 1 + // Configure channel 1 + if (obj->pin == PB_4) { TIM_OC1PreloadConfig(tim, TIM_OCPreload_Enable); TIM_OC1Init(tim, &TIM_OCInitStructure); } - if ((obj->pin == PA_7) || (obj->pin == PB_3) || (obj->pin == PB_5) || (obj->pin == PC_7)) { // TIM Channel 2 + // Configure channel 2 + if (obj->pin == PB_3) { TIM_OC2PreloadConfig(tim, TIM_OCPreload_Enable); TIM_OC2Init(tim, &TIM_OCInitStructure); } - if ((obj->pin == PA_2) || (obj->pin == PB_10) || (obj->pin == PC_8)) { // TIM Channel 3 - TIM_OC3PreloadConfig(tim, TIM_OCPreload_Enable); - TIM_OC3Init(tim, &TIM_OCInitStructure); - } + // Configure channel 3 + //if (obj->pin == PB_10) { + // TIM_OC3PreloadConfig(tim, TIM_OCPreload_Enable); + // TIM_OC3Init(tim, &TIM_OCInitStructure); + //} - if ((obj->pin == PA_3) || (obj->pin == PB_1) || (obj->pin == PB_11) || (obj->pin == PC_9)) { // TIM Channel 4 - TIM_OC4PreloadConfig(tim, TIM_OCPreload_Enable); - TIM_OC4Init(tim, &TIM_OCInitStructure); - } + // Configure channel 4 + //if (obj->pin == PA_3) { + // TIM_OC4PreloadConfig(tim, TIM_OCPreload_Enable); + // TIM_OC4Init(tim, &TIM_OCInitStructure); + //} } float pwmout_read(pwmout_t* obj) { diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/rtc_api.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/rtc_api.c new file mode 100644 index 0000000000..ad436c6c71 --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/rtc_api.c @@ -0,0 +1,72 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include "rtc_api.h" + +static int rtc_inited = 0; + +void rtc_init(void) { + RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE); // Enable PWR and Backup clock + + PWR_BackupAccessCmd(ENABLE); // Allow access to Backup Domain + + BKP_DeInit(); // Reset Backup Domain + + // Uncomment these lines if you use the LSE + // Enable LSE and wait till it's ready + //RCC_LSEConfig(RCC_LSE_ON); + //while (RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET) {} + //RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE); // Select LSE as RTC Clock Source + + // Uncomment these lines if you use the LSI + // Enable LSI and wait till it's ready + RCC_LSICmd(ENABLE); + while (RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET) {} + RCC_RTCCLKConfig(RCC_RTCCLKSource_LSI); // Select LSI as RTC Clock Source + + RCC_RTCCLKCmd(ENABLE); // Enable RTC Clock + + RTC_WaitForSynchro(); // Wait for RTC registers synchronization + + RTC_WaitForLastTask(); // Wait until last write operation on RTC registers has finished + + // Set RTC period to 1 sec + // For LSE: prescaler = RTCCLK/RTC period = 32768Hz/1Hz = 32768 + // For LSI: prescaler = RTCCLK/RTC period = 40000Hz/1Hz = 40000 + RTC_SetPrescaler(39999); + + RTC_WaitForLastTask(); // Wait until last write operation on RTC registers has finished + + rtc_inited = 1; +} + +void rtc_free(void) { + RCC_DeInit(); // Resets the RCC clock configuration to the default reset state + rtc_inited = 0; +} + +int rtc_isenabled(void) { + return rtc_inited; +} + +time_t rtc_read(void) { + return (time_t)RTC_GetCounter(); +} + +void rtc_write(time_t t) { + RTC_WaitForLastTask(); // Wait until last write operation on RTC registers has finished + RTC_SetCounter(t); // Change the current time + RTC_WaitForLastTask(); // Wait until last write operation on RTC registers has finished +} diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/serial_api.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/serial_api.c index 0385485d6e..ee579a791c 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/serial_api.c +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/serial_api.c @@ -13,19 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -//============================================================================== -// STM32F103 -//============================================================================== #include "serial_api.h" #include "cmsis.h" #include "pinmap.h" #include "error.h" #include -/****************************************************************************** - * INITIALIZATION - ******************************************************************************/ - static const PinMap PinMap_UART_TX[] = { {PA_9, UART_1, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, {PA_2, UART_2, STM_PIN_DATA(GPIO_Mode_AF_PP, 0)}, @@ -47,11 +40,24 @@ static uart_irq_handler irq_handler; int stdio_uart_inited = 0; serial_t stdio_uart; -void serial_init(serial_t *obj, PinName tx, PinName rx) { - - USART_TypeDef *usart; +static void init_usart(serial_t *obj) { + USART_TypeDef *usart = (USART_TypeDef *)(obj->uart); USART_InitTypeDef USART_InitStructure; + USART_Cmd(usart, DISABLE); + + USART_InitStructure.USART_BaudRate = obj->baudrate; + USART_InitStructure.USART_WordLength = obj->databits; + USART_InitStructure.USART_StopBits = obj->stopbits; + USART_InitStructure.USART_Parity = obj->parity; + USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; + USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; + USART_Init(usart, &USART_InitStructure); + + USART_Cmd(usart, ENABLE); +} + +void serial_init(serial_t *obj, PinName tx, PinName rx) { // Determine the UART to use (UART_1, UART_2, ...) UARTName uart_tx = (UARTName)pinmap_peripheral(tx, PinMap_UART_TX); UARTName uart_rx = (UARTName)pinmap_peripheral(rx, PinMap_UART_RX); @@ -62,10 +68,7 @@ void serial_init(serial_t *obj, PinName tx, PinName rx) { if (obj->uart == (UARTName)NC) { error("Serial pinout mapping failed"); } - - // Get UART registers structure address - usart = (USART_TypeDef *)(obj->uart); - + // Enable USART clock if (obj->uart == UART_1) { RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); @@ -84,15 +87,7 @@ void serial_init(serial_t *obj, PinName tx, PinName rx) { obj->stopbits = USART_StopBits_1; obj->parity = USART_Parity_No; - USART_InitStructure.USART_BaudRate = obj->baudrate; - USART_InitStructure.USART_WordLength = obj->databits; - USART_InitStructure.USART_StopBits = obj->stopbits; - USART_InitStructure.USART_Parity = obj->parity; - USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; - USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; - USART_Init(usart, &USART_InitStructure); - - USART_Cmd(usart, ENABLE); + init_usart(obj); // The index is used by irq if (obj->uart == UART_1) obj->index = 0; @@ -111,31 +106,11 @@ void serial_free(serial_t *obj) { } void serial_baud(serial_t *obj, int baudrate) { - USART_TypeDef *usart = (USART_TypeDef *)(obj->uart); - USART_InitTypeDef USART_InitStructure; - - // Save new value obj->baudrate = baudrate; - - USART_Cmd(usart, DISABLE); - - USART_InitStructure.USART_BaudRate = obj->baudrate; - USART_InitStructure.USART_WordLength = obj->databits; - USART_InitStructure.USART_StopBits = obj->stopbits; - USART_InitStructure.USART_Parity = obj->parity; - USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; - USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; - USART_Init(usart, &USART_InitStructure); - - USART_Cmd(usart, ENABLE); + init_usart(obj); } void serial_format(serial_t *obj, int data_bits, SerialParity parity, int stop_bits) { - USART_TypeDef *usart = (USART_TypeDef *)(obj->uart); - USART_InitTypeDef USART_InitStructure; - - // Save new values - if (data_bits == 8) { obj->databits = USART_WordLength_8b; } @@ -164,17 +139,7 @@ void serial_format(serial_t *obj, int data_bits, SerialParity parity, int stop_b obj->stopbits = USART_StopBits_1; } - USART_Cmd(usart, DISABLE); - - USART_InitStructure.USART_BaudRate = obj->baudrate; - USART_InitStructure.USART_WordLength = obj->databits; - USART_InitStructure.USART_StopBits = obj->stopbits; - USART_InitStructure.USART_Parity = obj->parity; - USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; - USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; - USART_Init(usart, &USART_InitStructure); - - USART_Cmd(usart, ENABLE); + init_usart(obj); } /****************************************************************************** @@ -182,30 +147,21 @@ void serial_format(serial_t *obj, int data_bits, SerialParity parity, int stop_b ******************************************************************************/ // not api -void uart1_irq(void) { - USART_TypeDef *usart = (USART_TypeDef *)UART_1; - if (serial_irq_ids[0] != 0) { - if (USART_GetITStatus(usart, USART_IT_TXE) != RESET) { - irq_handler(serial_irq_ids[0], TxIrq); +static void uart_irq(USART_TypeDef* usart, int id) { + if (serial_irq_ids[id] != 0) { + if (USART_GetITStatus(usart, USART_IT_TC) != RESET) { + irq_handler(serial_irq_ids[id], TxIrq); + USART_ClearITPendingBit(usart, USART_IT_TC); } if (USART_GetITStatus(usart, USART_IT_RXNE) != RESET) { - irq_handler(serial_irq_ids[0], RxIrq); + irq_handler(serial_irq_ids[id], RxIrq); + USART_ClearITPendingBit(usart, USART_IT_RXNE); } } } -// not api -void uart2_irq(void) { - USART_TypeDef *usart = (USART_TypeDef *)UART_2; - if (serial_irq_ids[1] != 0) { - if (USART_GetITStatus(usart, USART_IT_TXE) != RESET) { - irq_handler(serial_irq_ids[1], TxIrq); - } - if (USART_GetITStatus(usart, USART_IT_RXNE) != RESET) { - irq_handler(serial_irq_ids[1], RxIrq); - } - } -} +static void uart1_irq(void) {uart_irq((USART_TypeDef*)UART_1, 0);} +static void uart2_irq(void) {uart_irq((USART_TypeDef*)UART_2, 1);} void serial_irq_handler(serial_t *obj, uart_irq_handler handler, uint32_t id) { irq_handler = handler; @@ -233,7 +189,7 @@ void serial_irq_set(serial_t *obj, SerialIrq irq, uint32_t enable) { USART_ITConfig(usart, USART_IT_RXNE, ENABLE); } else { // TxIrq - USART_ITConfig(usart, USART_IT_TXE, ENABLE); + USART_ITConfig(usart, USART_IT_TC, ENABLE); } NVIC_SetVector(irq_n, vector); diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/sleep.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/sleep.c new file mode 100644 index 0000000000..958c1528ed --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/sleep.c @@ -0,0 +1,53 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include "sleep_api.h" +#include "cmsis.h" + +static void SYSCLKConfig_STOP(void) +{ + ErrorStatus HSEStartUpStatus; + + RCC_HSEConfig(RCC_HSE_ON); // Enable HSE + + HSEStartUpStatus = RCC_WaitForHSEStartUp(); // Wait till HSE is ready + + if (HSEStartUpStatus == SUCCESS) { + RCC_PLLCmd(ENABLE); // Enable PLL + while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) {} // Wait till PLL is ready + RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); // Select PLL as system clock source + while(RCC_GetSYSCLKSource() != 0x08) {} // Wait till PLL is used as system clock source + } +} + +void sleep(void) +{ + SCB->SCR = 0; // Normal sleep mode for ARM core + __WFI(); +} + +void deepsleep(void) +{ + // Enable PWR clock + RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE); + + // Request to enter STOP mode with regulator in low power mode + PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI); + + // At this stage the system has resumed from STOP mode. + // Re-configure the system clock: enable HSE, PLL and select + // PLL as system clock source (because HSE and PLL are disabled in STOP mode). + SYSCLKConfig_STOP(); +} diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/spi_api.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/spi_api.c index 512034d4d2..4981c54baf 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/spi_api.c +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/spi_api.c @@ -13,9 +13,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -//============================================================================== -// STM32F103 -//============================================================================== #include "spi_api.h" #if DEVICE_SPI @@ -45,16 +42,33 @@ static const PinMap PinMap_SPI_SCLK[] = { // Only used in Slave mode static const PinMap PinMap_SPI_SSEL[] = { - {PA_4, SPI_1, STM_PIN_DATA(GPIO_Mode_IN_FLOATING, 0)}, - {PA_15, SPI_1, STM_PIN_DATA(GPIO_Mode_IN_FLOATING, 1)}, // Remap + {PB_6, SPI_1, STM_PIN_DATA(GPIO_Mode_IN_FLOATING, 0)}, // Generic IO, not real H/W NSS pin + //{PA_4, SPI_1, STM_PIN_DATA(GPIO_Mode_IN_FLOATING, 0)}, + //{PA_15, SPI_1, STM_PIN_DATA(GPIO_Mode_IN_FLOATING, 1)}, // Remap {NC, NC, 0} }; -void spi_init(spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName ssel) { - - SPI_TypeDef *spi; +static void init_spi(spi_t *obj) { + SPI_TypeDef *spi = (SPI_TypeDef *)(obj->spi); SPI_InitTypeDef SPI_InitStructure; - + + SPI_Cmd(spi, DISABLE); + + SPI_InitStructure.SPI_Mode = obj->mode; + SPI_InitStructure.SPI_NSS = obj->nss; + SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; + SPI_InitStructure.SPI_DataSize = obj->bits; + SPI_InitStructure.SPI_CPOL = obj->cpol; + SPI_InitStructure.SPI_CPHA = obj->cpha; + SPI_InitStructure.SPI_BaudRatePrescaler = obj->br_presc; + SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; + SPI_InitStructure.SPI_CRCPolynomial = 7; + SPI_Init(spi, &SPI_InitStructure); + + SPI_Cmd(spi, ENABLE); +} + +void spi_init(spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName ssel) { // Determine the SPI to use SPIName spi_mosi = (SPIName)pinmap_peripheral(mosi, PinMap_SPI_MOSI); SPIName spi_miso = (SPIName)pinmap_peripheral(miso, PinMap_SPI_MISO); @@ -69,9 +83,6 @@ void spi_init(spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName ssel if (obj->spi == (SPIName)NC) { error("SPI pinout mapping failed"); } - - // Get SPI registers structure address - spi = (SPI_TypeDef *)(obj->spi); // Enable SPI clock if (obj->spi == SPI_1) { @@ -99,22 +110,10 @@ void spi_init(spi_t *obj, PinName mosi, PinName miso, PinName sclk, PinName ssel else { // Slave pinmap_pinout(ssel, PinMap_SPI_SSEL); obj->mode = SPI_Mode_Slave; - obj->nss = SPI_NSS_Hard; + obj->nss = SPI_NSS_Soft; } - // SPI configuration - SPI_InitStructure.SPI_Mode = obj->mode; - SPI_InitStructure.SPI_NSS = obj->nss; - SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; - SPI_InitStructure.SPI_DataSize = obj->bits; - SPI_InitStructure.SPI_CPOL = obj->cpol; - SPI_InitStructure.SPI_CPHA = obj->cpha; - SPI_InitStructure.SPI_BaudRatePrescaler = obj->br_presc; - SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; - SPI_InitStructure.SPI_CRCPolynomial = 7; - SPI_Init(spi, &SPI_InitStructure); - - SPI_Cmd(spi, ENABLE); + init_spi(obj); } void spi_free(spi_t *obj) { @@ -122,12 +121,8 @@ void spi_free(spi_t *obj) { SPI_I2S_DeInit(spi); } -void spi_format(spi_t *obj, int bits, int mode, int slave) { - SPI_TypeDef *spi = (SPI_TypeDef *)(obj->spi); - SPI_InitTypeDef SPI_InitStructure; - +void spi_format(spi_t *obj, int bits, int mode, int slave) { // Save new values - if (bits == 8) { obj->bits = SPI_DataSize_8b; } @@ -163,26 +158,10 @@ void spi_format(spi_t *obj, int bits, int mode, int slave) { obj->nss = SPI_NSS_Hard; } - SPI_Cmd(spi, DISABLE); - - SPI_InitStructure.SPI_Mode = obj->mode; - SPI_InitStructure.SPI_NSS = obj->nss; - SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; - SPI_InitStructure.SPI_DataSize = obj->bits; - SPI_InitStructure.SPI_CPOL = obj->cpol; - SPI_InitStructure.SPI_CPHA = obj->cpha; - SPI_InitStructure.SPI_BaudRatePrescaler = obj->br_presc; - SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; - SPI_InitStructure.SPI_CRCPolynomial = 7; - SPI_Init(spi, &SPI_InitStructure); - - SPI_Cmd(spi, ENABLE); + init_spi(obj); } void spi_frequency(spi_t *obj, int hz) { - SPI_TypeDef *spi = (SPI_TypeDef *)(obj->spi); - SPI_InitTypeDef SPI_InitStructure; - // Get SPI clock frequency uint32_t PCLK = SystemCoreClock >> 1; @@ -203,20 +182,7 @@ void spi_frequency(spi_t *obj, int hz) { // Save new value obj->br_presc = ((baud_rate > 7) ? (7 << 3) : (baud_rate << 3)); - SPI_Cmd(spi, DISABLE); - - SPI_InitStructure.SPI_Mode = obj->mode; - SPI_InitStructure.SPI_NSS = obj->nss; - SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; - SPI_InitStructure.SPI_DataSize = obj->bits; - SPI_InitStructure.SPI_CPOL = obj->cpol; - SPI_InitStructure.SPI_CPHA = obj->cpha; - SPI_InitStructure.SPI_BaudRatePrescaler = obj->br_presc; - SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; - SPI_InitStructure.SPI_CRCPolynomial = 7; - SPI_Init(spi, &SPI_InitStructure); - - SPI_Cmd(spi, ENABLE); + init_spi(obj); } static inline int ssp_readable(spi_t *obj) { diff --git a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/us_ticker.c b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/us_ticker.c index a96eff6486..0500a755e2 100644 --- a/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/us_ticker.c +++ b/libraries/mbed/targets/hal/TARGET_STM/TARGET_NUCLEO_F103RB/us_ticker.c @@ -33,6 +33,7 @@ void us_ticker_init(void) { // Time base configuration // TIM1 is used as "master", "TIM4" as "slave". TIM4 is clocked by TIM1. + TIM_TimeBaseStructInit(&TIM_TimeBaseStructure); TIM_TimeBaseStructure.TIM_Period = 0xFFFF; TIM_TimeBaseStructure.TIM_Prescaler = (uint16_t)(SystemCoreClock / 1000000) - 1; // 1 µs tick TIM_TimeBaseStructure.TIM_ClockDivision = 0; @@ -42,6 +43,7 @@ void us_ticker_init(void) { TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure); // Master timer configuration + TIM_OCStructInit(&TIM_OCInitStructure); TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_Toggle; TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; TIM_OCInitStructure.TIM_Pulse = 0; @@ -51,7 +53,7 @@ void us_ticker_init(void) { TIM_SelectOutputTrigger(TIM1, TIM_TRGOSource_Update); // Slave timer configuration - TIM_SelectSlaveMode(TIM4, TIM_SlaveMode_Gated); + TIM_SelectSlaveMode(TIM4, TIM_SlaveMode_External1); TIM_SelectInputTrigger(TIM4, TIM_TS_ITR0); // Enable timers @@ -60,10 +62,21 @@ void us_ticker_init(void) { } uint32_t us_ticker_read() { - uint32_t counter; + uint32_t counter, counter2; if (!us_ticker_inited) us_ticker_init(); - counter = (uint32_t)((uint32_t)TIM_GetCounter(TIM4) << 16) + (uint32_t)TIM_GetCounter(TIM1); - return counter; + // A situation might appear when TIM1 overflows right after TIM4 is read and before the + // new (overflowed) value of TIM1 is read, which would make the code below consider the + // previous (incorrect) value of TIM4 and the new value of TIM1, which would return a + // value in the past. Avoid this by computing consecutive values of the timer until they + // are properly ordered. + counter = counter2 = (uint32_t)((uint32_t)TIM_GetCounter(TIM4) << 16) + (uint32_t)TIM_GetCounter(TIM1); + while (1) { + counter2 = (uint32_t)((uint32_t)TIM_GetCounter(TIM4) << 16) + (uint32_t)TIM_GetCounter(TIM1); + if (counter2 > counter) + break; + counter = counter2; + } + return counter2; } void us_ticker_set_interrupt(unsigned int timestamp) { diff --git a/libraries/net/cellular/CellularModem/at/ATCommandsInterface.cpp b/libraries/net/cellular/CellularModem/at/ATCommandsInterface.cpp index e101a8171f..90be0c2e65 100644 --- a/libraries/net/cellular/CellularModem/at/ATCommandsInterface.cpp +++ b/libraries/net/cellular/CellularModem/at/ATCommandsInterface.cpp @@ -63,30 +63,33 @@ int ATCommandsInterface::open() } //Initialize AT link & start events processing -int ATCommandsInterface::init() +int ATCommandsInterface::init(bool reset /* = true*/) { - DBG("Sending ATZ E1 V1"); //Lock transaction mutex m_transactionMtx.lock(); - //Should we flush m_pStream at this point ??? - int err; - int tries = 5; - do + if (reset) { - err = executeInternal("ATZ E1 V1", this, NULL, 3000); //Enable echo and verbosity - if(err && tries) + DBG("Sending ATZ E1 V1"); + //Should we flush m_pStream at this point ??? + int err; + int tries = 5; + do { - WARN("No response, trying again"); - Thread::wait(1000); //Give dongle time to recover + err = executeInternal("ATZ E1 V1", this, NULL, 3000); //Enable echo and verbosity + if(err && tries) + { + WARN("No response, trying again"); + Thread::wait(1000); //Give dongle time to recover + } + } while(err && tries--); + if( err ) + { + ERR("Sending ATZ E1 V1 returned with err code %d", err); + m_transactionMtx.unlock(); + return err; } - } while(err && tries--); - if( err ) - { - ERR("Sending ATZ E1 V1 returned with err code %d", err); - m_transactionMtx.unlock(); - return err; } //Enable events handling and execute events enabling commands diff --git a/libraries/net/cellular/CellularModem/at/ATCommandsInterface.h b/libraries/net/cellular/CellularModem/at/ATCommandsInterface.h index 129eedf8cf..8334df8957 100644 --- a/libraries/net/cellular/CellularModem/at/ATCommandsInterface.h +++ b/libraries/net/cellular/CellularModem/at/ATCommandsInterface.h @@ -77,7 +77,7 @@ public: int open(); //Initialize AT link - int init(); + int init(bool reset = true); //Close connection int close(); diff --git a/libraries/net/cellular/CellularModem/ip/PPPIPInterface.cpp b/libraries/net/cellular/CellularModem/ip/PPPIPInterface.cpp index f71afea65b..1766868ff5 100644 --- a/libraries/net/cellular/CellularModem/ip/PPPIPInterface.cpp +++ b/libraries/net/cellular/CellularModem/ip/PPPIPInterface.cpp @@ -50,22 +50,15 @@ extern "C" { #include "netif/ppp/ppp.h" } -PPPIPInterface::PPPIPInterface(IOStream* pStream, const char* msisdn) : LwIPInterface(), m_linkStatusSphre(1), m_pppErrCode(0), m_pStream(pStream), m_streamAvail(true), m_pppd(-1) +PPPIPInterface::PPPIPInterface(IOStream* pStream) : LwIPInterface(), m_linkStatusSphre(1), m_pppErrCode(0), m_pStream(pStream), m_streamAvail(true), m_pppd(-1) { - m_connectCmd = new char[strlen(CONNECT_CMD_PREFIX) + strlen(msisdn) + strlen(CONNECT_CMD_SUFFIX) + 1]; - sprintf(m_connectCmd, "%s%s%s", CONNECT_CMD_PREFIX, msisdn, CONNECT_CMD_SUFFIX); - m_expectedResp = new char[strlen(m_connectCmd) + strlen(EXPECTED_RESP_SUFFIX) + 1]; - sprintf(m_expectedResp, "%s%s", m_connectCmd, EXPECTED_RESP_SUFFIX); - m_expectedRespDatarate = new char[strlen(m_connectCmd) + strlen(EXPECTED_RESP_DATARATE_SUFFIX) + 1]; - sprintf(m_expectedRespDatarate, "%s%s", m_connectCmd, EXPECTED_RESP_DATARATE_SUFFIX); m_linkStatusSphre.wait(); } + + /*virtual*/ PPPIPInterface::~PPPIPInterface() { - delete m_connectCmd; - delete m_expectedResp; - delete m_expectedRespDatarate; } /*virtual*/ int PPPIPInterface::init() //Init PPP-specific stuff, create the right bindings, etc @@ -78,10 +71,11 @@ PPPIPInterface::PPPIPInterface(IOStream* pStream, const char* msisdn) : LwIPInte return OK; } -int PPPIPInterface::setup(const char* user, const char* pw) +int PPPIPInterface::setup(const char* user, const char* pw, const char* msisdn) { DBG("Configuring PPP authentication method"); pppSetAuth(PPPAUTHTYPE_ANY, user, pw); + m_msisdn = msisdn; DBG("Done"); return OK; } @@ -89,22 +83,22 @@ int PPPIPInterface::setup(const char* user, const char* pw) /*virtual*/ int PPPIPInterface::connect() { int ret; + char cmd[32]; + int cmdLen; char buf[32]; size_t len; DBG("Trying to connect with PPP"); cleanupLink(); - DBG("Sending %s", m_connectCmd); - - ret = m_pStream->write((uint8_t*)m_connectCmd, strlen(m_connectCmd), osWaitForever); + cmdLen = sprintf(cmd, "%s%s%s", CONNECT_CMD_PREFIX, m_msisdn, CONNECT_CMD_SUFFIX); + DBG("Sending %s", cmd); + ret = m_pStream->write((uint8_t*)cmd, cmdLen, osWaitForever); if( ret != OK ) { return NET_UNKNOWN; } - DBG("Expect %s", m_expectedResp); - len = 0; size_t readLen; ret = m_pStream->read((uint8_t*)buf + len, &readLen, EXPECTED_RESP_MIN_LEN, 10000); @@ -128,16 +122,21 @@ int PPPIPInterface::setup(const char* user, const char* pw) DBG("Got %s[len %d]", buf, len); int datarate = 0; - if( (sscanf(buf, m_expectedRespDatarate, &datarate ) != 1) && (strcmp(m_expectedResp, buf) != 0) ) + strcpy(&cmd[cmdLen], EXPECTED_RESP_DATARATE_SUFFIX); + if( (sscanf(buf, cmd, &datarate ) != 1)) { - //Discard buffer - do //Clear buf + strcpy(&cmd[cmdLen], EXPECTED_RESP_SUFFIX); + if (strcmp(cmd, buf) != 0) { - ret = m_pStream->read((uint8_t*)buf, &len, 32, 0); - } while( (ret == OK) && (len > 0) ); - return NET_CONN; - } - + //Discard buffer + do //Clear buf + { + ret = m_pStream->read((uint8_t*)buf, &len, 32, 0); + } while( (ret == OK) && (len > 0) ); + return NET_CONN; + } + } + DBG("Transport link open"); if(datarate != 0) { diff --git a/libraries/net/cellular/CellularModem/ip/PPPIPInterface.h b/libraries/net/cellular/CellularModem/ip/PPPIPInterface.h index eba30e9461..2d24009dcd 100644 --- a/libraries/net/cellular/CellularModem/ip/PPPIPInterface.h +++ b/libraries/net/cellular/CellularModem/ip/PPPIPInterface.h @@ -40,11 +40,11 @@ using namespace rtos; class PPPIPInterface : public LwIPInterface { public: - PPPIPInterface(IOStream* pStream, const char* msisdn); + PPPIPInterface(IOStream* pStream); virtual ~PPPIPInterface(); int init(); //Init PPP-specific stuff, create the right bindings, etc - int setup(const char* user, const char* pw); //Setup authentication + int setup(const char* user, const char* pw, const char* msisdn); //Setup authentication virtual int connect(); virtual int disconnect(); @@ -57,16 +57,13 @@ private: IOStream* m_pStream; //Serial stream bool m_streamAvail; + const char* m_msisdn; int m_pppd; friend u32_t sio_write(sio_fd_t fd, u8_t *data, u32_t len); friend u32_t sio_read(sio_fd_t fd, u8_t *data, u32_t len); friend void sio_read_abort(sio_fd_t fd); - - char* m_connectCmd; - char* m_expectedResp; - char* m_expectedRespDatarate; }; #endif /* PPPIPINTERFACE_H_ */ diff --git a/libraries/net/cellular/CellularModem/link/LinkMonitor.cpp b/libraries/net/cellular/CellularModem/link/LinkMonitor.cpp index 2a92c1bc32..3646b1f7aa 100644 --- a/libraries/net/cellular/CellularModem/link/LinkMonitor.cpp +++ b/libraries/net/cellular/CellularModem/link/LinkMonitor.cpp @@ -33,20 +33,24 @@ using std::sscanf; LinkMonitor::LinkMonitor(ATCommandsInterface* pIf) : m_pIf(pIf), m_rssi(0), m_registrationState(REGISTRATION_STATE_UNKNOWN), m_bearer(BEARER_UNKNOWN) { - + m_gsm = true; } -int LinkMonitor::init() +int LinkMonitor::init(bool gsm) { - // we need to make sure that we setup the operator selection to be in 'numeric' format. - // i.e. it is made up of a network and country code when returned by the modem e.g. Operator = 23415. This allows easy logic parsing for - // setting up other network parameters in future. - DBG("LinkMonitor::init() being called. This should only happen once: executinging AT+COPS=0,2"); - int ret = m_pIf->executeSimple("AT+COPS=0,2", NULL, DEFAULT_TIMEOUT); //Configure to set the operator string to Country Code and mobile network code - if(ret != OK) + m_gsm = gsm; + if (m_gsm) { - WARN(" NET_PROTOCOL error from sending the AT+COPS command to the modem. "); - return NET_PROTOCOL; + // we need to make sure that we setup the operator selection to be in 'numeric' format. + // i.e. it is made up of a network and country code when returned by the modem e.g. Operator = 23415. This allows easy logic parsing for + // setting up other network parameters in future. + DBG("LinkMonitor::init() being called. This should only happen once: executinging AT+COPS=0,2"); + int ret = m_pIf->executeSimple("AT+COPS=0,2", NULL, DEFAULT_TIMEOUT); //Configure to set the operator string to Country Code and mobile network code + if(ret != OK) + { + WARN(" NET_PROTOCOL error from sending the AT+COPS command to the modem. "); + return NET_PROTOCOL; + } } return OK; } @@ -136,7 +140,7 @@ int LinkMonitor::getState(int* pRssi, REGISTRATION_STATE* pRegistrationState, BE m_rssi = 0; m_registrationState = REGISTRATION_STATE_UNKNOWN; m_bearer = BEARER_UNKNOWN; - int ret = m_pIf->execute("AT+CREG?;+COPS?;+CSQ", this, NULL, DEFAULT_TIMEOUT); //Configure to get registration info & get it; get signal quality + int ret = m_pIf->execute(m_gsm ? "AT+CREG?;+COPS?;+CSQ" : "AT+CREG?;+CSQ", this, NULL, DEFAULT_TIMEOUT); //Configure to get registration info & get it; get signal quality if(ret != OK) { return NET_PROTOCOL; diff --git a/libraries/net/cellular/CellularModem/link/LinkMonitor.h b/libraries/net/cellular/CellularModem/link/LinkMonitor.h index bca59b522f..527e3581d3 100644 --- a/libraries/net/cellular/CellularModem/link/LinkMonitor.h +++ b/libraries/net/cellular/CellularModem/link/LinkMonitor.h @@ -39,7 +39,7 @@ public: /** Initialize monitor */ - int init(); + int init(bool gsm = true); /** Registration State */ @@ -82,6 +82,7 @@ private: ATCommandsInterface* m_pIf; int m_rssi; + bool m_gsm; REGISTRATION_STATE m_registrationState; BEARER m_bearer; diff --git a/libraries/net/cellular/CellularUSBModem/serial/io/IOSerialStream.cpp b/libraries/net/cellular/CellularUSBModem/serial/io/IOSerialStream.cpp new file mode 100644 index 0000000000..2a05c1c2c4 --- /dev/null +++ b/libraries/net/cellular/CellularUSBModem/serial/io/IOSerialStream.cpp @@ -0,0 +1,253 @@ +/* IOSerialStream.cpp */ +/* Copyright (C) 2012 mbed.org, MIT License + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of this software + * and associated documentation files (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, publish, distribute, + * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all copies or + * substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#define __DEBUG__ 0 //Maximum verbosity +#ifndef __MODULE__ +#define __MODULE__ "IOSerialStream.cpp" +#endif + +#include "core/fwk.h" + +#include + +#include "IOSerialStream.h" + +#define UART_X ((LPC_UART_TypeDef *)(UART_1)) + +IOSerialStream::IOSerialStream(mbed::RawSerial& serial) : m_serial(serial), m_serialTxFifoEmpty(true), +m_availableSphre(1), m_spaceSphre(1), m_inBuf(), m_outBuf() +{ + m_availableSphre.wait(); + m_spaceSphre.wait(); + //Attach interrupts + m_serial.attach(this, &IOSerialStream::readable, mbed::SerialBase::RxIrq); + m_serial.attach(this, &IOSerialStream::writeable, mbed::SerialBase::TxIrq); +} + +/*virtual*/ IOSerialStream::~IOSerialStream() +{ + m_serial.attach(NULL, mbed::SerialBase::RxIrq); + m_serial.attach(NULL, mbed::SerialBase::TxIrq); +} + +//0 for non-blocking (returns immediately), osWaitForever for infinite blocking +/*virtual*/ int IOSerialStream::read(uint8_t* buf, size_t* pLength, size_t maxLength, uint32_t timeout/*=osWaitForever*/) +{ + DBG("Trying to read at most %d chars", maxLength); + int ret = waitAvailable(timeout); + if(ret) + { + WARN("Error %d while waiting for incoming data", ret); + return ret; + } + int readLen = MIN( available(), maxLength ); + *pLength = readLen; + setupReadableISR(false); + while(readLen--) + { + m_inBuf.dequeue(buf); + buf++; + } + setupReadableISR(true); + DBG("Read %d chars successfully", *pLength); + return OK; +} + +/*virtual*/ size_t IOSerialStream::available() +{ + setupReadableISR(false); //m_inBuf.available() is not reentrant + size_t len = m_inBuf.available(); + setupReadableISR(true); + return len; +} + +/*virtual*/ int IOSerialStream::waitAvailable(uint32_t timeout/*=osWaitForever*/) //Wait for data to be available +{ + int ret; + if(available()) //Is data already available? + { + m_availableSphre.wait(0); //Clear the queue as data is available + return OK; + } + + DBG("Waiting for data availability %d ms (-1 is infinite)", timeout); + ret = m_availableSphre.wait(timeout); //Wait for data to arrive or for abort + if(ret <= 0) + { + DBG("Timeout"); + return NET_TIMEOUT; + } + if(!available()) //Even if abort has been called, return that data is available + { + DBG("Aborted"); + return NET_INTERRUPTED; + } + DBG("Finished waiting"); + m_availableSphre.wait(0); //Clear the queue as data is available + return OK; +} + +/*virtual*/ int IOSerialStream::abortRead() //Abort current reading (or waiting) operation +{ + if( !available() ) //If there is data pending, no need to abort + { + m_availableSphre.release(); //Force exiting the waiting state; kludge to pass a RC directly + } + else + { + DBG("Serial is readable"); ; + } + return OK; +} + +void IOSerialStream::setupReadableISR(bool en) +{ + if(en) + { + UART_X->IER |= 1 << 0; + } + else + { + UART_X->IER &= ~(1 << 0); + } +} + +void IOSerialStream::readable() //Callback from m_serial when new data is available +{ + do + { + m_inBuf.queue(m_serial.getc()); + } while(m_serial.readable()); + m_availableSphre.release(); //Force exiting the waiting state +} + +//0 for non-blocking (returns immediately), osWaitForever for infinite blocking +/*virtual*/ int IOSerialStream::write(uint8_t* buf, size_t length, uint32_t timeout/*=osWaitForever*/) +{ + DBG("Trying to write %d chars", length); + int ret = waitSpace(timeout); + if(ret) + { + WARN("Error %d while waiting for space", ret); + return ret; + } + DBG("Writing %d chars", length); + setupWriteableISR(false); + while(length) + { + m_outBuf.queue(*buf); + buf++; + length--; + if(length && !space()) + { + DBG("Waiting to write remaining %d chars", length); + setupWriteableISR(true); + ret = waitSpace(timeout); + if(ret) + { + WARN("Error %d while waiting for space", ret); + return ret; + } + setupWriteableISR(false); + } + } + //If m_serial tx fifo is empty we need to manually tx a byte in order to trigger the interrupt + if( m_outBuf.available() && m_serialTxFifoEmpty ) + { + m_serialTxFifoEmpty = false; + uint8_t c; + m_outBuf.dequeue(&c); + m_serial.putc((char)c); + } + setupWriteableISR(true); + DBG("Write successful"); + return OK; +} + +/*virtual*/ size_t IOSerialStream::space() +{ + setupWriteableISR(false); //m_outBuf.available() is not reentrant + size_t len = CIRCBUF_SIZE - m_outBuf.available(); + setupWriteableISR(true); + return len; +} + +/*virtual*/ int IOSerialStream::waitSpace(uint32_t timeout/*=osWaitForever*/) //Wait for space to be available +{ + int ret; + if(space()) //Is still space already left? + { + m_spaceSphre.wait(0); //Clear the queue as space is available + return OK; + } + + DBG("Waiting for data space %d ms (-1 is infinite)", timeout); + ret = m_spaceSphre.wait(timeout); //Wait for space to be made or for abort + if(ret <= 0) + { + DBG("Timeout"); + return NET_TIMEOUT; + } + if(!space()) //Even if abort has been called, return that space is available + { + DBG("Aborted"); + return NET_INTERRUPTED; + } + m_spaceSphre.wait(0); //Clear the queue as space is available + return OK; +} + +/*virtual*/ int IOSerialStream::abortWrite() //Abort current writing (or waiting) operation +{ + if( !space() ) //If there is space left, no need to abort + { + m_spaceSphre.release(); //Force exiting the waiting state + } + return OK; +} + +void IOSerialStream::setupWriteableISR(bool en) +{ + if(en) + { + UART_X->IER |= 1 << 1; + } + else + { + UART_X->IER &= ~(1 << 1); + } +} + +void IOSerialStream::writeable() //Callback from m_serial when new space is available +{ + if(m_outBuf.isEmpty()) + { + m_serialTxFifoEmpty = true; + } + else + { + while(m_serial.writeable() && !m_outBuf.isEmpty()) + { + uint8_t c; + m_outBuf.dequeue(&c); + m_serial.putc((char)c); + } + } + m_spaceSphre.release(); //Force exiting the waiting state +} diff --git a/libraries/net/cellular/CellularUSBModem/serial/io/IOSerialStream.h b/libraries/net/cellular/CellularUSBModem/serial/io/IOSerialStream.h new file mode 100644 index 0000000000..7e9ef89d05 --- /dev/null +++ b/libraries/net/cellular/CellularUSBModem/serial/io/IOSerialStream.h @@ -0,0 +1,72 @@ +/* IOSerialStream.h */ +/* Copyright (C) 2012 mbed.org, MIT License + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of this software + * and associated documentation files (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, publish, distribute, + * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all copies or + * substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ +#ifndef IOSERIALSTREAM_H_ +#define IOSERIALSTREAM_H_ + +#include "core/fwk.h" + +#include "RawSerial.h" + +#include "rtos.h" +#include "core/MtxCircBuffer.h" + +/** Input Serial Stream for physical serial interfaces (UART...) +This class is not thread-safe, except for the *Abort() methods that can be called by any thread/ISR +*/ +class IOSerialStream : public IOStream +{ +public: + enum { CIRCBUF_SIZE = 255 }; + IOSerialStream(mbed::RawSerial& serial); + /*virtual*/ ~IOSerialStream(); + + //0 for non-blocking (returns immediately), osWaitForever for infinite blocking + virtual int read(uint8_t* buf, size_t* pLength, size_t maxLength, uint32_t timeout=osWaitForever); + virtual size_t available(); + virtual int waitAvailable(uint32_t timeout=osWaitForever); //Wait for data to be available + virtual int abortRead(); //Abort current reading (or waiting) operation + + + //0 for non-blocking (returns immediately), osWaitForever for infinite blocking + virtual int write(uint8_t* buf, size_t length, uint32_t timeout=osWaitForever); + virtual size_t space(); + virtual int waitSpace(uint32_t timeout=osWaitForever); //Wait for space to be available + virtual int abortWrite(); //Abort current writing (or waiting) operation + +private: + + mbed::RawSerial& m_serial; + volatile bool m_serialTxFifoEmpty; + + void setupReadableISR(bool en); + void readable(); //Callback from m_serial when new data is available + + Semaphore m_availableSphre; //Used for signalling + + void setupWriteableISR(bool en); + void writeable(); //Callback from m_serial when new space is available + + Semaphore m_spaceSphre; //Used for signalling + + MtxCircBuffer m_inBuf; + MtxCircBuffer m_outBuf; + +}; + +#endif /* IOSERIALSTREAM_H_ */ diff --git a/libraries/net/cellular/CellularUSBModem/serial/usb/USBSerialStream.h b/libraries/net/cellular/CellularUSBModem/serial/usb/USBSerialStream.h index 1af5f019db..97cf3c6860 100644 --- a/libraries/net/cellular/CellularUSBModem/serial/usb/USBSerialStream.h +++ b/libraries/net/cellular/CellularUSBModem/serial/usb/USBSerialStream.h @@ -32,10 +32,11 @@ /* Input Serial Stream for USB virtual serial ports interfaces This class is not thread-safe, except for the *Abort() methods that can be called by any thread/ISR */ -#define CIRCBUF_SIZE 127 + class USBSerialStream : public IOStream, IUSBHostSerialListener { public: + enum { CIRCBUF_SIZE = 127 }; USBSerialStream(IUSBHostSerial& serial); /*virtual*/ ~USBSerialStream(); diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.cpp b/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.cpp index d0a1e52c99..6464afc984 100644 --- a/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.cpp +++ b/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.cpp @@ -109,6 +109,6 @@ int UbloxCDMAModemInitializer::getSerialPortCount() /*virtual*/ int UbloxCDMAModemInitializer::getType() { - return WAN_DONGLE_TYPE_UBLOXC200; + return WAN_DONGLE_TYPE_UBLOX_LISAC200; } diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.h b/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.h index cccec7f8ec..4836680da2 100644 --- a/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.h +++ b/libraries/net/cellular/UbloxUSBModem/UbloxCDMAModemInitializer.h @@ -27,7 +27,7 @@ enum { - WAN_DONGLE_TYPE_UBLOXC200 + WAN_DONGLE_TYPE_UBLOX_LISAC200 = 0xC200, }; class UbloxCDMAModemInitializer : public WANDongleInitializer diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.cpp b/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.cpp index a3a89313db..e28632593a 100644 --- a/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.cpp +++ b/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.cpp @@ -126,6 +126,6 @@ int UbloxGSMModemInitializer::getSerialPortCount() /*virtual*/ int UbloxGSMModemInitializer::getType() { - return WAN_DONGLE_TYPE_UBX; + return WAN_DONGLE_TYPE_UBLOX_LISAU200; } diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.h b/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.h index a1e9e038b4..383c443eb3 100644 --- a/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.h +++ b/libraries/net/cellular/UbloxUSBModem/UbloxGSMModemInitializer.h @@ -23,7 +23,7 @@ enum { - WAN_DONGLE_TYPE_UBX + WAN_DONGLE_TYPE_UBLOX_LISAU200 = 0x0200 }; //----------------------------------------------------------------------- diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxModem.cpp b/libraries/net/cellular/UbloxUSBModem/UbloxModem.cpp new file mode 100644 index 0000000000..4b3939ecfa --- /dev/null +++ b/libraries/net/cellular/UbloxUSBModem/UbloxModem.cpp @@ -0,0 +1,518 @@ +/* UbloxModem.cpp */ +/* Copyright (C) 2012 mbed.org, MIT License + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of this software + * and associated documentation files (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, publish, distribute, + * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all copies or + * substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#define __DEBUG__ 3 +#ifndef __MODULE__ +#define __MODULE__ "UbloxModem.cpp" +#endif + +#include "core/fwk.h" +#include "sms/GSMSMSInterface.h" +#include "sms/CDMASMSInterface.h" + +#include "UbloxModem.h" + +UbloxModem::UbloxModem(IOStream* atStream, IOStream* pppStream) : + m_at(atStream), // Construct ATCommandsInterface with the AT serial channel + m_CdmaSms(&m_at), // Construct SMSInterface with the ATCommandsInterface + m_GsmSms(&m_at), // Construct SMSInterface with the ATCommandsInterface + m_ussd(&m_at), // Construct USSDInterface with the ATCommandsInterface + m_linkMonitor(&m_at), // Construct LinkMonitor with the ATCommandsInterface + m_ppp(pppStream ? pppStream : atStream), // Construct PPPIPInterface with the PPP serial channel + m_ipInit(false), // PPIPInterface connection is initially down + m_smsInit(false), // SMSInterface starts un-initialised + m_ussdInit(false), // USSDInterface starts un-initialised + m_linkMonitorInit(false), // LinkMonitor subsystem starts un-initialised + m_atOpen(false), // ATCommandsInterface starts in a closed state + m_onePort(pppStream == NULL), + m_gsm(true) +{ +} + + +class AtiProcessor : public IATCommandsProcessor +{ +public: + AtiProcessor() + { + i = 0; + str[0] = '\0'; + } + const char* getInfo(void) { return str; } +private: + virtual int onNewATResponseLine(ATCommandsInterface* pInst, const char* line) + { + int l = strlen(line); + if (i + l + 2 > sizeof(str)) + return NET_OVERFLOW; + if (i) str[i++] = ','; + strcat(&str[i], line); + i += l; + return OK; + } + virtual int onNewEntryPrompt(ATCommandsInterface* pInst) + { + return OK; + } +protected: + char str[256]; + int i; +}; + +class CREGProcessor : public IATCommandsProcessor +{ +public: + CREGProcessor(bool gsm) : status(STATUS_REGISTERING) + { + m_gsm = gsm; + } + enum REGISTERING_STATUS { STATUS_REGISTERING, STATUS_OK, STATUS_FAILED }; + REGISTERING_STATUS getStatus() + { + return status; + } + const char* getAtCommand() + { + return m_gsm ? "AT+CREG?" : "AT+CSS?"; + } +private: + virtual int onNewATResponseLine(ATCommandsInterface* pInst, const char* line) + { + int r; + if (m_gsm) + { + if( sscanf(line, "+CREG: %*d,%d", &r) == 1 ) + { + status = (r == 1 || r == 5) ? STATUS_OK : + (r == 0 || r == 2) ? STATUS_REGISTERING : + // (r == 3) ? STATUS_FAILED : + STATUS_FAILED; + } + } + else + { + char bc[3] = ""; + if(sscanf(line, "%*s %*c,%2s,%*d",bc)==1) + { + status = (strcmp("Z", bc) == 0) ? STATUS_REGISTERING : STATUS_OK; + } + } + return OK; + } + virtual int onNewEntryPrompt(ATCommandsInterface* pInst) + { + return OK; + } + volatile REGISTERING_STATUS status; + bool m_gsm; +}; + +int UbloxModem::connect(const char* apn, const char* user, const char* password) +{ + if( !m_ipInit ) + { + m_ipInit = true; + m_ppp.init(); + } + m_ppp.setup(user, password, m_gsm ? DEFAULT_MSISDN_GSM : DEFAULT_MSISDN_CDMA); + + int ret = init(); + if(ret) + { + return ret; + } + + if (m_onePort) + { + m_smsInit = false; //SMS status reset + m_ussdInit = false; //USSD status reset + m_linkMonitorInit = false; //Link monitor status reset + } + + ATCommandsInterface::ATResult result; + + if(apn != NULL) + { + char cmd[48]; + int tries = 30; + sprintf(cmd, "AT+CGDCONT=1,\"IP\",\"%s\"", apn); + do //Try 30 times because for some reasons it can fail *a lot* with the K3772-Z dongle + { + ret = m_at.executeSimple(cmd, &result); + DBG("Result of command: Err code=%d", ret); + if(ret) + { + Thread::wait(500); + } + } while(ret && --tries); + DBG("ATResult: AT return=%d (code %d)", result.result, result.code); + DBG("APN set to %s", apn); + } + + //Connect + DBG("Connecting"); + if (m_onePort) + { + m_at.close(); // Closing AT parser + m_atOpen = false; //Will need to be reinitialized afterwards + } + + DBG("Connecting PPP"); + + ret = m_ppp.connect(); + DBG("Result of connect: Err code=%d", ret); + return ret; +} + + +int UbloxModem::disconnect() +{ + DBG("Disconnecting from PPP"); + int ret = m_ppp.disconnect(); + if(ret) + { + ERR("Disconnect returned %d, still trying to disconnect", ret); + } + + //Ugly but leave dongle time to recover + Thread::wait(500); + + if (m_onePort) + { + //ATCommandsInterface::ATResult result; + DBG("Starting AT thread"); + ret = m_at.open(); + if(ret) + { + return ret; + } + } + + DBG("Trying to hangup"); + + if (m_onePort) + { + //Reinit AT parser + ret = m_at.init(false); + DBG("Result of command: Err code=%d\n", ret); + if(ret) + { + m_at.close(); // Closing AT parser + DBG("AT Parser closed, could not complete disconnection"); + return NET_TIMEOUT; + } + + } + return OK; +} + +int UbloxModem::sendSM(const char* number, const char* message) +{ + int ret = init(); + if(ret) + { + return ret; + } + + ISMSInterface* sms; + if (m_gsm) sms = &m_GsmSms; + else sms = &m_CdmaSms; + if(!m_smsInit) + { + ret = sms->init(); + if(ret) + { + return ret; + } + m_smsInit = true; + } + + ret = sms->send(number, message); + if(ret) + { + return ret; + } + + return OK; +} + +int UbloxModem::getSM(char* number, char* message, size_t maxLength) +{ + int ret = init(); + if(ret) + { + return ret; + } + + ISMSInterface* sms; + if (m_gsm) sms = &m_GsmSms; + else sms = &m_CdmaSms; + if(!m_smsInit) + { + ret = sms->init(); + if(ret) + { + return ret; + } + m_smsInit = true; + } + + ret = sms->get(number, message, maxLength); + if(ret) + { + return ret; + } + + return OK; +} + +int UbloxModem::getSMCount(size_t* pCount) +{ + int ret = init(); + if(ret) + { + return ret; + } + + ISMSInterface* sms; + if (m_gsm) sms = &m_GsmSms; + else sms = &m_CdmaSms; + if(!m_smsInit) + { + ret = sms->init(); + if(ret) + { + return ret; + } + m_smsInit = true; + } + + ret = sms->getCount(pCount); + if(ret) + { + return ret; + } + + return OK; +} + +ATCommandsInterface* UbloxModem::getATCommandsInterface() +{ + return &m_at; +} + +int UbloxModem::init() +{ + if(m_atOpen) + { + return OK; + } + + DBG("Starting AT thread if needed"); + int ret = m_at.open(); + if(ret) + { + return ret; + } + + DBG("Sending initialisation commands"); + ret = m_at.init(false); + if(ret) + { + return ret; + } + + ATCommandsInterface::ATResult result; + AtiProcessor atiProcessor; + do + { + ret = m_at.execute("ATI", &atiProcessor, &result); + } + while (ret != OK); + { + const char* info = atiProcessor.getInfo(); + DBG("Modem Identification [%s]", info); + if (strstr(info, "LISA-C200")) + { + m_gsm = false; // it is CDMA modem + m_onePort = true; // force use of only one port + } + } + + CREGProcessor cregProcessor(m_gsm); + //Wait for network registration + do + { + DBG("Waiting for network registration"); + ret = m_at.execute(cregProcessor.getAtCommand(), &cregProcessor, &result); + DBG("Result of command: Err code=%d\n", ret); + DBG("ATResult: AT return=%d (code %d)\n", result.result, result.code); + if(cregProcessor.getStatus() == CREGProcessor::STATUS_REGISTERING) + { + Thread::wait(3000); + } + } while(cregProcessor.getStatus() == CREGProcessor::STATUS_REGISTERING); + if(cregProcessor.getStatus() == CREGProcessor::STATUS_FAILED) + { + ERR("Registration denied"); + return NET_AUTH; + } + + m_atOpen = true; + + return OK; +} + +int UbloxModem::cleanup() +{ + if(m_ppp.isConnected()) + { + WARN("Data connection is still open"); //Try to encourage good behaviour from the user + m_ppp.disconnect(); + } + + m_smsInit = false; + m_ussdInit = false; + m_linkMonitorInit = false; + //We don't reset m_ipInit as PPPIPInterface::init() only needs to be called once + + if(m_atOpen) + { + m_at.close(); + m_atOpen = false; + } + + return OK; +} + +int UbloxModem::sendUSSD(const char* command, char* result, size_t maxLength) +{ + int ret = init(); + if(ret) + { + return ret; + } + + if(!m_ussdInit) + { + ret = m_ussd.init(); + if(ret) + { + return ret; + } + m_ussdInit = true; + } + + ret = m_ussd.send(command, result, maxLength); + if(ret) + { + return ret; + } + + return OK; +} + +int UbloxModem::getLinkState(int* pRssi, LinkMonitor::REGISTRATION_STATE* pRegistrationState, LinkMonitor::BEARER* pBearer) +{ + int ret = init(); + if(ret) + { + return ret; + } + + if(!m_linkMonitorInit) + { + ret = m_linkMonitor.init(); + ret = m_linkMonitor.init(m_gsm); + if(ret) + { + return ret; + } + m_linkMonitorInit = true; + } + + ret = m_linkMonitor.getState(pRssi, pRegistrationState, pBearer); + if(ret) + { + return ret; + } + + return OK; +} + +#include "USBHost.h" +#include "UbloxGSMModemInitializer.h" +#include "UbloxCDMAModemInitializer.h" + +UbloxUSBModem::UbloxUSBModem() : + UbloxModem(&m_atStream, &m_pppStream), + m_dongle(), // Construct WANDongle: USB interface with two serial channels to the modem (USBSerialStream objects) + m_atStream(m_dongle.getSerial(1)), // AT commands are sent down one serial channel. + m_pppStream(m_dongle.getSerial(0)), // PPP connections are managed via another serial channel. + m_dongleConnected(false) // Dongle is initially not ready for anything +{ + USBHost* host = USBHost::getHostInst(); + m_dongle.addInitializer(new UbloxGSMModemInitializer(host)); + m_dongle.addInitializer(new UbloxCDMAModemInitializer(host)); +} + +int UbloxUSBModem::init() +{ + if( !m_dongleConnected ) + { + m_dongleConnected = true; + while( !m_dongle.connected() ) + { + m_dongle.tryConnect(); + Thread::wait(10); + } + if(m_dongle.getDongleType() == WAN_DONGLE_TYPE_UBLOX_LISAU200) + { + INFO("Using a u-blox LISA-U200 3G/WCDMA Modem"); + } + else if(m_dongle.getDongleType() == WAN_DONGLE_TYPE_UBLOX_LISAC200) + { + INFO("Using a u-blox LISA-C200 CDMA Modem"); + m_gsm = false; + m_onePort = true; + } + else + { + WARN("Using an Unknown Dongle"); + } + } + return UbloxModem::init(); +} + +int UbloxUSBModem::cleanup() +{ + UbloxModem::cleanup(); + m_dongle.disconnect(); + m_dongleConnected = false; + return OK; +} + +UbloxSerModem::UbloxSerModem() : + UbloxModem(&m_atStream, NULL), + m_Serial(P0_15,P0_16), + m_atStream(m_Serial) +{ + m_Serial.baud(115200); +} + diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxModem.h b/libraries/net/cellular/UbloxUSBModem/UbloxModem.h new file mode 100644 index 0000000000..153942785c --- /dev/null +++ b/libraries/net/cellular/UbloxUSBModem/UbloxModem.h @@ -0,0 +1,168 @@ +/* VodafoneUSBModem.h */ +/* Copyright (C) 2012 mbed.org, MIT License + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of this software + * and associated documentation files (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, publish, distribute, + * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all copies or + * substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#ifndef UBLOXMODEM_H_ +#define UBLOXMODEM_H_ + +#include "core/fwk.h" + +#include "at/ATCommandsInterface.h" +#include "ip/PPPIPInterface.h" +#include "sms/GSMSMSInterface.h" +#include "sms/CDMASMSInterface.h" +#include "ussd/USSDInterface.h" +#include "link/LinkMonitor.h" +#include "CellularModem.h" + +/** u-blox WCDMA modem (LISA-U200) + */ +class UbloxModem: public CellularModem +{ +public: + /** Create u-blox API instance + @param powerGatingPin Optional pin commanding a power gating transistor on the modem's power line + @param powerGatingOnWhenPinHigh true if the pin needs to be high to power the dongle, defaults to true + */ + UbloxModem(IOStream* atStream, IOStream* pppStream); + + //Internet-related functions + + /** Open a 3G internet connection + @return 0 on success, error code on failure + */ + virtual int connect(const char* apn = NULL, const char* user = NULL, const char* password = NULL); + + /** Close the internet connection + @return 0 on success, error code on failure + */ + virtual int disconnect(); + + + /** Send a SM + @param number The receiver's phone number + @param message The message to send + @return 0 on success, error code on failure + */ + virtual int sendSM(const char* number, const char* message); + + + /** Receive a SM + @param number Pointer to a buffer to store the sender's phone number (must be at least 17 characters-long, including the sapce for the null-terminating char) + @param message Pointer to a buffer to store the the incoming message + @param maxLength Maximum message length that can be stored in buffer (including null-terminating character) + @return 0 on success, error code on failure + */ + virtual int getSM(char* number, char* message, size_t maxLength); + + /** Get the number of SMs in the incoming box + @param pCount pointer to store the number of unprocessed SMs on + @return 0 on success, error code on failure + */ + virtual int getSMCount(size_t* pCount); + + /** Send a USSD command & wait for its result + @param command The command to send + @param result Buffer in which to store the result + @param maxLength Maximum result length that can be stored in buffer (including null-terminating character) + @return 0 on success, error code on failure + */ + int sendUSSD(const char* command, char* result, size_t maxLength); + + /** Get link state + @param pRssi pointer to store the current RSSI in dBm, between -51 dBm and -113 dBm if known; -51 dBm means -51 dBm or more; -113 dBm means -113 dBm or less; 0 if unknown + @param pRegistrationState pointer to store the current registration state + @param pBearer pointer to store the current bearer + @return 0 on success, error code on failure + */ + int getLinkState(int* pRssi, LinkMonitor::REGISTRATION_STATE* pRegistrationState, LinkMonitor::BEARER* pBearer); + + /** Get the ATCommandsInterface instance + @return Pointer to the ATCommandsInterface instance + */ + virtual ATCommandsInterface* getATCommandsInterface(); + +protected: + /** Initialise dongle. + * The following actions are performed: + * 1) Start AT interface thread + * 2) Wait for network registration + */ + virtual int init(); + + /** De-initialise dongle. + * The following actions are performed: + * 1) Tear down PPP session + * 2) Set SMS,USSD, and LinkMonitor subsystems to un-initialised + * 3) Close the AT commands interface + */ + virtual int cleanup(); + +private: + ATCommandsInterface m_at; //< Interface to AT commands processing + + CDMASMSInterface m_CdmaSms; //< Interface to SMS manager (send/receive etc) + GSMSMSInterface m_GsmSms; //< Interface to SMS manager (send/receive etc) + USSDInterface m_ussd; //< Interface to USSD manager (send etc) + LinkMonitor m_linkMonitor; //< Interface to link monitor (RSSI) + + PPPIPInterface m_ppp; //< Interface to PPP conection manager (IP assignment etc) + + bool m_ipInit; //< Has PPIPInterface object (m_ppp) been initialised? true/false + bool m_smsInit; //< Has SMSInterface object (m_sms) been initialised? true/false + bool m_ussdInit; //< Has USSDInterface object (m_ussd) been initialised? true/false + bool m_linkMonitorInit; //< Has LinkMonitor object (m_linkMonitor) been initialised? true/false + bool m_atOpen; //< Is the interface to the ATCommandsInterface open? true/false +protected: + bool m_onePort; + bool m_gsm; +}; + +#include "WANDongle.h" +#include "serial/usb/USBSerialStream.h" + +class UbloxUSBModem: public UbloxModem +{ +public: + UbloxUSBModem(); + virtual int init(); + virtual int cleanup(); + virtual int power(bool enable) { return 1; } + +private: + WANDongle m_dongle; //< Interface to USB connected WAN dongle + + USBSerialStream m_atStream; //< Serial interface to AT channel on modem + USBSerialStream m_pppStream; //< Serial interface to PPP channel on modem + + bool m_dongleConnected; //< Is the dongle physically connected (does the USB stack respond)? true/false +}; + +#include "serial/io/IOSerialStream.h" + +class UbloxSerModem: public UbloxModem +{ +public: + UbloxSerModem(); + virtual int power(bool enable) { return 1; } +private: + RawSerial m_Serial; + IOSerialStream m_atStream; //< Serial interface to AT channel on modem +}; + +#endif /* UBLOXMODEM_H_ */ diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxUSBCDMAModem.cpp b/libraries/net/cellular/UbloxUSBModem/UbloxUSBCDMAModem.cpp index eb7be36fe6..5e4e32a2b5 100644 --- a/libraries/net/cellular/UbloxUSBModem/UbloxUSBCDMAModem.cpp +++ b/libraries/net/cellular/UbloxUSBModem/UbloxUSBCDMAModem.cpp @@ -33,7 +33,7 @@ UbloxUSBCDMAModem::UbloxUSBCDMAModem(PinName powerGatingPin /*= NC*/, bool powerGatingOnWhenPinHigh /* = true*/, int serial /* 0 */) : m_dongle(), m_stream(m_dongle.getSerial(serial)), m_at(&m_stream), -m_sms(&m_at), m_ppp(&m_stream, DEFAULT_MSISDN_CDMA), +m_sms(&m_at), m_ppp(&m_stream), m_dongleConnected(false), m_ipInit(false), m_smsInit(false), m_atOpen(false), m_powerGatingPin(powerGatingPin), m_powerGatingOnWhenPinHigh(powerGatingOnWhenPinHigh) { @@ -88,7 +88,7 @@ int UbloxUSBCDMAModem::connect(const char* apn, const char* user, const char* pa m_ipInit = true; m_ppp.init(); } - m_ppp.setup(user, password); + m_ppp.setup(user, password, DEFAULT_MSISDN_CDMA); int ret = init(); if(ret) @@ -341,7 +341,7 @@ int UbloxUSBCDMAModem::init() return ret; } - if(m_dongle.getDongleType() == WAN_DONGLE_TYPE_UBLOXC200) + if(m_dongle.getDongleType() == WAN_DONGLE_TYPE_UBLOX_LISAC200) { INFO("Using a UBLOX C200 Dongle"); } diff --git a/libraries/net/cellular/UbloxUSBModem/UbloxUSBGSMModem.cpp b/libraries/net/cellular/UbloxUSBModem/UbloxUSBGSMModem.cpp index 56ceacc63e..8209dc6a88 100644 --- a/libraries/net/cellular/UbloxUSBModem/UbloxUSBGSMModem.cpp +++ b/libraries/net/cellular/UbloxUSBModem/UbloxUSBGSMModem.cpp @@ -36,7 +36,7 @@ UbloxUSBGSMModem::UbloxUSBGSMModem(PinName powerGatingPin /*= NC*/, bool powerGa m_sms(&m_at), // Construct SMSInterface with the ATCommandsInterface m_ussd(&m_at), // Construct USSDInterface with the ATCommandsInterface m_linkMonitor(&m_at), // Construct LinkMonitor with the ATCommandsInterface - m_ppp(&m_pppStream, DEFAULT_MSISDN_GSM), // Construct PPPIPInterface with the PPP serial channel + m_ppp(&m_pppStream), // Construct PPPIPInterface with the PPP serial channel m_dongleConnected(false), // Dongle is initially not ready for anything m_ipInit(false), // PPIPInterface connection is initially down m_smsInit(false), // SMSInterface starts un-initialised @@ -185,7 +185,7 @@ int UbloxUSBGSMModem::connect(const char* apn, const char* user, const char* pas m_ipInit = true; m_ppp.init(); } - m_ppp.setup(user, password); + m_ppp.setup(user, password, DEFAULT_MSISDN_GSM); int ret = init(); if(ret) @@ -543,7 +543,7 @@ int UbloxUSBGSMModem::init() return ret; } - if(m_dongle.getDongleType() == WAN_DONGLE_TYPE_UBX) + if(m_dongle.getDongleType() == WAN_DONGLE_TYPE_UBLOX_LISAU200) { INFO("Using a u-blox LISA-U"); } diff --git a/libraries/net/lwip/lwip/lwipopts.h b/libraries/net/lwip/lwip/lwipopts.h index 4d07680dbc..b2f5d7f72e 100644 --- a/libraries/net/lwip/lwip/lwipopts.h +++ b/libraries/net/lwip/lwip/lwipopts.h @@ -48,7 +48,11 @@ // 32-bit alignment #define MEM_ALIGNMENT 4 +#if defined(TARGET_LPC4088) +#define MEM_SIZE 15360 +#else #define MEM_SIZE 16362 +#endif #define PBUF_POOL_SIZE 5 #define MEMP_NUM_TCP_PCB_LISTEN 4 diff --git a/libraries/tests/mbed/digitalin_digitalout/main.cpp b/libraries/tests/mbed/digitalin_digitalout/main.cpp index 3c5aa59387..29a0f01eef 100644 --- a/libraries/tests/mbed/digitalin_digitalout/main.cpp +++ b/libraries/tests/mbed/digitalin_digitalout/main.cpp @@ -1,6 +1,5 @@ #include "test_env.h" - #if defined(TARGET_KL25Z) DigitalOut out(PTA5); DigitalIn in(PTC6); @@ -13,6 +12,10 @@ DigitalIn in(PTB1); DigitalOut out(dp1); DigitalIn in(dp2); +#elif defined(TARGET_NUCLEO_F103RB) +DigitalOut out(PC_6); +DigitalIn in(PB_8); + #else DigitalOut out(p5); DigitalIn in(p25); diff --git a/libraries/tests/mbed/digitalinout/main.cpp b/libraries/tests/mbed/digitalinout/main.cpp index babfa0a0b4..94a734160a 100644 --- a/libraries/tests/mbed/digitalinout/main.cpp +++ b/libraries/tests/mbed/digitalinout/main.cpp @@ -12,6 +12,10 @@ DigitalInOut d2(PTB1); DigitalInOut d1(dp1); DigitalInOut d2(dp2); +#elif defined(TARGET_NUCLEO_F103RB) +DigitalInOut d1(PC_6); +DigitalInOut d2(PB_8); + #else DigitalInOut d1(p5); DigitalInOut d2(p25); diff --git a/libraries/tests/mbed/echo/main.cpp b/libraries/tests/mbed/echo/main.cpp index 20c702bb34..d1e023d781 100644 --- a/libraries/tests/mbed/echo/main.cpp +++ b/libraries/tests/mbed/echo/main.cpp @@ -1,9 +1,17 @@ #include "mbed.h" +#ifdef TARGET_NUCLEO_F103RB +#define TXPIN SERIAL_TX +#define RXPIN SERIAL_RX +#else +#define TXPIN USBTX +#define RXPIN USBRX +#endif + int main() { char buf[256]; - Serial pc(USBTX, USBRX); + Serial pc(TXPIN, RXPIN); pc.baud(115200); while (1) { diff --git a/libraries/tests/mbed/i2c_eeprom/main.cpp b/libraries/tests/mbed/i2c_eeprom/main.cpp index 7b1c12a4e6..a39e7513ec 100644 --- a/libraries/tests/mbed/i2c_eeprom/main.cpp +++ b/libraries/tests/mbed/i2c_eeprom/main.cpp @@ -30,6 +30,8 @@ static const int i2c_delay_us = 0; #if defined(TARGET_KL25Z) I2C i2c(PTE0, PTE1); +#elif defined(TARGET_NUCLEO_F103RB) +I2C i2c(I2C_SDA, I2C_SCL); #else I2C i2c(p28, p27); #endif diff --git a/libraries/tests/mbed/portinout/main.cpp b/libraries/tests/mbed/portinout/main.cpp index db3b291dc9..37f1d1b660 100644 --- a/libraries/tests/mbed/portinout/main.cpp +++ b/libraries/tests/mbed/portinout/main.cpp @@ -44,6 +44,15 @@ #define P2_1 (1 << 5) // PTC5 #define P2_2 (1 << 6) // PTC6 #define PORT_2 PortC + +#elif defined(TARGET_NUCLEO_F103RB) +#define P1_1 (1 << 6) // PC_6 +#define P1_2 (1 << 5) // PC_5 +#define PORT_1 PortC + +#define P2_1 (1 << 8) // PB_8 +#define P2_2 (1 << 9) // PB_9 +#define PORT_2 PortB #endif #define MASK_1 (P1_1 | P1_2) diff --git a/libraries/tests/mbed/portout_portin/main.cpp b/libraries/tests/mbed/portout_portin/main.cpp index 5a4e8c874b..d38bd9c69c 100644 --- a/libraries/tests/mbed/portout_portin/main.cpp +++ b/libraries/tests/mbed/portout_portin/main.cpp @@ -44,6 +44,15 @@ #define P2_1 (1 << 5) // PTC5 #define P2_2 (1 << 6) // PTC6 #define PORT_2 PortC + +#elif defined(TARGET_NUCLEO_F103RB) +#define P1_1 (1 << 6) // PC_6 +#define P1_2 (1 << 5) // PC_5 +#define PORT_1 PortC + +#define P2_1 (1 << 8) // PB_8 +#define P2_2 (1 << 9) // PB_9 +#define PORT_2 PortB #endif #define MASK_1 (P1_1 | P1_2) diff --git a/libraries/tests/mbed/pwm_led/pwm.cpp b/libraries/tests/mbed/pwm_led/pwm.cpp new file mode 100644 index 0000000000..6c3bed78ac --- /dev/null +++ b/libraries/tests/mbed/pwm_led/pwm.cpp @@ -0,0 +1,26 @@ +#include "mbed.h" + +#ifdef TARGET_NUCLEO_F103RB +PwmOut led(D3); +#else +#error This test is not supported on this target. +#endif + +int main() { + float crt = 1.0, delta = 0.05; + + led.period_ms(2); // 500Hz + while (true) { + led.write(crt); + wait_ms(50); + crt = crt + delta; + if (crt > 1.0) { + crt = 1.0; + delta = -delta; + } + else if (crt < 0) { + crt = 0; + delta = -delta; + } + } +} diff --git a/libraries/tests/mbed/sd/main.cpp b/libraries/tests/mbed/sd/main.cpp index cd99ded23a..f4a704b7f3 100644 --- a/libraries/tests/mbed/sd/main.cpp +++ b/libraries/tests/mbed/sd/main.cpp @@ -4,6 +4,8 @@ #if defined(TARGET_KL25Z) SDFileSystem sd(PTD2, PTD3, PTD1, PTD0, "sd"); +#elif defined(TARGET_NUCLEO_F103RB) +SDFileSystem sd(D11, D12, D13, D10, "sd"); #else SDFileSystem sd(p11, p12, p13, p14, "sd"); #endif diff --git a/libraries/tests/mbed/serial_interrupt/main.cpp b/libraries/tests/mbed/serial_interrupt/main.cpp index fcdb3a5c02..2818422395 100644 --- a/libraries/tests/mbed/serial_interrupt/main.cpp +++ b/libraries/tests/mbed/serial_interrupt/main.cpp @@ -3,8 +3,12 @@ DigitalOut led1(LED1); DigitalOut led2(LED2); +#ifndef TARGET_NUCLEO_F103RB Serial computer(USBTX, USBRX); - +#else +Serial computer(SERIAL_TX, SERIAL_RX); +#endif + // This function is called when a character goes into the TX buffer. void txCallback() { led1 = !led1; diff --git a/libraries/tests/mbed/spifi1/main.cpp b/libraries/tests/mbed/spifi1/main.cpp new file mode 100644 index 0000000000..7f64f6d23d --- /dev/null +++ b/libraries/tests/mbed/spifi1/main.cpp @@ -0,0 +1,107 @@ +#include "test_env.h" +#include "mbed.h" +#include "spifi_rom_api.h" + +__attribute__((section("SPIFI_MEM"))) const unsigned char cube_image[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,0,150,0,0,0,200,8,2,0,0,0,133,231,143, +50,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,195,0,0,14,195,1,199, +111,168,100,0,0,156,193,73,68,65,84,120,94,236,253,103, +124,27,233,125,54,140,14,48,24,0,51,24,244,94,9,246, +0,0,0,0,73,69,78,68,174,66,96,130}; + +int cube_image_sz = sizeof(cube_image); + +const unsigned char cube_image_ref[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,0,150,0,0,0,200,8,2,0,0,0,133,231,143, +50,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,195,0,0,14,195,1,199, +111,168,100,0,0,156,193,73,68,65,84,120,94,236,253,103, +124,27,233,125,54,140,14,48,24,0,51,24,244,94,9,246, +0,0,0,0,73,69,78,68,174,66,96,130}; + +int cube_image_ref_sz = sizeof(cube_image_ref); + +/* + * The SPIFI_ROM_PTR (0x1FFF1FF8) points to an area where the pointers to + * different drivers in ROM are stored. + */ +typedef struct { + /*const*/ unsigned p_usbd; // USBROMD + /*const*/ unsigned p_clib; + /*const*/ unsigned p_cand; + /*const*/ unsigned p_pwrd; // PWRROMD + /*const*/ unsigned p_promd; // DIVROMD + /*const*/ SPIFI_RTNS *pSPIFID; // SPIFIROMD + /*const*/ unsigned p_dev3; + /*const*/ unsigned p_dev4; +} ROM; + +#define ROM_DRIVERS_PTR ((ROM *)(*((unsigned int *)SPIFI_ROM_PTR))) +#define IS_ADDR_IN_SPIFI(__addr) ( (((uint32_t)(__addr)) & 0xff000000) == SPIFI_MEM_BASE ) +#define IS_ADDR_IN_IFLASH(__addr) ( (((uint32_t)(__addr)) & 0xff000000) == 0x10000000 ) + +static void initialize_spifi(void) +{ + SPIFIobj* obj = (SPIFIobj*)malloc(sizeof(SPIFIobj)); + if (obj == NULL) { + // Failed to allocate memory for ROM data + notify_completion(false); + } + + // Turn on SPIFI block as it is disabled on reset + LPC_SC->PCONP |= 0x00010000; + + // pinsel for SPIFI + LPC_IOCON->P2_7 = 5; /* SPIFI_CSN @ P2.7 */ + LPC_IOCON->P0_22 = 5; /* SPIFI_CLK @ P0.22 */ + LPC_IOCON->P0_15 = 5; /* SPIFI_IO2 @ P0.15 */ + LPC_IOCON->P0_16 = 5; /* SPIFI_IO3 @ P0.16 */ + LPC_IOCON->P0_17 = 5; /* SPIFI_IO1 @ P0.17 */ + LPC_IOCON->P0_18 = 5; /* SPIFI_IO0 @ P0.18 */ + + uint32_t spifi_clk_div = (*((volatile uint32_t*)0x400FC1B4)) & 0x1f; + uint32_t spifi_clk_mhz = (SystemCoreClock / spifi_clk_div) / 1000000; + + const SPIFI_RTNS* _spifi = ROM_DRIVERS_PTR->pSPIFID; + + /* Typical time tCS is 20 ns min, we give 200 ns to be on safer side */ + int rc = _spifi->spifi_init (obj, spifi_clk_mhz/5, S_FULLCLK+S_RCVCLK, spifi_clk_mhz); + if (rc) { + // Failed to initialize SPIFI + notify_completion(false); + } +} + +int main() { + + initialize_spifi(); + + // Make sure that cube_image is placed in SPIFI + if (!IS_ADDR_IN_SPIFI(cube_image)) { + notify_completion(false); + } + + // Make sure that cube_image_ref is in IFLASH + if (IS_ADDR_IN_SPIFI(cube_image_ref)) { + notify_completion(false); + } + + // Compare content + if (cube_image_sz != cube_image_ref_sz) { + notify_completion(false); + } else { + int i = 0; + for (; i < cube_image_sz; i++) { + if (cube_image[i] != cube_image_ref[i]) { + notify_completion(false); + } + } + } + + notify_completion(true); +} diff --git a/libraries/tests/mbed/spifi1/spifi_rom_api.h b/libraries/tests/mbed/spifi1/spifi_rom_api.h new file mode 100644 index 0000000000..69b752f196 --- /dev/null +++ b/libraries/tests/mbed/spifi1/spifi_rom_api.h @@ -0,0 +1,165 @@ +/* definitions for ROM API for SPIFI in NXP MCUs + copyright (c) 2010 NXP Semiconductors + written by CAM start 4/16/10 + first testing 5/12/10 + OK with first SST & Winbond devices 6/8/10 + OK with Gigadevice, Numonyx, Atmel, + some Macronyx 7/13/10 + consensus with BK, performance optimized 8/24/10 + this file is largely platform-independent */ + +#ifndef SPIFI_ROM_API_H +#define SPIFI_ROM_API_H + + +#define SPIFI_MEM_BASE 0x28000000 +/* allocated size of the SPIFI memory area on this device */ +#define MEM_AREA_SIZE 0x00001000 +#define SPIFI_ROM_PTR 0x1FFF1FF8 + +/* define the symbol TESTING in the environment if test output desired */ + +/* maintain LONGEST_PROT >= the length (in bytes) of the largest + protection block of any serial flash that this driver handles */ +#define LONGEST_PROT 68 + +/* protection/sector descriptors */ +typedef struct { + unsigned base; + uint8_t flags; + signed char log2; + uint16_t rept; +} protEnt; + +typedef union { + uint16_t hw; + uint8_t byte[2]; +}stat_t; + +/* the object that init returns, and other routines use as an operand */ +typedef struct { + unsigned base, regbase, devSize, memSize; + uint8_t mfger, devType, devID, busy; + stat_t stat; + uint16_t reserved; + uint16_t set_prot, write_prot; + unsigned mem_cmd, prog_cmd; + uint16_t sectors, protBytes; + unsigned opts, errCheck; + uint8_t erase_shifts[4], erase_ops[4]; + protEnt *protEnts; + char prot[LONGEST_PROT]; +} SPIFIobj; + +/* operands of program and erase */ +typedef struct { + char *dest; /* starting address for programming or erasing */ + unsigned length; /* number of bytes to be programmed or erased */ + char *scratch; /* address of work area or NULL */ + int protect; /* protection to apply after programming/erasing is done */ + unsigned options; /* see the table below */ +} SPIFIopers; + + +/* bits in options operands (MODE3, RCVCLK, and FULLCLK + have the same relationship as in the Control register) */ +#define S_MODE3 1 +#define S_MODE0 0 +#define S_MINIMAL 2 +#define S_MAXIMAL 0 +#define S_FORCE_ERASE 4 +#define S_ERASE_NOT_REQD 8 +#define S_CALLER_ERASE 8 +#define S_ERASE_AS_REQD 0 +#define S_VERIFY_PROG 0x10 +#define S_VERIFY_ERASE 0x20 +#define S_NO_VERIFY 0 +#define S_RCVCLK 0x80 +#define S_INTCLK 0 +#define S_FULLCLK 0x40 +#define S_HALFCLK 0 +#define S_DUAL 0x100 +#define S_CALLER_PROT 0x200 +#define S_DRIVER_PROT 0 + +/* the length of a standard program command is 256 on all devices */ +#define PROG_SIZE 256 + +/* interface to ROM API */ +typedef struct { + int (*spifi_init) (SPIFIobj *obj, unsigned csHigh, unsigned options, + unsigned mhz); + int (*spifi_program) (SPIFIobj *obj, char *source, SPIFIopers *opers); + int (*spifi_erase) (SPIFIobj *obj, SPIFIopers *opers); + /* mode switching */ + void (*cancel_mem_mode)(SPIFIobj *obj); + void (*set_mem_mode) (SPIFIobj *obj); + + /* mid level functions */ + int (*checkAd) (SPIFIobj *obj, SPIFIopers *opers); + int (*setProt) (SPIFIobj *obj, SPIFIopers *opers, char *change, + char *saveProt); + int (*check_block) (SPIFIobj *obj, char *source, SPIFIopers *opers, + unsigned check_program); + int (*send_erase_cmd) (SPIFIobj *obj, unsigned char op, unsigned addr); + unsigned (*ck_erase) (SPIFIobj *obj, unsigned *addr, unsigned length); + int (*prog_block) (SPIFIobj *obj, char *source, SPIFIopers *opers, + unsigned *left_in_page); + unsigned (*ck_prog) (SPIFIobj *obj, char *source, char *dest, unsigned length); + + /* low level functions */ + void(*setSize) (SPIFIobj *obj, int value); + int (*setDev) (SPIFIobj *obj, unsigned opts, unsigned mem_cmd, + unsigned prog_cmd); + unsigned (*cmd) (uint8_t op, uint8_t addrLen, uint8_t intLen, unsigned short len); + unsigned (*readAd) (SPIFIobj *obj, unsigned cmd, unsigned addr); + void (*send04) (SPIFIobj *obj, uint8_t op, uint8_t len, unsigned value); + void (*wren_sendAd) (SPIFIobj *obj, unsigned cmd, unsigned addr, unsigned value); + int (*write_stat) (SPIFIobj *obj, uint8_t len, uint16_t value); + int (*wait_busy) (SPIFIobj *obj, uint8_t prog_or_erase); +} SPIFI_RTNS; + +//#define define_spifi_romPtr(name) const SPIFI_RTNS *name=*((SPIFI_RTNS **)SPIFI_ROM_PTR) + +/* example of using this interface: +#include "spifi_rom_api.h" +#define CSHIGH 4 +#define SPIFI_MHZ 80 +#define source_data_ad (char *)1234 + + int rc; + SPIFIopers opers; + + define_spifi_romPtr(spifi); + SPIFIobj *obj = malloc(sizeof(SPIFIobj)); + if (!obj) { can't allocate memory } + + rc = spifi->spifi_init (obj, CSHIGH, S_FULLCLK+S_RCVCLK, SPIFI_MHZ); + if (rc) { investigate init error rc } + printf ("the serial flash contains %d bytes\n", obj->devSize); + + opers.dest = where_to_program; + opers.length = how_many_bytes; + opers.scratch = NULL; // unprogrammed data is not saved/restored + opers.protect = -1; // save & restore protection + opers.options = S_VERIFY_PROG; + + rc = spifi->spifi_program (obj, source_data_ad, &opers); + if (rc) { investigate program error rc } +*/ + +/* these are for normal users, including boot code */ +int spifi_init (SPIFIobj *obj, unsigned csHigh, unsigned options, unsigned mhz); +int spifi_program (SPIFIobj *obj, char *source, SPIFIopers *opers); +int spifi_erase (SPIFIobj *obj, SPIFIopers *opers); + +/* these are used by the manufacturer-specific init functions */ +void setSize (SPIFIobj *obj, int value); +int setDev (SPIFIobj *obj, unsigned opts, unsigned mem_cmd, unsigned prog_cmd); +unsigned read04(SPIFIobj *obj, uint8_t op, uint8_t len); +int write_stat (SPIFIobj *obj, uint8_t len, uint16_t value); +void setProtEnts(SPIFIobj *obj, const protEnt *p, unsigned protTabLen); + +#endif + + diff --git a/libraries/tests/mbed/spifi2/main.cpp b/libraries/tests/mbed/spifi2/main.cpp new file mode 100644 index 0000000000..cabfd29851 --- /dev/null +++ b/libraries/tests/mbed/spifi2/main.cpp @@ -0,0 +1,100 @@ +#include "test_env.h" +#include "mbed.h" +#include "spifi_rom_api.h" + +extern const unsigned char splash_image1[]; extern int splash_image1_sz; +extern const unsigned char splash_image2[]; extern int splash_image2_sz; +extern const unsigned char splash_image3[]; extern int splash_image3_sz; +extern const unsigned char splash_image4[]; extern int splash_image4_sz; +extern const unsigned char splash_image5[]; extern int splash_image5_sz; +extern const unsigned char splash_image6[]; extern int splash_image6_sz; +extern const unsigned char splash_image7[]; extern int splash_image7_sz; +extern const unsigned char splash_image8[]; extern int splash_image8_sz; +extern const unsigned char splash_image9[]; extern int splash_image9_sz; +extern const unsigned char splash_image10[]; extern int splash_image10_sz; +extern const unsigned char splash_image11[]; extern int splash_image11_sz; +extern const unsigned char splash_image12[]; extern int splash_image12_sz; +extern const unsigned char splash_image13[]; extern int splash_image13_sz; +extern const unsigned char splash_image14[]; extern int splash_image14_sz; +extern const unsigned char splash_image15[]; extern int splash_image15_sz; + +/* + * The SPIFI_ROM_PTR (0x1FFF1FF8) points to an area where the pointers to + * different drivers in ROM are stored. + */ +typedef struct { + /*const*/ unsigned p_usbd; // USBROMD + /*const*/ unsigned p_clib; + /*const*/ unsigned p_cand; + /*const*/ unsigned p_pwrd; // PWRROMD + /*const*/ unsigned p_promd; // DIVROMD + /*const*/ SPIFI_RTNS *pSPIFID; // SPIFIROMD + /*const*/ unsigned p_dev3; + /*const*/ unsigned p_dev4; +} ROM; + +#define ROM_DRIVERS_PTR ((ROM *)(*((unsigned int *)SPIFI_ROM_PTR))) +#define IS_ADDR_IN_SPIFI(__addr) ( (((uint32_t)(__addr)) & 0xff000000) == SPIFI_MEM_BASE ) +#define IS_ADDR_IN_IFLASH(__addr) ( (((uint32_t)(__addr)) & 0xff000000) == 0x10000000 ) + +static void initialize_spifi(void) +{ + SPIFIobj* obj = (SPIFIobj*)malloc(sizeof(SPIFIobj)); + if (obj == NULL) { + // Failed to allocate memory for ROM data + notify_completion(false); + } + + // Turn on SPIFI block as it is disabled on reset + LPC_SC->PCONP |= 0x00010000; + + // pinsel for SPIFI + LPC_IOCON->P2_7 = 5; /* SPIFI_CSN @ P2.7 */ + LPC_IOCON->P0_22 = 5; /* SPIFI_CLK @ P0.22 */ + LPC_IOCON->P0_15 = 5; /* SPIFI_IO2 @ P0.15 */ + LPC_IOCON->P0_16 = 5; /* SPIFI_IO3 @ P0.16 */ + LPC_IOCON->P0_17 = 5; /* SPIFI_IO1 @ P0.17 */ + LPC_IOCON->P0_18 = 5; /* SPIFI_IO0 @ P0.18 */ + + uint32_t spifi_clk_div = (*((volatile uint32_t*)0x400FC1B4)) & 0x1f; + uint32_t spifi_clk_mhz = (SystemCoreClock / spifi_clk_div) / 1000000; + + const SPIFI_RTNS* _spifi = ROM_DRIVERS_PTR->pSPIFID; + + /* Typical time tCS is 20 ns min, we give 200 ns to be on safer side */ + int rc = _spifi->spifi_init (obj, spifi_clk_mhz/5, S_FULLCLK+S_RCVCLK, spifi_clk_mhz); + if (rc) { + // Failed to initialize SPIFI + notify_completion(false); + } +} + +int main() { + + initialize_spifi(); + + // Make sure that most files are placed in IFLASH + if (IS_ADDR_IN_SPIFI(splash_image1) || + IS_ADDR_IN_SPIFI(splash_image2) || + IS_ADDR_IN_SPIFI(splash_image3) || + IS_ADDR_IN_SPIFI(splash_image4) || + IS_ADDR_IN_SPIFI(splash_image5) || + IS_ADDR_IN_SPIFI(splash_image6) || + IS_ADDR_IN_SPIFI(splash_image7) || + IS_ADDR_IN_SPIFI(splash_image8) || + IS_ADDR_IN_SPIFI(splash_image9) || + IS_ADDR_IN_SPIFI(splash_image10) || + IS_ADDR_IN_SPIFI(splash_image11) || + IS_ADDR_IN_SPIFI(splash_image12) || + IS_ADDR_IN_SPIFI(splash_image13) || + IS_ADDR_IN_SPIFI(splash_image14)) { + notify_completion(false); + } + + // Make sure that splash_image15 is placed in SPIFI + if (!IS_ADDR_IN_SPIFI(splash_image15)) { + notify_completion(false); + } + + notify_completion(true); +} diff --git a/libraries/tests/mbed/spifi2/spifi_rom_api.h b/libraries/tests/mbed/spifi2/spifi_rom_api.h new file mode 100644 index 0000000000..69b752f196 --- /dev/null +++ b/libraries/tests/mbed/spifi2/spifi_rom_api.h @@ -0,0 +1,165 @@ +/* definitions for ROM API for SPIFI in NXP MCUs + copyright (c) 2010 NXP Semiconductors + written by CAM start 4/16/10 + first testing 5/12/10 + OK with first SST & Winbond devices 6/8/10 + OK with Gigadevice, Numonyx, Atmel, + some Macronyx 7/13/10 + consensus with BK, performance optimized 8/24/10 + this file is largely platform-independent */ + +#ifndef SPIFI_ROM_API_H +#define SPIFI_ROM_API_H + + +#define SPIFI_MEM_BASE 0x28000000 +/* allocated size of the SPIFI memory area on this device */ +#define MEM_AREA_SIZE 0x00001000 +#define SPIFI_ROM_PTR 0x1FFF1FF8 + +/* define the symbol TESTING in the environment if test output desired */ + +/* maintain LONGEST_PROT >= the length (in bytes) of the largest + protection block of any serial flash that this driver handles */ +#define LONGEST_PROT 68 + +/* protection/sector descriptors */ +typedef struct { + unsigned base; + uint8_t flags; + signed char log2; + uint16_t rept; +} protEnt; + +typedef union { + uint16_t hw; + uint8_t byte[2]; +}stat_t; + +/* the object that init returns, and other routines use as an operand */ +typedef struct { + unsigned base, regbase, devSize, memSize; + uint8_t mfger, devType, devID, busy; + stat_t stat; + uint16_t reserved; + uint16_t set_prot, write_prot; + unsigned mem_cmd, prog_cmd; + uint16_t sectors, protBytes; + unsigned opts, errCheck; + uint8_t erase_shifts[4], erase_ops[4]; + protEnt *protEnts; + char prot[LONGEST_PROT]; +} SPIFIobj; + +/* operands of program and erase */ +typedef struct { + char *dest; /* starting address for programming or erasing */ + unsigned length; /* number of bytes to be programmed or erased */ + char *scratch; /* address of work area or NULL */ + int protect; /* protection to apply after programming/erasing is done */ + unsigned options; /* see the table below */ +} SPIFIopers; + + +/* bits in options operands (MODE3, RCVCLK, and FULLCLK + have the same relationship as in the Control register) */ +#define S_MODE3 1 +#define S_MODE0 0 +#define S_MINIMAL 2 +#define S_MAXIMAL 0 +#define S_FORCE_ERASE 4 +#define S_ERASE_NOT_REQD 8 +#define S_CALLER_ERASE 8 +#define S_ERASE_AS_REQD 0 +#define S_VERIFY_PROG 0x10 +#define S_VERIFY_ERASE 0x20 +#define S_NO_VERIFY 0 +#define S_RCVCLK 0x80 +#define S_INTCLK 0 +#define S_FULLCLK 0x40 +#define S_HALFCLK 0 +#define S_DUAL 0x100 +#define S_CALLER_PROT 0x200 +#define S_DRIVER_PROT 0 + +/* the length of a standard program command is 256 on all devices */ +#define PROG_SIZE 256 + +/* interface to ROM API */ +typedef struct { + int (*spifi_init) (SPIFIobj *obj, unsigned csHigh, unsigned options, + unsigned mhz); + int (*spifi_program) (SPIFIobj *obj, char *source, SPIFIopers *opers); + int (*spifi_erase) (SPIFIobj *obj, SPIFIopers *opers); + /* mode switching */ + void (*cancel_mem_mode)(SPIFIobj *obj); + void (*set_mem_mode) (SPIFIobj *obj); + + /* mid level functions */ + int (*checkAd) (SPIFIobj *obj, SPIFIopers *opers); + int (*setProt) (SPIFIobj *obj, SPIFIopers *opers, char *change, + char *saveProt); + int (*check_block) (SPIFIobj *obj, char *source, SPIFIopers *opers, + unsigned check_program); + int (*send_erase_cmd) (SPIFIobj *obj, unsigned char op, unsigned addr); + unsigned (*ck_erase) (SPIFIobj *obj, unsigned *addr, unsigned length); + int (*prog_block) (SPIFIobj *obj, char *source, SPIFIopers *opers, + unsigned *left_in_page); + unsigned (*ck_prog) (SPIFIobj *obj, char *source, char *dest, unsigned length); + + /* low level functions */ + void(*setSize) (SPIFIobj *obj, int value); + int (*setDev) (SPIFIobj *obj, unsigned opts, unsigned mem_cmd, + unsigned prog_cmd); + unsigned (*cmd) (uint8_t op, uint8_t addrLen, uint8_t intLen, unsigned short len); + unsigned (*readAd) (SPIFIobj *obj, unsigned cmd, unsigned addr); + void (*send04) (SPIFIobj *obj, uint8_t op, uint8_t len, unsigned value); + void (*wren_sendAd) (SPIFIobj *obj, unsigned cmd, unsigned addr, unsigned value); + int (*write_stat) (SPIFIobj *obj, uint8_t len, uint16_t value); + int (*wait_busy) (SPIFIobj *obj, uint8_t prog_or_erase); +} SPIFI_RTNS; + +//#define define_spifi_romPtr(name) const SPIFI_RTNS *name=*((SPIFI_RTNS **)SPIFI_ROM_PTR) + +/* example of using this interface: +#include "spifi_rom_api.h" +#define CSHIGH 4 +#define SPIFI_MHZ 80 +#define source_data_ad (char *)1234 + + int rc; + SPIFIopers opers; + + define_spifi_romPtr(spifi); + SPIFIobj *obj = malloc(sizeof(SPIFIobj)); + if (!obj) { can't allocate memory } + + rc = spifi->spifi_init (obj, CSHIGH, S_FULLCLK+S_RCVCLK, SPIFI_MHZ); + if (rc) { investigate init error rc } + printf ("the serial flash contains %d bytes\n", obj->devSize); + + opers.dest = where_to_program; + opers.length = how_many_bytes; + opers.scratch = NULL; // unprogrammed data is not saved/restored + opers.protect = -1; // save & restore protection + opers.options = S_VERIFY_PROG; + + rc = spifi->spifi_program (obj, source_data_ad, &opers); + if (rc) { investigate program error rc } +*/ + +/* these are for normal users, including boot code */ +int spifi_init (SPIFIobj *obj, unsigned csHigh, unsigned options, unsigned mhz); +int spifi_program (SPIFIobj *obj, char *source, SPIFIopers *opers); +int spifi_erase (SPIFIobj *obj, SPIFIopers *opers); + +/* these are used by the manufacturer-specific init functions */ +void setSize (SPIFIobj *obj, int value); +int setDev (SPIFIobj *obj, unsigned opts, unsigned mem_cmd, unsigned prog_cmd); +unsigned read04(SPIFIobj *obj, uint8_t op, uint8_t len); +int write_stat (SPIFIobj *obj, uint8_t len, uint16_t value); +void setProtEnts(SPIFIobj *obj, const protEnt *p, unsigned protTabLen); + +#endif + + diff --git a/libraries/tests/mbed/spifi2/splashImage01.c b/libraries/tests/mbed/spifi2/splashImage01.c new file mode 100644 index 0000000000..a02f6be708 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage01.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image1[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image1_sz = sizeof(splash_image1); diff --git a/libraries/tests/mbed/spifi2/splashImage02.c b/libraries/tests/mbed/spifi2/splashImage02.c new file mode 100644 index 0000000000..2cae88c08b --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage02.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image2[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image2_sz = sizeof(splash_image2); diff --git a/libraries/tests/mbed/spifi2/splashImage03.c b/libraries/tests/mbed/spifi2/splashImage03.c new file mode 100644 index 0000000000..fa41a6c5cb --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage03.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image3[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image3_sz = sizeof(splash_image3); diff --git a/libraries/tests/mbed/spifi2/splashImage04.c b/libraries/tests/mbed/spifi2/splashImage04.c new file mode 100644 index 0000000000..13d2f51530 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage04.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image4[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image4_sz = sizeof(splash_image4); diff --git a/libraries/tests/mbed/spifi2/splashImage05.c b/libraries/tests/mbed/spifi2/splashImage05.c new file mode 100644 index 0000000000..e29a519a83 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage05.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image5[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image5_sz = sizeof(splash_image5); diff --git a/libraries/tests/mbed/spifi2/splashImage06.c b/libraries/tests/mbed/spifi2/splashImage06.c new file mode 100644 index 0000000000..15ad5450da --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage06.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image6[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image6_sz = sizeof(splash_image6); diff --git a/libraries/tests/mbed/spifi2/splashImage07.c b/libraries/tests/mbed/spifi2/splashImage07.c new file mode 100644 index 0000000000..351ded9d63 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage07.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image7[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image7_sz = sizeof(splash_image7); diff --git a/libraries/tests/mbed/spifi2/splashImage08.c b/libraries/tests/mbed/spifi2/splashImage08.c new file mode 100644 index 0000000000..9403cf86f1 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage08.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image8[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image8_sz = sizeof(splash_image8); diff --git a/libraries/tests/mbed/spifi2/splashImage09.c b/libraries/tests/mbed/spifi2/splashImage09.c new file mode 100644 index 0000000000..dc5fa9bd74 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage09.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image9[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image9_sz = sizeof(splash_image9); diff --git a/libraries/tests/mbed/spifi2/splashImage10.c b/libraries/tests/mbed/spifi2/splashImage10.c new file mode 100644 index 0000000000..02c2c42e28 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage10.c @@ -0,0 +1,2167 @@ +const unsigned char splash_image10[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + +int splash_image10_sz = sizeof(splash_image10); diff --git a/libraries/tests/mbed/spifi2/splashImage11.c b/libraries/tests/mbed/spifi2/splashImage11.c new file mode 100644 index 0000000000..e4db7de19b --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage11.c @@ -0,0 +1,2168 @@ +const unsigned char splash_image11[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + + +int splash_image11_sz = sizeof(splash_image11); diff --git a/libraries/tests/mbed/spifi2/splashImage12.c b/libraries/tests/mbed/spifi2/splashImage12.c new file mode 100644 index 0000000000..7f4f87d41f --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage12.c @@ -0,0 +1,2168 @@ +const unsigned char splash_image12[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + + +int splash_image12_sz = sizeof(splash_image12); diff --git a/libraries/tests/mbed/spifi2/splashImage13.c b/libraries/tests/mbed/spifi2/splashImage13.c new file mode 100644 index 0000000000..454dd3dba0 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage13.c @@ -0,0 +1,2168 @@ +const unsigned char splash_image13[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + + +int splash_image13_sz = sizeof(splash_image13); diff --git a/libraries/tests/mbed/spifi2/splashImage14.c b/libraries/tests/mbed/spifi2/splashImage14.c new file mode 100644 index 0000000000..6bff9d8b6b --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage14.c @@ -0,0 +1,2168 @@ +const unsigned char splash_image14[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + + +int splash_image14_sz = sizeof(splash_image14); diff --git a/libraries/tests/mbed/spifi2/splashImage15.c b/libraries/tests/mbed/spifi2/splashImage15.c new file mode 100644 index 0000000000..54b3197030 --- /dev/null +++ b/libraries/tests/mbed/spifi2/splashImage15.c @@ -0,0 +1,2168 @@ +const unsigned char splash_image15[] = { +137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82, +0,0,1,9,0,0,1,17,8,6,0,0,0,104,237,82, +146,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0, +0,4,103,65,77,65,0,0,177,143,11,252,97,5,0,0, +0,9,112,72,89,115,0,0,14,196,0,0,14,196,1,149, +43,14,27,0,0,134,208,73,68,65,84,120,94,237,221,7, +184,125,85,121,239,123,243,220,251,220,123,110,203,201,73,206, +57,73,78,154,233,150,104,236,5,107,140,198,36,38,209,88, +98,52,246,2,246,174,81,65,69,65,64,64,197,134,5,68, +122,81,64,65,138,34,74,17,17,5,1,27,210,165,168,32, +88,176,131,162,243,206,207,220,235,183,247,88,99,207,181,214, +222,255,255,159,93,254,123,190,207,243,62,179,141,57,231,152, +99,141,247,59,222,241,142,49,231,186,85,51,200,32,131,12, +50,69,6,72,12,50,200,32,83,101,1,18,151,236,213,108, +115,171,91,53,183,234,209,109,79,24,165,89,170,116,215,218, +182,89,238,105,139,229,132,102,219,91,109,211,236,117,201,104, +115,76,166,29,155,38,179,206,187,164,217,107,155,217,207,124, +194,182,121,62,215,155,253,172,11,233,215,170,148,229,178,180, +103,90,235,178,220,50,159,79,191,197,234,239,214,33,21,36, +182,80,193,172,103,72,4,150,211,40,177,220,231,91,23,149, +110,43,131,196,230,252,70,235,226,247,90,57,25,32,81,201, +37,123,109,211,122,17,109,154,109,246,106,125,138,9,178,57, +21,112,205,74,89,46,214,215,185,145,108,206,111,180,46,126, +175,149,147,165,67,98,116,124,175,214,136,210,13,217,70,141, +58,97,219,241,237,222,180,149,81,118,199,231,206,89,116,108, +236,122,123,141,27,244,180,99,155,122,205,49,209,213,112,44, +203,236,110,175,13,26,197,117,230,84,121,149,6,53,215,85, +89,184,151,11,56,94,166,239,75,83,201,232,126,39,244,149, +223,88,94,70,247,29,123,246,226,55,236,246,79,217,158,88, +46,121,166,9,229,48,218,236,100,180,111,211,242,90,164,157, +86,46,147,206,25,187,254,220,241,57,7,112,185,101,94,165, +239,238,215,46,23,93,119,36,19,159,161,144,137,121,27,201, +132,107,156,176,109,153,110,46,95,227,219,163,114,92,65,89, +38,36,218,7,74,142,243,240,217,238,142,143,30,182,55,109, +174,93,61,248,162,99,227,5,182,80,128,179,142,109,202,53, +43,145,239,145,17,140,253,88,121,30,231,181,198,180,215,9, +182,203,235,207,173,243,66,22,186,41,197,125,187,243,103,164, +41,101,90,249,245,230,101,194,179,23,247,237,100,108,123,90, +185,140,63,211,188,81,185,246,252,141,70,178,156,188,94,226, +186,253,121,157,92,46,147,207,89,184,254,232,184,99,163,223, +111,238,216,172,107,23,82,150,205,180,235,78,203,79,41,155, +120,141,69,229,221,166,155,90,254,43,32,75,8,92,150,5, +87,22,110,93,216,197,246,162,180,115,36,159,47,172,177,7, +157,114,172,188,206,114,142,45,245,154,149,248,129,230,147,150, +231,213,231,116,219,169,24,158,123,225,7,158,92,97,102,164, +41,101,81,30,139,231,169,142,141,27,0,169,211,22,247,42, +183,167,150,203,194,51,149,233,198,202,39,178,140,188,78,251, +157,38,150,203,148,115,230,174,63,90,39,229,243,21,235,75, +47,243,242,220,226,186,237,222,190,242,152,147,34,63,165,76, +203,219,172,103,26,193,68,190,183,105,61,185,164,29,107,184, +86,80,150,221,221,88,56,94,67,194,131,142,182,123,174,229, +1,17,113,238,7,91,12,163,249,99,99,165,176,112,143,153, +199,54,225,154,227,34,255,69,158,203,103,40,126,184,78,198, +158,175,168,64,163,31,123,62,15,61,173,218,196,52,165,212, +247,107,37,229,87,31,155,223,95,200,88,218,242,119,40,182, +167,151,75,249,76,237,122,119,191,226,247,45,101,25,121,157, +246,59,181,71,123,203,101,234,57,245,243,149,249,30,59,182, +196,50,239,61,151,44,92,119,250,51,20,178,201,215,144,215, +185,116,202,113,219,214,3,155,187,206,132,242,95,1,89,29, +72,76,192,225,226,99,11,247,88,222,177,5,153,118,222,152, +116,121,174,127,184,226,121,202,138,53,246,124,11,63,254,152, +140,174,215,221,186,167,60,58,41,211,148,82,223,175,149,73, +134,55,191,191,144,177,180,229,125,139,237,233,229,50,254,76, +39,108,107,127,187,111,146,113,45,49,175,211,126,167,49,233, +242,57,87,46,83,207,169,159,175,204,247,162,99,35,41,174, +61,38,101,250,41,215,93,222,51,108,218,53,230,203,187,75, +63,178,43,221,202,190,242,95,1,185,5,33,81,31,27,253, +48,92,173,73,15,91,31,43,175,179,156,99,165,76,59,175, +16,63,220,84,99,91,116,141,148,69,81,49,43,153,104,172, +133,244,25,249,226,244,69,249,85,121,89,92,225,170,180,197, +117,186,180,217,158,90,46,227,207,228,188,174,69,235,171,216, +203,200,235,162,123,78,145,249,114,153,118,206,162,123,23,249, +94,116,108,65,102,150,249,180,235,46,245,25,54,231,26,237, +241,109,182,109,117,148,70,126,183,109,183,151,4,167,91,64, +110,65,72,180,45,113,30,74,161,204,159,235,188,81,37,34, +93,218,178,114,46,28,83,56,227,193,180,165,29,91,250,53, +35,69,222,11,153,55,64,215,43,127,212,177,178,112,253,185, +245,113,131,237,55,214,137,105,74,233,210,23,21,185,44,191, +58,47,221,253,139,107,76,40,235,57,64,120,246,197,199,186, +173,69,229,153,116,173,140,242,179,40,159,100,115,242,218,157, +59,119,207,201,229,50,249,156,185,245,34,159,93,218,226,222, +163,245,165,151,249,226,115,231,164,44,143,41,249,41,101,115, +174,209,109,183,191,199,40,65,126,187,69,121,94,33,89,66, +224,114,84,1,122,31,186,44,156,194,208,70,105,151,54,4, +90,61,124,113,108,218,48,231,244,33,208,101,92,147,56,222, +71,246,84,248,69,199,231,42,218,220,115,149,63,126,246,231, +94,243,153,43,210,79,74,83,72,151,223,109,219,214,35,233, +170,231,172,243,90,60,223,162,178,238,158,33,251,203,188,182, +82,156,215,63,4,26,169,183,11,217,172,188,150,191,211,148, +114,153,116,206,232,222,253,249,92,102,153,151,233,199,70,175, +200,228,114,27,203,79,41,83,243,214,202,212,107,204,229,101, +62,159,83,175,53,105,125,203,201,2,36,6,89,59,178,168, +82,172,182,180,149,175,15,162,100,205,229,117,144,45,45,3, +36,214,162,172,53,195,107,243,179,109,111,235,219,202,0,137, +173,94,6,72,172,69,89,75,134,215,117,87,138,46,68,45, +3,36,182,122,25,32,49,200,32,131,76,149,1,18,131,12, +50,200,84,25,32,49,200,32,131,76,149,1,18,131,12,50, +200,84,25,32,49,200,32,131,76,149,1,18,131,12,50,200, +84,41,32,97,182,214,173,138,233,171,149,116,67,93,11,51, +196,162,139,102,175,213,233,102,93,111,236,248,40,15,157,86, +195,106,213,117,199,78,155,118,108,145,148,247,160,83,134,247, +122,101,52,51,111,210,228,162,49,153,81,166,243,179,252,162, +139,159,121,226,252,132,165,200,196,243,235,50,152,112,255,91, +88,230,166,27,47,183,252,151,35,179,202,127,121,50,49,191, +85,253,43,117,243,111,189,196,58,180,164,250,184,88,198,159, +105,116,175,234,90,155,13,137,177,66,155,159,2,92,105,207, +53,231,222,21,40,143,213,6,83,30,235,171,212,169,208,211, +142,85,178,69,126,204,45,5,137,158,231,237,116,148,247,81, +94,251,167,16,47,65,166,158,223,87,102,35,221,196,202,182, +41,50,64,98,41,50,235,25,214,32,36,202,74,55,119,131, +236,75,165,47,11,49,149,177,42,216,178,80,115,191,236,27, +109,143,189,112,52,130,79,238,157,251,118,73,167,29,27,147, +5,163,28,51,156,121,176,221,18,173,232,148,50,173,158,151, +140,229,189,167,188,151,37,83,207,239,203,87,202,103,229,188, +137,241,10,122,75,200,140,58,189,76,153,152,223,205,253,173, +166,202,172,103,88,227,144,24,219,55,161,160,100,162,222,215, +1,96,155,118,127,121,191,145,177,206,223,190,220,174,174,61, +246,96,211,142,149,50,74,215,247,124,115,231,228,222,139,203, +97,14,88,49,158,190,31,101,116,206,72,23,78,45,175,181, +0,169,110,123,66,121,205,201,248,245,230,239,149,103,24,233, +194,185,185,207,182,227,231,69,23,85,160,197,207,216,255,92, +69,158,251,174,179,228,252,84,149,144,182,215,154,251,46,102, +207,111,53,77,230,203,205,11,105,11,215,186,164,184,246,226, +124,236,85,60,71,125,191,34,79,173,142,21,201,82,243,59, +245,183,36,115,215,113,60,117,109,209,117,102,150,229,164,103, +88,78,125,36,211,158,105,116,173,241,19,182,160,39,81,27, +249,36,233,210,201,212,248,253,22,25,119,117,189,249,238,73, +180,184,209,180,99,243,50,45,127,163,99,115,207,182,184,28, +166,67,98,252,7,153,211,164,93,184,86,242,184,232,199,239, +180,170,48,245,53,187,123,85,6,219,105,117,159,73,58,86, +129,200,228,244,101,249,44,42,87,58,127,173,229,228,199,254, +190,244,180,126,246,25,82,25,83,191,230,154,147,158,179,250, +45,71,15,61,94,7,151,145,223,137,121,26,47,143,238,83, +116,229,241,77,42,203,250,248,232,220,250,90,155,244,76,227, +231,70,182,88,76,34,192,152,116,250,156,148,153,24,191,223, +178,33,81,84,252,105,199,230,101,26,36,198,0,184,184,28, +166,66,98,12,48,245,118,245,3,215,55,31,165,45,117,254, +58,53,148,83,254,189,229,149,251,36,143,173,212,231,143,73, +149,175,82,147,199,220,111,81,57,143,238,185,220,252,228,89, +231,203,32,105,138,223,124,41,82,231,43,215,29,109,143,215, +195,197,247,24,59,62,58,119,62,75,101,153,45,39,191,201, +211,34,173,13,189,170,67,217,94,82,89,78,120,134,92,171, +42,143,77,125,38,191,113,93,103,54,27,18,11,247,171,50, +215,39,93,154,234,225,71,39,140,23,76,43,229,245,70,235, +201,124,223,15,221,123,172,148,105,249,27,187,198,226,114,152, +6,137,69,249,30,147,252,8,35,237,189,121,174,191,160,93, +178,242,199,45,101,236,119,232,47,203,78,38,157,223,73,255, +111,157,124,116,187,251,202,171,42,235,78,150,154,159,158,235, +141,65,167,144,252,134,139,238,69,234,231,170,243,52,118,159, +233,229,82,222,103,76,165,95,70,126,23,229,105,145,44,206, +199,120,157,26,201,82,203,114,236,126,125,245,49,215,40,116, +137,207,100,187,126,142,205,139,73,148,50,225,184,76,103,223, +92,134,122,180,239,1,138,237,69,134,88,220,107,218,177,49, +25,237,159,127,190,110,123,238,71,26,47,168,89,63,104,255, +143,82,36,47,100,116,173,246,220,185,15,240,20,249,236,147, +209,51,119,121,175,159,35,249,31,211,201,121,94,116,254,152, +76,248,173,203,251,247,84,168,190,252,45,228,133,78,201,79, +207,245,234,10,26,41,43,250,162,252,215,207,85,95,119,108, +123,122,185,44,170,59,165,44,35,191,139,242,180,72,22,231, +99,172,78,45,183,44,199,238,183,140,70,107,9,207,228,252, +242,56,217,114,144,72,102,203,12,206,63,252,220,190,185,12, +245,168,123,38,237,232,254,99,153,31,61,92,238,157,74,212, +109,79,59,54,38,201,223,232,88,247,97,215,209,253,105,220, +181,148,67,182,231,159,161,31,18,185,255,124,185,141,229,167, +44,211,170,124,171,124,147,177,188,87,229,93,255,248,227,219, +61,191,221,212,223,171,39,125,43,185,127,183,59,207,61,95, +46,178,220,110,143,238,185,169,249,89,216,55,74,83,92,99, +73,82,63,215,168,28,23,46,91,110,47,190,199,216,51,214, +231,150,215,94,78,126,235,60,45,146,197,229,81,66,98,73, +101,57,233,25,38,212,199,205,126,166,66,22,67,98,145,142, +46,48,179,32,90,25,101,112,145,22,133,179,32,117,193,45, +24,241,226,243,250,242,22,163,157,118,172,146,20,82,143,46, +60,215,226,124,204,5,156,38,64,162,47,223,245,15,60,122, +142,254,31,191,214,241,242,238,246,185,87,111,217,246,223,167, +147,250,252,209,238,57,153,116,111,90,61,103,125,188,170,140, +227,58,37,63,147,174,55,127,206,18,165,174,135,181,81,140, +109,79,122,206,170,238,140,158,105,238,247,153,241,252,125,249, +157,89,175,22,151,71,9,137,37,149,229,34,157,84,31,55, +231,153,234,107,205,201,150,133,4,169,11,108,172,162,148,178, +184,224,198,243,144,7,27,201,216,117,171,31,106,218,177,69, +50,233,57,91,77,94,138,235,121,222,222,130,30,43,200,241, +107,46,60,82,253,140,163,237,250,7,157,215,241,188,47,120, +94,238,61,254,3,207,253,31,195,228,74,72,198,207,47,165, +190,111,180,46,187,170,82,141,61,243,242,243,51,118,223,246, +90,155,55,4,58,58,105,41,144,88,242,16,232,148,99,211, +242,91,215,249,66,39,149,199,24,36,150,84,150,155,58,4, +186,156,103,234,187,214,24,36,54,178,204,21,206,162,58,61, +200,32,131,12,144,24,100,144,65,166,203,0,137,65,6,25, +100,170,12,144,24,100,144,65,166,202,0,137,65,6,25,100, +170,12,144,24,100,144,65,166,202,0,137,65,6,25,100,170, +12,144,24,100,144,65,166,202,0,137,65,6,25,100,170,12, +144,24,100,144,65,166,202,0,137,65,6,25,100,170,12,144, +24,100,144,65,166,202,0,137,65,6,25,100,170,12,144,24, +100,144,65,166,202,0,137,65,6,25,100,170,12,144,24,100, +144,65,166,202,0,137,13,40,191,250,213,175,70,107,115,98, +123,210,190,236,159,182,221,167,191,252,229,47,59,205,250,205, +55,223,220,252,226,23,191,104,110,186,233,166,110,159,245,28, +179,78,146,254,231,63,255,121,183,188,241,198,27,155,159,252, +228,39,205,15,126,240,131,230,250,235,175,111,174,187,238,186, +230,234,171,175,110,206,59,239,188,230,35,31,249,72,179,215, +94,123,53,207,126,246,179,155,221,118,219,173,75,231,60,226, +94,131,108,57,25,32,177,1,133,1,150,98,59,90,26,119, +148,209,49,192,210,176,25,59,35,206,190,104,125,126,182,75, +141,17,231,26,12,28,4,190,253,237,111,55,87,92,113,69, +115,193,5,23,52,95,252,226,23,155,143,126,244,163,205,1, +7,28,208,236,178,203,46,205,211,158,246,180,230,159,254,233, +159,154,127,252,199,127,108,30,244,160,7,53,255,252,207,255, +220,252,203,191,252,75,243,175,255,250,175,205,51,159,249,204, +230,180,211,78,235,174,235,250,131,108,89,25,32,177,129,37, +134,92,174,103,59,198,92,26,94,182,147,46,70,95,158,75, +35,214,165,7,18,48,248,209,143,126,212,193,224,194,11,47, +236,32,112,230,153,103,54,159,252,228,39,155,195,15,63,188, +121,235,91,223,218,188,246,181,175,109,158,245,172,103,117,0, +120,240,131,31,60,15,5,203,135,61,236,97,205,35,31,249, +200,230,81,143,122,84,243,216,199,62,182,249,183,127,251,183, +230,17,143,120,68,243,232,71,63,186,75,255,230,55,191,185, +187,190,123,13,160,216,178,50,64,98,3,75,105,208,145,210, +208,179,94,3,35,235,245,190,44,121,6,215,92,115,77,243, +165,47,125,169,57,253,244,211,155,19,78,56,161,249,208,135, +62,212,236,191,255,254,205,219,222,246,182,230,85,175,122,85, +243,244,167,63,189,249,247,127,255,247,206,248,121,4,12,158, +6,4,143,121,204,99,154,135,63,252,225,29,4,120,10,47, +126,241,139,155,255,248,143,255,232,60,135,55,189,233,77,205, +126,251,237,215,193,226,113,143,123,92,119,222,11,94,240,130, +14,60,63,251,217,207,6,72,108,97,25,32,49,200,188,4, +10,1,3,205,118,32,80,30,3,3,221,3,30,193,241,199, +31,223,124,240,131,31,108,246,217,103,159,102,207,61,247,108, +118,220,113,199,230,165,47,125,105,179,237,182,219,118,48,96, +220,140,63,48,224,29,48,240,199,63,254,241,157,87,240,196, +39,62,177,219,6,133,87,190,242,149,29,80,236,119,252,45, +111,121,75,231,113,0,1,207,130,215,240,133,47,124,97,30, +52,174,11,46,31,248,192,7,230,189,9,249,28,100,203,200, +0,137,13,42,49,254,136,245,184,234,57,70,109,11,28,94, +121,229,149,205,89,103,157,213,28,117,212,81,205,59,223,249, +206,230,13,111,120,67,243,234,87,191,186,3,193,115,158,243, +156,46,102,160,165,103,176,128,192,19,96,192,140,62,96,176, +143,209,191,236,101,47,107,94,247,186,215,117,158,0,56,232, +106,28,123,236,177,205,43,94,241,138,206,179,120,251,219,223, +222,5,40,121,16,96,2,52,239,121,207,123,186,32,37,239, +194,61,172,187,182,245,167,60,229,41,29,36,158,247,188,231, +53,95,254,242,151,187,231,24,100,203,201,0,137,13,42,0, +192,59,176,36,214,127,250,211,159,118,158,193,167,63,253,233, +174,37,127,253,235,95,223,188,252,229,47,111,158,255,252,231, +55,207,120,198,51,154,167,62,245,169,205,19,158,240,132,121, +195,183,212,218,199,88,65,1,40,226,17,128,0,120,24,125, +112,61,70,47,157,174,194,37,151,92,50,111,244,224,192,19, +225,65,216,22,99,224,137,184,14,176,232,142,184,246,147,158, +244,164,238,126,212,181,62,241,137,79,116,113,12,247,116,92, +90,176,17,255,24,100,203,201,0,137,85,150,24,107,185,110, +89,26,111,246,199,205,79,122,203,50,125,153,46,195,136,70, +16,226,33,80,251,44,25,233,199,62,246,177,206,96,181,234, +0,192,128,181,236,1,0,35,231,21,4,6,233,26,216,199, +152,159,252,228,39,119,233,197,11,116,5,28,7,145,15,127, +248,195,93,76,194,245,108,243,12,206,63,255,252,206,160,239, +127,255,251,119,70,253,238,119,191,187,187,39,227,230,45,48, +240,120,22,238,1,46,98,15,96,96,123,143,61,246,232,242, +172,171,1,26,186,26,151,93,118,89,243,254,247,191,191,187, +135,235,184,223,118,219,109,215,129,206,115,18,203,120,22,214, +179,127,144,165,203,0,137,53,32,169,188,81,6,206,184,99, +216,233,99,199,200,29,163,214,65,33,67,137,63,254,241,143, +187,62,249,13,55,220,208,124,247,187,223,109,46,191,252,242, +230,156,115,206,233,140,86,191,158,91,206,32,31,248,192,7, +54,15,125,232,67,187,245,104,90,106,198,207,232,24,109,64, +193,112,157,107,159,99,135,28,114,72,115,208,65,7,117,70, +9,12,130,146,103,159,125,118,7,139,191,249,155,191,105,182, +223,126,251,46,96,233,220,135,60,228,33,205,223,255,253,223, +119,70,13,42,185,142,243,120,39,89,127,205,107,94,211,156, +114,202,41,221,210,62,198,110,36,4,196,116,37,228,239,93, +239,122,87,55,28,10,50,15,120,192,3,230,61,13,208,2, +21,121,147,86,160,84,188,68,153,40,179,148,213,32,155,38, +3,36,214,128,168,200,153,135,16,79,32,80,176,79,55,192, +82,165,207,80,226,181,215,94,219,92,116,209,69,157,234,135, +235,34,196,43,120,238,115,159,219,25,240,125,238,115,159,206, +43,136,161,106,145,41,227,5,0,134,199,208,24,110,186,8, +12,89,140,224,37,47,121,73,7,12,93,2,215,62,238,184, +227,230,251,254,160,240,153,207,124,166,51,74,192,1,17,221, +3,199,93,95,112,145,33,139,17,136,39,128,207,139,94,244, +162,110,100,195,62,121,219,97,135,29,186,121,17,239,120,199, +59,186,237,23,190,240,133,221,53,5,61,93,7,108,164,73, +122,121,3,3,247,164,242,11,46,206,231,113,184,175,231,113, +223,255,252,207,255,108,190,247,189,239,205,123,83,202,145,100, +125,0,198,242,100,128,196,42,75,89,113,85,234,116,33,120, +5,223,250,214,183,154,175,127,253,235,157,171,126,198,25,103, +116,45,237,209,71,31,221,185,216,25,70,228,122,115,225,205, +43,0,131,76,48,98,52,214,181,180,140,204,54,67,99,68, +206,149,134,161,1,202,145,71,30,217,236,190,251,238,29,80, +28,23,160,4,2,219,224,162,245,126,239,123,223,219,25,47, +40,136,25,48,234,196,8,128,67,240,82,76,65,23,130,241, +238,188,243,206,205,103,63,251,217,174,27,194,120,25,242,87, +190,242,149,174,219,32,63,2,148,60,28,215,113,207,191,251, +187,191,235,242,227,153,114,13,233,4,71,121,38,224,5,88, +96,117,232,161,135,118,121,241,12,2,169,39,157,116,82,119, +12,172,0,68,254,60,131,114,85,150,202,182,212,65,150,39, +3,36,86,89,84,218,128,1,36,120,10,198,251,13,231,237, +186,235,174,93,171,200,45,215,37,208,69,184,223,253,238,215, +45,255,225,31,254,161,107,177,25,4,101,168,148,161,48,74, +6,196,19,96,132,60,3,70,197,224,119,218,105,167,206,88, +3,10,70,206,240,196,8,164,7,27,129,196,204,75,96,204, +140,149,177,139,15,48,96,231,128,10,112,216,150,63,163,15, +12,19,40,156,195,104,79,61,245,212,238,254,60,23,215,112, +140,103,193,224,229,93,158,92,87,90,198,109,34,149,0,167, +231,118,93,199,121,49,98,39,186,19,174,177,239,190,251,54, +239,123,223,251,230,71,62,92,11,160,156,15,44,158,31,24, +129,69,55,35,224,45,227,18,131,44,79,6,72,172,1,9, +32,168,138,205,80,180,172,127,251,183,127,219,25,54,143,128, +65,88,106,221,77,75,230,21,48,154,140,62,48,112,45,49, +195,21,225,103,84,254,13,157,23,112,238,185,231,118,45,178, +107,1,138,185,12,140,211,249,174,197,192,24,36,227,74,76, +2,76,24,181,117,6,105,122,52,112,137,21,72,195,80,93, +215,49,219,60,0,93,5,80,0,17,160,144,150,17,83,192, +1,3,195,167,32,228,60,198,45,118,113,240,193,7,119,105, +128,129,103,96,91,126,228,85,90,93,25,231,131,26,0,2, +129,180,60,25,219,233,202,196,187,113,92,158,190,250,213,175, +118,222,4,85,182,0,49,116,55,150,47,3,36,86,89,226, +73,168,196,98,13,2,110,123,239,189,119,23,152,3,2,80, +136,87,160,21,62,236,176,195,58,99,176,159,231,112,226,137, +39,118,129,58,6,126,239,123,223,187,115,231,185,223,140,138, +87,192,235,96,104,160,225,122,60,16,134,175,155,145,126,61, +96,232,114,188,241,141,111,236,182,25,172,201,74,134,37,121, +1,90,125,243,34,116,115,228,129,241,2,150,248,135,107,184, +23,224,128,2,104,1,128,123,104,205,229,5,168,24,179,249, +17,188,24,158,77,224,2,26,158,215,53,228,15,28,120,20, +32,192,216,1,199,243,138,145,216,231,186,210,131,139,103,144, +95,35,30,94,250,74,80,19,40,228,7,56,148,39,47,34, +112,24,0,177,124,25,32,177,138,82,2,66,55,67,12,66, +87,67,139,172,91,1,14,60,8,70,105,201,32,24,47,215, +158,17,220,238,118,183,235,186,13,250,255,182,121,30,160,192, +72,24,156,244,206,101,96,134,31,25,24,176,24,65,240,18, +149,150,29,92,116,23,116,13,14,60,240,192,238,156,123,222, +243,158,29,88,0,199,181,24,51,40,48,108,70,8,56,210, +1,130,192,33,47,194,181,117,89,4,82,193,1,20,24,181, +46,136,252,62,246,177,255,214,122,50,127,215,122,39,175,104, +33,176,93,123,141,167,182,215,122,92,155,239,71,118,247,160, +0,97,201,232,117,43,156,111,31,207,194,40,141,121,27,242, +1,88,202,225,249,207,23,212,252,215,22,152,15,111,94,250, +210,151,180,249,51,3,243,177,237,53,120,70,79,234,238,113, +201,37,23,181,144,48,12,108,180,200,40,209,240,134,232,114, +101,128,196,42,74,32,161,165,243,206,193,85,87,93,213,189, +205,168,79,174,171,192,91,208,146,51,12,0,0,5,70,195, +72,25,59,112,128,137,52,140,157,242,2,24,24,117,30,163, +214,53,240,30,133,235,10,110,74,247,169,79,125,170,107,217, +157,235,26,160,194,19,160,137,105,100,216,210,18,32,4,51, +13,127,50,94,10,42,2,171,0,196,219,144,150,65,235,166, +0,143,60,7,32,219,109,247,204,118,157,39,240,248,214,3, +120,118,107,224,207,237,140,249,101,47,123,105,247,218,183,184, +3,143,193,243,9,206,26,198,229,181,128,145,123,9,124,58, +206,115,209,109,178,124,220,227,30,219,166,127,66,7,27,215, +126,209,139,94,208,45,183,221,214,196,175,39,119,215,223,115, +207,221,59,48,220,124,179,216,132,46,7,72,12,222,196,114, +100,128,196,42,10,72,36,2,111,152,19,36,24,11,183,217, +240,37,8,104,197,1,129,135,96,157,33,50,22,198,67,117, +21,0,224,136,35,142,232,160,32,141,119,40,188,105,201,187, +48,242,1,12,186,6,12,221,62,80,16,51,224,214,107,185, +93,135,183,161,5,23,223,112,15,199,76,86,226,9,72,3, +34,96,195,205,231,41,240,54,128,140,39,35,45,112,233,202, +0,144,24,1,3,7,40,121,61,224,128,253,219,214,127,199, +22,28,79,107,239,243,162,54,111,23,180,221,131,47,116,70, +204,11,208,125,0,10,112,1,27,249,205,208,39,24,88,234, +122,0,15,117,109,215,61,248,224,3,219,178,218,185,131,154, +115,141,2,25,49,145,6,108,164,3,24,207,241,171,95,205, +197,38,6,89,190,12,144,88,69,41,33,193,147,48,75,241, +227,31,255,120,215,221,16,80,20,188,76,76,66,139,207,8, +117,3,76,146,210,122,107,81,65,128,145,9,118,50,168,123, +220,227,30,221,126,30,1,227,118,46,200,48,26,125,120,70, +3,10,140,219,75,83,160,192,0,141,102,152,167,0,4,206, +189,239,125,239,219,193,138,103,224,28,247,6,42,215,1,27, +215,2,1,199,228,197,59,28,96,161,75,96,232,211,228,45, +94,4,99,254,220,231,206,106,33,112,116,215,202,63,236,97, +255,208,166,223,161,245,12,118,109,143,61,191,125,174,199,116, +215,150,150,10,102,186,63,67,55,157,59,163,42,60,9,19, +182,128,140,241,131,210,101,151,93,218,28,117,212,145,93,158, +128,4,40,148,207,211,159,254,140,246,156,109,71,30,204,118, +93,217,252,236,103,55,182,229,61,87,230,131,44,79,6,72, +172,162,4,18,98,18,32,241,157,239,124,167,139,13,232,231, +243,8,24,170,22,156,135,192,208,181,220,246,25,126,100,212, +246,129,73,140,12,36,24,188,214,92,215,130,247,160,149,5, +11,221,15,239,58,136,35,240,80,24,183,126,189,96,165,235, +152,188,164,251,193,200,24,165,123,106,213,25,57,32,48,54, +251,25,174,24,3,111,193,53,228,69,48,210,126,247,146,15, +1,79,224,2,13,249,179,111,251,237,95,213,2,224,89,109, +154,127,107,243,103,186,246,227,91,176,188,184,121,246,179,183, +235,174,239,62,98,36,32,1,98,226,14,223,248,198,55,186, +235,6,76,188,37,240,145,23,192,178,116,12,12,30,247,184, +199,183,64,124,84,11,151,109,219,231,16,247,120,78,123,204, +75,103,79,108,94,243,154,215,181,222,203,197,109,183,110,225, +93,149,65,150,46,3,36,86,81,106,72,120,219,242,243,159, +255,124,55,68,169,242,223,229,46,119,233,60,9,192,160,130, +144,38,51,49,34,173,102,220,113,198,165,197,103,88,142,241, +30,78,62,249,228,182,5,255,92,231,129,48,118,105,12,97, +130,132,107,233,114,48,98,45,54,35,227,21,0,12,176,104, +189,25,32,21,131,48,162,194,144,221,207,53,184,245,230,111, +128,130,251,129,26,111,66,158,121,63,206,211,218,51,120,215, +127,242,147,159,212,110,63,179,11,52,138,69,232,114,0,6, +125,241,139,95,216,165,115,14,240,128,133,107,2,151,209,9, +221,32,128,112,111,35,29,201,87,186,20,158,89,58,207,178, +221,118,207,106,14,58,232,224,230,204,51,63,219,94,231,69, +157,55,241,212,167,62,173,211,163,143,254,72,115,211,77,102, +180,14,93,142,229,202,0,137,85,148,178,187,97,126,132,225, +58,173,178,247,34,24,204,95,255,245,95,119,144,96,32,60, +10,235,188,0,173,191,104,63,195,183,237,184,185,17,186,10, +210,241,56,184,227,186,11,90,123,94,129,116,90,116,94,133, +152,3,32,48,72,247,98,240,246,51,72,144,2,2,80,16, +27,48,194,33,144,200,144,65,10,116,196,36,128,36,1,84, +231,74,207,80,193,65,60,65,122,234,154,186,52,238,245,162, +23,189,176,61,246,156,118,249,130,14,20,130,153,188,9,215, +10,32,226,181,0,23,88,128,26,15,7,40,120,79,160,101, +40,214,61,60,155,96,170,184,137,116,210,203,27,96,202,139, +115,44,61,171,17,160,171,174,186,122,136,75,108,130,12,144, +88,101,41,189,9,193,75,163,5,130,120,220,126,193,75,93, +9,134,9,4,60,4,251,24,166,224,36,72,128,2,239,66, +43,59,215,106,63,185,75,7,12,249,214,3,47,129,241,234, +155,251,110,100,188,2,199,65,201,139,83,186,40,186,6,60, +9,19,169,24,33,15,196,126,235,140,141,50,68,198,233,26, +20,0,28,103,232,214,179,204,126,134,159,253,244,121,207,115, +206,243,186,81,141,23,191,248,69,157,225,39,141,235,59,7, +20,24,189,244,0,112,204,49,199,116,128,3,37,207,13,136, +238,237,153,237,23,7,1,4,249,82,30,158,23,100,236,3, +156,156,251,137,79,156,212,141,36,129,114,202,190,156,137,73, +7,89,44,3,36,214,128,128,132,202,10,18,223,252,230,55, +187,128,34,99,101,164,188,2,134,201,32,40,119,254,174,119, +189,107,103,8,49,8,208,96,100,130,123,160,160,27,192,72, +116,11,196,33,128,67,48,211,204,69,211,156,181,182,188,146, +123,221,235,94,93,75,207,48,165,1,14,173,46,248,48,66, +134,197,75,0,31,219,210,101,73,75,227,167,140,125,206,99, +152,51,254,120,7,165,230,88,212,182,115,203,125,148,97,123, +62,49,8,241,13,247,210,181,2,173,120,8,210,120,78,0, +116,220,18,20,60,31,79,75,55,196,51,108,183,157,110,199, +147,155,189,246,122,75,243,237,111,95,219,65,34,80,8,48, +252,6,131,151,209,47,3,36,214,128,4,18,38,84,121,61, +90,44,193,231,226,25,133,161,70,16,16,71,96,196,148,241, +48,0,163,17,140,218,54,175,192,219,160,130,138,12,251,246, +183,191,125,23,39,48,157,154,145,11,244,241,20,2,16,231, +185,62,35,98,116,192,64,173,51,182,108,131,2,35,102,132, +53,24,74,195,143,50,112,121,137,130,80,12,223,122,173,57, +150,110,133,115,108,51,118,30,20,175,72,126,61,131,252,88, +154,12,150,55,85,165,245,204,87,93,117,101,219,13,217,183, +205,255,211,219,52,79,107,190,250,213,47,55,239,125,239,187, +219,235,60,179,205,247,115,58,72,208,51,207,60,163,5,195, +194,219,182,145,193,147,152,44,3,36,86,89,210,154,81,113, +137,31,254,240,135,221,108,72,113,1,6,33,120,41,22,160, +5,229,73,36,120,201,32,205,171,96,184,166,95,139,95,196, +216,1,64,90,195,161,90,91,202,21,103,252,186,18,0,100, +95,226,6,206,19,4,140,33,218,167,165,102,168,214,107,207, +161,134,67,12,157,209,50,114,198,94,106,223,190,114,191,174, +21,117,190,235,1,6,111,192,48,173,123,234,38,25,49,241, +254,9,104,9,164,26,9,178,45,223,158,119,223,125,247,105, +118,219,109,151,14,18,15,126,240,131,90,47,236,239,91,184, +60,190,131,4,125,246,179,205,9,153,75,103,162,150,242,214, +197,35,241,34,6,72,244,203,0,137,85,22,21,51,149,52, +93,14,113,9,195,125,12,130,39,97,226,19,15,128,199,64, +237,51,251,146,225,235,138,48,18,158,134,117,70,14,6,188, +9,6,238,58,94,250,210,157,224,57,48,48,95,110,242,173, +6,80,8,88,226,45,56,199,125,169,245,64,195,49,96,88, +42,36,24,122,169,1,65,173,142,73,111,180,38,243,28,114, +142,253,238,45,32,171,155,4,112,202,129,119,161,59,246,146, +151,188,172,5,192,179,59,32,122,126,207,152,188,129,7,143, +67,240,22,236,228,95,185,216,239,61,143,148,55,25,32,49, +93,6,72,172,1,9,40,84,90,222,132,15,202,104,57,181, +164,226,18,153,54,173,219,193,163,200,58,67,18,181,7,9, +128,16,147,208,5,17,200,179,79,215,196,183,23,204,226,4, +3,115,44,4,52,25,14,99,97,56,212,177,120,14,12,41, +80,96,248,12,142,23,17,24,244,129,33,90,2,194,136,73, +173,1,129,231,138,6,12,217,47,93,174,97,9,108,25,153, +145,23,251,196,97,236,55,255,97,251,237,95,211,238,127,113, +187,255,229,221,240,39,125,233,75,95,214,61,207,71,62,114, +76,115,254,249,95,236,186,93,134,65,61,215,51,158,241,204, +110,68,199,203,116,202,61,202,179,24,32,209,47,3,36,214, +128,4,18,0,193,5,230,14,107,57,77,36,2,131,187,221, +237,110,93,11,170,197,100,248,150,134,39,13,5,26,157,208, +218,27,5,17,140,52,252,167,149,5,9,221,13,221,19,70, +206,107,208,183,215,10,51,102,70,200,200,25,19,229,57,4, +26,214,157,147,86,57,192,112,94,9,132,64,161,212,210,224, +107,24,100,93,55,33,154,110,69,246,151,105,29,179,46,63, +150,60,34,80,148,23,249,255,220,231,206,110,142,59,238,132, +214,248,5,84,159,223,28,120,224,65,205,177,199,30,215,30, +251,207,22,154,79,104,189,169,167,52,59,238,248,134,246,217, +5,54,61,199,11,155,167,61,237,25,237,179,61,191,155,181, +74,18,155,24,32,49,89,6,72,172,1,9,36,0,34,113, +9,239,99,120,141,154,97,27,133,0,128,116,57,128,194,8, +7,48,24,190,228,9,48,126,129,73,0,209,202,242,20,116, +57,184,224,96,195,184,192,196,126,32,241,95,25,140,61,93, +13,80,176,30,80,212,49,136,128,33,203,180,244,90,126,6, +157,238,67,182,3,128,104,9,5,93,157,82,147,38,219,129, +69,174,107,219,51,152,150,45,16,235,190,224,105,210,217,254, +251,31,208,66,194,20,113,31,195,53,177,76,119,201,60,141, +231,182,105,30,213,150,205,182,237,51,232,38,153,180,165,27, +245,188,14,160,60,44,2,14,1,197,0,137,126,25,32,177, +6,36,144,72,119,195,167,235,180,116,190,89,201,88,77,153, +54,58,161,75,1,18,96,1,16,246,5,4,92,112,199,245, +219,117,47,24,179,152,133,46,132,109,223,117,208,34,11,114, +234,82,248,184,11,99,183,47,158,68,188,7,221,137,120,17, +52,221,10,75,199,24,169,150,157,114,229,25,56,99,142,97, +215,64,16,27,200,82,250,168,237,90,3,138,168,235,201,23, +8,186,158,235,202,139,231,102,236,192,38,95,242,233,57,192, +203,104,7,88,217,7,46,166,159,235,98,72,231,57,149,139, +231,240,174,76,202,126,128,196,100,25,32,177,6,36,21,53, +173,154,41,218,230,75,48,100,134,1,6,226,18,137,71,36, +8,73,77,46,242,230,35,195,209,186,50,132,124,128,133,87, +193,227,96,20,182,25,148,243,121,28,246,49,42,251,156,203, +104,18,188,44,129,225,24,195,11,16,76,131,102,120,94,180, +50,12,107,14,131,88,72,233,9,88,47,1,225,60,93,32, +106,174,134,152,9,181,94,106,210,148,234,92,249,146,87,192, +3,54,121,117,125,96,242,185,126,19,196,220,199,49,65,78, +129,95,30,150,188,123,94,223,185,48,115,212,179,58,215,117, +196,56,76,210,138,4,20,131,44,150,1,18,107,64,202,214, +12,36,204,151,48,196,103,82,21,163,20,108,212,229,200,28, +9,30,3,96,220,253,238,119,239,166,104,251,70,165,150,211, +108,204,59,222,241,142,29,0,18,140,140,215,225,28,30,4, +67,113,204,251,22,140,139,87,192,104,210,18,51,34,64,96, +224,188,18,0,48,39,129,49,234,254,80,177,1,58,231,238, +239,223,13,169,50,230,18,12,147,224,224,121,92,151,90,47, +53,240,8,64,44,117,147,178,116,77,177,26,239,165,228,251, +159,96,224,255,56,44,61,183,50,114,109,207,4,152,9,124, +234,182,5,126,212,113,94,137,247,101,82,246,3,36,250,101, +128,196,26,145,0,34,144,80,121,205,26,100,160,186,18,102, +94,242,20,84,250,196,38,238,112,135,59,52,183,189,237,109, +59,136,48,2,173,163,9,72,150,140,61,80,96,100,98,16, +92,110,134,226,26,174,171,11,194,43,96,216,60,3,134,198, +224,121,8,160,96,91,43,28,40,112,227,121,14,214,29,147, +198,62,75,70,13,46,64,1,14,49,118,234,88,9,7,6, +159,245,82,107,88,228,154,174,199,160,5,95,117,193,188,175, +225,184,103,54,98,3,110,12,159,231,144,46,153,117,10,130, +60,12,51,55,189,9,11,28,137,185,152,72,230,213,252,0, +2,172,135,46,199,98,25,32,177,70,164,134,132,151,189,124, +10,142,81,48,116,144,200,103,231,65,2,56,244,203,1,65, +75,205,208,181,142,90,83,70,206,229,182,143,209,232,187,107, +245,25,60,227,210,245,224,126,83,198,195,200,125,195,2,56, +156,203,203,224,49,0,65,212,54,32,112,231,243,229,43,215, +179,228,77,184,78,9,136,62,8,128,3,207,167,84,251,106, +45,211,123,21,221,210,181,65,1,16,61,55,47,66,26,198, +174,59,2,46,210,1,139,231,230,109,128,9,15,73,92,67, +160,82,224,211,115,130,71,130,181,242,234,143,140,6,47,98, +178,12,144,88,35,18,64,104,201,50,202,225,79,115,125,160, +86,223,219,199,101,196,37,0,66,87,131,241,3,134,209,10, +198,64,85,122,241,10,45,39,99,103,28,60,5,26,35,98, +152,214,1,129,193,0,70,9,134,44,121,12,160,192,107,0, +134,192,33,94,5,48,4,22,70,28,128,36,198,93,26,185, +251,185,71,84,55,33,121,162,182,75,45,211,58,23,116,202, +124,131,133,116,238,153,238,12,47,72,28,6,8,0,130,7, +101,18,153,79,244,137,167,40,43,129,79,192,0,92,75,101, +68,205,157,240,127,38,41,255,65,22,203,134,135,68,92,204, +73,110,102,121,172,78,55,233,156,90,234,243,72,125,157,184, +188,36,235,254,133,74,220,64,107,167,5,21,91,224,34,83, +174,55,40,48,8,134,0,8,92,115,45,105,60,11,134,202, +144,210,98,199,16,25,167,150,95,215,130,2,131,109,224,176, +206,224,75,72,4,20,230,101,4,12,186,46,249,204,190,37, +79,197,117,221,199,125,221,147,230,126,81,49,142,40,47,129, +150,251,104,157,222,53,1,194,245,64,66,158,77,73,7,7, +219,60,37,249,182,95,25,128,167,249,33,186,86,148,231,0, +166,188,47,229,161,108,50,34,194,251,226,73,229,31,191,242, +27,228,247,201,111,83,255,126,27,73,54,36,36,166,25,104, +164,220,159,244,117,58,251,163,101,58,146,253,165,135,80,31, +183,95,197,180,174,139,161,162,234,38,112,139,205,184,100,136, +186,4,250,213,160,0,8,90,63,64,224,110,131,3,47,131, +97,216,167,223,46,184,7,20,192,194,176,104,140,54,6,235, +154,12,172,140,63,212,112,40,187,21,224,160,219,67,65,129, +23,1,12,62,132,91,170,107,186,31,163,46,141,28,8,220, +51,80,136,242,100,168,99,89,207,118,210,88,143,87,194,187, +16,79,224,21,216,6,8,207,172,27,34,22,3,8,202,193, +126,113,10,199,228,89,89,40,47,231,251,39,52,243,68,164, +81,150,60,11,229,232,147,123,126,143,252,198,134,163,243,155, +150,191,225,70,148,193,147,104,127,120,26,227,47,183,83,73, +250,182,147,182,47,93,89,169,114,188,76,159,239,89,130,129, +145,9,134,200,88,25,50,35,7,5,149,92,215,193,72,4, +195,136,123,44,32,169,21,148,102,18,36,120,18,129,67,9, +8,6,27,131,228,57,244,1,66,156,33,144,0,135,40,56, +68,65,2,20,64,44,202,240,156,27,64,228,94,192,145,37, +13,8,172,203,3,205,118,153,198,57,57,47,215,147,214,115, +1,166,110,130,231,102,248,158,17,24,229,195,127,144,4,32, +210,95,124,241,197,93,94,121,93,202,210,243,186,22,104,36, +136,169,172,61,163,96,113,126,71,191,31,80,100,59,191,241, +70,148,13,235,73,68,75,73,101,160,153,216,84,87,20,90, +182,42,89,218,199,43,40,225,32,248,232,79,113,253,147,84, +190,28,165,146,51,108,21,84,203,199,59,208,125,208,26,234, +59,3,3,23,56,174,178,74,204,45,166,130,109,20,44,24, +136,138,158,150,147,114,163,3,8,134,2,14,140,40,128,40, +141,147,23,17,64,148,49,136,116,49,128,171,207,123,136,7, +17,48,68,197,3,28,115,47,30,128,251,185,151,251,88,234, +202,148,106,127,52,176,200,177,108,203,111,60,31,75,207,149, +109,215,87,174,190,151,225,25,149,133,124,248,178,150,103,210, +197,240,13,13,121,1,78,199,117,75,204,92,181,4,13,101, +170,252,148,179,114,243,143,100,126,183,242,247,206,239,153,223, +121,35,202,208,221,24,85,134,84,8,203,122,127,189,94,138, +109,112,0,4,31,110,245,191,25,12,77,229,211,114,101,38, +100,250,196,250,203,150,182,193,193,104,4,5,134,84,220,180, +110,206,183,143,75,172,229,228,69,196,115,176,140,247,0,14, +12,161,28,89,232,3,68,12,145,97,242,34,202,17,140,12, +117,2,153,248,66,224,80,2,34,221,10,198,232,51,114,192, +16,245,118,41,5,132,26,18,238,9,72,81,70,28,181,45, +47,181,150,231,201,159,117,215,181,223,179,41,71,65,221,252, +5,129,81,30,115,36,148,23,0,131,36,0,131,130,242,86, +94,64,170,124,157,207,115,80,198,188,49,101,75,77,74,227, +229,165,113,32,125,191,249,70,147,13,13,137,24,120,233,45, +0,133,109,251,115,76,165,1,1,238,168,143,194,112,97,13, +177,49,172,180,80,2,139,90,46,154,63,217,5,7,21,148, +90,231,45,24,190,163,129,132,202,157,120,3,205,186,202,174, +53,4,134,140,247,103,204,223,54,67,0,11,144,136,23,145, +120,4,72,48,156,64,130,113,129,4,67,139,17,50,208,116, +49,226,69,128,3,77,247,34,158,3,45,187,21,1,68,192, +64,15,63,252,240,110,246,167,235,0,68,32,1,76,185,95, +9,37,106,155,150,208,136,130,3,32,200,59,207,193,115,120, +134,18,18,219,108,179,77,103,220,202,128,151,193,232,149,29, +111,67,26,229,32,31,186,116,98,60,32,170,236,228,247,186, +235,174,235,202,195,185,202,18,136,149,227,215,190,246,181,249, +122,17,47,66,29,176,190,81,101,195,67,66,75,65,84,2, +111,95,170,60,254,110,207,187,19,42,140,64,151,150,148,17, +10,142,121,251,146,154,42,109,38,31,56,88,250,158,129,161, +201,104,94,180,2,7,16,225,45,0,131,238,68,32,81,2, +66,5,143,199,16,229,6,235,94,36,14,1,16,105,17,193, +32,128,0,135,218,147,152,6,9,6,152,46,70,98,16,233, +98,164,155,81,122,15,37,28,74,64,0,67,20,32,168,244, +12,147,97,3,4,80,4,4,37,148,104,9,138,26,30,129, +133,109,121,76,23,196,117,129,194,146,183,224,217,64,205,179, +121,86,105,253,110,242,167,108,192,86,254,64,93,122,222,153, +223,10,220,149,49,207,34,16,86,254,62,250,235,221,25,117, +131,87,17,96,164,33,217,136,178,85,67,34,0,240,227,150, +63,176,31,255,251,223,255,126,55,146,224,59,144,102,35,114, +91,85,112,173,16,119,159,241,155,205,151,127,192,242,93,7, +149,139,6,14,188,5,48,0,15,203,128,33,222,3,207,1, +32,44,109,91,47,225,160,194,82,144,200,186,110,71,0,17, +111,2,32,82,145,65,34,90,118,51,104,233,69,48,24,207, +194,96,107,72,196,248,192,33,90,6,42,65,34,221,138,218, +123,40,1,97,46,2,5,7,243,52,2,10,96,160,238,103, +25,195,183,12,152,104,64,17,104,148,251,114,78,128,6,12, +246,185,38,141,151,177,207,62,251,118,80,56,248,224,67,186, +242,120,193,11,158,223,230,229,131,237,243,188,183,245,46,94, +223,150,243,211,59,239,78,121,39,216,235,55,226,237,41,103, +229,101,63,16,3,181,109,245,66,163,97,196,73,189,81,143, +6,79,98,157,74,109,252,181,104,1,0,65,37,50,196,101, +10,174,126,44,67,96,52,90,17,173,190,55,35,193,128,230, +159,184,211,109,48,222,14,12,250,182,166,69,3,3,53,245, +55,30,67,64,65,77,118,226,61,68,3,10,222,3,47,34, +49,136,204,117,40,65,1,16,90,179,0,2,172,84,94,30, +68,42,56,56,104,5,117,53,74,72,8,188,213,144,136,171, +238,89,99,180,140,14,36,24,163,174,69,188,135,116,49,210, +205,40,1,17,32,88,150,128,8,28,162,202,86,128,54,45, +191,251,196,200,75,64,148,112,162,153,139,65,109,7,34,212, +185,209,92,47,93,166,87,190,242,213,205,19,254,227,73,237, +177,189,219,103,124,115,231,41,60,230,49,143,110,127,7,127, +130,252,212,118,251,245,109,249,24,14,221,182,45,199,23,180, +208,156,251,195,34,30,24,245,130,151,47,147,43,79,32,86, +31,252,14,254,202,16,32,128,1,32,6,72,108,197,2,16, +62,14,235,135,103,176,12,222,27,144,102,46,250,107,127,127, +104,27,24,240,14,28,207,146,242,22,2,8,99,243,75,129, +68,186,24,180,244,38,210,197,168,33,33,111,1,132,150,76, +235,22,64,164,171,17,47,162,28,242,76,69,7,137,116,49, +24,73,233,69,128,68,224,160,229,101,96,105,165,41,131,172, +131,148,233,94,100,201,131,0,134,120,13,129,3,5,5,234, +109,213,40,195,115,46,48,5,14,148,193,39,48,90,107,98, +33,217,46,161,81,123,22,1,5,221,105,167,55,54,255,241, +248,39,182,101,249,140,230,85,175,122,117,7,196,93,118,121, +99,91,46,175,108,159,123,247,54,223,7,119,235,59,239,188, +83,123,173,247,180,30,227,103,186,103,4,83,191,135,103,48, +89,13,36,0,66,25,43,127,229,200,211,4,134,52,68,129, +197,70,148,173,22,18,126,80,158,132,33,49,111,80,6,10, +137,39,128,131,25,140,241,22,74,32,4,10,81,112,136,110, +10,36,84,200,18,18,9,88,150,30,68,0,81,14,123,2, +68,32,193,155,8,36,50,236,25,239,33,10,22,1,133,110, +70,186,24,0,145,110,6,163,139,177,150,241,7,198,19,111, +130,145,71,1,130,151,96,73,227,61,148,112,208,143,167,246, +101,201,96,221,143,113,151,247,44,189,151,210,139,161,217,46, +161,17,88,196,195,8,52,0,227,109,111,123,71,123,31,93, +155,183,54,199,31,127,98,7,176,183,191,253,109,173,103,181, +67,155,175,15,181,221,134,203,218,60,188,173,53,254,151,116, +229,237,124,101,2,172,126,43,117,192,239,1,202,202,22,36, +120,20,126,19,177,40,112,80,135,2,10,186,17,101,171,132, +132,31,51,174,162,152,131,143,182,232,70,168,20,241,22,226, +61,100,93,204,1,52,28,175,65,17,56,204,130,68,186,26, +137,73,36,14,81,66,2,32,74,72,4,16,9,90,170,176, +101,176,178,246,36,180,122,32,161,171,65,211,213,0,8,17, +125,222,3,87,63,93,141,196,7,236,3,11,134,11,28,101, +108,130,241,48,74,176,96,172,150,186,20,96,0,10,140,79, +44,194,190,73,144,48,124,72,185,239,38,52,185,54,141,129, +151,128,8,20,162,64,69,179,61,9,22,53,40,222,251,222, +125,58,64,120,118,175,213,139,45,189,235,93,239,108,203,241, +89,237,239,241,152,246,153,247,108,225,57,247,77,10,240,246, +251,62,249,201,79,233,202,79,153,241,228,148,125,224,155,242, +246,59,128,174,58,4,18,234,145,192,229,70,149,173,6,18, +192,16,151,208,143,27,87,209,223,206,51,202,64,0,40,120, +18,222,168,76,87,3,24,226,69,240,40,74,207,98,75,64, +66,44,34,241,136,0,162,15,18,181,23,145,74,155,81,141, +196,34,50,63,34,35,27,42,180,33,64,170,219,65,1,35, +195,144,37,20,180,192,140,217,7,115,141,224,120,3,146,107, +109,105,120,215,212,112,159,244,7,1,6,41,62,1,2,186, +17,128,16,64,4,18,241,34,192,65,26,215,22,4,230,145, +232,18,212,30,68,9,133,168,180,52,219,129,5,45,65,1, +18,165,39,177,215,94,111,111,159,115,215,249,242,87,94,219, +111,255,234,22,26,175,107,127,27,255,120,246,240,110,159,242, +80,70,175,126,245,246,109,153,236,209,30,127,67,87,46,202, +19,56,141,104,37,54,1,24,212,239,229,251,161,241,32,232, +70,149,173,34,112,73,67,123,228,167,25,178,242,38,165,31, +221,127,85,128,4,141,135,0,6,129,71,96,17,64,244,197, +35,102,65,34,93,141,0,34,93,141,18,18,1,68,130,150, +53,36,74,79,34,10,18,241,32,64,34,170,53,44,21,36, +196,35,184,212,160,192,240,180,234,62,223,38,98,239,67,54, +190,159,9,6,0,1,20,12,60,93,11,158,2,35,191,240, +194,11,187,121,33,190,179,9,6,233,106,240,40,74,56,148, +222,3,64,80,251,245,243,165,227,189,212,113,15,94,74,173, +153,139,65,109,7,26,1,71,188,139,120,20,241,38,44,41, +80,42,79,229,150,174,149,37,56,130,154,235,238,186,235,155, +218,50,226,113,156,210,129,144,167,197,59,243,155,40,51,233, +121,108,129,51,80,131,156,57,50,101,61,219,136,178,174,33, +81,122,14,1,132,31,213,210,255,87,216,175,133,84,9,4, +43,211,181,72,76,194,54,16,80,80,176,93,194,161,175,219, +1,14,209,0,130,242,34,64,162,207,139,8,40,2,9,222, +4,64,208,0,162,134,68,25,147,0,185,4,43,227,73,196, +123,208,34,50,24,6,206,229,214,189,210,50,250,100,188,247, +67,192,192,107,212,90,119,198,194,128,226,85,48,96,6,200, +48,65,194,210,104,6,227,100,232,102,144,94,122,233,165,221, +181,117,55,2,129,26,14,70,52,168,73,75,217,62,241,196, +19,59,35,115,15,134,30,227,151,7,247,114,31,251,50,130, +66,237,207,113,199,172,71,157,27,80,200,51,88,216,207,163, +0,10,32,114,13,224,115,76,185,232,134,0,228,89,103,125, +174,93,223,169,217,118,91,127,30,252,228,214,251,216,165,45, +223,23,117,229,233,55,213,21,245,27,42,107,229,171,236,45, +1,92,224,59,117,108,163,202,186,134,4,48,68,193,193,104, +6,56,88,50,18,106,130,148,202,101,206,3,64,196,107,160, +188,136,18,12,101,183,35,240,0,135,116,53,168,202,196,131, +176,206,107,176,13,24,60,9,219,192,0,24,20,24,196,33, +202,209,13,45,30,88,168,128,214,245,127,129,194,118,2,151, +150,90,181,116,55,84,88,160,208,189,208,237,224,41,156,122, +234,169,157,1,240,148,12,241,82,127,174,11,6,192,104,184, +87,119,3,32,19,188,76,203,11,42,49,222,116,1,98,164, +128,96,157,81,122,47,130,215,225,123,11,188,8,30,68,217, +173,160,96,66,3,10,234,120,160,228,222,49,120,215,52,90, +2,12,174,231,254,60,20,247,179,47,42,141,99,214,3,12, +144,18,15,145,95,251,93,215,176,54,40,0,135,128,45,48, +136,75,216,182,238,183,246,89,125,67,165,175,126,245,14,173, +55,246,170,246,119,123,116,251,59,63,188,45,227,231,117,251, +253,119,199,203,94,246,138,22,186,111,232,160,150,50,6,10, +191,1,8,165,225,25,60,137,117,40,198,178,41,40,112,143, +65,193,212,233,76,159,166,94,176,82,233,64,34,221,141,50, +88,25,72,80,144,0,5,235,142,101,27,16,2,138,120,21, +192,16,24,4,28,214,211,205,0,12,219,0,1,14,25,217, +0,14,209,115,222,132,116,214,29,3,10,149,51,179,21,185, +194,226,19,150,186,27,64,161,203,97,29,0,196,90,24,140, +138,205,163,224,114,243,48,24,28,112,232,183,27,6,229,242, +207,141,4,204,125,180,22,28,120,17,233,2,48,62,222,129, +50,98,200,182,163,140,93,75,106,26,58,32,232,66,148,144, +176,30,72,216,103,201,155,0,19,75,32,200,189,0,34,30, +137,251,218,118,61,219,242,12,84,210,75,3,12,102,72,186, +158,99,60,3,96,16,35,224,161,120,6,229,6,20,166,91, +91,42,31,80,87,254,202,193,125,25,249,19,158,240,196,22, +8,207,109,33,178,75,91,78,190,117,225,219,26,187,180,207, +123,104,123,31,127,228,35,24,252,170,22,86,71,180,221,171, +47,119,101,165,220,65,153,71,167,92,61,191,122,182,81,101, +93,67,194,244,217,128,65,240,77,159,27,20,184,217,62,74, +162,31,238,47,237,84,90,35,28,186,24,1,67,188,9,235, +137,69,148,170,194,129,2,175,2,52,44,129,193,62,64,224, +57,72,99,95,128,144,224,37,227,7,3,128,136,23,1,10, +212,126,94,131,24,130,224,34,99,97,96,42,191,22,219,135, +94,197,2,180,154,42,43,40,80,174,177,138,171,155,1,2, +12,141,49,24,225,176,143,199,32,64,167,117,245,109,76,128, +200,68,42,21,159,161,105,181,197,40,120,33,134,248,24,29, +216,232,82,240,68,192,135,49,50,212,140,98,240,38,226,153, +216,7,14,125,144,176,77,193,193,126,247,177,205,160,181,236, +158,147,193,131,17,24,184,118,98,29,210,203,183,115,221,219, +115,248,170,148,174,19,112,121,22,101,8,160,241,124,64,2, +240,121,91,202,145,167,164,60,120,94,188,8,207,108,159,216, +195,7,62,176,127,251,188,103,182,203,3,154,93,118,217,173, +243,28,78,59,237,244,246,158,159,107,203,244,63,219,174,222, +115,59,143,131,55,225,223,191,192,90,153,243,234,168,50,73, +32,124,35,202,186,134,132,174,132,10,172,15,14,12,140,71, +31,28,249,5,223,244,197,189,78,12,18,42,148,17,141,192, +33,128,232,131,68,226,16,214,1,130,23,1,12,128,0,12, +60,7,32,8,48,128,193,18,44,104,186,30,241,30,2,13, +219,60,3,31,160,165,12,144,225,49,28,70,172,245,83,225, +173,131,28,35,99,4,42,44,24,88,103,144,12,154,33,1, +141,57,17,250,222,148,247,224,203,209,12,205,117,156,239,245, +103,48,0,2,64,112,156,119,96,86,33,32,201,7,0,56, +78,149,85,140,88,75,207,203,240,183,131,140,216,126,215,4, +137,120,20,12,91,158,210,213,208,178,83,144,112,45,48,11, +28,0,65,215,65,151,192,239,194,139,96,244,60,33,255,164, +46,31,242,174,156,65,1,224,0,193,115,41,59,101,104,56, +19,112,120,39,59,236,96,180,98,183,238,154,246,41,55,96, +112,45,32,116,109,101,180,227,142,175,111,161,115,74,123,173, +253,218,237,29,219,223,143,247,247,239,173,167,241,178,182,91, +241,226,214,99,120,81,123,79,221,198,127,235,238,163,171,1, +200,137,11,129,176,122,181,81,101,93,67,130,231,224,101,44, +222,130,202,111,232,238,139,95,252,98,215,146,234,159,115,89, +25,130,74,170,226,5,18,188,9,203,64,33,160,136,199,144, +46,135,253,233,90,56,158,110,71,210,1,134,109,105,172,131, +133,202,77,129,161,92,207,144,39,67,231,225,0,28,67,230, +85,80,45,163,86,75,0,147,155,172,178,95,121,229,149,157, +161,218,86,97,185,190,140,139,215,17,175,66,95,28,48,64, +194,243,250,120,174,110,5,47,66,127,29,64,25,50,163,103, +180,92,121,45,59,195,98,128,214,181,214,140,26,152,128,139, +161,6,8,206,3,25,101,235,252,62,72,4,16,128,66,179, +77,1,132,193,138,81,248,29,60,39,3,151,55,208,224,29, +232,10,130,169,242,0,14,207,4,178,90,244,116,129,156,163, +107,37,15,212,254,247,189,239,61,109,254,62,216,149,19,216, +233,118,40,67,80,145,55,222,149,50,243,187,251,237,24,188, +123,248,155,191,167,62,85,0,249,25,29,40,116,67,116,57, +94,252,226,151,182,229,50,247,189,78,101,46,189,248,144,165, +231,21,192,220,136,178,174,33,161,82,243,26,184,165,90,15, +46,52,55,85,139,164,242,50,48,149,157,209,48,84,163,26, +125,144,136,87,193,248,25,187,125,32,192,99,80,185,236,7, +130,164,113,45,253,85,110,45,79,192,125,185,164,186,22,1, +7,56,104,149,104,186,25,42,190,117,70,167,101,230,237,232, +70,72,35,38,1,4,128,161,162,171,164,226,9,60,36,198, +15,30,92,119,173,125,34,247,140,32,163,28,90,93,221,20, +207,109,155,139,206,152,140,80,0,142,109,229,160,101,119,29, +6,171,245,5,13,235,150,202,210,247,48,24,101,32,225,249, +180,252,202,154,193,131,0,3,164,32,16,72,240,30,172,103, +219,189,45,25,151,115,92,135,97,27,73,48,3,86,57,184, +175,99,98,45,12,17,176,2,33,94,128,223,15,76,236,3, +20,80,211,8,240,132,92,127,207,61,247,232,126,39,240,112, +12,24,197,36,64,71,89,243,34,148,161,178,124,222,243,158, +219,222,231,21,93,185,237,188,243,27,219,99,175,111,187,36, +123,183,245,229,212,198,204,205,87,188,226,149,93,188,226,220, +115,207,235,238,225,92,65,76,80,243,219,184,54,79,117,35, +202,186,134,4,183,91,132,95,197,6,134,84,98,45,33,163, +213,90,106,21,252,192,12,49,147,167,102,65,194,58,56,232, +54,232,166,168,136,12,143,33,48,112,158,11,55,94,43,171, +18,106,193,192,73,62,180,126,186,30,128,1,38,52,1,75, +75,251,121,55,42,53,35,0,10,173,155,202,200,211,224,33, +100,66,21,175,195,181,181,148,64,1,70,226,22,192,194,237, +78,87,67,203,203,104,228,139,91,15,30,192,160,251,162,59, +230,152,251,49,38,163,27,214,25,33,104,112,209,193,66,185, +241,198,226,121,49,234,64,86,215,68,151,67,107,61,9,18, +12,217,125,210,245,176,205,227,113,29,113,1,70,231,119,113, +47,158,143,231,114,174,115,44,193,196,125,120,29,174,45,15, +96,232,190,158,29,64,120,106,224,226,185,197,28,28,247,251, +1,143,242,147,198,243,165,43,230,249,223,242,150,133,119,86, +114,253,189,246,122,91,11,128,215,180,224,220,189,173,67,23, +181,207,244,145,110,244,195,168,199,191,254,235,35,187,238,29, +40,3,87,188,56,240,230,101,109,68,111,98,93,67,130,7, +193,56,85,50,6,11,10,42,191,10,161,18,130,3,119,150, +203,201,56,185,157,1,68,20,16,2,139,64,2,32,28,227, +61,164,91,161,245,229,50,171,140,1,11,143,33,129,80,215, +215,218,201,147,145,4,45,154,214,76,55,3,32,84,110,222, +133,116,90,106,239,148,232,198,56,7,120,228,21,28,204,147, +0,135,244,137,121,44,158,69,159,88,144,150,97,151,83,177, +45,25,33,227,166,60,10,233,169,253,254,46,208,126,208,96, +88,206,103,76,60,10,6,172,220,84,126,241,10,94,75,12, +27,100,29,179,206,72,117,91,204,195,0,14,0,0,130,82, +193,193,239,96,25,80,80,6,15,92,126,151,108,7,14,90, +102,235,202,128,97,3,133,188,74,39,255,119,185,203,93,186, +242,0,104,128,241,172,64,175,44,61,199,161,135,30,222,66, +110,159,78,247,217,231,253,237,125,14,235,150,182,247,219,111, +255,230,187,223,249,126,243,193,35,142,110,97,176,71,107,248, +175,104,143,237,215,130,238,147,237,181,65,98,135,230,78,119, +186,83,247,59,249,77,149,181,242,119,125,13,3,160,251,13, +2,12,191,163,223,21,176,51,81,111,163,200,186,134,132,184, +131,74,166,2,165,165,100,36,90,102,110,56,119,81,196,219, +15,109,162,19,72,168,0,211,32,65,129,33,222,68,214,25, +28,227,80,65,237,163,140,60,35,26,214,165,231,89,232,250, +104,129,181,68,42,97,98,19,241,40,164,209,13,112,158,22, +74,90,31,197,213,242,169,168,42,165,10,42,200,153,169,194, +142,73,7,38,158,77,32,147,209,120,70,253,117,94,132,86, +62,67,168,105,61,149,17,247,89,25,41,43,70,200,3,211, +109,17,207,73,76,199,62,16,96,176,224,160,107,32,189,117, +251,193,6,64,106,72,196,163,40,213,62,202,232,163,186,13, +188,32,235,224,230,185,121,99,238,199,187,0,84,191,135,103, +5,81,106,30,9,168,242,24,210,37,162,142,137,161,24,182, +220,123,111,175,154,239,211,141,94,156,123,238,249,109,61,248, +64,251,252,111,110,207,123,106,91,94,71,53,123,191,235,189, +173,103,181,71,243,236,103,61,191,121,200,67,254,161,45,243, +199,183,222,193,75,187,50,212,173,227,245,249,77,229,73,153, +42,111,170,193,241,155,139,73,216,150,22,40,120,115,27,109, +164,99,93,67,130,235,168,165,99,36,12,79,107,196,107,80, +209,180,198,126,216,76,86,98,204,25,2,157,6,9,75,158, +131,245,64,66,58,176,81,193,93,79,197,162,60,13,149,219, +181,41,16,137,99,128,131,174,137,238,135,86,16,24,116,119, +180,88,186,31,174,97,106,176,86,210,126,173,152,150,149,65, +107,33,25,80,32,97,201,229,53,15,128,7,161,59,227,154, +84,55,67,229,150,47,221,22,158,130,125,90,97,229,97,155, +81,115,217,197,27,4,53,197,45,4,118,227,214,51,56,94, +5,40,48,12,70,171,229,7,36,134,9,46,32,163,43,2, +14,129,68,64,16,237,131,131,116,20,188,168,107,187,174,178, +244,71,198,126,23,30,142,115,229,23,32,211,117,114,95,231, +90,242,116,168,109,64,1,63,96,59,252,240,15,118,80,48, +58,33,232,248,142,119,248,155,194,183,119,144,120,216,195,196, +149,30,217,94,243,133,109,89,237,220,2,245,245,109,125,0, +224,231,118,221,21,144,0,83,101,234,249,121,63,182,149,47, +40,228,111,13,212,35,191,167,223,74,119,80,119,70,23,110, +35,201,186,134,4,55,88,69,214,106,170,92,241,26,192,65, +5,212,66,48,66,45,56,163,174,1,49,9,18,241,38,64, +128,218,231,154,42,13,163,5,145,4,53,3,6,75,192,224, +81,240,30,128,129,139,173,178,49,62,221,6,158,131,252,240, +42,184,173,98,7,214,181,80,174,203,56,180,174,140,0,24, +168,231,81,105,121,12,105,233,84,112,48,180,20,144,204,16, +38,67,231,69,49,184,76,191,86,54,90,93,198,201,192,64, +136,38,22,161,101,118,158,37,131,76,203,206,200,193,66,254, +65,134,39,224,26,242,200,88,3,1,203,18,22,37,40,28, +167,206,73,92,194,245,221,7,0,25,171,237,242,28,207,162, +251,5,254,224,225,121,28,3,80,93,32,207,172,252,45,189, +220,165,123,97,174,195,63,253,211,191,180,191,247,51,218,50, +125,83,107,200,239,237,130,144,130,145,123,238,249,150,206,211, +0,142,221,119,247,250,250,59,187,107,129,29,208,130,0,47, +141,151,196,99,1,4,245,194,239,2,90,234,145,125,233,142, +240,242,128,118,35,197,38,214,53,36,180,46,42,184,22,32, +243,8,16,159,155,10,12,90,237,24,47,131,6,137,89,158, +4,85,9,193,193,210,121,150,140,30,36,84,44,93,22,208, +1,7,134,239,30,150,212,189,108,3,133,251,171,228,220,108, +149,95,171,207,125,118,60,93,18,121,149,103,94,6,195,97, +64,140,132,129,123,30,80,160,60,9,96,96,104,158,53,10, +52,60,6,231,104,237,25,191,242,112,190,86,154,130,14,67, +160,142,107,57,41,15,12,16,24,159,37,101,156,90,125,0, +22,7,17,139,224,98,51,42,198,238,88,140,63,235,125,160, +40,33,97,93,28,196,189,117,95,64,11,0,228,129,71,32, +248,108,63,15,8,56,0,201,113,191,173,178,242,219,120,86, +249,119,29,191,133,114,244,62,134,9,82,188,9,112,0,4, +222,197,190,251,238,215,62,179,175,90,237,221,94,231,184,230, +188,243,190,216,165,51,95,2,236,1,209,179,2,47,175,46, +239,110,128,128,178,86,119,252,198,238,109,95,32,225,119,114, +76,30,204,240,221,40,178,174,33,33,104,169,149,214,15,103, +68,49,54,21,136,145,234,2,104,217,169,138,150,160,84,9, +138,62,72,208,204,135,72,151,195,82,133,215,10,3,136,74, +149,235,131,131,123,171,112,206,11,52,120,8,64,161,98,50, +40,115,13,180,236,64,34,223,90,52,149,78,107,229,92,221, +12,215,201,92,143,140,118,24,205,72,124,37,235,60,39,173, +41,104,1,17,24,56,79,172,67,37,214,42,210,196,38,4, +94,243,222,134,37,47,71,58,80,144,15,121,203,12,85,96, +16,84,212,98,10,214,234,146,196,131,8,24,44,163,129,132, +101,9,135,28,183,14,136,96,163,219,35,173,109,101,39,47, +98,31,210,120,86,221,16,229,35,239,210,129,160,50,242,220, +226,78,96,226,28,96,60,226,136,15,53,39,157,116,114,91, +150,7,182,192,209,85,154,155,90,173,235,0,72,219,109,247, +172,174,236,61,235,155,222,180,123,219,181,120,93,247,59,251, +58,25,143,78,121,130,174,235,219,86,254,188,55,48,6,5, +106,27,40,120,130,126,27,191,149,244,202,121,163,200,186,134, +132,32,156,238,6,87,86,11,192,208,24,166,74,198,136,85, +66,198,205,168,1,193,60,137,218,155,232,235,110,80,231,242, +32,24,189,37,192,104,113,181,126,0,224,56,111,194,18,144, +180,130,230,62,232,227,74,47,15,241,38,116,123,228,75,197, +102,140,42,191,22,147,27,239,24,23,150,23,161,2,242,30, +120,4,90,121,45,152,238,6,3,81,161,129,80,165,182,174, +101,181,238,217,1,131,186,190,57,4,38,153,89,47,99,19, +32,34,255,130,144,210,0,129,169,236,98,35,222,113,49,73, +75,11,110,152,19,16,40,56,232,14,48,124,70,205,64,99, +244,150,241,44,250,224,144,107,196,3,113,28,24,51,244,107, +253,110,119,187,91,115,207,123,222,179,51,68,30,148,238,77, +98,74,0,230,222,210,58,230,154,226,40,174,47,95,64,113, +214,89,159,111,174,186,234,27,173,103,112,112,23,119,48,99, +210,27,158,202,22,28,197,23,64,199,239,173,92,53,38,202, +82,121,51,120,158,157,223,139,42,91,229,26,117,46,141,23, +81,122,19,128,226,55,220,40,178,174,33,161,5,84,177,184, +215,249,241,185,162,140,56,241,4,16,160,128,144,79,215,241, +38,74,143,34,160,136,23,193,200,121,15,150,32,67,165,81, +241,180,188,250,171,210,129,4,111,66,90,21,205,48,162,22, +152,59,235,24,143,66,171,3,20,150,60,28,45,18,152,112, +229,141,44,168,136,42,158,214,138,23,4,122,12,22,244,84, +74,149,219,181,85,82,96,48,196,170,165,12,48,120,17,0, +161,197,181,174,44,64,192,123,45,188,6,134,193,72,243,142, +139,123,138,123,232,170,185,151,86,150,235,205,181,183,148,119, +101,154,216,1,13,32,104,217,237,40,149,241,6,22,37,52, +202,99,188,3,229,144,110,77,92,126,121,144,198,181,229,203, +61,121,69,128,38,29,160,128,6,120,58,110,123,46,88,252, +184,182,76,94,219,66,208,115,206,77,172,226,37,40,103,191, +21,48,242,182,94,245,42,127,164,252,218,102,183,221,118,233, +212,55,47,5,185,121,97,142,43,95,112,162,0,145,46,94, +64,1,90,150,126,15,176,87,23,220,99,163,200,186,134,132, +190,172,74,164,197,100,64,60,9,148,15,36,84,154,62,72, +196,139,232,3,196,36,72,72,163,82,49,80,21,221,245,121, +17,42,43,111,67,107,200,109,230,214,107,145,197,28,64,75, +90,222,2,96,128,133,74,70,25,6,131,101,212,182,165,5, +2,6,204,8,25,143,237,64,68,69,118,14,184,152,210,173, +197,151,70,224,82,229,214,122,170,248,182,121,23,64,195,75, +112,142,86,87,215,65,92,68,89,201,35,119,220,146,199,194, +232,18,192,228,109,104,169,3,136,26,18,180,15,18,125,42, +157,244,126,35,144,112,45,247,116,125,251,50,164,42,254,97, +116,70,254,128,75,23,1,72,121,138,238,237,217,125,201,156, +119,6,134,206,101,220,119,187,219,61,58,80,152,65,233,147, +250,186,85,142,123,126,67,225,137,201,240,166,222,250,86,221, +175,61,219,227,187,180,101,190,123,151,206,53,128,54,75,117, +8,124,149,57,56,235,126,248,125,129,231,206,119,190,115,243, +151,127,249,151,205,127,255,239,255,189,249,189,223,251,189,174, +27,182,81,100,93,67,66,139,201,237,227,78,171,72,42,23, +163,100,144,129,68,96,192,107,0,9,221,134,128,161,212,105, +144,72,124,66,75,194,229,5,35,128,160,186,53,188,6,251, +24,46,23,214,253,229,75,107,200,112,129,139,242,20,44,193, +130,170,212,140,22,68,84,72,235,140,133,161,131,78,90,48, +21,215,186,150,149,50,54,211,164,25,158,231,230,73,240,24, +24,7,131,112,79,94,133,150,215,4,41,65,64,240,97,116, +90,88,202,203,224,250,3,68,20,40,102,65,130,129,6,20, +165,50,246,120,25,217,78,122,94,137,107,218,167,187,6,96, +60,2,199,128,87,153,121,46,199,129,202,87,196,148,63,72, +186,191,188,250,93,149,183,231,229,233,184,14,208,41,67,191, +63,24,2,80,98,46,130,156,158,83,153,2,70,84,25,81, +229,19,40,232,210,41,127,191,27,32,152,196,245,231,127,254, +231,205,239,254,238,239,54,191,253,219,191,221,252,225,31,254, +97,243,23,127,241,23,205,237,111,127,251,238,95,195,252,142, +222,54,222,40,178,174,33,193,160,16,157,43,170,53,208,226, +166,213,46,33,145,56,68,9,137,62,80,4,22,1,68,9, +9,235,186,50,222,99,224,138,2,67,186,27,150,188,151,0, +43,94,131,10,26,111,71,55,67,75,40,127,70,52,50,68, +43,207,2,148,150,32,99,4,197,245,85,90,93,40,45,26, +96,168,240,158,151,33,0,6,15,0,40,164,87,233,25,90, +186,28,210,166,37,149,95,176,160,160,5,12,140,139,81,89, +143,130,4,64,104,201,25,97,13,10,207,0,22,52,160,8, +24,2,132,122,59,231,88,119,13,176,112,111,112,3,3,199, +120,80,102,62,42,19,35,50,206,5,70,101,197,128,229,197, +249,0,38,207,20,32,116,85,168,188,251,253,3,8,208,160, +246,129,133,178,208,205,81,46,186,18,186,117,202,219,111,164, +62,136,139,240,16,254,224,15,254,160,249,31,255,227,127,52, +191,255,251,191,223,252,217,159,253,89,7,132,187,223,253,238, +221,4,60,96,119,174,235,107,36,4,45,117,231,54,138,172, +107,72,136,1,24,94,84,193,181,166,90,122,149,77,5,96, +220,140,29,28,18,131,8,36,2,141,178,203,17,237,131,132, +22,204,62,176,224,26,107,181,211,213,112,47,75,219,140,128, +97,232,175,170,228,142,129,23,227,55,18,147,174,133,86,17, +4,64,130,247,99,31,35,103,196,12,91,11,106,63,24,164, +165,99,60,230,44,232,86,164,239,204,96,140,72,104,133,93, +59,160,208,58,91,242,72,228,199,136,133,25,130,2,148,242, +200,120,24,43,205,48,104,186,26,53,40,168,115,24,116,128, +17,80,212,202,152,75,205,57,150,174,225,154,140,218,243,122, +46,30,135,188,0,164,103,148,23,207,233,254,233,254,56,223, +182,223,216,61,228,15,36,60,187,124,219,159,227,246,131,52, +40,40,35,96,6,118,191,13,99,191,199,61,238,209,220,246, +182,183,157,247,16,0,225,79,254,228,79,58,32,220,251,222, +247,238,234,135,198,69,254,120,44,242,38,223,26,34,241,47, +93,54,49,39,147,169,54,210,132,170,117,13,9,149,95,255, +223,15,169,53,53,66,192,248,140,42,212,144,0,135,124,86, +191,132,68,237,85,148,144,176,238,58,60,5,149,71,122,21, +94,133,84,241,116,53,128,0,16,156,163,130,50,88,149,76, +229,20,224,76,176,82,165,215,207,86,145,181,158,96,38,29, +215,85,158,25,144,23,144,196,25,164,7,10,202,147,208,95, +246,174,7,79,197,51,38,200,198,211,96,40,134,21,117,37, +24,144,152,9,239,65,247,194,247,52,84,106,48,181,14,168, +12,79,171,27,64,200,143,125,52,70,39,175,12,47,42,111, +202,56,26,195,143,214,176,160,246,75,39,125,206,79,217,1, +28,175,193,54,40,56,46,239,150,37,132,108,203,11,80,89, +150,247,6,161,131,15,62,168,189,206,94,29,28,65,85,121, +251,141,124,96,8,16,254,252,207,255,162,133,193,239,52,191, +249,155,191,213,122,9,191,221,220,250,214,127,210,220,241,142, +127,221,220,247,190,247,235,234,1,239,79,249,131,49,160,42, +19,215,87,134,202,10,24,148,155,153,170,188,7,96,200,39, +18,125,206,110,163,200,186,134,132,31,142,241,104,145,184,246, +90,39,149,133,97,6,18,1,68,9,137,210,131,8,24,226, +57,56,167,15,18,150,174,197,141,85,137,236,227,89,164,171, +97,93,235,163,98,49,114,219,60,6,154,128,165,120,129,74, +199,171,72,164,220,113,149,20,64,24,130,86,21,28,116,71, +116,51,60,143,86,83,252,133,97,233,138,0,137,254,180,251, +121,102,231,169,200,250,201,102,114,102,74,177,17,3,199,40, +3,72,95,29,204,172,123,150,218,125,167,128,225,156,210,179, +40,189,138,26,18,81,251,75,149,158,161,7,52,129,1,111, +41,48,114,61,233,164,9,48,0,194,249,130,159,96,160,123, +98,233,25,116,27,210,93,248,155,191,121,64,219,37,184,107, +23,67,248,211,63,253,211,206,51,248,141,223,248,141,78,173, +223,230,54,183,105,238,127,255,7,182,128,247,234,254,83,26, +223,181,124,213,171,182,111,189,172,221,186,114,144,23,117,71, +89,129,187,6,199,239,99,152,26,88,189,175,2,12,70,134, +192,33,223,81,29,222,221,88,71,98,158,1,23,208,168,130, +254,162,214,149,81,105,197,25,47,99,143,39,65,185,156,254, +197,43,195,160,64,17,72,68,107,88,240,32,24,60,149,150, +97,106,169,85,82,199,210,213,160,140,155,49,3,128,115,245, +101,65,32,158,5,207,3,16,156,239,133,42,93,4,231,241, +130,180,252,12,63,222,69,166,5,243,22,140,148,104,217,0, +65,154,0,194,18,48,120,26,98,16,42,62,144,36,56,103, +159,123,0,168,253,224,160,156,18,220,227,81,0,5,143,162, +140,79,212,160,96,184,129,68,173,140,60,106,187,78,107,27, +0,92,43,176,16,51,144,7,251,226,117,0,4,79,9,128, +5,90,65,68,235,46,32,12,208,190,65,33,118,0,6,183, +190,245,173,155,63,250,163,63,106,126,253,215,127,189,245,18, +126,179,3,130,192,162,57,23,126,35,101,174,251,162,92,128, +217,51,122,14,247,56,254,248,19,58,72,243,188,192,212,239, +197,19,227,149,106,116,116,201,204,31,241,215,3,60,6,96, +240,214,39,48,152,138,61,188,42,190,206,196,164,33,193,60, +145,114,149,91,95,92,43,174,146,48,94,134,202,91,72,247, +2,28,68,175,227,77,148,158,68,13,137,128,2,8,84,82, +144,176,173,165,55,5,26,0,28,3,35,221,27,199,65,128, +65,171,220,140,92,26,93,17,75,219,140,95,55,67,222,24, +140,74,201,48,244,121,181,102,2,118,250,211,90,78,16,49, +212,169,210,2,33,131,6,33,112,224,77,100,232,142,171,77, +51,162,145,88,4,5,10,215,3,9,173,55,136,36,176,199, +72,203,110,7,143,34,202,179,96,164,233,134,196,155,96,224, +165,150,48,160,210,212,105,109,231,90,174,155,180,238,9,16, +90,114,191,157,103,1,82,113,1,195,141,98,5,98,7,134, +27,197,15,12,61,254,207,255,249,63,187,145,6,176,184,227, +29,239,216,149,189,242,84,30,153,64,229,90,174,207,11,49, +196,10,174,188,52,1,100,163,42,222,113,225,109,41,123,141, +140,58,164,156,121,11,130,145,249,218,186,15,223,234,82,4, +14,27,245,251,150,100,93,67,2,237,205,27,208,42,168,144, +140,66,11,18,119,148,113,247,65,194,186,253,129,68,64,81, +2,162,134,4,13,20,84,54,177,2,235,12,222,146,71,96, +105,172,159,81,128,3,120,232,138,128,4,15,1,40,228,75, +76,66,23,4,212,140,58,0,1,215,86,229,21,136,84,169, +181,122,188,0,96,0,38,247,211,151,207,136,135,115,129,130, +6,18,12,37,67,161,150,206,7,137,185,121,2,115,222,4, +67,226,81,0,69,237,77,68,235,46,72,186,6,1,64,169, +129,129,117,105,162,210,210,18,52,174,107,221,61,120,65,2, +134,140,254,191,254,215,255,218,121,5,64,0,12,191,245,91, +191,213,252,183,255,246,223,186,245,191,250,171,191,234,230,72, +40,91,94,5,111,209,179,128,129,60,242,96,120,31,2,202, +241,14,64,85,247,75,89,214,48,240,206,69,13,130,120,10, +165,6,12,27,25,14,145,117,13,9,228,23,152,211,122,51, +42,173,165,86,69,139,205,64,25,46,0,148,144,208,221,224, +69,128,130,99,37,44,128,161,244,40,2,137,128,194,182,107, +136,59,48,72,215,1,9,64,112,92,23,134,17,104,193,192, +64,203,152,46,7,40,24,205,80,209,109,139,155,128,153,46, +5,195,101,228,140,31,76,168,110,9,175,8,244,236,7,11, +65,75,93,14,222,132,110,134,101,233,81,24,225,145,47,94, +68,32,161,203,1,20,165,71,81,131,130,55,65,193,162,140, +83,68,203,238,71,140,190,6,66,121,172,60,14,48,206,119, +93,247,176,110,191,37,40,24,118,252,227,63,254,227,230,118, +183,187,93,215,165,224,229,41,43,207,47,255,242,235,60,247, +208,45,225,33,240,186,64,1,16,196,16,116,25,120,148,26, +140,196,17,104,60,132,128,33,80,176,172,1,145,174,196,0, +134,197,178,238,33,97,214,162,138,162,53,225,66,107,105,5, +253,180,218,90,31,6,207,152,107,72,148,128,8,36,2,136, +64,162,246,38,172,187,142,46,2,227,17,227,208,197,0,3, +173,61,163,245,134,163,151,179,128,0,168,228,195,210,182,116, +0,192,69,206,124,9,10,22,209,204,188,4,15,207,33,190, +193,96,116,69,162,160,0,24,233,106,80,158,5,72,232,114, +4,20,137,75,68,3,138,210,163,40,227,19,241,42,64,34, +45,117,148,177,247,105,9,134,82,3,13,48,160,210,90,166, +139,195,243,80,206,202,3,216,1,193,126,233,192,32,241,137, +120,8,2,212,134,136,193,64,80,49,93,6,239,160,128,65, +186,10,241,18,242,135,58,165,151,80,123,12,37,20,74,173, +101,218,177,141,32,235,26,18,42,132,74,146,25,124,42,51, +3,98,176,90,112,173,124,13,9,35,28,9,90,70,75,80, +68,3,138,210,155,8,64,24,149,46,1,131,210,175,214,178, +81,177,4,149,155,113,240,36,116,53,128,1,40,2,137,120, +16,134,61,1,194,82,176,213,18,20,172,203,63,143,3,28, +64,194,40,7,56,48,38,112,0,194,120,18,209,120,19,60, +146,120,20,241,38,162,129,68,60,138,140,116,4,20,241,42, +210,229,136,214,192,160,49,254,0,32,16,168,247,73,171,156, +92,51,235,185,166,124,8,58,235,162,25,254,21,208,229,21, +130,129,238,130,174,24,24,240,14,252,206,188,3,65,69,80, +160,101,183,1,20,74,48,212,158,65,212,190,62,169,211,149, +50,105,255,70,145,117,13,9,21,194,251,9,42,147,74,166, +117,98,28,220,115,70,201,72,25,122,13,9,75,160,176,175, +132,68,9,138,62,72,80,251,180,244,160,160,210,51,62,70, +169,91,160,155,163,101,228,117,128,4,32,112,157,121,18,214, +129,139,7,65,165,3,11,231,240,30,64,130,247,16,72,128, +131,231,0,10,144,0,7,160,0,8,251,244,205,51,20,106, +29,40,2,9,222,4,141,55,65,229,147,55,145,248,68,221, +237,0,138,192,2,40,24,115,52,208,96,216,165,6,24,165, +214,199,2,154,242,90,52,247,3,4,221,4,241,3,48,16, +159,17,63,0,3,93,5,154,174,2,32,100,221,111,31,239, +160,212,128,193,178,244,22,34,165,193,79,219,95,30,35,245, +246,70,146,117,13,9,45,135,224,165,233,201,90,32,145,114, +70,192,136,180,210,12,149,81,51,254,64,66,244,188,156,47, +17,80,148,94,68,13,137,128,34,67,161,186,24,174,15,66, +142,233,214,68,197,39,28,15,32,44,163,129,68,150,0,1, +14,165,23,193,131,0,9,241,136,120,17,0,4,18,1,5, +5,136,120,20,32,145,0,166,110,71,57,210,145,64,102,32, +81,198,38,234,64,102,13,138,104,9,138,82,75,96,148,90, +166,9,20,92,39,215,118,189,196,26,12,253,138,25,232,46, +0,2,227,79,119,129,209,199,208,99,244,211,186,9,147,180, +150,190,125,131,76,150,117,15,9,21,75,223,84,101,211,135, +85,225,19,151,208,130,51,110,70,15,4,192,144,184,132,37, +120,216,191,20,72,80,128,200,156,8,222,2,181,14,22,233, +94,88,102,100,163,132,132,46,71,130,152,52,49,9,160,160, +242,11,16,20,44,120,21,32,81,131,2,0,117,59,50,210, +209,7,9,26,111,34,67,162,1,5,5,210,73,30,69,96, +145,216,65,150,241,4,202,245,82,3,131,168,125,210,70,109, +3,68,64,228,190,150,186,26,140,190,236,38,248,93,193,160, +54,246,90,7,89,25,89,247,144,208,2,121,211,81,132,91, +92,66,235,197,72,24,153,24,0,35,142,55,161,139,1,20, +32,33,232,152,46,6,72,148,203,73,144,0,28,96,224,49, +240,22,74,21,255,152,6,9,42,63,53,36,210,229,168,33, +81,122,19,186,29,125,144,8,40,210,221,72,92,34,221,142, +50,62,145,17,143,50,152,201,171,0,139,128,66,140,34,115, +41,24,52,64,88,102,61,219,89,47,181,4,66,246,229,220, +156,99,9,70,238,231,30,60,25,93,146,120,12,132,241,3, +5,201,114,144,213,149,117,13,9,149,75,31,85,63,86,160, +75,92,194,80,25,131,96,88,12,145,1,51,240,18,18,230, +74,108,10,36,2,10,224,41,187,24,129,70,13,10,144,40, +65,81,67,34,113,137,4,50,129,66,124,34,93,14,160,3, +10,207,82,123,19,134,66,41,80,148,113,9,160,160,241,40, +210,245,232,27,26,173,187,31,64,17,88,148,221,15,26,99, +175,183,75,173,225,144,180,174,85,94,27,152,2,9,235,226, +17,129,67,148,12,144,88,27,178,174,33,161,18,241,38,4, +47,85,52,243,23,12,159,169,252,140,73,75,205,112,25,54, +227,79,119,195,11,64,98,19,1,195,114,33,145,174,6,213, +5,153,4,137,120,19,1,69,186,28,233,118,4,18,233,118, +128,68,64,145,46,71,186,29,37,40,226,77,80,160,224,77, +148,160,232,139,79,128,68,221,245,168,189,9,70,155,101,70, +62,178,172,161,17,45,33,209,7,135,104,174,29,79,194,54, +149,23,111,201,250,45,227,81,232,122,12,93,138,181,35,235, +26,18,42,145,10,229,179,108,226,18,230,75,24,134,212,98, +105,97,25,28,99,101,204,12,159,39,1,18,241,36,64,193, +62,90,194,98,169,144,176,94,67,34,160,168,33,65,251,32, +1,16,129,68,188,9,26,111,34,35,29,70,84,2,138,50, +128,153,174,71,61,210,145,174,7,80,148,243,39,202,96,102, +186,30,165,55,97,73,25,112,90,255,120,0,12,188,79,75, +24,208,236,119,78,212,53,2,6,247,113,79,10,86,102,77, +242,8,227,69,208,1,16,107,71,214,189,39,161,245,17,151, +240,6,164,183,247,204,118,20,36,99,48,90,99,198,169,123, +192,232,141,100,148,49,137,108,211,0,98,41,144,72,0,51, +203,62,72,240,38,64,162,4,69,13,137,196,37,104,186,28, +1,69,9,9,93,142,62,72,240,40,44,19,155,8,36,74, +143,34,93,143,196,39,202,96,102,25,163,8,40,106,207,34, +90,2,163,212,18,4,165,58,86,66,193,210,254,92,159,230, +254,186,40,70,168,2,125,75,191,235,32,107,67,214,61,36, +184,167,90,33,99,235,222,230,243,202,175,201,60,12,34,193, +75,6,28,72,240,26,116,53,128,34,30,4,72,56,22,64, +68,167,121,18,125,160,168,33,193,155,40,61,10,144,144,159, +18,18,241,38,18,192,140,71,81,118,57,106,72,36,54,17, +111,34,93,142,120,19,117,215,163,6,69,159,71,145,238,71, +70,63,98,220,241,48,178,157,245,26,22,37,20,202,115,105, +160,96,189,140,135,184,127,96,229,53,109,162,251,152,223,117, +240,38,214,134,172,107,72,168,72,212,228,26,147,111,242,178, +151,183,0,85,124,134,197,16,25,44,72,0,2,24,240,34, +196,37,64,2,12,74,72,148,160,152,213,229,0,136,232,164, +184,68,9,137,50,46,1,18,165,55,49,9,18,9,96,150, +93,142,104,60,137,122,72,180,244,40,2,137,114,196,35,222, +4,227,172,85,75,207,128,75,15,35,240,136,183,81,194,34, +64,40,161,16,13,28,156,151,235,228,90,185,159,124,0,152, +153,170,0,193,131,0,9,146,229,32,171,43,91,5,36,84, +46,147,170,196,37,204,241,23,151,80,105,19,188,100,168,140, +27,0,192,128,39,17,72,0,129,165,253,147,226,18,53,40, +150,10,137,128,162,134,68,159,55,1,18,81,160,72,151,163, +30,14,5,138,168,231,11,40,50,210,17,80,148,176,168,3, +153,101,183,131,242,44,226,93,80,173,123,60,138,120,0,60, +5,101,26,112,228,88,9,129,18,4,37,16,74,5,31,112, +112,143,220,79,222,116,17,189,135,3,12,241,32,6,72,172, +13,89,247,221,13,170,31,43,46,225,149,96,211,124,77,208, +209,207,101,52,90,101,6,90,66,34,158,4,15,2,12,236, +139,214,144,232,243,38,102,65,162,6,197,52,72,212,222,68, +13,137,114,72,20,40,2,11,170,219,81,118,61,74,80,212, +94,69,64,17,141,71,1,14,150,129,134,109,198,14,8,49, +98,198,158,99,12,61,0,168,161,80,130,160,84,80,168,225, +16,48,81,158,142,251,251,79,145,64,34,58,200,234,203,186, +134,68,42,18,23,213,212,94,243,37,188,236,229,203,67,94, +46,98,24,140,140,113,50,108,198,207,107,200,48,168,37,24, +196,131,8,40,164,155,230,77,244,65,162,14,96,130,68,217, +237,40,65,17,72,244,197,38,2,139,116,57,2,137,50,62, +17,45,99,20,101,215,35,176,8,48,202,24,5,131,76,23, +36,160,8,44,18,31,176,206,219,96,204,64,192,147,96,228, +57,110,189,132,69,13,6,105,74,117,94,9,135,220,211,61, +228,65,94,228,205,239,150,152,132,229,32,107,67,214,53,36, +72,32,33,120,233,45,65,193,75,255,57,233,27,137,42,98, +130,151,140,152,193,131,0,80,24,6,213,237,8,28,2,138, +232,52,111,98,26,36,38,197,38,150,226,77,0,69,96,17, +111,162,236,118,212,144,72,140,162,14,102,150,115,40,250,64, +145,128,102,186,31,233,130,196,128,179,206,192,173,243,60,178, +205,208,3,139,82,75,16,68,157,83,106,13,7,247,119,109, +121,225,245,120,189,92,0,218,111,202,59,28,100,109,200,86, +227,73,8,94,122,125,216,164,42,113,9,31,129,213,194,49, +34,134,199,112,227,77,128,2,72,228,181,113,26,48,212,144, +40,189,137,91,2,18,181,55,81,67,162,236,110,212,144,232, +155,63,81,122,20,1,69,221,245,8,36,210,245,208,146,83, +235,142,7,18,246,137,69,120,187,214,228,40,134,207,200,29, +235,131,65,32,80,194,32,154,237,64,41,128,136,23,1,102, +246,153,57,43,206,148,110,199,32,171,47,91,13,36,18,151, +16,188,212,183,245,157,2,21,156,193,112,223,25,107,217,229, +48,4,74,51,178,17,56,44,21,18,1,69,52,160,168,187, +29,180,142,75,4,20,129,68,128,17,64,68,65,162,111,164, +131,218,6,10,96,0,10,158,4,80,80,207,108,63,48,128, +4,56,80,134,104,105,63,72,48,78,134,25,72,164,69,143, +135,97,246,170,178,20,231,241,73,56,95,172,214,189,96,240, +210,88,6,14,37,0,2,6,105,162,125,112,8,32,128,9, +200,0,206,172,89,192,207,111,59,200,234,203,86,209,221,208, +242,0,133,87,140,5,47,197,37,76,245,21,49,87,233,25, +27,3,101,204,140,31,24,120,17,129,4,40,0,5,117,60, +90,66,162,4,69,9,137,172,211,218,171,40,61,10,222,132, +60,68,203,216,132,101,160,81,198,39,0,2,224,228,159,103, +145,46,7,104,240,34,172,199,147,0,16,158,131,117,128,176, +14,22,182,25,31,205,190,0,35,64,224,230,251,162,150,143, +229,232,58,196,240,125,223,193,144,178,152,132,227,62,206,235, +133,44,134,77,197,31,120,18,37,12,74,141,167,18,45,97, +20,72,1,68,32,33,175,186,137,102,208,250,77,7,89,27, +178,85,64,130,107,170,82,105,129,4,47,125,226,204,223,177, +169,244,42,37,227,98,132,140,151,177,131,65,38,84,197,147, +40,189,137,26,20,129,68,13,138,210,147,160,125,128,136,6, +20,60,138,120,21,181,55,1,28,214,211,221,72,0,51,112, +176,143,2,130,253,246,89,47,131,151,12,45,241,10,10,6, +129,135,165,180,206,227,97,128,4,8,136,227,152,210,174,171, +102,248,24,20,64,194,176,178,233,213,174,167,187,33,29,72, +240,8,98,244,96,16,207,97,22,20,250,224,64,227,221,200, +155,227,224,52,196,36,214,142,172,123,72,144,128,66,197,242, +178,151,73,85,62,47,167,85,210,210,105,117,25,31,227,101, +224,64,16,72,24,225,8,36,250,64,81,123,19,147,64,49, +173,187,17,77,124,34,26,80,80,30,68,20,28,168,117,80, +0,15,113,139,196,33,18,204,116,140,193,59,22,175,195,126, +144,113,77,30,7,24,240,30,188,83,161,219,96,106,52,176, +128,7,195,214,61,211,141,208,146,251,200,44,80,72,195,104, +197,118,124,245,203,113,159,164,247,225,89,231,185,38,80,56, +103,26,12,104,188,142,104,13,6,154,184,137,107,203,155,215, +254,135,152,196,218,145,173,2,18,68,133,210,229,224,170,250, +130,182,74,45,120,105,8,143,251,205,224,24,110,32,97,174, +68,32,145,224,101,9,137,62,80,68,39,121,19,53,36,74, +80,88,79,32,179,12,102,38,70,145,224,37,152,89,79,16, +19,16,120,18,32,224,28,199,129,34,221,16,144,176,13,24, +0,225,243,246,254,199,131,177,57,102,159,216,140,81,3,229, +193,224,125,127,195,72,4,143,193,4,38,113,6,101,100,216, +216,71,102,77,144,114,156,1,243,200,164,7,152,116,229,192, +37,240,1,2,233,64,130,241,247,193,160,84,105,1,33,80, +112,157,140,204,216,150,95,223,13,205,39,234,6,89,125,89, +247,129,203,136,150,7,36,124,169,74,101,214,26,233,71,115, +151,85,72,70,196,72,25,55,195,7,7,144,0,11,93,142, +190,110,71,64,81,2,162,246,36,74,45,61,138,18,20,209, +73,144,224,81,196,179,200,182,238,7,143,64,26,235,0,194, +160,124,245,201,223,7,120,115,82,107,14,20,238,45,157,227, +224,168,28,120,3,224,162,155,161,12,196,103,92,3,108,92, +195,112,49,131,245,53,106,47,87,129,65,254,91,149,49,187, +150,248,4,64,128,8,16,241,202,4,50,93,139,7,1,16, +242,160,27,195,192,93,111,18,16,74,48,4,14,81,231,7, +20,188,37,192,145,191,193,147,88,27,178,85,64,194,50,144, +48,194,225,203,202,130,108,190,84,197,32,84,58,45,20,67, +100,200,140,125,26,36,74,80,148,222,68,221,221,168,181,15, +20,81,222,68,13,137,64,129,129,75,111,157,209,131,67,188, +11,112,163,190,248,196,64,117,1,188,233,234,115,125,64,168, +31,47,61,15,67,12,230,180,211,78,235,12,204,140,83,251, +181,250,188,3,159,246,115,77,192,225,101,184,22,163,100,232, +190,15,106,91,121,137,231,24,134,228,13,232,162,232,126,240, +8,196,55,128,66,236,2,124,29,119,126,9,134,128,192,190, +0,34,80,168,225,0,12,148,55,146,37,80,128,132,223,202, +239,55,64,98,109,200,86,5,9,193,203,242,141,80,6,195, +112,4,225,184,222,140,146,1,51,116,80,0,9,177,9,235, +101,151,163,134,68,233,69,4,18,37,40,234,238,199,180,248, +4,56,208,128,130,225,50,30,238,61,160,229,255,42,180,226, +241,52,116,11,24,141,22,220,51,0,137,243,25,151,117,16, +225,49,248,75,59,231,251,223,15,179,23,5,50,65,196,52, +117,95,247,206,168,8,131,231,53,248,104,173,123,130,2,143, +64,90,129,72,127,133,39,80,89,2,70,30,228,203,95,28, +90,186,142,124,247,129,32,90,123,11,129,1,205,136,11,208, +200,187,101,60,9,112,243,194,151,223,180,79,6,120,172,172, +108,85,49,9,149,42,111,132,230,75,85,130,151,134,234,84, +68,173,40,195,101,232,153,43,145,47,103,3,67,13,139,18, +18,206,153,6,139,0,162,175,203,97,155,113,107,237,203,248, +4,72,48,8,6,204,176,205,237,240,249,61,158,130,252,51, +26,222,4,227,55,234,96,221,53,116,27,60,75,70,63,108, +235,10,248,223,10,176,49,249,73,172,33,243,43,128,64,183, +2,28,236,115,30,143,132,199,101,180,194,119,56,120,11,64, +170,53,7,16,111,210,50,102,249,225,61,240,92,92,95,112, +83,87,67,121,2,1,72,148,48,168,161,16,48,4,10,1, +67,20,152,228,43,160,176,4,62,158,10,232,7,8,126,91, +154,223,121,0,197,202,201,86,19,147,72,229,49,231,191,14, +94,122,89,73,69,21,8,100,164,140,26,8,0,34,144,176, +157,101,95,119,163,244,40,2,138,218,163,0,138,62,111,194, +58,183,222,167,221,24,58,120,0,4,88,200,19,72,200,167, +188,73,107,191,81,5,45,54,215,91,183,194,51,0,75,186, +35,224,192,131,96,244,174,41,173,185,33,140,142,235,175,203, +33,150,192,240,157,171,44,0,36,144,224,45,128,168,32,37, +239,64,44,194,228,41,223,227,224,181,216,159,56,1,79,204, +43,225,64,4,0,202,50,48,136,177,219,87,123,11,180,15, +14,174,43,159,20,20,120,37,60,8,106,219,51,203,163,225, +108,191,41,177,20,200,28,0,177,242,178,85,66,34,193,75, +149,95,255,153,113,50,28,134,197,77,103,200,0,160,171,1, +18,25,225,136,71,17,64,212,58,173,235,81,195,34,160,160, +182,25,172,238,15,67,0,1,144,176,31,48,228,47,144,112, +62,8,136,13,136,67,104,101,181,224,210,240,24,28,3,22, +235,9,68,50,58,128,48,43,146,55,162,213,231,81,1,13, +131,227,77,184,62,143,194,185,160,194,211,208,181,96,168,238, +35,112,105,216,152,23,227,94,129,1,163,150,7,42,109,12, +222,61,169,245,192,33,199,162,129,66,9,135,0,2,12,114, +93,10,102,212,49,249,213,205,242,97,227,252,174,148,103,17, +72,12,147,173,86,78,182,42,72,80,193,203,196,37,244,181, +181,140,92,106,6,81,6,47,25,188,160,37,72,36,120,89, +123,17,181,214,30,197,36,80,4,18,1,133,180,140,131,33, +90,74,3,86,233,138,104,181,65,65,55,193,240,165,121,30, +128,2,2,140,154,241,250,227,33,94,9,144,100,248,19,48, +116,99,24,150,231,116,13,176,112,29,222,128,46,6,32,48, +62,221,7,221,6,35,35,150,210,2,150,99,202,133,17,103, +56,51,6,157,248,5,131,7,13,203,24,186,253,210,129,131, +37,163,207,49,42,79,181,74,19,56,228,222,241,32,228,33, +195,182,233,70,241,92,252,166,60,8,26,56,100,57,200,202, +200,186,134,132,86,37,18,72,196,155,16,151,16,116,203,151, +170,4,2,85,122,45,84,226,18,192,0,18,60,138,122,190, +68,169,53,36,2,138,64,34,160,152,228,73,240,22,84,126, +45,163,138,47,77,188,9,199,25,149,209,5,111,175,26,149, +96,168,140,219,53,164,17,87,49,79,65,255,63,193,87,144, +1,12,207,38,200,199,200,98,116,206,53,215,192,204,69,177, +11,93,12,134,233,186,130,152,186,26,12,190,108,205,197,23, +98,188,142,241,34,24,118,140,62,215,183,30,15,163,52,120, +101,27,8,68,115,237,104,186,21,174,67,3,5,154,235,91, +2,163,251,120,142,76,209,6,127,191,111,150,131,172,156,108, +149,144,80,145,234,191,255,211,47,87,249,85,60,70,203,168, +1,33,93,14,222,68,32,81,122,21,129,68,9,136,64,162, +246,38,250,188,8,64,74,183,34,255,48,22,72,24,189,16, +103,96,80,60,7,35,12,238,45,109,134,43,65,193,58,15, +3,40,76,120,98,188,90,125,35,24,2,156,38,75,57,7, +80,92,143,135,33,77,98,16,158,89,252,66,235,204,0,237, +179,46,56,200,112,181,220,12,150,33,203,75,140,85,26,199, +203,110,135,99,1,66,210,39,14,17,24,80,105,162,37,24, +168,123,69,235,109,247,149,87,231,120,126,65,91,191,41,245, +251,198,147,40,127,251,65,110,89,217,234,186,27,42,143,138, +100,190,132,150,84,255,252,216,99,143,237,198,252,181,150,12, +34,125,127,0,40,167,103,7,16,209,26,18,165,71,209,7, +9,48,40,189,136,4,46,237,179,109,132,66,203,207,144,237, +183,79,90,83,168,5,47,13,73,102,104,52,6,15,18,142, +51,124,128,240,60,186,10,70,36,24,16,240,25,241,160,96, +66,147,158,209,49,182,24,31,56,232,239,219,87,110,83,134, +29,99,182,164,90,115,231,74,39,125,140,222,62,75,128,200, +241,236,11,20,74,173,65,16,205,189,117,157,2,174,12,233, +130,25,213,21,75,192,50,128,32,26,130,65,86,70,214,53, +36,106,9,36,168,184,68,190,84,197,197,22,151,48,116,167, +18,50,64,134,203,224,121,16,32,17,48,4,22,129,67,169, +37,52,38,117,55,74,80,4,22,150,192,34,32,8,88,12, +223,61,164,11,20,76,167,54,188,24,239,33,160,112,156,225, +39,134,1,0,140,8,4,28,183,205,83,72,32,147,97,1, +97,52,30,132,231,142,198,232,163,49,214,218,120,173,151,134, +94,2,36,219,165,246,237,207,53,235,107,231,222,129,67,169, +242,44,239,158,7,4,121,133,4,36,40,41,27,136,65,110, +89,217,106,33,33,186,239,101,47,193,75,45,174,96,158,161, +60,21,148,155,207,64,25,46,72,248,0,13,56,4,18,150, +140,120,18,36,74,79,162,84,160,136,150,192,160,206,211,157, +48,212,40,54,32,144,10,26,166,87,91,151,55,19,161,24, +136,244,37,44,128,192,58,80,88,58,150,137,86,214,65,34, +202,176,24,24,136,148,144,160,0,145,37,227,44,97,17,227, +45,13,216,122,109,220,125,6,159,253,179,192,64,115,237,220, +95,94,228,49,154,188,131,157,231,145,214,156,14,2,16,126, +91,50,64,98,229,100,171,133,68,230,75,232,179,27,29,240, +98,147,47,85,113,171,25,86,90,119,80,200,63,122,89,47, +33,17,175,33,128,200,186,243,2,138,114,189,244,42,2,138, +192,194,121,226,4,242,98,152,82,176,81,215,195,204,70,110, +189,238,71,188,3,221,161,196,43,226,73,80,128,0,12,42, +157,46,6,67,74,119,35,144,112,157,104,64,81,106,9,141, +26,24,49,92,26,80,100,191,101,169,57,47,199,250,96,208, +151,214,181,147,7,249,41,243,75,1,194,115,228,217,116,195, +0,66,23,195,111,59,0,98,101,101,171,134,132,249,18,94, +133,78,92,66,128,143,251,170,18,50,74,198,13,6,153,158, +93,67,34,160,40,181,132,68,52,251,234,174,71,0,145,46, +7,227,7,10,160,98,232,64,144,46,9,24,208,192,193,121, +210,100,95,212,62,144,3,141,24,145,237,64,34,160,136,6, +20,165,78,3,70,212,190,24,127,105,228,147,12,191,214,250, +122,185,102,192,64,229,165,6,4,13,36,168,231,52,27,148, +87,24,72,208,65,86,78,182,90,72,8,118,249,130,182,191, +255,51,169,74,92,194,164,33,147,170,84,88,253,123,6,205, +192,203,233,217,117,151,163,4,68,233,93,76,130,68,237,69, +208,192,195,186,99,9,102,2,4,143,192,122,2,153,182,65, +194,104,69,134,73,3,16,106,155,71,193,120,128,33,158,69, +186,29,246,213,192,232,51,68,90,67,35,70,28,85,78,181, +209,79,3,65,121,110,174,25,205,189,2,6,32,136,150,121, +202,62,249,150,127,207,166,203,146,111,76,208,193,147,88,89, +217,106,33,193,61,229,77,152,158,44,46,97,34,147,209,1, +47,45,233,55,51,56,70,171,155,144,97,80,16,232,243,38, +162,37,56,250,60,138,196,38,2,133,18,24,140,30,4,28, +183,4,2,105,172,243,48,168,125,150,224,1,2,12,63,208, +160,37,44,120,21,233,130,164,27,18,72,88,47,97,193,224, +74,163,140,198,48,75,3,46,13,218,122,96,17,99,47,65, +48,11,6,180,4,0,205,189,227,41,212,249,203,62,121,247, +252,241,146,204,251,40,187,27,3,40,86,78,182,42,72,144, +128,194,82,165,242,5,109,147,170,4,12,5,9,243,178,23, +35,211,130,51,212,18,18,181,39,81,170,125,116,146,55,81, +238,171,129,17,56,0,70,150,1,66,60,10,222,4,0,216, +47,141,252,5,16,241,32,228,219,122,186,31,89,15,24,24, +85,0,83,66,162,214,24,101,109,196,165,33,91,175,141,127, +26,12,234,237,82,115,77,234,254,242,85,170,188,38,191,229, +115,80,101,98,50,156,97,237,242,183,29,100,101,100,171,131, +68,41,60,137,76,170,242,233,53,193,66,175,60,155,24,164, +178,50,78,134,13,16,254,172,167,12,94,6,20,53,44,210, +245,136,6,14,37,36,2,135,210,147,200,50,221,140,62,5, +6,10,22,52,93,14,208,96,40,128,64,227,77,68,3,10, +6,5,22,125,154,86,153,6,18,1,70,105,172,125,0,97, +244,53,24,114,108,146,230,26,185,190,101,142,5,4,212,126, +75,0,148,183,156,39,207,158,9,32,149,179,88,142,119,81, +226,77,248,232,241,32,43,35,91,45,36,180,54,226,18,153, +84,101,218,179,151,151,140,38,152,84,165,210,51,68,6,157, +185,18,53,36,2,138,18,18,179,64,81,66,162,4,197,52, +72,212,96,8,28,162,32,65,235,46,71,13,137,196,42,250, +96,17,64,88,47,161,208,167,12,55,26,163,45,181,4,65, +140,220,18,60,236,11,0,92,43,233,115,61,251,250,142,203, +91,188,6,101,149,161,233,251,222,247,190,205,3,31,248,192, +238,5,57,241,37,224,167,64,49,200,202,200,86,15,9,147, +170,84,46,51,20,77,99,206,39,225,5,222,24,32,67,6, +131,18,18,150,89,239,243,38,166,193,162,236,110,4,20,37, +48,2,138,82,39,1,34,112,200,118,246,5,22,37,52,2, +138,192,162,4,70,13,141,0,35,198,26,131,93,170,50,236, +104,12,159,186,78,64,100,153,180,1,137,109,235,246,217,150, +111,128,84,150,15,120,192,3,154,123,220,227,30,205,95,255, +245,95,55,119,184,195,29,154,187,223,253,238,29,36,92,203, +68,179,43,175,188,114,254,187,151,153,129,57,200,202,200,86, +13,9,174,169,138,149,47,85,121,129,74,133,75,240,146,145, +49,92,16,200,48,104,0,17,72,148,160,152,4,140,18,18, +53,40,74,45,65,17,5,137,116,51,226,81,4,22,165,102, +127,9,138,82,75,88,148,192,40,161,81,194,99,26,48,178, +175,214,24,122,159,50,252,120,23,209,120,15,89,151,119,229, +117,255,251,223,191,3,2,24,220,246,182,183,109,254,242,47, +255,178,185,221,237,110,215,1,226,158,247,188,103,247,91,120, +70,51,56,77,203,246,54,43,208,27,210,6,125,93,13,191, +111,116,144,91,86,182,106,72,24,225,208,234,228,75,85,102, +238,121,85,218,164,42,19,152,24,12,35,85,113,85,204,128, +162,132,69,31,36,38,129,34,144,40,65,81,2,35,144,40, +181,246,44,202,216,68,160,81,106,9,138,82,107,104,4,22, +53,48,232,36,15,163,214,73,144,8,72,234,180,64,144,120, +133,107,123,62,177,158,187,221,237,110,205,95,252,197,95,52, +127,246,103,127,214,41,40,220,254,246,183,111,238,120,199,59, +54,119,190,243,157,59,48,232,86,72,171,236,149,31,224,25, +250,244,214,172,88,18,200,251,70,136,97,109,191,105,98,19, +9,100,14,114,203,201,86,15,9,170,5,18,151,240,22,165, +217,142,249,130,182,202,206,240,84,74,193,203,18,18,1,197, +36,111,162,6,69,13,9,186,28,80,148,176,88,74,204,34, +176,232,3,6,5,135,218,187,136,198,155,168,181,246,50,98, +252,1,132,109,199,3,11,80,8,52,92,215,51,50,118,0, +248,227,63,254,227,230,79,254,228,79,154,219,220,230,54,29, +12,238,114,151,187,116,176,224,65,220,235,94,247,106,238,115, +159,251,116,30,133,120,67,130,198,202,198,51,186,22,216,120, +179,84,12,201,219,179,222,193,241,161,28,159,220,19,140,230, +33,150,144,24,64,113,203,201,86,11,9,149,7,32,44,19, +151,200,23,180,125,80,214,171,214,90,60,6,197,120,85,82, +160,168,33,49,13,20,179,32,81,131,34,144,8,40,178,62, +9,18,224,80,122,23,129,67,128,17,72,244,193,34,128,232, +3,69,13,9,219,52,93,147,128,162,4,4,77,247,65,26, +249,18,71,208,101,248,195,63,252,195,230,119,127,247,119,155, +223,255,253,223,111,254,244,79,255,180,249,171,191,250,171,14, +10,128,192,75,232,131,2,32,43,183,128,65,30,1,199,156, +12,51,82,197,141,116,53,188,115,227,221,27,128,55,123,214, +188,23,128,72,240,114,128,196,45,47,91,125,76,130,234,195, +170,92,230,75,152,84,229,69,42,113,9,144,224,154,51,88, +80,200,63,141,151,160,152,6,139,18,16,165,246,1,162,134, +4,181,77,227,77,4,18,37,24,74,96,4,14,81,251,45, +75,80,196,195,8,40,64,193,50,199,203,174,72,9,144,0, +34,26,79,194,49,249,99,212,12,95,119,1,12,126,231,119, +126,167,249,131,63,248,131,46,166,192,67,184,247,189,239,221, +41,24,240,38,0,33,239,196,40,35,229,225,25,229,87,30, +92,219,100,44,93,10,175,151,251,38,5,112,251,31,82,195, +212,251,238,187,239,252,55,55,13,95,27,254,212,221,48,239, +5,244,211,229,72,67,48,64,226,150,147,173,30,18,42,145, +150,199,203,94,230,75,120,193,74,229,19,151,48,194,193,56, +84,94,198,207,16,54,21,18,89,47,247,149,192,160,75,129, +132,37,13,24,226,77,196,243,176,12,28,74,77,218,108,131, +5,80,36,70,17,5,133,0,132,199,192,83,8,12,64,196, +53,228,245,126,247,187,95,231,37,240,12,120,10,255,235,127, +253,175,110,93,215,225,174,119,189,107,231,29,72,3,6,150, +188,10,101,167,124,60,183,188,186,150,123,129,14,47,193,176, +179,151,191,120,10,160,224,255,80,64,193,191,172,233,86,24, +121,18,88,246,145,32,31,217,241,85,49,31,240,245,253,140, +120,17,186,26,160,15,18,233,78,14,128,184,101,101,171,143, +73,104,101,84,40,113,9,255,70,149,151,189,196,37,84,86, +134,194,232,24,182,74,190,20,72,4,20,53,24,2,143,26, +32,129,69,233,77,4,16,217,14,40,162,241,38,74,112,88, +103,120,241,22,234,238,71,192,16,56,36,77,60,136,18,20, +246,185,55,48,242,0,4,16,197,18,196,17,110,125,235,91, +119,64,48,226,144,192,226,54,219,108,211,121,8,1,66,188, +132,0,65,222,220,203,181,65,199,136,6,8,27,161,48,121, +77,12,40,80,48,231,193,63,140,121,187,211,39,251,77,185, +22,119,208,21,244,137,63,95,241,214,189,48,157,222,208,167, +223,77,240,217,156,23,94,132,174,198,224,69,172,156,108,181, +144,32,169,64,32,161,130,137,75,248,162,180,73,85,226,18, +222,8,213,146,50,48,70,12,8,75,133,68,31,40,166,1, +162,132,68,52,221,144,18,18,150,89,7,137,104,60,133,108, +7,24,209,192,32,96,136,199,224,217,164,117,31,64,96,236, +186,13,188,4,65,197,63,255,243,63,239,70,30,50,4,105, +126,2,47,33,147,152,226,93,81,207,230,58,241,102,92,31, +100,1,65,44,193,176,178,153,145,62,154,43,166,224,27,25, +166,193,235,62,248,50,152,46,4,40,240,228,124,165,203,75, +119,226,13,60,6,35,79,126,27,94,131,110,161,191,68,208, +189,0,135,12,125,130,67,60,8,191,107,116,144,91,86,182, +106,72,164,18,169,88,134,206,124,169,202,164,42,227,238,94, +246,242,241,23,21,60,173,234,44,72,148,26,72,148,80,168, +1,17,56,148,144,232,83,247,14,40,104,214,3,2,203,210, +155,96,248,1,66,233,69,4,8,174,39,127,186,2,128,0, +0,134,29,163,182,65,162,28,126,140,119,16,40,120,70,207, +225,90,242,0,58,186,36,188,4,221,6,30,130,97,100,221, +6,229,200,75,48,92,169,235,144,255,30,85,198,186,15,60, +5,80,240,247,6,98,12,241,22,124,181,219,168,133,225,77, +67,212,70,160,128,92,183,66,236,1,28,116,45,74,56,12, +158,195,202,203,86,15,9,162,114,169,108,121,217,75,203,229, +11,212,190,8,37,120,150,224,220,114,33,81,130,130,214,222, +69,60,137,218,155,232,83,96,40,85,126,106,207,2,0,180, +224,129,2,72,72,43,207,2,134,98,5,0,160,171,16,15, +65,96,209,104,67,128,32,29,32,100,148,193,185,242,45,143, +128,224,62,174,47,86,83,199,17,116,27,76,105,23,96,20, +248,229,37,248,211,30,95,248,22,79,16,16,86,174,62,195, +167,251,32,174,0,10,62,242,43,22,228,95,202,120,11,37, +24,196,26,12,107,150,96,0,244,192,97,232,86,172,190,108, +213,49,9,21,139,88,198,155,224,198,250,130,182,63,171,241, +53,105,209,117,46,51,3,100,48,90,210,77,129,132,245,122, +127,96,17,96,44,197,155,176,164,37,36,128,1,20,44,93, +135,145,27,94,228,21,136,33,252,209,31,253,209,124,12,225, +78,119,186,83,7,4,199,1,33,193,197,58,142,224,158,1, +2,72,26,226,52,218,147,56,2,47,65,183,193,7,95,0, +65,160,23,16,124,114,15,16,116,27,188,85,43,200,104,238, +9,32,136,41,24,61,242,103,66,186,15,60,133,62,40,152, +239,192,99,240,33,25,1,101,191,139,238,68,166,93,215,96, +232,131,195,0,140,149,147,173,218,147,32,129,133,74,39,46, +33,8,150,151,189,84,122,198,32,46,193,96,0,33,174,182, +37,163,178,143,209,91,198,29,183,30,8,88,74,111,31,181, +30,112,68,165,3,136,164,143,145,150,222,69,150,129,2,104, +89,119,63,49,2,30,65,70,25,44,65,1,16,12,63,242, +16,50,252,8,8,153,135,144,124,186,182,231,3,154,116,25, +204,119,0,4,195,143,98,51,233,50,0,2,120,154,163,32, +142,224,95,191,252,133,160,79,237,153,173,106,246,163,110,131, +46,27,15,193,84,119,208,21,16,6,4,31,248,17,87,48, +100,233,63,69,65,25,20,116,245,120,11,98,12,70,40,18, +132,4,6,80,8,24,232,0,128,181,37,27,6,18,84,165, +228,218,138,75,112,131,185,201,90,75,45,168,22,149,65,165, +79,110,25,99,11,4,2,0,235,246,131,70,220,245,192,32, +30,67,169,246,73,227,120,90,112,16,224,57,36,77,238,45, +62,192,19,48,31,1,16,204,69,176,110,232,49,222,65,188, +2,94,66,102,43,58,223,125,92,51,65,69,64,0,192,4, +22,203,145,134,204,73,48,210,224,179,126,60,4,129,197,18, +8,70,129,210,101,16,71,224,33,4,8,190,20,165,28,121, +8,186,112,128,96,36,34,80,72,108,1,20,120,11,186,17, +37,24,74,143,33,94,67,60,135,65,214,150,108,213,221,141, +44,163,250,184,42,173,191,209,83,225,5,214,180,158,12,136, +81,49,96,198,23,227,47,215,129,193,146,50,202,128,129,150, +158,70,210,74,147,116,224,160,11,193,136,237,3,3,49,1, +6,207,11,200,124,132,223,251,189,223,155,159,143,192,75,40, +39,40,101,232,177,244,18,2,156,140,102,152,143,16,32,240, +16,210,101,48,210,144,24,130,63,41,10,16,116,25,234,24, +2,15,65,151,193,71,122,76,98,210,101,8,16,12,73,250, +247,175,120,8,2,141,70,32,18,83,80,182,226,10,241,20, +196,21,50,59,18,20,74,48,228,55,169,127,163,65,214,158, +108,24,72,16,149,83,229,213,47,54,73,135,129,136,200,27, +186,211,234,106,133,25,33,173,189,133,24,124,212,182,52,165, +218,151,22,61,222,131,115,93,143,161,235,26,8,34,230,101, +167,4,24,117,37,64,65,183,34,32,0,17,235,185,30,111, +3,104,120,32,128,38,176,168,203,144,89,139,249,39,173,12, +61,250,146,147,46,67,70,26,120,8,98,8,241,16,202,46, +67,98,8,60,4,243,19,64,193,20,118,93,6,64,229,33, +40,51,93,53,64,240,86,109,128,16,47,33,113,133,128,161, +134,66,60,133,120,11,3,16,214,143,108,245,144,32,89,87, +65,85,98,174,176,96,90,190,84,165,197,21,188,212,42,199, +123,96,244,241,28,2,128,64,195,178,4,7,79,129,74,199, +184,25,59,163,207,208,35,16,128,66,230,35,232,58,0,6, +112,72,159,107,198,67,0,134,0,33,195,143,128,144,185,8, +70,26,204,71,16,84,52,66,35,134,96,232,209,4,165,50, +134,96,232,49,49,132,4,21,19,67,0,73,49,132,218,67, +48,43,21,16,120,8,226,8,128,32,192,88,142,60,196,59, +136,6,6,165,166,27,17,64,4,12,181,14,178,246,101,171, +143,73,144,84,82,203,116,57,244,163,25,142,47,104,103,190, +4,131,100,252,241,30,74,24,196,128,227,73,88,23,36,20, +39,48,9,137,241,215,30,130,25,140,9,46,150,19,148,114, +253,0,38,1,75,113,17,51,34,203,9,74,25,105,200,208, +35,47,65,28,65,208,85,222,141,52,120,9,202,4,37,221, +6,35,13,254,89,60,147,148,204,71,0,4,193,90,65,197, +210,67,72,151,129,135,0,156,160,80,2,129,215,85,122,8, +1,66,12,127,41,16,136,14,178,126,101,67,4,46,83,145, +3,137,116,57,180,170,198,246,181,198,34,253,12,20,16,184, +251,12,57,198,12,8,246,49,114,80,208,101,0,130,12,61, +154,185,104,95,94,137,174,231,35,184,142,235,6,8,9,46, +242,16,0,33,221,134,114,130,18,47,193,63,126,137,35,164, +219,16,47,65,55,169,12,44,6,8,153,139,160,203,192,83, +226,33,36,168,24,15,33,65,69,30,66,226,7,101,80,177, +236,46,196,43,24,100,99,203,134,240,36,210,154,165,245,203, +40,135,62,56,99,211,127,215,175,23,151,224,230,243,26,18, +84,100,248,229,92,4,221,7,30,2,239,161,244,16,74,32, +196,251,16,71,224,33,240,80,196,17,234,23,157,196,17,50, +252,232,127,74,51,99,81,183,129,151,224,221,134,122,198,98, +217,109,16,88,204,72,67,233,33,128,2,239,32,93,134,114, +148,1,20,234,248,65,60,132,120,9,37,84,233,32,27,91, +54,4,36,34,129,4,195,224,86,235,143,251,55,111,67,128, +90,112,19,138,64,194,204,69,175,67,155,143,160,27,145,201, +73,70,26,188,251,144,185,8,165,167,33,184,40,166,193,67, +48,19,50,195,143,153,160,100,180,193,240,99,128,96,248,209, +4,37,163,13,134,98,243,178,147,110,131,137,94,153,160,228, +187,156,233,54,212,64,224,37,152,160,164,219,0,10,1,66, +38,41,101,148,1,20,250,128,80,198,14,2,132,0,181,212, +65,54,182,108,40,72,168,240,12,129,129,112,177,181,184,12, +208,80,168,254,62,99,206,11,95,226,5,32,192,67,0,5, +48,208,93,0,131,196,16,50,31,161,244,16,252,253,93,31, +16,120,8,96,196,67,248,192,7,62,208,197,17,120,8,128, +96,98,23,15,33,35,13,245,208,99,102,43,150,115,16,116, +23,18,84,4,132,186,187,16,24,4,4,37,0,2,132,114, +223,32,131,76,146,13,9,9,134,195,160,184,227,90,103,127, +38,172,203,97,196,64,203,47,78,96,136,145,55,192,43,0, +131,116,25,236,203,140,197,204,71,240,153,53,64,0,154,196, +17,50,31,129,135,144,56,130,41,204,230,35,120,251,49,30, +66,226,8,2,139,226,8,102,43,26,105,0,5,113,132,204, +69,168,187,13,229,176,99,25,67,136,103,80,122,7,53,16, +74,29,100,144,89,178,213,66,162,207,0,98,24,140,137,97, +105,137,181,212,250,250,12,90,171,111,242,17,195,7,11,223, +89,20,59,176,45,168,40,134,0,8,153,177,152,41,204,121, +243,81,96,145,87,146,119,26,202,9,74,153,177,88,2,33, +67,143,1,2,47,161,158,156,84,78,97,230,37,208,105,94, +66,159,214,176,24,100,144,229,200,170,66,226,166,214,0,110, +190,233,198,209,214,150,149,24,72,45,246,49,44,70,166,69, +22,232,19,4,228,250,139,13,48,120,158,0,213,77,48,228, +40,160,152,81,6,67,143,190,162,84,206,71,224,137,148,129, +197,122,130,82,230,35,232,54,148,147,147,2,4,176,42,61, +132,120,9,233,58,148,64,40,193,96,217,7,137,26,4,229, +49,58,200,32,203,145,85,131,196,15,174,252,122,115,221,151, +206,27,109,109,121,153,102,16,246,51,46,45,116,190,162,237, +253,4,241,1,177,2,195,162,20,4,44,121,6,32,194,59, +0,3,30,130,56,66,223,140,69,113,132,178,203,16,32,36, +150,80,118,27,234,192,34,15,161,246,18,178,204,243,196,27, +168,215,107,29,100,144,45,37,171,2,137,235,190,124,126,115, +225,135,14,29,109,173,142,48,46,134,201,96,181,238,2,133, +60,10,177,2,198,111,66,18,181,173,171,224,152,248,65,134, +29,129,165,158,156,84,123,8,25,105,40,223,103,232,139,35, +88,198,35,168,117,48,248,65,86,91,86,28,18,223,252,236, +25,205,103,118,222,65,115,62,218,179,242,194,240,24,32,227, +100,184,90,119,6,174,59,160,91,32,94,64,173,243,10,242, +166,99,134,28,19,80,204,92,132,116,25,0,33,30,66,96, +144,88,194,164,17,7,154,245,210,19,136,14,50,200,106,203, +138,66,226,155,103,125,166,57,225,233,143,111,126,113,227,234, +254,35,116,12,176,4,5,227,6,11,93,2,134,79,211,61, +8,0,2,129,50,118,64,157,31,32,196,67,168,33,0,12, +37,28,74,16,100,123,144,65,214,162,172,24,36,174,255,202, +23,155,163,30,254,144,230,199,215,124,115,180,103,144,65,6, +89,15,178,34,144,184,225,138,203,155,35,30,122,223,214,147, +56,99,180,103,144,65,6,89,47,114,139,67,226,167,223,185, +190,57,234,17,15,105,206,123,207,219,71,123,6,25,100,144, +245,36,183,40,36,126,209,246,209,143,123,210,99,154,19,159, +249,132,230,87,109,95,124,144,65,6,89,127,114,139,65,226, +87,191,252,101,243,169,151,63,175,57,244,111,238,209,252,232, +91,223,24,237,29,100,144,65,214,155,220,98,144,248,194,59, +223,210,28,112,143,219,53,151,28,123,212,104,207,32,131,12, +178,30,229,22,129,196,229,31,63,174,57,224,158,183,111,62, +241,130,103,142,246,12,50,200,230,201,173,110,117,171,77,210, +72,189,29,41,211,150,199,235,237,72,153,182,212,200,172,253, +145,50,205,114,116,53,100,139,223,245,123,23,95,216,28,114, +255,187,118,250,163,111,14,221,140,65,182,140,244,25,204,82, +52,82,111,71,202,180,229,241,122,59,82,166,45,53,50,107, +127,164,76,179,28,93,13,217,162,119,189,233,71,63,108,142, +126,212,223,119,221,140,47,237,255,190,209,222,65,6,217,124, +89,174,145,204,74,95,31,159,181,29,89,234,254,73,233,34, +179,142,215,178,220,244,91,82,182,232,93,79,125,229,139,58, +64,0,197,205,63,191,105,180,119,144,65,54,95,182,180,81, +213,199,103,109,71,150,186,127,82,186,200,172,227,181,44,55, +253,150,148,45,118,215,139,142,62,162,3,4,189,242,83,39, +141,246,14,50,200,150,145,218,72,178,93,107,100,83,183,39, +105,164,239,24,141,244,29,163,181,212,251,203,180,165,70,234, +237,149,148,45,114,87,51,42,197,32,0,226,248,167,253,251, +178,95,222,50,92,250,195,111,92,221,124,243,179,159,110,46, +58,234,240,230,220,119,191,173,57,115,151,215,53,167,189,234, +197,205,39,95,252,236,46,0,122,242,11,183,107,78,253,207, +23,118,251,207,223,231,93,205,101,39,126,180,249,222,37,23, +13,243,47,54,136,76,50,154,90,35,155,186,61,73,35,125, +199,104,164,239,24,173,165,222,95,166,45,53,82,111,175,164, +108,246,93,25,233,241,79,121,236,188,23,177,148,169,215,63, +249,246,53,221,8,200,231,246,124,99,115,194,211,30,215,28, +242,128,187,205,159,191,92,61,244,129,119,239,64,2,46,63, +251,222,119,71,119,24,100,107,147,73,70,83,107,164,222,174, +101,214,241,72,210,77,210,90,234,253,101,218,190,253,145,50, +77,169,145,122,123,37,101,179,239,250,229,253,247,153,55,88, +176,232,19,95,159,250,198,103,78,111,62,183,199,206,205,135, +31,253,143,99,70,190,37,245,160,109,254,186,57,181,245,62, +188,76,54,200,214,37,147,140,166,214,72,189,93,203,172,227, +145,164,155,164,181,212,251,203,180,125,251,35,101,154,82,35, +245,246,74,202,102,221,213,215,165,14,190,223,157,231,141,244, +138,147,63,54,58,178,32,223,191,252,210,230,11,239,122,107, +115,250,14,47,107,62,241,252,103,52,199,254,199,191,54,71, +252,253,253,154,3,239,245,87,99,6,190,165,245,147,47,121, +118,243,131,43,190,62,202,197,32,235,93,38,25,77,173,145, +89,219,181,44,247,120,182,39,233,44,169,211,149,231,150,26, +169,183,87,82,54,235,174,39,61,247,233,243,70,121,228,63, +63,104,89,241,129,95,254,226,23,221,60,138,107,190,240,249, +230,146,99,142,108,206,121,199,158,157,97,31,249,47,127,219, +77,196,42,13,126,83,245,224,251,222,169,249,242,1,251,116, +49,143,65,214,183,76,50,154,90,35,179,182,107,89,238,241, +108,79,210,89,82,167,43,207,45,53,82,111,175,164,108,242, +93,121,13,165,65,158,191,239,222,163,35,155,47,63,251,238, +119,154,171,78,255,84,115,206,219,246,104,61,143,71,110,54, +52,78,126,209,118,205,77,63,250,209,232,234,131,172,71,89, +174,145,108,170,81,229,188,90,107,169,247,151,105,151,179,127, +169,178,220,244,91,82,54,233,174,55,223,120,99,115,212,195, +31,60,111,132,7,182,70,252,163,111,221,114,31,147,249,241, +181,223,106,46,56,236,192,238,141,210,210,248,151,163,31,125, +194,35,155,159,125,255,123,163,43,14,178,222,100,165,140,42, +231,213,90,75,189,191,76,187,156,253,75,149,229,166,223,146, +178,73,119,253,202,129,239,31,51,64,175,130,175,148,124,231, +130,175,52,167,191,230,229,205,129,247,190,195,88,30,150,162, +31,125,226,163,154,159,255,248,199,163,43,13,178,158,36,70, +178,92,141,172,213,237,229,234,106,200,178,239,202,109,63,252, +193,247,30,51,190,11,14,61,96,116,116,229,228,134,203,47, +109,187,17,207,26,203,199,82,244,83,47,127,254,178,231,113, +12,178,250,210,103,48,75,209,200,90,221,94,174,174,134,44, +251,174,95,124,255,187,23,25,222,15,174,186,98,116,116,92, +124,224,53,159,140,247,165,232,124,49,186,211,159,215,218,166, +169,212,185,179,228,242,143,31,223,28,246,183,247,90,148,167, +105,122,225,145,135,141,206,30,100,163,200,166,26,217,111,255, +230,111,78,61,47,215,173,175,63,105,255,122,148,101,229,222, +151,166,14,255,187,251,140,25,156,143,219,150,114,233,101,151, +53,239,122,239,187,155,215,191,113,167,230,63,119,120,117,167, +175,216,254,85,155,164,206,125,245,107,119,104,118,222,109,151, +230,29,239,126,87,115,248,135,62,216,124,250,51,103,52,223, +252,214,183,198,190,46,253,163,111,94,221,28,243,184,135,143, +229,107,154,250,16,142,207,234,13,178,113,100,83,140,245,250, +11,190,220,252,191,255,231,255,49,245,188,92,183,190,254,164, +253,235,81,150,149,123,127,168,83,27,220,25,59,190,114,116, +116,78,206,250,252,231,122,13,126,75,235,110,123,238,209,124, +234,212,83,186,255,180,32,254,50,240,132,167,63,110,81,254, +38,233,89,187,239,212,157,215,39,254,55,227,140,51,63,211, +171,142,45,87,46,186,228,226,238,220,207,159,253,249,209,158, +205,147,175,93,248,181,238,122,231,156,251,133,209,158,113,153, +117,124,150,108,238,249,171,41,203,53,206,58,93,182,175,254, +244,169,29,36,34,117,186,200,172,253,179,142,71,150,187,189, +146,178,244,187,182,45,247,71,254,237,159,22,25,91,253,79, +92,43,5,137,232,27,118,125,99,243,149,11,190,218,221,27, +40,150,234,81,28,124,223,59,79,156,198,125,197,149,87,246, +222,139,58,182,92,57,236,67,71,116,231,238,180,235,46,163, +61,155,39,7,28,124,80,119,189,55,189,101,207,209,158,113, +57,224,144,233,199,103,201,252,249,111,222,180,243,87,83,98, +76,75,53,170,58,157,245,187,252,246,127,111,46,59,241,216, +209,158,57,153,116,189,89,251,103,29,143,44,119,123,37,101, +201,119,189,246,220,179,123,141,237,186,47,158,59,74,49,39, +53,36,222,246,174,119,52,103,158,245,217,230,211,109,203,116, +218,167,79,239,90,255,147,78,254,68,115,194,199,78,108,142, +61,238,163,205,161,71,28,222,236,186,199,155,198,206,41,117, +215,61,119,111,222,183,223,190,93,247,165,239,56,213,45,113, +95,242,195,111,92,213,28,246,160,123,246,230,181,214,175,30, +242,129,238,156,90,6,72,172,61,72,204,50,154,122,123,146, +204,58,239,119,254,175,255,210,60,247,14,127,177,104,2,222, +172,243,234,237,200,172,116,217,158,165,171,41,75,190,251,103, +118,218,190,215,208,110,252,193,13,163,20,115,82,67,226,160, +67,15,25,29,153,44,226,11,92,242,183,190,227,237,99,231, +210,87,189,118,135,230,234,111,92,221,165,17,139,248,232,9, +199,55,59,188,254,117,139,211,189,102,251,246,248,220,92,141, +75,143,251,112,111,94,107,61,254,169,255,222,165,175,165,132, +196,135,142,62,170,249,217,141,55,206,171,96,236,15,90,143, +229,194,139,47,234,84,16,22,0,63,117,218,169,205,79,127, +246,211,238,255,63,63,222,66,240,140,207,158,217,5,106,73, +9,137,107,174,189,166,61,126,82,243,217,207,157,213,220,92, +84,68,221,152,207,180,231,128,231,39,79,57,165,185,234,234, +171,71,71,230,228,107,23,93,216,156,120,210,199,155,43,175, +186,178,23,18,57,126,133,227,61,144,24,191,254,167,166,95, +127,131,66,226,39,215,95,215,188,245,254,119,111,126,235,255, +249,191,187,237,82,30,248,192,7,118,26,153,118,157,82,102, +165,203,246,44,93,77,89,210,221,125,64,166,175,117,62,236, +193,247,26,165,88,144,77,129,68,196,95,224,241,44,202,243, +233,123,246,25,255,202,213,247,190,255,253,102,175,119,46,6, +202,129,135,28,60,151,160,5,138,185,27,117,126,107,245,254, +200,141,55,124,127,238,156,66,74,72,28,125,204,71,70,123, +23,228,188,47,158,223,29,227,193,236,253,190,247,204,167,21, +176,125,195,46,111,156,223,126,239,251,247,233,210,7,18,224, +246,154,55,236,56,127,156,193,146,111,93,243,173,230,181,59, +189,126,126,127,148,215,69,46,190,228,146,249,125,175,108,97, +24,207,43,16,152,117,124,249,215,223,189,91,95,15,144,88, +238,254,90,178,255,151,63,255,121,243,177,103,63,165,185,234, +244,83,186,6,105,191,253,246,235,254,9,126,146,72,67,159, +242,148,167,52,191,241,27,191,49,127,157,232,36,169,143,79, +218,174,117,53,101,73,119,247,6,103,159,145,233,255,215,178, +57,144,32,64,177,215,59,223,49,118,13,234,63,56,75,249, +225,143,126,216,236,184,243,27,198,210,108,191,227,107,187,243, +201,164,238,81,173,87,159,113,106,151,190,148,18,18,12,229, +144,195,15,155,87,127,4,28,72,208,119,190,231,221,93,151, +40,219,186,70,59,237,182,75,183,14,34,36,144,200,241,215, +237,52,151,239,157,223,180,235,220,241,15,206,129,113,199,182, +75,101,116,8,20,109,131,10,207,229,136,35,63,52,127,190, +86,158,33,91,15,4,102,29,63,236,131,115,247,223,113,231, +101,94,127,3,65,194,215,221,63,241,194,109,59,195,95,174, +248,143,216,29,119,220,113,12,22,147,164,62,62,105,187,214, +213,148,37,221,221,72,64,159,129,125,188,37,111,45,155,11, +9,114,238,249,231,141,93,131,38,56,89,202,113,109,215,163, +78,247,221,246,7,139,28,247,148,127,235,205,119,169,94,117, +175,101,90,76,226,134,27,110,24,131,196,213,223,248,70,115, +202,233,167,205,111,251,51,97,93,162,108,147,121,79,98,199, +57,163,252,200,71,143,237,182,65,196,182,225,93,219,239,217, +119,206,99,250,196,167,62,57,127,190,46,203,251,222,191,111, +183,190,231,94,111,233,142,191,251,125,239,237,182,3,129,28, +223,35,199,247,25,63,190,212,235,47,58,127,13,65,34,178, +169,70,83,26,92,125,254,183,206,62,171,123,25,240,187,23, +95,56,218,179,32,102,232,126,251,188,47,52,95,61,236,128, +230,188,247,190,163,249,236,174,59,118,159,105,60,99,199,87, +117,219,23,127,228,200,110,56,29,92,192,34,82,223,167,188, +119,223,254,72,153,166,79,87,67,150,116,215,73,223,128,248, +212,75,159,59,74,177,32,91,2,18,98,16,229,53,104,223, +112,220,185,231,47,24,107,244,219,215,93,55,58,218,52,23, +29,181,240,73,189,73,250,217,93,94,55,74,189,32,37,36, +120,43,111,121,251,94,243,202,131,41,33,33,14,114,250,25, +159,158,223,214,247,63,254,196,19,230,183,73,29,184,60,241, +164,143,117,219,32,193,243,121,251,222,239,236,182,181,224,175, +121,253,142,205,171,95,251,154,249,243,25,49,227,182,254,246, +189,223,213,157,95,199,36,222,179,239,62,83,143,207,190,126, +206,127,103,151,126,254,252,13,0,137,27,219,223,243,200,135, +63,164,251,148,65,4,44,206,222,107,247,230,216,39,60,106, +201,159,52,48,229,255,146,143,30,221,252,226,103,63,237,128, +81,223,167,188,119,223,254,72,153,166,79,87,67,102,222,245, +167,223,253,206,196,183,48,17,181,150,45,1,137,175,124,245, +171,99,215,160,181,39,161,5,22,252,171,211,149,144,48,196, +57,235,71,62,197,52,237,74,150,26,147,160,91,18,18,226, +21,90,253,82,205,86,93,54,36,170,192,229,180,235,155,217, +186,8,18,235,32,112,89,75,125,124,210,118,169,219,109,183, +93,243,185,55,191,177,171,223,215,158,119,206,40,37,239,225, +71,221,203,128,234,62,47,227,202,83,78,110,206,125,247,94, +205,39,94,176,109,115,232,131,238,209,91,143,162,199,60,238, +95,154,239,94,244,181,102,239,189,247,238,238,17,201,61,35, +217,158,180,191,150,73,251,87,66,102,222,245,234,79,159,210, +91,24,244,150,130,68,42,105,169,31,59,233,227,205,135,143, +61,166,217,103,191,247,55,187,189,121,143,110,212,163,78,67, +75,72,144,227,158,60,189,203,209,247,7,66,183,20,36,204, +233,32,39,126,188,31,18,9,116,114,91,175,188,234,170,249, +17,136,137,45,253,34,72,244,31,159,191,126,155,142,212,215, +183,191,247,252,173,24,18,15,125,232,67,155,27,190,126,89, +115,208,54,119,236,222,16,246,125,147,165,202,117,95,62,191, +249,252,91,119,107,14,127,232,125,123,235,212,65,109,215,229, +202,83,62,209,188,240,133,47,28,157,49,59,63,145,122,59, +50,105,255,74,200,204,187,126,105,191,247,244,22,4,189,37, +186,27,245,249,203,213,26,18,126,204,190,188,71,125,45,171, +150,18,18,90,219,147,79,249,212,188,138,65,108,42,36,184, +251,63,254,201,79,154,35,142,252,96,183,13,116,92,83,247, +176,253,174,247,190,167,75,159,64,226,235,118,122,125,183,253, +254,253,63,208,109,239,178,251,110,93,250,24,125,32,176,112, +252,77,189,199,223,241,238,189,187,109,163,47,36,215,55,226, +65,222,127,192,132,235,175,65,72,212,90,203,164,253,181,120, +78,111,19,171,3,98,11,155,34,55,253,240,7,205,249,239, +123,103,55,49,175,174,87,166,254,243,40,238,116,167,59,77, +205,103,157,223,122,59,50,105,255,74,200,204,187,126,250,117, +175,92,84,0,209,143,63,235,201,163,84,11,178,169,144,208, +55,62,246,248,227,186,214,181,60,127,185,90,67,226,178,19, +142,233,205,123,244,147,47,121,206,40,229,130,76,11,92,154, +24,182,169,144,160,70,48,242,140,111,121,251,219,186,227,71, +126,248,232,110,251,149,59,108,223,28,124,248,161,243,195,164, +251,238,191,95,119,188,12,132,190,126,151,157,231,207,15,4, +102,29,207,245,237,31,187,254,7,102,92,127,43,133,4,64, +124,247,162,11,230,62,55,160,171,113,238,217,221,126,229,4, +184,75,209,35,142,250,80,115,86,219,221,253,201,79,127,210, +124,231,194,11,154,15,62,236,111,22,213,45,223,63,249,194, +57,231,76,205,103,157,223,122,59,50,105,255,74,200,204,187, +126,108,219,39,46,122,248,232,49,255,254,47,163,84,11,178, +92,72,48,178,227,63,118,98,103,60,229,121,181,26,46,124, +223,126,239,111,142,60,250,168,110,210,143,201,75,90,246,186, +219,81,67,226,250,175,126,169,55,239,209,79,191,246,21,163, +148,11,114,75,65,194,156,138,119,190,103,174,85,103,136,174, +67,156,243,182,119,205,181,222,209,55,181,93,170,60,203,119, +190,243,157,230,117,163,225,222,157,119,219,181,123,209,173,75, +51,130,192,248,241,93,22,29,95,222,245,139,243,215,96,224, +50,82,27,77,182,107,157,36,254,154,193,239,127,240,253,238, +218,253,243,28,225,73,121,238,55,182,203,93,91,175,204,82, +121,103,72,56,90,214,185,215,182,192,61,229,180,211,154,27, +174,188,98,209,203,143,212,23,214,200,172,252,76,58,62,235, +188,149,144,153,119,63,250,81,255,176,232,193,163,130,56,45, +150,71,41,231,164,134,4,87,90,255,247,235,87,124,189,249, +218,133,23,54,159,59,251,236,206,200,63,112,208,129,205,27, +218,86,171,76,91,170,31,102,255,131,15,108,190,112,222,185, +205,13,63,248,193,232,234,139,69,203,87,158,87,67,194,167, +240,250,242,30,61,123,175,55,141,82,174,140,8,184,94,254, +245,203,155,235,175,31,127,11,85,235,246,173,107,174,233,102, +62,94,125,245,213,93,186,82,116,83,76,122,202,11,109,181, +204,58,78,114,125,177,136,229,94,127,173,73,109,60,217,174, +181,79,76,156,58,244,129,115,127,227,224,47,29,34,129,68, +89,135,252,46,223,251,254,247,186,152,88,234,216,73,159,60, +185,109,72,174,104,62,120,212,145,243,251,62,127,206,217,205, +21,159,58,105,81,253,58,237,213,47,233,174,49,45,63,100, +210,241,89,231,173,132,204,188,123,31,29,75,173,95,185,222, +220,152,2,53,235,178,28,115,158,38,179,32,97,14,254,180, +17,14,159,197,91,109,249,254,13,55,52,215,183,173,57,253, +225,102,124,139,51,215,48,225,107,107,149,229,26,77,157,254, +130,11,46,104,174,248,228,130,49,155,64,21,233,131,68,41, +31,109,187,195,142,239,241,214,55,119,219,140,63,241,29,35, +80,191,188,249,230,230,99,219,61,121,172,126,29,246,144,109, +154,159,254,244,167,205,127,249,47,255,165,55,223,117,254,178, +93,235,106,202,204,187,31,242,128,185,127,230,154,164,245,159, +241,108,14,36,184,224,159,253,220,220,139,90,75,149,89,144, +32,211,94,248,250,198,103,78,27,165,90,29,209,114,151,239, +162,152,29,57,75,174,249,246,181,205,161,31,60,188,83,222, +1,249,78,235,49,229,26,75,41,195,203,46,191,124,254,26, +38,128,173,23,89,174,209,244,165,63,115,215,185,174,6,245, +133,246,200,44,72,92,112,225,215,186,227,175,126,221,107,70, +123,22,234,123,130,194,151,84,239,13,153,164,101,234,255,35, +30,241,136,222,124,215,249,203,118,173,171,41,51,239,126,200, +253,239,50,246,208,181,138,238,150,50,11,18,34,234,186,32, +233,155,151,106,136,115,185,178,20,72,124,240,31,238,223,155, +119,250,227,107,231,140,108,181,196,203,97,101,254,121,81,179, +196,183,30,146,222,12,80,114,254,23,191,56,191,239,27,223, +252,70,183,111,154,36,88,169,194,103,42,251,90,150,218,88, +74,3,154,166,165,104,249,201,49,143,123,196,252,239,95,142, +208,205,130,132,250,233,56,168,123,241,111,255,131,15,106,94, +255,198,185,250,23,72,252,184,5,184,63,137,202,245,121,177, +55,180,93,237,87,190,242,149,19,243,69,102,237,159,116,124, +37,100,230,93,235,239,89,214,122,226,51,254,99,148,114,78, +250,32,97,223,85,223,184,186,249,113,241,17,218,143,125,226, +164,69,233,180,134,203,149,37,65,226,31,31,208,155,119,240, +88,77,81,105,247,120,235,91,186,124,11,50,90,30,114,196, +194,167,245,28,143,138,33,92,251,237,111,119,235,121,23,195, +228,44,219,196,232,16,143,128,102,159,165,115,120,13,94,138, +139,216,159,169,215,128,157,244,68,108,226,242,182,82,155,245, +186,150,224,81,27,73,105,56,211,180,79,12,79,166,14,44, +165,187,33,240,123,204,104,42,125,212,123,66,222,209,241,27, +216,14,36,200,135,31,243,176,249,235,31,120,175,59,52,63, +188,250,170,238,221,142,105,249,154,181,127,210,241,149,144,153, +119,157,22,184,164,72,249,211,235,23,10,181,15,18,10,185, +22,36,46,211,148,46,220,114,100,41,144,56,98,66,92,229, +148,255,124,193,40,197,234,200,197,151,206,189,125,105,100,33, +35,10,94,34,139,8,220,10,224,126,224,192,3,186,74,120, +208,97,135,116,239,111,148,207,107,52,130,152,136,37,109,42, +171,192,218,238,109,223,185,76,251,225,99,62,210,193,166,124, +35,84,23,239,157,239,222,187,155,217,41,16,87,70,242,189, +77,106,228,99,61,200,82,140,8,12,127,114,221,183,155,3, +183,185,227,124,29,248,248,179,159,58,58,186,0,137,143,158, +112,92,247,126,11,207,1,68,213,77,251,213,181,79,158,122, +74,235,169,125,115,62,238,115,205,181,215,118,199,74,72,0, +79,174,127,200,3,239,214,77,212,170,33,81,235,44,89,106, +186,91,66,102,222,245,164,231,60,109,254,129,39,169,79,236, +71,68,121,83,201,162,70,54,106,201,75,78,81,149,117,83, +34,235,75,129,196,193,247,235,239,50,213,95,213,90,105,201, +204,210,15,125,248,168,110,168,216,186,121,12,145,188,77,154, +152,197,199,91,239,171,124,94,243,29,64,133,225,103,238,131, +138,13,202,1,1,208,148,51,88,141,96,100,184,147,90,63, +238,196,227,231,231,82,24,242,227,229,105,41,109,27,114,94, +15,178,20,35,2,137,27,190,126,121,247,63,49,169,3,135, +60,240,238,205,47,70,245,46,144,136,150,67,157,230,180,244, +53,118,215,182,221,11,199,75,72,148,95,113,63,226,239,239, +219,237,219,170,33,225,159,191,243,192,147,212,31,245,100,90, +235,69,23,95,60,95,176,81,173,100,45,230,27,212,233,124, +228,118,185,50,11,18,42,64,95,158,169,15,232,174,150,24, +209,72,171,125,233,101,151,118,175,144,91,63,248,176,57,72, +136,53,228,153,222,248,166,93,59,47,194,108,207,75,47,191, +108,126,191,225,76,162,75,145,125,103,127,225,156,174,28,179, +253,221,239,125,183,251,144,140,215,195,169,209,19,47,203,229, +184,150,240,231,237,111,151,214,210,132,54,34,54,34,253,167, +207,88,254,111,178,18,82,26,88,159,241,212,251,173,223,230, +54,183,233,92,127,93,128,249,122,208,2,227,219,95,60,175, +75,19,72,28,119,226,9,221,55,56,116,183,2,232,115,207, +27,255,2,91,164,15,18,159,124,233,115,230,175,255,169,151, +63,175,219,247,216,199,62,182,55,159,145,228,119,150,174,134, +204,188,235,101,39,126,116,161,64,167,232,69,71,207,129,64, +223,56,173,80,169,94,198,42,165,52,146,232,14,237,121,95, +191,162,255,243,252,147,100,22,36,84,138,190,252,250,227,226, +213,148,196,100,76,18,211,194,101,178,83,38,159,149,47,185, +249,6,68,228,212,211,79,159,223,255,163,209,112,105,109,244, +39,23,175,130,251,214,197,217,231,156,51,54,47,34,94,92, +190,39,241,211,22,164,153,101,233,55,57,234,35,31,110,127, +159,197,31,227,89,75,50,203,120,234,253,217,190,185,5,226, +33,127,115,247,177,186,112,206,219,231,38,141,189,121,175,183, +118,101,112,218,25,159,238,182,73,234,242,164,143,2,247,65, +162,236,110,124,229,224,185,89,173,183,190,245,173,123,243,25, +73,254,102,233,106,200,204,187,138,55,148,238,217,36,61,226, +161,247,109,110,28,69,218,143,57,238,163,93,193,213,234,203, +81,90,195,72,162,197,165,110,255,186,215,118,51,24,151,26, +52,155,5,137,111,125,254,179,189,249,253,210,254,227,95,187, +90,73,241,108,59,237,58,247,5,43,30,196,151,191,242,149, +46,182,96,251,192,67,231,190,174,149,201,59,140,214,255,146, +68,120,26,246,239,178,199,194,36,176,218,232,205,49,169,203, +197,199,113,110,188,105,238,115,122,25,89,18,188,140,212,49, +34,223,190,184,224,107,95,27,29,93,125,233,51,24,90,203, +172,253,128,124,220,147,30,61,86,23,4,50,127,220,122,14, +41,3,101,103,2,160,180,9,18,123,169,240,186,158,174,108, +47,36,158,255,204,249,107,255,176,245,86,207,60,243,204,249, +251,71,39,73,157,174,214,213,144,37,221,213,8,70,89,168, +147,212,236,50,114,227,77,55,245,126,175,50,106,74,176,73, +40,90,188,244,165,107,101,52,199,28,119,108,235,62,127,161, +107,85,47,108,93,107,110,249,215,175,188,162,155,49,232,123, +151,126,160,250,235,84,53,36,196,29,234,124,10,182,250,127, +209,213,146,114,90,119,173,249,4,159,247,42,108,191,245,29, +115,239,119,68,118,27,125,5,171,156,238,30,163,223,251,125, +11,70,175,187,162,155,87,122,107,159,59,251,243,29,160,182, +31,117,45,12,131,70,24,132,160,179,174,77,210,251,126,198, +90,145,62,131,161,181,204,218,239,57,207,123,207,219,23,213, +137,211,182,127,105,243,131,182,204,118,127,203,92,176,151,103, +181,215,187,222,49,15,9,154,24,144,184,155,122,73,227,181, +5,18,38,239,29,254,144,185,17,65,118,227,126,245,240,39, +157,36,117,186,90,87,67,150,116,215,75,142,61,106,81,161, +78,210,124,129,90,244,119,159,15,188,127,190,128,87,74,107, +72,248,168,76,157,71,129,165,213,148,124,23,147,43,11,152, +49,124,42,200,168,98,229,93,22,173,91,196,240,100,210,157, +114,218,220,103,247,58,163,31,185,196,102,4,126,243,155,223, +236,190,216,69,121,14,229,247,43,65,66,100,62,219,121,119, +196,215,203,165,191,240,162,139,186,81,14,95,56,119,252,205, +111,91,59,144,168,165,54,154,210,144,74,141,148,251,62,253, +241,143,53,135,60,96,110,90,118,169,103,183,221,142,31,183, +93,56,211,174,235,81,164,89,26,72,148,49,143,171,78,251, +100,247,157,204,105,159,181,43,243,85,234,90,146,37,229,198, +191,136,79,154,107,80,171,86,250,210,227,230,190,193,208,81, +251,252,243,155,55,183,45,82,95,193,222,18,90,67,194,183, +2,234,60,174,230,44,75,1,177,228,85,151,130,152,63,146, +125,190,229,240,157,239,126,119,126,187,140,229,92,114,233,165, +243,251,5,21,197,42,188,96,150,125,202,250,204,179,22,62, +196,243,213,175,93,208,85,120,235,254,9,77,28,72,96,51, +199,247,59,112,255,14,26,9,90,234,202,136,9,249,238,133, +237,228,111,45,74,109,76,165,129,149,26,41,247,121,125,91, +172,160,174,23,244,228,151,60,103,108,130,157,238,177,50,153, +166,94,8,204,200,220,197,163,6,213,63,219,9,154,251,80, +110,121,239,90,202,99,165,174,37,89,114,110,252,127,102,93, +160,147,20,40,190,90,253,137,176,201,57,90,44,227,249,179, +222,248,220,84,213,39,247,73,251,136,183,251,234,127,31,247, +7,67,224,181,90,34,40,152,252,10,50,18,31,249,205,190, +253,15,58,176,57,255,75,11,179,39,203,24,14,192,36,192, +72,253,13,1,239,32,219,215,127,231,250,174,11,22,163,143, +26,202,251,252,57,115,95,94,202,212,226,232,117,215,95,215, +236,119,192,254,99,251,168,119,17,252,93,192,90,145,62,67, +162,145,89,251,35,217,190,249,23,63,111,187,199,47,29,171, +27,81,221,133,115,222,190,71,243,163,37,204,92,173,197,12, +78,215,16,240,63,225,132,19,70,123,23,231,35,146,253,147, +116,45,200,146,115,241,171,214,173,93,202,135,101,75,61,253, +53,175,152,127,13,183,22,239,225,51,18,111,68,94,116,241, +69,221,112,222,34,189,112,130,182,199,12,181,114,165,47,17, +167,184,226,235,221,7,112,203,8,62,225,238,213,121,242,159, +28,171,41,151,181,207,235,255,58,76,164,138,248,132,92,254, +199,67,203,14,116,217,174,3,184,254,87,131,119,1,36,186, +6,215,93,127,253,124,218,192,79,185,242,32,4,52,79,61, +253,180,206,51,41,197,189,93,227,75,95,254,114,119,142,235, +136,71,8,56,251,204,191,128,229,106,130,180,79,250,12,136, +70,102,237,143,148,219,63,255,233,79,155,51,119,126,205,162, +58,18,53,189,250,196,109,159,216,156,191,239,222,205,213,103, +156,214,213,229,105,95,176,50,37,251,224,251,221,185,57,246, +137,143,234,190,35,225,165,174,72,157,143,72,246,79,210,181, +32,203,202,197,13,87,92,222,205,32,235,43,208,73,250,161, +127,122,80,115,197,201,31,211,247,24,93,101,229,228,179,197, +139,60,244,232,71,254,253,178,62,83,54,200,218,145,218,104, +150,187,29,169,247,131,161,87,188,143,121,252,35,198,234,202, +36,61,252,193,219,116,127,234,100,152,243,156,119,190,185,185, +246,188,133,161,209,175,28,180,95,115,96,11,150,79,29,118, +240,124,28,98,150,36,63,181,70,234,237,213,144,101,223,253, +170,83,79,238,186,19,125,5,56,77,143,127,218,191,119,223, +203,92,169,22,74,148,185,126,177,139,11,56,200,250,148,89, +198,51,107,59,210,183,95,157,244,141,9,95,168,242,134,168, +239,162,122,123,179,172,59,182,189,24,118,242,11,183,235,62, +119,119,237,185,231,180,158,197,194,107,253,221,63,238,63,244, +62,205,251,183,123,234,252,107,225,125,247,175,37,233,106,141, +212,219,171,33,155,116,119,163,29,155,2,10,250,225,71,253, +67,247,95,23,63,190,102,238,47,249,110,41,169,231,71,124, +244,137,143,94,244,255,142,131,172,31,217,84,99,153,116,94, +246,71,129,162,108,192,110,110,161,113,243,77,55,45,104,187, +61,173,129,59,105,183,55,52,239,253,219,123,207,79,241,142, +228,250,147,164,204,67,153,174,222,94,77,217,228,92,92,241, +201,143,207,124,141,124,170,222,243,246,45,177,31,51,162,242, +217,221,8,202,150,148,79,239,88,124,155,211,119,12,191,176, +101,254,246,127,144,213,145,77,53,154,73,231,101,127,125,220, +255,125,250,139,191,165,120,188,1,203,79,190,125,109,243,190, +109,238,212,252,241,111,254,198,232,200,130,212,215,175,165,204, +67,153,174,222,94,77,217,172,92,124,239,226,175,117,163,5, +99,198,191,137,122,240,125,238,212,185,121,254,33,201,4,168, +107,206,254,108,243,227,111,95,211,254,8,203,111,253,253,137, +113,9,176,242,143,87,6,89,159,82,26,82,105,60,245,254, +73,26,153,181,93,139,23,179,104,36,219,62,201,159,243,78, +219,225,229,205,157,127,243,215,167,94,39,247,89,170,214,50, +105,255,74,200,102,223,245,230,155,110,236,188,129,73,111,90, +110,174,234,11,122,93,221,95,10,158,254,218,87,116,255,172, +244,229,3,246,237,254,94,205,127,27,248,3,149,90,4,144, +114,190,175,82,149,175,178,15,178,62,165,52,160,210,88,234, +253,147,52,50,107,187,150,73,233,163,151,157,120,108,243,229, +3,247,157,223,158,36,229,57,75,209,90,38,237,95,9,217, +98,119,253,201,117,215,54,159,127,243,46,205,161,15,28,127, +121,102,75,171,63,83,249,216,118,79,234,64,240,131,43,23, +191,130,46,0,117,228,63,63,104,62,253,197,31,94,252,6, +234,32,27,79,102,25,223,36,141,244,109,255,254,175,255,191, +205,211,110,251,39,205,255,254,191,253,111,243,199,107,141,212, +219,181,148,231,76,211,213,144,45,126,87,127,176,122,201,49, +71,118,255,140,85,71,136,55,69,15,185,255,93,155,19,159, +249,132,230,156,119,236,217,253,3,184,235,79,147,139,143,89, +152,66,126,210,243,158,190,42,67,175,131,172,61,153,100,100, +165,1,246,105,164,222,254,127,254,207,255,163,121,244,159,253, +97,243,27,255,223,255,55,150,190,214,72,189,93,75,121,206, +52,93,13,185,69,239,234,207,83,175,57,251,172,174,123,224, +79,126,24,251,209,255,250,208,238,147,120,140,95,220,64,119, +224,67,15,123,96,115,204,227,30,222,156,244,220,167,53,103, +188,225,213,205,23,247,125,119,243,245,79,156,216,124,255,242, +75,187,47,16,47,85,120,17,71,61,226,239,58,64,28,246, +183,247,90,213,151,184,6,217,178,210,103,48,75,209,90,38, +29,95,234,126,250,107,191,118,171,46,112,175,126,79,146,190, +243,104,100,169,219,245,254,213,144,213,189,251,22,110,229,191, +246,193,67,230,189,136,203,63,190,240,134,227,32,235,95,106, +163,89,170,214,50,233,248,82,247,211,219,252,222,255,234,26, +164,105,210,119,30,141,44,117,187,222,191,26,178,186,119,223, +130,98,202,172,111,90,0,196,103,118,218,126,180,119,144,173, +69,150,107,44,117,250,108,215,26,169,183,35,125,233,126,237, +215,126,109,126,127,223,241,105,58,73,250,210,150,186,154,178, +186,119,223,130,242,249,183,204,253,49,176,110,203,52,55,112, +144,245,41,203,53,150,58,125,182,107,141,212,219,145,73,233, +106,141,244,29,43,117,146,244,165,45,117,53,101,117,239,190, +133,228,123,23,95,216,28,116,239,59,118,95,24,242,126,201, +32,91,159,212,198,82,26,80,169,145,122,59,82,166,157,166, +155,42,147,174,83,239,159,164,181,76,218,191,146,178,186,119, +223,2,242,171,95,222,220,28,255,212,199,118,159,216,187,242, +212,147,71,123,7,217,218,164,54,150,108,215,26,169,183,35, +101,218,105,186,169,50,233,58,245,254,73,90,203,164,253,43, +41,171,123,247,45,32,153,56,117,254,62,239,26,237,25,100, +107,148,218,88,178,93,107,164,222,158,36,147,210,101,127,173, +181,244,165,161,181,204,218,95,31,159,180,127,53,100,117,239, +190,153,242,253,203,46,233,222,223,207,63,55,15,178,245,74, +109,44,165,1,149,26,169,183,39,201,164,116,217,95,107,45, +125,105,104,45,179,246,215,199,39,237,95,13,89,221,187,111, +134,120,51,207,167,233,188,130,126,243,141,235,227,239,242,7, +217,116,169,141,165,52,160,82,35,245,118,100,86,186,165,110, +47,117,127,100,210,254,200,172,243,38,29,95,9,89,157,187, +110,1,249,252,91,118,237,62,34,243,179,239,141,127,117,105, +144,173,83,106,35,41,13,167,212,72,189,29,153,149,110,169, +219,75,221,31,153,180,63,50,235,188,73,199,87,66,86,231, +174,155,41,87,158,114,114,55,39,226,7,87,45,239,143,124, +6,89,191,178,92,35,153,148,126,214,117,234,227,217,174,53, +82,111,71,102,237,223,212,227,171,33,107,35,23,203,16,96, +240,73,188,235,191,250,229,209,158,65,54,130,44,215,104,38, +165,159,117,157,250,120,182,107,141,212,219,145,89,251,55,245, +248,106,200,218,200,197,18,229,231,63,249,73,115,220,147,30, +211,124,235,115,103,142,246,12,178,81,164,54,158,165,234,44, +153,148,190,222,31,141,212,219,145,50,237,52,93,170,44,55, +253,45,33,171,123,247,101,136,79,207,157,254,154,151,119,95, +45,30,100,227,73,105,96,203,209,89,50,41,125,189,63,26, +169,183,35,101,218,105,186,84,89,110,250,91,66,86,247,238, +203,144,175,28,248,254,230,218,243,230,254,59,98,144,65,6, +89,57,89,23,144,240,81,219,239,95,122,241,104,107,144,65, +6,89,73,89,243,144,240,189,202,159,245,124,162,110,144,65, +6,89,25,89,55,221,141,65,6,25,100,117,100,128,196,32, +131,12,50,85,6,72,12,50,200,32,83,101,128,196,32,131, +12,50,69,154,230,255,7,191,171,212,35,236,50,144,76,0, +0,0,0,73,69,78,68,174,66,96,130}; + + +int splash_image15_sz = sizeof(splash_image15); diff --git a/setup.py b/setup.py index c63fadee2e..2978dbdd01 100644 --- a/setup.py +++ b/setup.py @@ -4,6 +4,10 @@ PyPI package for the Mbed SDK """ from distutils.core import setup +from setuptools import find_packages +from os.path import isfile, join +from tempfile import TemporaryFile +from shutil import copyfileobj LICENSE = open('LICENSE').read() DESCRIPTION = """A set of Python scripts that can be used to compile programs written on top of the `mbed framework`_. It can also be used to export mbed projects to other build systems and IDEs (uVision, IAR, makefiles). @@ -12,8 +16,21 @@ DESCRIPTION = """A set of Python scripts that can be used to compile programs wr OWNER_NAMES = 'emilmont, bogdanm' OWNER_EMAILS = 'Emilio.Monti@arm.com, Bogdan.Marinescu@arm.com' +# If private_settings.py exists in workspace_tools, read it in a temporary file +# so it can be restored later +private_settings = join('workspace_tools', 'private_settings.py') +backup = None +if isfile(private_settings): + backup = TemporaryFile() + with open(private_settings, "rb") as f: + copyfileobj(f, backup) + +# Create the correct private_settings.py for the distribution +with open(private_settings, "wt") as f: + f.write("from mbed_settings import *\n") + setup(name='mbed-tools', - version='0.1.7', + version='0.1.14', description='Build and test system for mbed', long_description=DESCRIPTION, author=OWNER_NAMES, @@ -21,4 +38,11 @@ setup(name='mbed-tools', maintainer=OWNER_NAMES, maintainer_email=OWNER_EMAILS, url='https://github.com/mbedmicro/mbed', + packages=find_packages(), license=LICENSE) + +# Restore previous private_settings if needed +if backup: + backup.seek(0) + with open(private_settings, "wb") as f: + copyfileobj(backup, f) diff --git a/workspace_tools/build_release.py b/workspace_tools/build_release.py index cfa360fe55..d8a3b4839b 100644 --- a/workspace_tools/build_release.py +++ b/workspace_tools/build_release.py @@ -34,7 +34,9 @@ OFFICIAL_MBED_LIBRARY_BUILD = ( ('LPC1347', ('ARM',)), ('LPC4088', ('ARM', 'GCC_ARM', 'GCC_CR')), ('LPC1114', ('uARM',)), - ('NUCLEO_F103RB', ('ARM', 'uARM', 'GCC_ARM')), + ('KL46Z', ('ARM', 'GCC_ARM')), + ('NUCLEO_F103RB', ('ARM',)), + ('LPC11U35_401', ('ARM', 'uARM')), ) diff --git a/workspace_tools/export/README.md b/workspace_tools/export/README.md index 1f8c40fcf0..05907068e9 100644 --- a/workspace_tools/export/README.md +++ b/workspace_tools/export/README.md @@ -74,4 +74,13 @@ Exporter Toolchain/Platform Support ✓ + + Freescale KL46Z + + + + ✓ + + ✓ + diff --git a/workspace_tools/export/gcc_arm_kl05z.tmpl b/workspace_tools/export/gcc_arm_kl05z.tmpl new file mode 100644 index 0000000000..f4dd633871 --- /dev/null +++ b/workspace_tools/export/gcc_arm_kl05z.tmpl @@ -0,0 +1,46 @@ +# This file was automagically generated by mbed.org. For more information, +# see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded + +GCC_BIN = +PROJECT = {{name}} +OBJECTS = {% for f in to_be_compiled %}{{f}} {% endfor %} +SYS_OBJECTS = {% for f in object_files %}{{f}} {% endfor %} +INCLUDE_PATHS = {% for p in include_paths %}-I{{p}} {% endfor %} +LIBRARY_PATHS = {% for p in library_paths %}-L{{p}} {% endfor %} +LIBRARIES = {% for lib in libraries %}-l{{lib}} {% endfor %} +LINKER_SCRIPT = {{linker_script}} + +############################################################################### +AS = $(GCC_BIN)arm-none-eabi-as +CC = $(GCC_BIN)arm-none-eabi-gcc +CPP = $(GCC_BIN)arm-none-eabi-g++ +LD = $(GCC_BIN)arm-none-eabi-gcc +OBJCOPY = $(GCC_BIN)arm-none-eabi-objcopy + +CPU = -mcpu=cortex-m0plus -mthumb +CC_FLAGS = $(CPU) -c -Os -fno-common -fmessage-length=0 -Wall -fno-exceptions -ffunction-sections -fdata-sections +CC_SYMBOLS = {% for s in symbols %}-D{{s}} {% endfor %} + +LD_FLAGS = -mcpu=cortex-m0plus -mthumb -Wl,--gc-sections --specs=nano.specs -u _printf_float -u _scanf_float +LD_SYS_LIBS = -lstdc++ -lsupc++ -lm -lc -lgcc -lnosys + +all: $(PROJECT).bin + +clean: + rm -f $(PROJECT).bin $(PROJECT).elf $(OBJECTS) + +.s.o: + $(AS) $(CPU) -o $@ $< + +.c.o: + $(CC) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu99 $(INCLUDE_PATHS) -o $@ $< + +.cpp.o: + $(CPP) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu++98 $(INCLUDE_PATHS) -o $@ $< + + +$(PROJECT).elf: $(OBJECTS) $(SYS_OBJECTS) + $(LD) $(LD_FLAGS) -T$(LINKER_SCRIPT) $(LIBRARY_PATHS) -o $@ $^ $(LIBRARIES) $(LD_SYS_LIBS) $(LIBRARIES) $(LD_SYS_LIBS) + +$(PROJECT).bin: $(PROJECT).elf + $(OBJCOPY) -O binary $< $@ diff --git a/workspace_tools/export/gcc_arm_kl46z.tmpl b/workspace_tools/export/gcc_arm_kl46z.tmpl new file mode 100644 index 0000000000..f4dd633871 --- /dev/null +++ b/workspace_tools/export/gcc_arm_kl46z.tmpl @@ -0,0 +1,46 @@ +# This file was automagically generated by mbed.org. For more information, +# see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded + +GCC_BIN = +PROJECT = {{name}} +OBJECTS = {% for f in to_be_compiled %}{{f}} {% endfor %} +SYS_OBJECTS = {% for f in object_files %}{{f}} {% endfor %} +INCLUDE_PATHS = {% for p in include_paths %}-I{{p}} {% endfor %} +LIBRARY_PATHS = {% for p in library_paths %}-L{{p}} {% endfor %} +LIBRARIES = {% for lib in libraries %}-l{{lib}} {% endfor %} +LINKER_SCRIPT = {{linker_script}} + +############################################################################### +AS = $(GCC_BIN)arm-none-eabi-as +CC = $(GCC_BIN)arm-none-eabi-gcc +CPP = $(GCC_BIN)arm-none-eabi-g++ +LD = $(GCC_BIN)arm-none-eabi-gcc +OBJCOPY = $(GCC_BIN)arm-none-eabi-objcopy + +CPU = -mcpu=cortex-m0plus -mthumb +CC_FLAGS = $(CPU) -c -Os -fno-common -fmessage-length=0 -Wall -fno-exceptions -ffunction-sections -fdata-sections +CC_SYMBOLS = {% for s in symbols %}-D{{s}} {% endfor %} + +LD_FLAGS = -mcpu=cortex-m0plus -mthumb -Wl,--gc-sections --specs=nano.specs -u _printf_float -u _scanf_float +LD_SYS_LIBS = -lstdc++ -lsupc++ -lm -lc -lgcc -lnosys + +all: $(PROJECT).bin + +clean: + rm -f $(PROJECT).bin $(PROJECT).elf $(OBJECTS) + +.s.o: + $(AS) $(CPU) -o $@ $< + +.c.o: + $(CC) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu99 $(INCLUDE_PATHS) -o $@ $< + +.cpp.o: + $(CPP) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu++98 $(INCLUDE_PATHS) -o $@ $< + + +$(PROJECT).elf: $(OBJECTS) $(SYS_OBJECTS) + $(LD) $(LD_FLAGS) -T$(LINKER_SCRIPT) $(LIBRARY_PATHS) -o $@ $^ $(LIBRARIES) $(LD_SYS_LIBS) $(LIBRARIES) $(LD_SYS_LIBS) + +$(PROJECT).bin: $(PROJECT).elf + $(OBJCOPY) -O binary $< $@ diff --git a/workspace_tools/export/gccarm.py b/workspace_tools/export/gccarm.py index 86d15f5674..85f40478d7 100644 --- a/workspace_tools/export/gccarm.py +++ b/workspace_tools/export/gccarm.py @@ -21,7 +21,7 @@ from os.path import splitext, basename class GccArm(Exporter): NAME = 'GccArm' TOOLCHAIN = 'GCC_ARM' - TARGETS = ['LPC1768','KL25Z','LPC4088'] + TARGETS = ['LPC1768','KL05Z','KL25Z','KL46Z','LPC4088'] DOT_IN_RELATIVE_PATH = True def generate(self): diff --git a/workspace_tools/export/uvision4.py b/workspace_tools/export/uvision4.py index 0c0ed0e145..3ab36b0c95 100644 --- a/workspace_tools/export/uvision4.py +++ b/workspace_tools/export/uvision4.py @@ -21,7 +21,7 @@ from os.path import basename class Uvision4(Exporter): NAME = 'uVision4' - TARGETS = ['LPC1768', 'LPC11U24', 'KL25Z', 'LPC1347', 'LPC1114', 'LPC11C24', 'LPC4088', 'LPC812', 'NUCLEO_F103RB'] + TARGETS = ['LPC1768', 'LPC11U24', 'KL05Z', 'KL25Z', 'KL46Z', 'LPC1347', 'LPC1114', 'LPC11C24', 'LPC4088', 'LPC812', 'NUCLEO_F103RB'] USING_MICROLIB = ['LPC11U24', 'LPC1114', 'LPC11C24', 'LPC812', 'NUCLEO_F103RB'] diff --git a/workspace_tools/export/uvision4_kl05z.uvopt.tmpl b/workspace_tools/export/uvision4_kl05z.uvopt.tmpl new file mode 100644 index 0000000000..6eb495bc9d --- /dev/null +++ b/workspace_tools/export/uvision4_kl05z.uvopt.tmpl @@ -0,0 +1,204 @@ + + + + 1.0 + +
### uVision Project, (C) Keil Software
+ + + *.c + *.s*; *.src; *.a* + *.obj + *.lib + *.txt; *.h; *.inc + *.plm + *.cpp + + + + 0 + 0 + + + + mbed FRDM-KL05Z + 0x4 + ARM-ADS + + 8000000 + + 1 + 1 + 1 + 0 + + + 1 + 65535 + 0 + 0 + 0 + + + 79 + 66 + 8 + .\build\ + + + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + + + 1 + 0 + 1 + + 14 + + + 0 + Data Sheet + DATASHTS\Freescale\KL05PB.pdf + + + 1 + Technical Reference Manual + datashts\arm\cortex_m0p\r0p0\DDI0484B_CORTEX_M0P_R0P0_TRM.PDF + + + 2 + Generic User Guide + datashts\arm\cortex_m0p\r0p0\DUI0662A_CORTEX_M0P_R0P0_DGUG.PDF + + + + SARMCM3.DLL + + DARMCM1.DLL + -pCM0+ + SARMCM3.DLL + + TARMCM1.DLL + -pCM0+ + + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 0 + 0 + 14 + + + + + + + + + + + BIN\CMSIS_AGDI.dll + + + + 0 + ULP2CM3 + -O2510 -S0 -C0 -FO15 -FD20000000 -FC800 -FN1 -FF0MK_P32_48MHZ -FS00 -FL008000) + + + 0 + CMSIS_AGDI + -X"MBED CMSIS-DAP" -UA000000001 -O462 -S0 -C0 -N00("ARM CoreSight SW-DP") -D00(0BC11477) -L00(0) -FO15 -FD20000000 -FC800 -FN1 -FF0MK_P32_48MHZ -FS00 -FL08000 + + + + + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + src + 1 + 0 + 0 + + 1 + 1 + 8 + 0 + 0 + 0 + 0 + 1 + 2 + 0 + main.cpp + main.cpp + + + +
diff --git a/workspace_tools/export/uvision4_kl05z.uvproj.tmpl b/workspace_tools/export/uvision4_kl05z.uvproj.tmpl new file mode 100644 index 0000000000..f6faf306e3 --- /dev/null +++ b/workspace_tools/export/uvision4_kl05z.uvproj.tmpl @@ -0,0 +1,423 @@ + + + + 1.1 + +
###This file was automagically generated by mbed.org. For more information, see http://mbed.org/handbook/Exporting-To-Uvision
+ + + + mbed FRDM-KL05Z + 0x4 + ARM-ADS + + + MKL05Z32xxx4 + Freescale Semiconductor + IRAM(0x1FFFFC00-0x1FFFFFFF) IRAM2(0x20000000-0x20000BFF) IROM(0x0-0x07FFF) CLOCK(8000000) CPUTYPE("Cortex-M0+") ELITTLE + + "STARTUP\Freescale\Kinetis\startup_MKL05Z4.s" ("Freescale MKL05Zxxxxxx4 Startup Code") + ULP2CM3(-O2510 -S0 -C0 -FO15 -FD20000000 -FC800 -FN1 -FF0MK_P32_48MHZ -FS00 -FL08000) + 6544 + MKL05Z4.H + + + + + + + + + + SFD\Freescale\Kinetis\MKL05Z4.sfr + 0 + + + + Freescale\Kinetis\ + Freescale\Kinetis\ + + 0 + 0 + 0 + 0 + 1 + + .\build\ + {{name}} + 1 + 0 + 0 + 1 + 1 + .\build\ + 1 + 0 + 0 + + 0 + 0 + + + 0 + 0 + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 1 + 0 + fromelf --bin -o build\{{name}}_KL05Z.bin build\{{name}}.axf + + 0 + 0 + + 0 + + + + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 3 + + + + + SARMCM3.DLL + + DARMCM1.DLL + -pCM0+ + SARMCM3.DLL + + TARMCM1.DLL + -pCM0+ + + + + 1 + 0 + 0 + 0 + 16 + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + + 0 + 14 + + + + + + + + + + + + + + BIN\CMSIS_AGDI.dll + + + + + 1 + 0 + 0 + 1 + 1 + 4105 + + BIN\CMSIS_AGDI.dll + "" () + + + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 1 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + "Cortex-M0+" + + 0 + 0 + 0 + 1 + 1 + 0 + 0 + 0 + 1 + 0 + 8 + 0 + 0 + 0 + 3 + 3 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x1ffffc00 + 0x400 + + + 1 + 0x0 + 0x8000 + + + 0 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x8000 + + + 1 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x1ffffc00 + 0x400 + + + 0 + 0x0 + 0x0 + + + + + + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + --gnu + {% for s in symbols %} {{s}}, {% endfor %} + + {% for path in include_paths %} {{path}}; {% endfor %} + + + + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + 0 + 1 + 0 + 0x00000000 + 0x10000000 + {{scatter_file}} + + + + {% for file in object_files %} + {{file}} + {% endfor %} + + + + + + + + {% for group,files in source_files %} + + {{group}} + + {% for file in files %} + + {{file.name}} + {{file.type}} + {{file.path}} + {%if file.type == "1" %} + + + + + --c99 + + + + + {% endif %} + + {% endfor %} + + + {% endfor %} + + + + +
diff --git a/workspace_tools/export/uvision4_kl46z.uvopt.tmpl b/workspace_tools/export/uvision4_kl46z.uvopt.tmpl new file mode 100644 index 0000000000..9f962f7887 --- /dev/null +++ b/workspace_tools/export/uvision4_kl46z.uvopt.tmpl @@ -0,0 +1,204 @@ + + + + 1.0 + +
### uVision Project, (C) Keil Software
+ + + *.c + *.s*; *.src; *.a* + *.obj + *.lib + *.txt; *.h; *.inc + *.plm + *.cpp + + + + 0 + 0 + + + + mbed FRDM-KL46Z + 0x4 + ARM-ADS + + 8000000 + + 1 + 1 + 1 + 0 + + + 1 + 65535 + 0 + 0 + 0 + + + 79 + 66 + 8 + .\build\ + + + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + + + 1 + 0 + 1 + + 14 + + + 0 + Data Sheet + DATASHTS\Freescale\K40PB.pdf + + + 1 + Technical Reference Manual + datashts\arm\cortex_m0p\r0p0\DDI0484B_CORTEX_M0P_R0P0_TRM.PDF + + + 2 + Generic User Guide + datashts\arm\cortex_m0p\r0p0\DUI0662A_CORTEX_M0P_R0P0_DGUG.PDF + + + + SARMCM3.DLL + + DARMCM1.DLL + -pCM0+ + SARMCM3.DLL + + TARMCM1.DLL + -pCM0+ + + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 0 + 0 + 14 + + + + + + + + + + + BIN\CMSIS_AGDI.dll + + + + 0 + ULP2CM3 + -O2510 -S0 -C0 -FO15 -FD20000000 -FC800 -FN1 -FF0MK_P256_48MHZ -FS00 -FL040000) + + + 0 + CMSIS_AGDI + -X"MBED CMSIS-DAP" -UA000000001 -O462 -S0 -C0 -N00("ARM CoreSight SW-DP") -D00(0BC11477) -L00(0) -FO15 -FD20000000 -FC800 -FN1 -FF0MK_P256_48MHZ -FS00 -FL040000 + + + + + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + src + 1 + 0 + 0 + + 1 + 1 + 8 + 0 + 0 + 0 + 0 + 1 + 2 + 0 + main.cpp + main.cpp + + + +
diff --git a/workspace_tools/export/uvision4_kl46z.uvproj.tmpl b/workspace_tools/export/uvision4_kl46z.uvproj.tmpl new file mode 100644 index 0000000000..1fd0b306a0 --- /dev/null +++ b/workspace_tools/export/uvision4_kl46z.uvproj.tmpl @@ -0,0 +1,423 @@ + + + + 1.1 + +
###This file was automagically generated by mbed.org. For more information, see http://mbed.org/handbook/Exporting-To-Uvision
+ + + + mbed FRDM-KL46Z + 0x4 + ARM-ADS + + + MKL46Z256xxx4 + Freescale Semiconductor + IRAM(0x1FFFE000-0x1FFFFFFF) IRAM2(0x20000000-0x20005FFF) IROM(0x0-0x3FFFF) CLOCK(8000000) CPUTYPE("Cortex-M0+") ELITTLE + + "STARTUP\Freescale\Kinetis\startup_MKL46Z4.s" ("Freescale MKL46Zxxxxxx4 Startup Code") + UL2CM3(-O2510 -S0 -C0 -FO15 -FD20000000 -FC800 -FN1 -FF0MK_P256_48MHZ -FS00 -FL040000) + 6834 + MKL46Z4.H + + + + + + + + + + SFD\Freescale\Kinetis\MKL46Z4.sfr + 0 + + + + Freescale\Kinetis\ + Freescale\Kinetis\ + + 0 + 0 + 0 + 0 + 1 + + .\build\ + {{name}} + 1 + 0 + 0 + 1 + 1 + .\build\ + 1 + 0 + 0 + + 0 + 0 + + + 0 + 0 + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 1 + 0 + fromelf --bin -o build\{{name}}_KL25Z.bin build\{{name}}.axf + + 0 + 0 + + 0 + + + + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 3 + + + + + SARMCM3.DLL + + DARMCM1.DLL + -pCM0+ + SARMCM3.DLL + + TARMCM1.DLL + -pCM0+ + + + + 1 + 0 + 0 + 0 + 16 + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + + 0 + 14 + + + + + + + + + + + + + + BIN\CMSIS_AGDI.dll + + + + + 1 + 0 + 0 + 1 + 1 + 4105 + + BIN\CMSIS_AGDI.dll + "" () + + + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 1 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + "Cortex-M0+" + + 0 + 0 + 0 + 1 + 1 + 0 + 0 + 0 + 1 + 0 + 8 + 0 + 0 + 0 + 3 + 3 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x1ffff000 + 0x1000 + + + 1 + 0x0 + 0x20000 + + + 0 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x40000 + + + 1 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x1fffe000 + 0x2000 + + + 0 + 0x20000000 + 0x6000 + + + + + + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + --gnu + {% for s in symbols %} {{s}}, {% endfor %} + + {% for path in include_paths %} {{path}}; {% endfor %} + + + + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + 0 + 1 + 0 + 0x00000000 + 0x10000000 + {{scatter_file}} + + + + {% for file in object_files %} + {{file}} + {% endfor %} + + + + + + + + {% for group,files in source_files %} + + {{group}} + + {% for file in files %} + + {{file.name}} + {{file.type}} + {{file.path}} + {%if file.type == "1" %} + + + + + --c99 + + + + + {% endif %} + + {% endfor %} + + + {% endfor %} + + + + +
diff --git a/workspace_tools/hooks.py b/workspace_tools/hooks.py index b171de3fff..d8018dd0cd 100644 --- a/workspace_tools/hooks.py +++ b/workspace_tools/hooks.py @@ -11,7 +11,7 @@ _hooks = {} _running_hooks = {} # Available hook types -_hook_types = ["binary"] +_hook_types = ["binary", "compile", "link", "assemble"] # Available hook steps _hook_steps = ["pre", "replace", "post"] @@ -59,10 +59,12 @@ def hook_tool(function): class Hook: def __init__(self, target, toolchain): _hooks.clear() + self._cmdline_hooks = {} self.toolchain = toolchain target.init_hooks(self, toolchain.__class__.__name__) - def hook_add(self, hook_type, hook_step, function): + # Hook various functions directly + def _hook_add(self, hook_type, hook_step, function): if not hook_type in _hook_types or not hook_step in _hook_steps: return False if not hook_type in _hooks: @@ -70,8 +72,54 @@ class Hook: _hooks[hook_type][hook_step] = function return True + def hook_add_compiler(self, hook_step, function): + return self._hook_add("compile", hook_step, function) + + def hook_add_linker(self, hook_step, function): + return self._hook_add("link", hook_step, function) + + def hook_add_assembler(self, hook_step, function): + return self._hook_add("assemble", hook_step, function) + def hook_add_binary(self, hook_step, function): - return self.hook_add("binary", hook_step, function) + return self._hook_add("binary", hook_step, function) + + # Hook command lines + def _hook_cmdline(self, hook_type, function): + if not hook_type in _hook_types: + return False + self._cmdline_hooks[hook_type] = function + return True + + def hook_cmdline_compiler(self, function): + return self._hook_cmdline("compile", function) + + def hook_cmdline_linker(self, function): + return self._hook_cmdline("link", function) + + def hook_cmdline_assembler(self, function): + return self._hook_cmdline("assemble", function) + + def hook_cmdline_binary(self, function): + return self._hook_cmdline("binary", function) + + # Return the command line after applying the hook + def _get_cmdline(self, hook_type, cmdline): + if self._cmdline_hooks.has_key(hook_type): + cmdline = self._cmdline_hooks[hook_type](self.toolchain.__class__.__name__, cmdline) + return cmdline + + def get_cmdline_compiler(self, cmdline): + return self._get_cmdline("compile", cmdline) + + def get_cmdline_linker(self, cmdline): + return self._get_cmdline("link", cmdline) + + def get_cmdline_assembler(self, cmdline): + return self._get_cmdline("assemble", cmdline) + + def get_cmdline_binary(self, cmdline): + return self._get_cmdline("binary", cmdline) ################################################################################ diff --git a/workspace_tools/settings.py b/workspace_tools/settings.py index 32b18f7a3f..4f65c4729e 100644 --- a/workspace_tools/settings.py +++ b/workspace_tools/settings.py @@ -106,4 +106,4 @@ try: # settings file stored in the repository from workspace_tools.private_settings import * except ImportError: - print '[WARNING] Using default settings. Define you settings in the file "workspace_tools/private_settings.py"' + print '[WARNING] Using default settings. Define you settings in the file "workspace_tools/private_settings.py" or in "./mbed_settings.py"' diff --git a/workspace_tools/targets.py b/workspace_tools/targets.py index 6dc74dd540..5efdbb7d5f 100644 --- a/workspace_tools/targets.py +++ b/workspace_tools/targets.py @@ -21,7 +21,7 @@ CORE_LABELS = { "Cortex-M0+": "M0P", "Cortex-M3" : "M3", "Cortex-M4" : "M4", - "Cortex-M4F" : "M4F" + "Cortex-M4F" : "M4" } import os @@ -106,7 +106,7 @@ class KL05Z(Target): self.extra_labels = ['Freescale'] - self.supported_toolchains = ["ARM"] + self.supported_toolchains = ["ARM", "GCC_ARM"] self.is_disk_virtual = True @@ -175,7 +175,7 @@ class LPC4088(Target): def init_hooks(self, hook, toolchain_name): if toolchain_name in ['ARM_STD', 'ARM_MICRO']: hook.hook_add_binary("post", self.binary_hook) - + @staticmethod def binary_hook(t_self, elf, binf): if not os.path.isdir(binf): diff --git a/workspace_tools/tests.py b/workspace_tools/tests.py index 9d7630f0c0..20af44454c 100644 --- a/workspace_tools/tests.py +++ b/workspace_tools/tests.py @@ -41,10 +41,12 @@ Wiring: * digital_loop (Digital(In|Out|InOut), InterruptIn): * LPC1*: (p5 <-> p25 ) * KL25Z: (PTA5<-> PTC6) + * NUCLEO_F103RB: (PC_6 <-> PB_8) * port_loop (Port(In|Out|InOut)): * LPC1*: (p5 <-> p25 ), (p6 <-> p26 ) * KL25Z: (PTA5 <-> PTC6), (PTA4 <-> PTC5) + * NUCLEO_F103RB: (PC_6 <-> PB_8), (PC_5 <-> PB_9) * analog_loop (AnalogIn, AnalogOut): * LPC1*: (p17 <-> p18 ) @@ -203,6 +205,20 @@ TESTS = [ "dependencies": [MBED_LIBRARIES, TEST_MBED_LIB], "automated": True, }, + { + "id": "MBED_A22", "description": "SPIFI for LPC4088 (test 1)", + "source_dir": join(TEST_DIR, "mbed", "spifi1"), + "dependencies": [MBED_LIBRARIES, TEST_MBED_LIB], + "automated": True, + "mcu": ["LPC4088"] + }, + { + "id": "MBED_A23", "description": "SPIFI for LPC4088 (test 2)", + "source_dir": join(TEST_DIR, "mbed", "spifi2"), + "dependencies": [MBED_LIBRARIES, TEST_MBED_LIB], + "automated": True, + "mcu": ["LPC4088"] + }, # Size benchmarks { @@ -391,8 +407,13 @@ TESTS = [ "source_dir": join(TEST_DIR, "mbed", "can_interrupt"), "dependencies": [MBED_LIBRARIES], "mcu": ["LPC1768", "LPC4088"] - }, - + }, + { + "id": "MBED_31", "description": "PWM LED test", + "source_dir": join(TEST_DIR, "mbed", "pwm_led"), + "dependencies": [MBED_LIBRARIES], + }, + # CMSIS RTOS tests { "id": "CMSIS_RTOS_1", "description": "Basic", diff --git a/workspace_tools/toolchains/__init__.py b/workspace_tools/toolchains/__init__.py index a629d8aa51..6fe9e3512e 100644 --- a/workspace_tools/toolchains/__init__.py +++ b/workspace_tools/toolchains/__init__.py @@ -403,7 +403,7 @@ class mbedToolchain: command.extend(self.cc_extra(base)) self.debug(command) - _, stderr, rc = run_cmd(command, dirname(object)) + _, stderr, rc = run_cmd(self.hook.get_cmdline_compiler(command), dirname(object)) # Parse output for Warnings and Errors self.parse_output(stderr) diff --git a/workspace_tools/toolchains/arm.py b/workspace_tools/toolchains/arm.py index 0a43183577..a22e616d43 100644 --- a/workspace_tools/toolchains/arm.py +++ b/workspace_tools/toolchains/arm.py @@ -81,7 +81,7 @@ class ARM(mbedToolchain): # Preprocess first, then assemble tempfile = object + '.E.s' self.default_cmd(self.asm + ['-D%s' % s for s in self.get_symbols() + self.macros] + ["-I%s" % i for i in includes] + ["-E", "-o", tempfile, source]) - self.default_cmd(self.asm + ["-o", object, tempfile]) + self.default_cmd(self.hook.get_cmdline_assembler(self.asm + ["-o", object, tempfile])) def parse_dependencies(self, dep_path): dependencies = [] @@ -114,15 +114,15 @@ class ARM(mbedToolchain): self.default_cmd([self.ar, '-r', lib_path] + objects) def link(self, output, objects, libraries, lib_dirs, mem_map): - args = ["-o", output, "--userlibpath", ",".join(lib_dirs), "--info=totals", "--list=.link_totals.txt", "--any_placement=first_fit"] + args = ["-o", output, "--userlibpath", ",".join(lib_dirs), "--info=totals", "--list=.link_totals.txt"] if mem_map: args.extend(["--scatter", mem_map]) - self.default_cmd(self.ld + args + objects + libraries + self.sys_libs) + self.default_cmd(self.hook.get_cmdline_linker(self.ld + args + objects + libraries + self.sys_libs)) @hook_tool def binary(self, elf, bin): - self.default_cmd([self.elf2bin, '--bin', '-o', bin, elf]) + self.default_cmd(self.hook.get_cmdline_binary([self.elf2bin, '--bin', '-o', bin, elf])) class ARM_STD(ARM): diff --git a/workspace_tools/toolchains/gcc.py b/workspace_tools/toolchains/gcc.py index b5b2ad38bd..b2cfb2b7e0 100644 --- a/workspace_tools/toolchains/gcc.py +++ b/workspace_tools/toolchains/gcc.py @@ -79,7 +79,7 @@ class GCC(mbedToolchain): self.elf2bin = join(tool_path, "arm-none-eabi-objcopy") def assemble(self, source, object, includes): - self.default_cmd(self.asm + ['-D%s' % s for s in self.get_symbols() + self.macros] + ["-I%s" % i for i in includes] + ["-o", object, source]) + self.default_cmd(self.hook.get_cmdline_assembler(self.asm + ['-D%s' % s for s in self.get_symbols() + self.macros] + ["-I%s" % i for i in includes] + ["-o", object, source])) def parse_dependencies(self, dep_path): dependencies = [] @@ -155,11 +155,11 @@ class GCC(mbedToolchain): if self.CIRCULAR_DEPENDENCIES: libs.extend(libs) - self.default_cmd(self.ld + ["-T%s" % mem_map, "-o", output] + - objects + ["-L%s" % L for L in lib_dirs] + libs) + self.default_cmd(self.hook.get_cmdline_linker(self.ld + ["-T%s" % mem_map, "-o", output] + + objects + ["-L%s" % L for L in lib_dirs] + libs)) def binary(self, elf, bin): - self.default_cmd([self.elf2bin, "-O", "binary", elf, bin]) + self.default_cmd(self.hook.get_cmdline_binary([self.elf2bin, "-O", "binary", elf, bin])) class GCC_ARM(GCC): diff --git a/workspace_tools/toolchains/iar.py b/workspace_tools/toolchains/iar.py index 87fcbe9781..8b7787c981 100644 --- a/workspace_tools/toolchains/iar.py +++ b/workspace_tools/toolchains/iar.py @@ -91,7 +91,7 @@ class IAR(mbedToolchain): if (path and not path.isspace())] def assemble(self, source, object, includes): - self.default_cmd(self.asm + ['-D%s' % s for s in self.get_symbols() + self.macros] + ["-I%s" % i for i in includes] + ["-o", object, source]) + self.default_cmd(self.hook.get_cmdline_assembler(self.asm + ['-D%s' % s for s in self.get_symbols() + self.macros] + ["-I%s" % i for i in includes] + ["-o", object, source])) def archive(self, objects, lib_path): if exists(lib_path): @@ -100,7 +100,7 @@ class IAR(mbedToolchain): def link(self, output, objects, libraries, lib_dirs, mem_map): args = [self.ld, "-o", output, "--config", mem_map] - self.default_cmd(args + objects + libraries) + self.default_cmd(self.hook.get_cmdline_linker(args + objects + libraries)) def binary(self, elf, bin): - self.default_cmd([self.elf2bin, '--bin', elf, bin]) + self.default_cmd(self.hook.get_cmdline_binary([self.elf2bin, '--bin', elf, bin]))