From b6d764aec9dd3c89bf9c2c3c3dbaa3145b6802dd Mon Sep 17 00:00:00 2001 From: iceman1001 Date: Wed, 20 May 2020 11:13:21 +0200 Subject: [PATCH] Add: 'lf fdx demod' - decoding of Bio-Thermo lf tag. Thanks to Rosco! See Destron Fearing LifeChip with Bio-Thermo technology and http://www.proxmark.org/forum/viewtopic.php?pid=38984#p38984 --- client/src/cmdlffdx.c | 66 +- traces/lf_fdx_biothermo.pm3 | 10000 ++++++++++++++++++++++++++++++++++ 2 files changed, 10047 insertions(+), 19 deletions(-) create mode 100644 traces/lf_fdx_biothermo.pm3 diff --git a/client/src/cmdlffdx.c b/client/src/cmdlffdx.c index 93420ac28..def872fde 100644 --- a/client/src/cmdlffdx.c +++ b/client/src/cmdlffdx.c @@ -62,6 +62,7 @@ static int usage_lf_fdx_clone(void) { PrintAndLogEx(NORMAL, ""); PrintAndLogEx(NORMAL, "Examples:"); PrintAndLogEx(NORMAL, " lf fdx clone 999 112233"); + PrintAndLogEx(NORMAL, " lf fdx clone 999 112233 16a"); return PM3_SUCCESS; } @@ -78,19 +79,34 @@ static int usage_lf_fdx_sim(void) { PrintAndLogEx(NORMAL, ""); PrintAndLogEx(NORMAL, "Examples:"); PrintAndLogEx(NORMAL, " lf fdx sim 999 112233"); + PrintAndLogEx(NORMAL, " lf fdx sim 999 112233 16a"); return PM3_SUCCESS; } // clearing the topbit needed for the preambl detection. -static void verify_values(uint64_t *animalid, uint32_t *countryid) { +static void verify_values(uint64_t *animalid, uint32_t *countryid, uint32_t *extended) { if ((*animalid & 0x3FFFFFFFFF) != *animalid) { *animalid &= 0x3FFFFFFFFF; - PrintAndLogEx(INFO, "Animal ID Truncated to 38bits: %"PRIx64, *animalid); + PrintAndLogEx(INFO, "Animal ID truncated to 38bits: " _YELLOW_("%"PRIx64), *animalid); } if ((*countryid & 0x3ff) != *countryid) { *countryid &= 0x3ff; - PrintAndLogEx(INFO, "Country ID Truncated to 10bits: %03d", *countryid); + PrintAndLogEx(INFO, "Country ID truncated to 10bits:" _YELLOW_("%03d"), *countryid); } + if ((*extended & 0xfff) != *extended) { + *extended &= 0xfff; + PrintAndLogEx(INFO, "Extended truncated to 24bits: " _YELLOW_("0x%03X"), *extended); + } +} + +static inline uint32_t bitcount(uint32_t a) { +#if defined __GNUC__ + return __builtin_popcountl(a); +#else + a = a - ((a >> 1) & 0x55555555); + a = (a & 0x33333333) + ((a >> 2) & 0x33333333); + return (((a + (a >> 4)) & 0x0f0f0f0f) * 0x01010101) >> 24; +#endif } // FDX-B ISO11784/85 demod (aka animal tag) BIPHASE, inverted, rf/32, with preamble of 00000000001 (128bits) @@ -187,9 +203,7 @@ static int CmdFDXBdemodBI(const char *Cmd) { //see ASKDemod for what args are accepted //almost the same demod as cmddata.c/CmdFDXBdemodBI -static int CmdFdxDemod(const char *Cmd) { - (void)Cmd; // Cmd is not used so far - +int demodFDX(void) { //Differential Biphase / di-phase (inverted biphase) //get binary from ask wave if (ASKbiphaseDemod("0 32 1 100", false) != PM3_SUCCESS) { @@ -234,8 +248,8 @@ static int CmdFdxDemod(const char *Cmd) { num_to_bytes(rawid, 8, raw); PrintAndLogEx(SUCCESS, "\nFDX-B / ISO 11784/5 Animal Tag ID Found: Raw : %s", sprint_hex(raw, 8)); - PrintAndLogEx(SUCCESS, "Animal ID %04u-%012" PRIu64, countryCode, NationalCode); - PrintAndLogEx(SUCCESS, "National Code %012" PRIu64 " (0x%" PRIx64 ")", NationalCode, NationalCode); + PrintAndLogEx(SUCCESS, "Animal ID " _GREEN_("%04u-%012"PRIu64), countryCode, NationalCode); + PrintAndLogEx(SUCCESS, "National Code " _GREEN_("%012" PRIu64) " (0x%" PRIx64 ")", NationalCode, NationalCode); PrintAndLogEx(SUCCESS, "Country Code %04u", countryCode); PrintAndLogEx(SUCCESS, "Reserved/RFU %u (0x04%X)", reservedCode, reservedCode); PrintAndLogEx(SUCCESS, "Animal Tag %s", animalBit ? _YELLOW_("True") : "False"); @@ -243,7 +257,7 @@ static int CmdFdxDemod(const char *Cmd) { uint8_t c[] = {0, 0}; compute_crc(CRC_11784, raw, sizeof(raw), &c[0], &c[1]); - PrintAndLogEx(SUCCESS, "CRC-16 0x%04X [%s] ", crc, (crc == (c[1] << 8 | c[0])) ? _GREEN_("OK") : _RED_("Fail")); + PrintAndLogEx(SUCCESS, "CRC-16 0x%04X (%s) ", crc, (crc == (c[1] << 8 | c[0])) ? _GREEN_("ok") : _RED_("fail")); if (g_debugMode) { PrintAndLogEx(DEBUG, "Start marker %d; Size %zu", preambleIndex, size); @@ -251,12 +265,30 @@ static int CmdFdxDemod(const char *Cmd) { PrintAndLogEx(DEBUG, "DEBUG bin stream:\n%s", bin); } + uint8_t bt_par = (extended & 0x100) >> 8; + uint8_t bt_temperature = extended & 0xff; + uint8_t bt_calc_parity = (bitcount(bt_temperature) & 0x1) ? 0 : 1; + uint8_t is_bt_temperature = (bt_calc_parity == bt_par) && !(extended & 0xe00) ; + + if (is_bt_temperature) { + float bt_F = 74 + bt_temperature * 0.2; + float bt_C = (bt_F - 32) / 1.8; + PrintAndLogEx(NORMAL, ""); + PrintAndLogEx(SUCCESS, "Bio-Thermo detected"); + PrintAndLogEx(INFO, " temperature " _GREEN_("%.1f")" F / " _GREEN_("%.1f") " C", bt_F, bt_C); + } + // set block 0 for later //g_DemodConfig = T55x7_MODULATION_DIPHASE | T55x7_BITRATE_RF_32 | 4 << T55x7_MAXBLOCK_SHIFT; return PM3_SUCCESS; } +static int CmdFdxDemod(const char *Cmd) { + (void)Cmd; // Cmd is not used so far + return demodFDX(); +} + static int CmdFdxRead(const char *Cmd) { lf_read(false, 10000); return CmdFdxDemod(Cmd); @@ -272,9 +304,9 @@ static int CmdFdxClone(const char *Cmd) { countryid = param_get32ex(Cmd, 0, 0, 10); animalid = param_get64ex(Cmd, 1, 0, 10); - extended = param_get32ex(Cmd, 2, 0, 10); + extended = param_get32ex(Cmd, 2, 0, 16); - verify_values(&animalid, &countryid); + verify_values(&animalid, &countryid, &extended); uint8_t *bits = calloc(128, sizeof(uint8_t)); @@ -298,7 +330,7 @@ static int CmdFdxClone(const char *Cmd) { free(bits); - PrintAndLogEx(INFO, "Preparing to clone FDX-B to T55x7 with animal ID: %04u-%"PRIu64, countryid, animalid); + PrintAndLogEx(INFO, "Preparing to clone FDX-B to T55x7 with animal ID: " _GREEN_("%04u-%"PRIu64)" (extended 0x%X)", countryid, animalid, extended); print_blocks(blocks, ARRAYLEN(blocks)); int res = clone_t55xx_tag(blocks, ARRAYLEN(blocks)); @@ -316,11 +348,11 @@ static int CmdFdxSim(const char *Cmd) { countryid = param_get32ex(Cmd, 0, 0, 10); animalid = param_get64ex(Cmd, 1, 0, 10); - extended = param_get32ex(Cmd, 2, 0, 10); + extended = param_get32ex(Cmd, 2, 0, 16); - verify_values(&animalid, &countryid); + verify_values(&animalid, &countryid, &extended); - PrintAndLogEx(SUCCESS, "Simulating FDX-B animal ID: %04u-%"PRIu64, countryid, animalid); + PrintAndLogEx(SUCCESS, "Simulating FDX-B animal ID: " _GREEN_("%04u-%"PRIu64)" (extended 0x%X)", countryid, animalid, extended); //getFDXBits(uint64_t national_id, uint16_t country, uint8_t isanimal, uint8_t isextended, uint32_t extended, uint8_t *bits) uint8_t *bits = calloc(128, sizeof(uint8_t)); @@ -389,10 +421,6 @@ int detectFDXB(uint8_t *dest, size_t *size) { return (int)startIdx; } -int demodFDX(void) { - return CmdFdxDemod(""); -} - int getFDXBits(uint64_t national_id, uint16_t country, uint8_t is_animal, uint8_t is_extended, uint32_t extended, uint8_t *bits) { // add preamble ten 0x00 and one 0x01 diff --git a/traces/lf_fdx_biothermo.pm3 b/traces/lf_fdx_biothermo.pm3 new file mode 100644 index 000000000..77f390f2f --- /dev/null +++ b/traces/lf_fdx_biothermo.pm3 @@ -0,0 +1,10000 @@ +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-111 +-104 +-98 +-91 +-84 +-77 +-71 +-67 +-63 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +110 +102 +94 +89 +84 +77 +70 +-14 +-113 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-115 +-108 +-100 +-92 +-84 +-79 +-75 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +125 +116 +108 +102 +95 +87 +80 +75 +71 +-13 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-121 +-114 +-107 +-99 +-91 +-86 +-81 +-75 +96 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +125 +118 +109 +101 +93 +87 +82 +75 +69 +-15 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-115 +-108 +-100 +-91 +-84 +-79 +-75 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +115 +-1 +-108 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-9 +112 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +81 +-30 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-18 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +112 +104 +96 +88 +82 +77 +73 +66 +61 +56 +-26 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-59 +67 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +64 +-47 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-26 +97 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-112 +-104 +-98 +-92 +-85 +-78 +-74 +-69 +-64 +107 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +117 +109 +102 +96 +89 +81 +75 +70 +-13 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-55 +69 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-24 +98 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-110 +-103 +-97 +-91 +-84 +-77 +-71 +-68 +-64 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +4 +-103 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-9 +114 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +83 +-29 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +110 +103 +97 +90 +83 +76 +72 +68 +63 +57 +-27 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-117 +-109 +-102 +-93 +-86 +-81 +-76 +94 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +110 +101 +94 +88 +80 +74 +69 +-14 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-58 +67 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +68 +-43 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-114 +-105 +-99 +-93 +-86 +-79 +-74 +-70 +-65 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +5 +-103 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +83 +-30 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +112 +104 +96 +88 +82 +78 +72 +66 +61 +58 +-25 +-125 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-117 +-109 +-101 +-93 +-86 +-81 +-76 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +117 +108 +101 +94 +86 +80 +75 +69 +-16 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-59 +68 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +70 +-41 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-114 +-107 +-99 +-91 +-84 +-79 +-75 +-70 +-64 +107 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +4 +-104 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +123 +113 +105 +98 +93 +86 +79 +73 +67 +64 +59 +-26 +-125 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-61 +66 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +66 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-116 +-108 +-99 +-91 +-86 +-80 +-75 +-69 +-63 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +113 +105 +95 +88 +83 +77 +70 +-15 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-56 +70 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +69 +-40 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-113 +-105 +-99 +-93 +-86 +-79 +-73 +-69 +-65 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +110 +102 +94 +88 +83 +77 +70 +-15 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-58 +68 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +69 +-42 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-25 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-36 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-113 +-103 +-97 +-91 +-85 +-78 +-71 +-66 +-62 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +3 +-105 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-8 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +81 +-30 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-18 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +110 +103 +96 +88 +82 +77 +72 +66 +61 +57 +-25 +-125 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-60 +68 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +70 +-40 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-24 +98 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-112 +-105 +-98 +-90 +-83 +-78 +-73 +-68 +-62 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +110 +103 +95 +87 +81 +77 +72 +-13 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-56 +69 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +68 +-41 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-25 +98 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-113 +-103 +-97 +-91 +-85 +-78 +-72 +-67 +-64 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +3 +-104 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-8 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +122 +112 +104 +98 +90 +83 +77 +73 +67 +62 +58 +-24 +-124 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-117 +-107 +-100 +-94 +-88 +-81 +-74 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +115 +1 +-106 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-12 +112 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +121 +113 +106 +99 +91 +84 +78 +74 +68 +62 +58 +-25 +-124 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-59 +67 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-42 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-114 +-105 +-98 +-92 +-86 +-78 +-74 +-70 +-64 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +111 +103 +94 +88 +83 +78 +71 +-15 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-58 +68 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-115 +-106 +-98 +-92 +-86 +-80 +-72 +-68 +-64 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +110 +101 +94 +89 +84 +77 +70 +-15 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-57 +70 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +65 +-46 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-121 +-114 +-106 +-99 +-90 +-84 +-79 +-74 +-69 +-63 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +109 +102 +96 +90 +83 +76 +71 +-13 +-112 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-115 +-108 +-100 +-91 +-85 +-80 +-75 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +113 +-1 +-108 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-9 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +83 +-30 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +121 +111 +102 +95 +90 +84 +77 +71 +67 +63 +58 +-27 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-61 +66 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-43 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-25 +98 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-119 +-110 +-104 +-97 +-90 +-82 +-76 +-72 +-68 +-63 +107 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +4 +-103 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +81 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-18 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +110 +103 +97 +91 +84 +77 +71 +67 +63 +57 +-27 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-117 +-109 +-102 +-93 +-86 +-81 +-76 +94 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +124 +116 +109 +102 +93 +86 +80 +76 +70 +-15 +-116 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-114 +-106 +-100 +-94 +-86 +-79 +-73 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +115 +0 +-107 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-11 +112 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +110 +103 +97 +90 +83 +76 +71 +67 +62 +57 +-27 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-117 +-109 +-101 +-93 +-86 +-81 +-76 +94 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +125 +118 +109 +100 +92 +86 +81 +76 +69 +-16 +-116 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-115 +-106 +-99 +-93 +-87 +-79 +-74 +94 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +124 +118 +110 +101 +93 +86 +81 +76 +70 +-14 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-116 +-108 +-98 +-92 +-87 +-80 +-73 +96 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +124 +116 +108 +102 +94 +86 +79 +75 +71 +-14 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-56 +69 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +65 +-45 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +99 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-112 +-103 +-97 +-91 +-85 +-78 +-71 +-67 +-64 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +117 +2 +-104 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-9 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +83 +-29 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +121 +111 +102 +95 +89 +84 +77 +71 +66 +62 +59 +-25 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-117 +-107 +-100 +-94 +-88 +-81 +-74 +96 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +115 +1 +-106 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +81 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +113 +104 +96 +89 +84 +78 +72 +66 +62 +58 +-26 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-62 +65 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +66 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-24 +99 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-113 +-105 +-97 +-88 +-83 +-78 +-73 +-66 +-61 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +111 +104 +96 +88 +81 +76 +72 +-12 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-116 +-107 +-98 +-91 +-86 +-80 +-74 +97 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +116 +2 +-106 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-11 +112 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +113 +106 +98 +90 +84 +79 +73 +67 +62 +59 +-24 +-123 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-59 +65 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-43 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-26 +98 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-113 +-105 +-97 +-89 +-83 +-78 +-73 +-67 +-61 +108 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +110 +104 +96 +89 +81 +76 +72 +-12 +-113 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-115 +-106 +-98 +-92 +-86 +-80 +-74 +97 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +116 +2 +-106 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-11 +111 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +123 +114 +105 +97 +91 +86 +80 +73 +67 +63 +60 +-24 +-125 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-60 +65 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +66 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-115 +-106 +-98 +-90 +-83 +-76 +-72 +-68 +-63 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +2 +-105 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-8 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +122 +115 +107 +99 +91 +84 +79 +75 +69 +63 +58 +-24 +-124 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-126 +-118 +-108 +-99 +-93 +-87 +-81 +-76 +96 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +113 +-1 +-108 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-11 +112 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +122 +112 +104 +98 +92 +86 +78 +72 +67 +63 +58 +-27 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-115 +-108 +-100 +-93 +-88 +-82 +-75 +94 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +113 +-1 +-108 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +111 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +82 +-30 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-36 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +110 +102 +97 +89 +82 +76 +72 +66 +61 +57 +-26 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-60 +65 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-26 +98 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-119 +-111 +-104 +-97 +-89 +-82 +-76 +-72 +-67 +-62 +108 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +4 +-104 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +114 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +111 +102 +95 +89 +84 +77 +71 +66 +63 +58 +-27 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-116 +-109 +-102 +-95 +-87 +-80 +-75 +93 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +113 +-2 +-109 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-9 +114 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +110 +104 +95 +87 +82 +77 +71 +65 +61 +58 +-26 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-62 +64 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-114 +-105 +-98 +-92 +-86 +-79 +-72 +-67 +-64 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +110 +104 +96 +88 +81 +76 +72 +-13 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-56 +69 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +66 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-115 +-106 +-98 +-91 +-86 +-80 +-74 +-67 +-63 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +5 +-102 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +113 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +122 +113 +105 +98 +92 +84 +78 +73 +69 +64 +58 +-26 +-124 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-116 +-109 +-101 +-92 +-86 +-81 +-76 +94 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +114 +1 +-106 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-11 +112 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +121 +114 +106 +97 +90 +86 +80 +73 +68 +65 +60 +-25 +-124 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-117 +-109 +-101 +-93 +-86 +-80 +-76 +93 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +115 +1 +-106 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-10 +111 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +113 +106 +98 +90 +84 +78 +74 +69 +63 +58 +-25 +-124 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-126 +-117 +-108 +-99 +-92 +-87 +-81 +-76 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +117 +107 +101 +93 +86 +80 +75 +69 +-16 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-57 +70 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +66 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-26 +97 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-18 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +75 +-37 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-112 +-106 +-98 +-90 +-83 +-77 +-73 +-68 +-62 +107 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +5 +-103 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-8 +114 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-31 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-33 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +111 +104 +96 +88 +82 +77 +72 +66 +61 +57 +-26 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-61 +64 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-25 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-111 +-104 +-99 +-92 +-85 +-79 +-75 +-69 +-63 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +120 +110 +101 +94 +88 +83 +77 +70 +-15 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-114 +-107 +-100 +-91 +-84 +-78 +-74 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +108 +100 +94 +87 +80 +74 +70 +-14 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-56 +68 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +68 +-43 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-26 +99 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-111 +-104 +-98 +-91 +-83 +-76 +-71 +-67 +-63 +107 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +109 +101 +94 +89 +82 +75 +70 +-13 +-113 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-116 +-107 +-99 +-91 +-85 +-80 +-75 +96 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +125 +117 +110 +101 +93 +86 +81 +76 +70 +-15 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-122 +-114 +-107 +-100 +-92 +-84 +-78 +-74 +95 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +125 +115 +106 +100 +94 +87 +80 +74 +69 +-14 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-116 +-107 +-98 +-91 +-86 +-80 +-75 +96 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +114 +0 +-107 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-11 +111 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +82 +-30 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +79 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +102 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +111 +103 +97 +90 +83 +77 +72 +68 +64 +58 +-26 +-125 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-61 +66 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +65 +-46 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-25 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-23 +100 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-36 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-19 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +80 +-32 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-120 +-111 +-104 +-98 +-91 +-84 +-76 +-71 +-67 +-63 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +111 +102 +94 +88 +82 +78 +71 +-15 +-115 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-57 +68 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +67 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-24 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-121 +-112 +-103 +-96 +-90 +-85 +-79 +-72 +-66 +-62 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +3 +-105 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-7 +114 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +81 +-31 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-18 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +119 +111 +103 +98 +90 +83 +76 +71 +67 +63 +57 +-27 +-126 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-117 +-109 +-102 +-93 +-86 +-81 +-76 +93 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +125 +118 +109 +100 +92 +86 +81 +76 +69 +-15 +-116 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-59 +67 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +70 +-41 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-113 +-104 +-98 +-92 +-85 +-78 +-72 +-68 +-64 +105 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +4 +-103 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-6 +117 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +81 +-30 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +77 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-20 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +118 +109 +102 +96 +89 +82 +75 +72 +67 +61 +56 +-27 +-125 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-125 +-117 +-109 +-101 +-92 +-85 +-80 +-76 +94 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +124 +115 +107 +101 +94 +87 +80 +75 +70 +-13 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-56 +68 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +66 +-43 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-123 +-115 +-108 +-100 +-91 +-86 +-81 +-75 +-68 +-64 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +117 +2 +-106 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-8 +115 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +121 +113 +106 +99 +91 +84 +78 +74 +69 +64 +58 +-26 +-124 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-61 +66 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +66 +-44 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-114 +-106 +-100 +-93 +-85 +-79 +-74 +-69 +-64 +106 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +117 +109 +103 +96 +89 +81 +76 +71 +-12 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-56 +69 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +69 +-41 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-124 +-115 +-105 +-97 +-91 +-86 +-80 +-73 +-67 +-63 +104 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +117 +109 +103 +95 +88 +81 +76 +72 +-13 +-114 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-55 +69 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +68 +-42 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-25 +99 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +78 +-34 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +103 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-35 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-21 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +126 +76 +-36 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-127 +-22 +101 +126 +126 +126 +126 +126 +126 +126 +126 +126