I2S ESP32 – MAX98357A
הקוד פשוט
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
#include <Arduino.h> #include <I2S.h> // working code #define I2S_SAMPLE_RATE (8000) #define I2S_SAMPLE_BITS 16 #define PIN_LRC 26 #define PIN_BCLK 27 #define PIN_DOUT 25 int count = 0; void setup() { I2S.setSckPin(PIN_BCLK); I2S.setFsPin(PIN_LRC); I2S.setDataPin(PIN_DOUT); if (!I2S.begin(I2S_PHILIPS_MODE, I2S_SAMPLE_RATE, I2S_SAMPLE_BITS)) { Serial.println("Failed to initialize I2S!"); while (1) ; // do nothing } } int16_t GenerateSineWave(float frequency) { float gain = 0.08; double rad = 2 * M_PI * frequency * count++ / I2S_SAMPLE_RATE; int16_t sineVal = 32767 * gain * sin(rad); return sineVal; } void loop() { int i =0; for(i=-170;i<1700;i=i+100) { for(int j=0 ; j<7000;j++) { I2S.write(GenerateSineWave(i)); // 470 Hz sine wave } } } |
יצירת קובץ ניסוי בפייתון
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
import wave import matplotlib.pyplot as plt import sounddevice as sd import numpy as np # Path to the WAV file file_path = r"d:\temp3\recorded_audio.wav" # Open the WAV file with wave.open(file_path, 'rb') as wav_file: # Read and print the WAV file header info print("WAV File Info:") print(f"Number of Channels: {wav_file.getnchannels()}") print(f"Sample Width (bytes): {wav_file.getsampwidth()}") print(f"Sample Rate: {wav_file.getframerate()} Hz") print(f"Number of Frames: {wav_file.getnframes()}") # Read audio data as a list of 16-bit integers audio_data = np.frombuffer(wav_file.readframes(wav_file.getnframes()), dtype=np.int16) # Plot audio waveform plt.plot(audio_data) plt.xlabel("Sample") plt.ylabel("Amplitude") plt.title("Audio Waveform") plt.show() # Create the header file header_file_path = r"d:\temp3\ar.txt" with open(header_file_path, "w") as header_file: header_file.write("int16_t arr[] = {") for sample in audio_data[:80000]: # Limit to 80000 bytes header_file.write(f"{sample},") header_file.write("};") print(f"Header file '{header_file_path}' created with audio data.") # Play the audio data print("Playing audio...") sd.play(audio_data, samplerate=wav_file.getframerate()) sd.wait() # Wait until playback is finished print("Playback finished.") |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
#include <Arduino.h> #include <I2S.h> // working code #define I2S_SAMPLE_RATE (8000) #define I2S_SAMPLE_BITS 16 #define PIN_LRC 26 #define PIN_BCLK 27 #define PIN_DOUT 25 int16_t arr[] = {0,-9,-43,-78,-86,-65,-60,-82,-47,-30,-65,-86,-82,-86,-65,-65,-108,-52,4,-22,-43,-69,-60,-60,-91,-78,-99,-86,-99,-108,-82,-134,-151,-125,-108,-82,-78,-82,-99,-121,-142,-125,-121,-138,-99,-108,-108,-121,-95,-91,-99,-73,-69,-65,-108,-112,-121,-112,-95,-125,-164,-125,-129,-147,-160,-186,-173,-138,-99,-129,-125,35,43,26,43,9,4,13,26,30,22,22,30,30,60,73,52,52,60,86,99,99,78,91,78,95,91,86,91,69,82,125,78,78,138,108,181,117,104,134,112,134,134,134,99,117,117,121,142,129,142,164,151,129,142,155,138,147,134,125,155,147,151,160,138,164,151,181,173,129,155,160,194,160,194,155,155,138,134,198,160,186,186,190,194,164,181,168,173,194,177,181,177,164,164,177,168,164,160,155,177,173,160,181,155,173,164,190,203,186,194,207,211,220,229,229,237,224,237,242,255,276,259,263,268,250,255,285,293,306,315,332,328,319,311,311,332,337,332,354,367,345,332,350,345,337,332,354,371,341,345,375,367,350,354,362,350,332,371,375,371,375,384,380,371,371,371,384,371,367,358,345,367,350,350,375,362,371,380,371,380,362,345,354,354,362,367,354,362,341,332,354,341,324,332,341,341,328,332,337,332,332,328,332,337,328,332,328,319,332,315,332,328,302,306,302,293,311,289,298,289,272,289,311,302,302,293,285,285,268,259,268,255,237,246,246,233,237,216,229,237,233,250,242,233,224,220,220,229,211,198,203,198,198,198,194,168,181,160,177,186,164,155,151,138,125,125,129,112,86,95,121,112,121,108,121,121,104,99,117,108,78,78,73,82,65,69,82,73,73,52,52,65,39,35,60,52,35,26,22,22,-4,4,22,22,0,0,22,13,-9,-9,-17,-26,-17,-17,-4,-22,-35,-39,-26,-22,-26,-17,-13,-4,-26,-4,-9,-9,0,-26,-17,-4,-22,-30,-22,-22,-13,-13,-26,-9,-4,-17,0,-13,-13,-17,-13,4,4,-9,17,17,4,0,4,9,0,-4,9,17,17,9,22,9,-9,13,26,35,30,39,35,39,9,9,17,13,17,4,9,9,4,4,26,13,13,9,13,35,9,9,30,-9,4,13,26,13,9,17,13,26,26,26,35,30,4,9,17,0,9,-4,9,17,13,9,17,22,39,22,17,17,-9,-13,-17,-17,-13,-30,-26,-17,-26,-17,0,-4,0,-22,-4,-13,-43,-17,-39,-43,-22,-26,-39,-47,-39,-47,-60,-56,-52,-35,-39,-35,-52,-69,-39,-52,-73,-56,-47,-60,-73,-86,-65,-69,-60,-52,-47,-35,-52,-56,-69,-69,-73,-86,-69,-86,-95,-91,-78,-60,-65,-60,-65,-65,-65,-86,-78,-86,-78,-86,-91,-73,-86,-86,-73,-78,-60,-69,-60,-78,-91,-73,-73,-69,-65,-82,-82,-78,-86,-82,-73,-78,-65,-82,-73,-52,-86,-82,-56,-56,-69,-69,-65,-73,-82,-69,-60,-73,-69,-47,-52,-47,-56,-60,-26,-30,-47,-56,-60,-56,-65,-52,-39,-39,-30,-39,-39,-47,-56,-43,-56,-47,-43,-47,-22,-26,-56,-56,-43,-43,-35,-30,-17,-9,-26,-26,-9,-22,-39,-52,-52,-39,-47,-39,-26,-35,-30,-43,-47,-39,-35,-30,-4,-13,-9,-22,-26,-39,-39,-35,-26,-22,-17,-17,-30,-30,-43,-47,-35,-22,-26,-39,-30,-22,-30,-60,-60,-47,-60,-73,-43,-47,-60,-56,-56,-69,-65,-52,-47,-56,-56,-56,-60,-60,-47,-52,-56,-60,-60,-56,-39,-22,-52,-60,-56,-60,-60,-82,-65,-60,-52,-43,-43,-47,-65,-56,-43,-43,-39,-35,-39,-43,-52,-52,-47,-65,-69,-82,-56,-43,-69,-56,-56,-52,-43,-60,-39,-43,-60,-56,-56,-73,-65,-78,-65,-56,-73,-73,-52,-56,-56,-52,-73,-65,-60,-78,-60,-52,-60,-73,-82,-73,-82,-95,-65,-78,-78,-69,-65,-52,-73,-82,-91,-99,-82,-82,-69,-69,-86,-91,-78,-86,-82,-86,-82,-82,-86,-78,-65,-65,-69,-82,-82,-69,-86,-73,-73,-69,-73,-95,-78,-91,-91,-86,-73,-73,-73,-82,-73,-65,-95,-99,-91,-108,-99,-95,-82,-78,-86,-78,-73,-78,-86,-86,-86,-78,-82,-82,-82,-104,-95,-99,-91,-91,-99,-91,-78,-78,-82,-78,-73,-82,-91,-104,-91,-104,-99,-99,-86,-86,-121,-104,-91,-112,-91,-73,-73,-86,-108,-104,-86,-108,-104,-108,-104,-104,-108,-99,-99,-104,-104,-99,-95,-73,-82,-86,-95,-91,-95,-99,-95,-104,-91,-82,-82,-73,-60,-82,-82,-73,-91,-82,-95,-95,-91,-86,-95,-91,-82,-95,-82,-82,-91,-82,-60,-65,-78,-73,-73,-82,-82,-91,-78,-82,-99,-91,-65,-78,-99,-86,-69,-69,-82,-95,-82,-104,-91,-91,-82,-69,-86,-91,-65,-78,-95,-91,-65,-52,-65,-69,-52,-60,-60,-60,-56,-56,-69,-69,-56,-56,-47,-56,-60,-60,-73,-65,-52,-69,-52,-47,-39,-13,-43,-47,-26,-39,-52,-52,-52,-43,-35,-52,-30,-56,-52,-43,-56,-30,-39,-35,-30,-43,-43,-43,-47,-56,-43,-39,-39,-39,-47,-39,-22,-13,-35,-52,-30,-43,-52,-43,-35,-30,-35,-39,-30,-30,-35,-30,-22,-17,-35,-43,-22,-35,-35,-22,-26,-17,-26,-17,-4,0,-13,-17,-30,-26,-26,-26,0,-26,-47,-47,-39,-30,-43,-22,-30,-43,-52,-52,-39,-47,-43,-30,-26,-35,-43,-56,-52,-69,-65,-47,-43,-52,-52,-52,-47,-47,-56,-60,-52,-43,-56,-52,-47,-65,-78,-65,-52,-56,-56,-56,-39,-17,-22,-30,-30,-30,-43,-56,-65,-56,-56,-52,-43,-47,-47,-52,-60,-60,-82,-73,-52,-60,-69,-56,-56,-65,-82,-86,-82,-86,-95,-108,-86,-82,-95,-95,-86,-82,-82,-86,-73,-91,-121,-108,-104,-112,-95,-95,-91,-82,-95,-73,-69,-99,-91,-112,-91,-99,-108,-99,-82,-78,-95,-95,-78,-91,-112,-104,-95,-95,-86,-78,-78,-91,-99,-104,-99,-99,-95,-91,-78,-78,-91,-95,-73,-73,-82,-86,-69,-65,-82,-104,-86,-69,-86,-73,-82,-104,-99,-82,-69,-82,-86,-91,-82,-104,-117,-99,-73,-73,-65,-65,-69,-56,-78,-69,-60,-56,-60,-78,-69,-60,-60,-73,-60,-69,-60,-47,-39,-39,-56,-52,-43,-69,-47,-52,-52,-30,-47,-35,-47,-52,-39,-35,-26,-30,-26,-26,-9,-30,-30,-39,-52,-52,-47,-39,-22,-9,-26,-30,-26,-35,-43,-35,-17,-26,-22,-26,-9,-22,-39,-39,-17,-30,-4,13,26,30,4,4,0,0,9,9,22,13,0,4,9,-4,-9,-4,0,0,4,39,47,17,13,4,4,9,-17,-17,0,0,4,17,30,22,-4,0,30,26,30,30,22,17,9,0,17,30,39,52,47,35,9,13,26,9,17,-4,13,9,-4,4,17,9,-9,-17,-17,0,-13,0,0,0,4,-9,-4,-9,-35,-22,0,-4,-4,-13,0,-4,-17,-9,-4,-9,-9,-9,-4,-4,-17,-4,13,9,17,-4,17,9,-30,-47,-9,-26,-30,-39,-43,-56,-82,-112,-164,-311,-803,-2550,-4419,-2076,660,2805,3810,2063,526,-1303,-867,-669,-669,-268,-634,86,777,2020,2162,1105,82,-1631,-2089,-1506,-695,-224,-306,-285,-440,289,1165,1679,1735,444,-1476,-2680,-2917,-2235,-652,539,1204,1868,1933,1484,583,-600,-1808,-2309,-1238,207,2071,3081,2973,1868,-125,-971,-2045,-2550,-2313,-1933,-1031,-289,1074,1510,1519,1005,-203,-755,-928,-2447,-1342,-803,-1282,695,9,669,142,375,203,-1087,-190,-1713,229,1696,2641,4414,4557,4596,1528,-2248,-4803,-5403,-3280,-785,1713,2593,2706,3163,2844,2278,501,-2287,-4035,-4837,-3034,-3323,-3487,324,1247,3314,3461,2494,86,-1437,-1510,-4462,-4125,-3759,-2675,134,1601,1467,604,949,-280,-483,181,-932,453,2464,3746,4397,5355,4242,1044,-1877,-4764,-4919,-3841,-643,1308,2287,3603,3366,3180,2576,207,-2201,-4337,-4475,-3219,-716,1989,2792,3547,2529,980,-4553,-5006,-4518,-3400,1226,-345,1938,1881,2140,2744,803,-1118,-5200,-5989,-6766,-3340,488,1610,3059,1191,1251,785,17,-488,-561,-729,-492,2602,2926,5118,5989,3737,2404,-2028,-4229,-3953,-3927,-1333,436,2270,3418,3521,4259,1830,220,-2205,-4811,-4177,-3232,-328,1847,3711,4043,2848,2335,302,-1234,-2624,-6335,-9977,-5873,-2434,1860,7716,5441,99,-2382,-3120,-6011,-3439,-3284,-4751,-941,971,2464,3185,2533,-958,-2688,-2149,-2106,630,2011,2369,3310,4527,5567,6740,7323,3871,-2524,-7828,-8898,-6689,-1031,4199,5713,5549,4432,3038,1674,539,-2106,-5273,-6555,-4984,-1510,3659,6473,5485,3396,30,-2028,-2533,-3336,-6589,-5968,-6011,-2934,2619,3633,3301,-306,-1519,-3297,-2934,-2503,-3759,-2360,-2093,-315,1014,1748,1044,-449,-729,-2317,-1894,-2667,-1359,923,1933,3504,4570,5170,4242,5126,5014,2969,-280,-3702,-5666,-4635,-591,2291,4496,5023,3413,2002,954,22,-1066,-2145,-2848,-2701,-643,1864,3284,3223,3077,-1031,-2930,-6512,-7090,-2438,-3141,-384,285,-181,-181,634,608,-1506,-790,-3008,-3387,-1424,-1394,-794,-677,-872,-2076,-1096,-595,-1290,-911,-1364,-1286,-1044,1364,1661,3103,5174,2826,3905,4436,4609,5731,4738,3271,-829,-3646,-5165,-4168,-293,2516,5226,4932,3702,2352,457,-147,-2857,-3288,-2956,-1968,39,755,2757,2460,2274,39,-2460,-4893,-7595,-6641,-4781,-522,2481,3616,2723,401,-1217,-3206,-3167,-3051,-2533,-1683,-997,-371,-233,-99,-1010,-1782,-2248,-2468,-1674,-626,-78,565,1342,1191,621,1381,2192,3215,4311,4786,4414,4570,4367,4565,5338,5985,2309,-4509,-5092,-4734,-1027,4466,5239,4600,2753,1264,-276,-207,-95,-984,-328,233,332,-9,-975,-4475,-5670,-4717,-3258,-78,1238,608,-962,-3085,-4928,-5165,-3668,-2024,-35,1269,747,65,-1023,-2127,-2080,-1515,-975,453,1713,1873,2248,1135,-923,-902,-216,2007,3150,3974,4225,2417,1131,703,902,432,2442,2753,3129,4371,2917,3159,2908,2326,2878,2688,2114,971,608,617,1277,2231,1968,1903,1204,440,0,-1010,-2550,-2628,-1994,-898,548,755,-108,-682,-1519,-1933,-898,-432,73,721,600,276,436,-138,-656,65,574,1169,1933,1269,747,475,-155,-332,544,1584,1989,1998,1843,777,177,643,967,2110,2196,1786,1588,936,846,988,1264,1100,1424,1398,621,772,898,1273,1562,1497,1027,863,1092,889,1113,1437,1687,1907,1446,734,708,587,35,47,561,824,1243,1368,293,4,-203,-660,-47,82,280,449,173,0,-699,-954,-742,-677,-177,134,-518,-496,-677,-911,-988,-1208,-1010,-656,-324,-380,-1126,-1592,-1614,-1683,-785,-846,-501,-591,-1066,-440,-660,-91,-354,-242,337,-898,-1131,-807,-479,-112,-634,-548,160,466,224,-898,-1018,-665,-967,-514,-1446,-1786,-1618,-1950,-932,-1187,-833,-164,-350,134,-578,-1079,-1053,-932,-186,220,-233,-406,-587,-483,108,423,742,99,-56,-751,-721,-531,-1066,-803,-397,-656,-811,-194,-665,-501,-1126,-1308,-1597,-1864,-1074,-1027,-665,-867,-876,-1230,-1152,-885,-621,-108,-734,-1385,-2395,-2084,-1234,-578,444,-147,-449,-1109,-1208,-695,-302,-229,-453,-755,-414,-410,-1329,-1471,-1683,-557,-358,-643,-975,-686,-665,-777,-967,-1730,-531,-639,-142,-388,-272,-1489,-915,250,-190,902,-315,1036,772,39,-86,-954,837,928,1407,634,-949,35,56,1756,125,242,1152,954,2037,-345,759,367,1346,1709,108,1256,160,1014,-660,43,829,1497,2270,-134,1316,216,1169,1049,233,1644,630,1584,1338,99,1122,1420,1355,1786,78,639,595,1333,2119,1238,617,-988,-1506,-186,505,449,889,587,772,-337,-293,207,1471,1480,-1592,-1105,-1441,-229,1446,2335,803,-1804,613,518,1959,1161,811,306,-962,-440,-1014,1584,2278,1208,850,-35,-95,561,39,941,-388,216,203,142,1450,1001,1838,-1269,-1165,-1519,-514,1342,1057,1066,-1036,-665,-1027,1765,1817,358,-557,-2201,-250,-755,1247,-345,475,483,-246,941,496,1782,-268,160,-449,-686,427,-479,17,95,-414,194,-306,-453,-354,-466,755,699,535,-1553,-945,-427,-1221,1441,-1726,-1480,-997,-725,173,-1295,-945,-311,915,2106,1174,-86,-276,-1169,-427,-686,-492,-1523,-1165,-1666,-35,2270,1717,1105,-2291,-3357,-3090,332,876,367,263,-1610,-1096,-738,181,419,647,207,-1174,-967,505,759,-1653,-1765,-1907,-155,1053,-9,-665,-1705,-988,-1631,-65,-557,-112,151,-785,-772,-992,-483,-1195,-850,-142,190,626,414,315,-60,-1148,-1316,-1588,1178,1799,1502,39,-1113,43,1053,1592,919,755,414,1674,2076,2158,1579,-833,-885,470,2529,3042,1049,-725,-1588,22,1752,2468,3072,1420,1221,509,1338,3042,3633,3141,1648,1161,1428,3059,3258,4147,2706,2619,509,2089,2425,1571,1338,43,1584,1588,3336,617,665,35,1273,2365,1640,1342,147,1182,509,1769,-78,276,440,1532,1774,665,492,-867,1528,-26,60,203,-328,1079,-147,-824,-984,915,1994,1894,682,-1169,-695,-160,298,643,561,1105,1135,95,-591,-276,91,1916,1925,1635,565,-35,1424,1441,1821,656,-298,-587,233,1631,2265,2680,535,-548,-311,703,2382,2529,2624,816,-552,-643,151,1825,3116,1066,-686,-341,595,2494,2330,1963,-595,-280,-263,816,1661,1411,1631,-311,721,-811,751,583,1182,600,-56,168,-250,1320,518,794,337,1018,1014,1484,-160,-928,-1372,-380,1238,1860,1920,-160,220,-759,850,824,729,-621,-1717,-1515,-462,1135,237,-104,-1014,-1446,211,1118,785,60,-1351,-2304,-1873,-1100,-958,354,-600,-1049,-1131,-846,237,781,39,-1316,-457,-393,-108,259,-1139,-1044,-716,-65,432,181,-216,-785,-712,-104,306,941,626,-690,-1122,-1938,-1938,-867,-190,673,-224,-255,-626,-703,-138,-302,324,268,155,-479,-354,-1381,-975,147,1286,1100,427,-522,-936,772,190,-358,-1230,-272,-35,1079,708,-69,-181,-639,-82,-928,-768,-850,505,104,915,-595,-923,-997,518,1122,561,22,-2041,-194,-457,1562,492,682,371,-496,798,-26,-457,-949,-224,483,2253,859,-350,-1109,-1299,-121,259,-496,-928,-785,-1454,-427,-656,-928,-755,-665,-1165,-319,-224,-544,-1545,-2464,-3504,-3327,-1381,-1985,-738,-734,-1774,-1700,-1808,-1748,-1873,-1955,-3189,-2680,-1010,-1735,-1782,-2425,-2839,-1864,-1269,-1320,-1739,-1631,-1592,-1717,-1541,-2188,-2084,-1584,-1329,-1389,-2106,-2097,-2723,-1705,-906,-56,-552,-1730,-2132,-2240,-1566,-794,-1057,-1985,-2429,-2546,-2110,-2265,-1208,-872,-613,-168,-1402,-2149,-1566,-1730,-1748,-1502,-1700,-2089,-772,-531,-764,-1502,-1782,-1295,-803,211,-962,-1614,-1761,-1325,-854,-444,22,-617,82,-911,-1756,-1251,-829,337,-17,-164,-1553,-1786,-1497,-919,-432,-1329,-1221,-1713,-1579,-1877,-1903,-2201,-2559,-2365,-2710,-2468,-1808,-1847,-2835,-2481,-2796,-1916,-742,-1480,-954,-1359,-980,-552,-164,777,186,229,117,928,829,1868,2011,1812,2468,1998,2732,2127,2240,2356,3223,4099,5165,4984,2714,-9,-3771,-5424,-5778,-4168,-2619,-1213,-1122,-2196,-3366,-4626,-4773,-5096,-3780,-3396,-2537,-2322,-1994,-1597,-1972,-1683,-1886,-1260,-280,539,1709,1981,1575,1605,1597,2382,3771,5118,4889,5019,4596,4725,4924,4518,1739,-3116,-3927,-3707,-1079,1925,3521,3068,1588,591,-207,26,224,-1700,-4937,-8751,-10210,-7483,-3810,-375,293,-1053,-3689,-5631,-6115,-4816,-3379,-2037,-820,-358,-35,583,298,1666,2770,3707,5506,5554,6943,7090,7569,8104,4837,-3431,-8449,-7875,-5277,729,5368,6831,4315,2015,613,-52,1161,1868,160,-3094,-5075,-6041,-5834,-5213,-3776,-3707,-3746,-3219,-3163,-2947,-3513,-4656,-5847,-5873,-4324,-1644,1433,2244,1795,1471,1441,2710,4950,7724,9636,11932,12600,8143,-4302,-13459,-13727,-10231,-142,7763,10801,8277,3996,1532,-483,315,186,-3094,-7271,-8838,-6771,-2183,3866,7004,2347,-2477,-8730,-12820,-10421,-6192,-2425,-1247,-811,-2939,-3327,-2421,-2559,-1549,-237,841,1942,3780,5377,8371,12100,16544,19897,11975,-5726,-21684,-26072,-20329,-5907,13101,21360,19021,11224,2580,-3245,-4604,-3275,-7370,-13532,-14361,-10283,885,13770,20182,15914,2386,-14991,-25460,-23091,-14905,-2253,4626,5623,4143,686,-2352,-5592,-6628,-6831,-2520,3055,6671,10119,10331,10659,14857,20855,14572,-5817,-20204,-27281,-23725,-5269,13597,21766,19846,13998,4570,-4868,-6900,-8505,-12700,-13127,-9580,-2555,7306,17589,19513,13062,324,-17369,-30901,-26797,-13942,-738,12285,11535,4885,-1156,-7245,-10797,-9446,-5977,-1463,6576,9821,10318,10184,11051,16821,22461,11664,-14862,-28398,-29654,-20713,3724,23380,26452,19000,9140,-1856,-11086,-9049,-7979,-12859,-11099,-6425,915,12100,21485,19807,7362,-7987,-27086,-32757,-21071,-6201,7918,13804,8635,-78,-4574,-8730,-10180,-7539,-5687,285,7426,10257,11629,11280,13722,20437,21494,-665,-24131,-31151,-32768,-10546,16191,29076,27634,15884,4168,-11120,-12825,-8475,-11470,-11021,-8380,-3620,6732,18883,24005,14715,962,-19569,-32768,-28303,-13541,2529,14370,13101,3668,-2947,-7025,-10887,-8126,-6922,-5032,3564,9058,10892,12475,12656,16657,23354,15280,-12656,-30370,-32768,-26944,1765,25235,32006,24381,11379,-2511,-14862,-11763,-9321,-12410,-9606,-5433,2084,13662,23660,21110,7198,-9360,-27250,-32768,-21951,-4117,8031,16985,10408,-173,-5070,-9174,-10482,-7565,-5580,-3055,7055,11284,12311,13753,12812,19686,20972,4824,-20441,-32752,-31807,-15591,13796,30193,29986,18741,4876,-9027,-14322,-9770,-9502,-11043,-7008,-1717,7539,19910,23725,15168,-850,-18003,-32768,-29611,-11409,2593,13835,15371,4950,-3456,-6723,-10732,-9463,-5398,-4704,1834,9692,11319,13036,13019,15932,22901,17930,-7776,-29775,-32768,-28213,-1156,25412,32767,25770,11612,-2317,-14762,-12057,-7612,-10827,-8855,-4544,1467,13925,24200,21856,7375,-8928,-27863,-32768,-20778,-3560,10456,15379,11060,-1312,-6128,-8950,-10438,-6304,-5252,-2024,5161,10741,11707,11867,12851,18089,24558,12264,-19462,-32312,-32768,-21818,12678,30396,32549,19276,5562,-8613,-16454,-7111,-8721,-10473,-6723,-3495,6223,19052,25658,16186,-531,-15776,-32768,-28303,-12147,1286,13127,13161,6611,-2740,-5662,-9925,-10085,-6046,-5843,1027,7491,11530,12665,12130,14874,21326,22875,186,-28010,-32768,-32291,-8872,23665,32767,29158,12971,-224,-13584,-13765,-5321,-10922,-9023,-5282,-358,12644,23578,23703,8928,-7483,-22784,-32768,-19945,-5588,5342,15103,10175,3681,-2628,-6438,-11224,-9364,-6404,-5096,4458,8812,12324,12851,10529,15366,21925,22430,-4721,-30672,-32420,-32122,-1705,27699,32767,27315,9338,-2503,-15962,-11086,-4544,-11901,-7176,-5032,1346,15410,24566,21572,4764,-10016,-24847,-31117,-15815,-3077,6412,13968,8557,1894,-971,-6227,-11284,-8708,-8492,-5200,4341,8674,12445,12225,9830,13891,21714,22478,-1204,-27622,-32768,-32092,-5096,25589,32014,27250,11056,-2300,-14115,-11250,-4919,-11293,-7953,-5510,384,14676,23367,20730,5515,-9256,-23034,-26858,-16065,-4893,5256,10158,8013,2930,393,-3340,-9959,-9912,-10072,-6900,1942,7137,10909,10490,9407,10512,17740,25080,13942,-16924,-32549,-32768,-21408,13658,30150,30185,17904,3551,-8251,-14275,-4837,-8479,-11107,-7098,-3815,8134,19923,23371,11970,-3815,-15319,-24148,-17118,-8786,-1726,5692,5299,6253,3983,1523,-5152,-10615,-11677,-10741,-1812,3370,7655,9278,7120,7504,10581,18974,25265,16372,-15384,-32580,-32701,-21136,11599,28890,28920,17028,4194,-6645,-11789,-4423,-7500,-11461,-8285,-3461,7111,19142,22055,11008,-2818,-12247,-20126,-12674,-5679,-8182,682,2826,5239,9908,5390,-3202,-11155,-12605,-11612,-2835,2809,3677,6663,5687,6361,9381,16044,22517,24998,5502,-26884,-32768,-30297,-9062,21131,30021,24640,10227,885,-9403,-9083,-2011,-9890,-12070,-7616,-1329,10930,21071,20458,6123,-5286,-14849,-19932,-9977,-3771,-798,-449,2365,4816,5372,5161,-4531,-8574,-12238,-8600,-2218,859,3327,880,3405,5372,10331,14080,19483,22763,13200,-11578,-29645,-27466,-18680,7124,23889,22871,15276,4535,-2123,-5463,-1804,-6412,-14029,-12341,-7357,4350,18249,21947,13869,194,-11612,-17373,-11591,-3534,-2986,-3569,-1808,1657,6594,8052,1610,-6002,-8950,-10926,-8031,-1536,-1584,738,3495,3379,5295,8289,10011,14046,18620,18417,4276,-21304,-25649,-22970,-8747,15159,21175,18944,9377,4669,-2857,-5208,-3746,-14111,-14426,-8462,591,12661,20359,17261,2921,-4962,-11241,-12320,-3694,-423,-4199,-6714,-2680,-1031,7297,9515,-99,-6235,-10797,-9459,-5709,-578,272,-1049,362,65,4061,7504,8704,11263,12074,13701,12316,2831,-16657,-22784,-16885,-7340,12678,18939,15802,8160,2675,-1057,-4876,-3500,-11845,-14456,-7370,1730,13114,18413,15025,2956,-5329,-8958,-10723,-4997,-2714,-1756,-4164,-3034,1873,3586,6218,-52,-5101,-8130,-6995,-3068,-3189,-2628,-1782,1053,3495,3763,1269,-56,2619,7629,10098,11798,12989,7897,-2727,-15889,-16588,-9666,341,12078,11565,8324,4401,2598,1955,-1044,-4665,-11504,-10900,-3974,4768,11802,12566,7892,233,-3223,-4673,-5290,-3789,-3642,-3016,-2783,475,250,-660,915,-2032,-1053,-738,-2921,-4384,-3267,-3607,-2921,747,375,751,1420,315,470,1799,1325,1825,5532,8065,11910,13701,6188,-5705,-15112,-13891,-7262,2818,10624,7565,6486,4755,3543,2179,-1635,-7146,-12108,-7651,-1325,6309,11025,8268,3927,-173,-1135,-2990,-4678,-5562,-6015,-1804,3625,1838,-1282,-1726,-3979,-1618,492,69,-1955,-2766,-4039,-2412,-147,-3236,-2490,-686,725,2598,1877,-1946,-2870,-125,1480,5739,7241,6300,9334,11215,3888,-3789,-10801,-12894,-6904,371,6689,5260,6594,4937,4250,4298,-936,-6676,-11107,-8121,-2719,4298,8734,6922,4781,2214,1062,-665,-2947,-5709,-7107,-3159,380,3374,-1476,-1825,-936,-1139,268,-2158,-3150,-4199,-781,-898,1377,1528,95,-2378,-2982,-43,-358,1700,-708,-2542,-2317,129,1558,2158,3120,2429,4993,6878,8277,8721,3301,-5126,-9632,-6956,-3935,1126,4186,3072,4643,7301,7720,3668,-354,-6257,-8535,-4272,-436,1899,3789,4272,3819,5381,5062,1182,-2701,-5907,-6391,-3262,1178,958,-811,2222,2214,2839,2576,-2537,-5260,-2624,-945,104,751,-1251,436,3875,4790,332,-2391,-4203,-4980,-1713,-1308,-1484,-207,1446,1946,2999,1761,1290,2516,3979,4760,4803,5636,4626,2093,-1346,-3297,-4220,-3349,-876,643,2071,4294,5083,4880,3340,867,-2520,-3366,-3055,-2680,-1476,440,2417,3573,4842,3500,1631,350,-1230,-2438,-2684,-3396,-2809,-2481,-3737,1644,3582,2201,432,-3366,-3767,-574,1238,-1096,-1571,-2369,859,3599,2335,-1799,-4514,-2952,-2326,-1881,-4104,-4889,-2904,872,2032,695,-1118,-1178,1049,2503,2766,1981,2097,3305,4850,4483,1346,-1631,-2913,-3081,-3431,-5562,-2563,-186,3129,5174,4850,3452,2063,1769,-1497,-3607,-5838,-6093,-4320,-725,833,1528,3236,3586,4315,3776,1329,-1920,-3582,-3931,-4410,-6279,-4898,-734,759,1139,1756,854,725,1398,-544,-2244,-2171,-1286,-587,-1083,-1843,-2106,-1282,-82,-380,-1325,-2550,-2326,-1631,-1411,-1847,-2287,-2248,-1480,134,716,1139,975,1251,1920,3271,3681,3828,3901,2727,3176,1303,142,-259,-1407,-1036,-1031,-514,242,1329,1834,1752,2024,1415,1139,1053,423,332,-350,-660,-837,-462,151,729,1152,1049,677,552,764,790,867,190,-358,-1601,-2032,-86,315,-444,-833,-1769,-1364,755,1092,721,350,194,1165,1605,1131,578,220,-69,298,410,242,375,677,578,544,341,285,587,444,682,785,906,1515,1894,2171,1161,557,1687,1778,1131,1213,1489,1761,2136,2283,2123,2067,2503,2684,2451,2140,1683,1346,1635,1912,1774,1661,1558,1480,1333,1316,1122,578,272,129,43,142,91,-99,-104,-78,91,246,86,-30,-17,30,-39,-160,-380,-440,-397,-591,-514,-712,-889,-600,-453,-514,-876,-1273,-1454,-1269,-816,-747,-803,-988,-1100,-1087,-816,-781,-1010,-1044,-1092,-1087,-1113,-1152,-1161,-1100,-1299,-1402,-1131,-1027,-1238,-1506,-1234,-915,-863,-665,-595,-561,-755,-902,-656,-492,-626,-889,-751,-423,-302,-384,-466,-565,-824,-824,-686,-595,-514,-470,-660,-768,-565,-427,-509,-496,-552,-677,-608,-414,-388,-302,-298,-432,-470,-604,-557,-583,-419,-449,-570,-518,-574,-289,-224,-125,-311,-492,-289,-211,0,-129,-237,-332,-302,-69,26,9,-138,-259,-181,17,52,129,203,65,-108,-104,39,242,341,259,190,104,272,505,440,337,177,65,324,578,492,194,164,229,440,656,462,298,285,220,337,496,514,544,488,358,263,371,462,583,630,384,259,350,401,505,570,289,289,440,397,311,229,151,138,311,384,306,302,328,190,155,160,104,328,397,298,237,173,164,211,194,9,-168,-155,-17,129,293,229,73,-95,-104,-104,-47,52,17,73,60,-35,-13,-78,-168,-95,39,9,-26,-52,-164,-134,-13,-56,-198,-237,-263,-181,-112,-47,-181,-237,-233,-233,-112,-30,22,-138,-155,-198,-250,-233,-233,-272,-224,-155,-151,-117,-164,-285,-358,-350,-289,-104,-86,-112,-173,-207,-168,-151,-147,-220,-194,-86,-82,-129,-147,-268,-293,-117,-78,-125,-121,-186,-147,-43,4,-99,-142,-82,-108,26,142,147,73,65,43,-65,26,129,73,95,117,69,117,108,60,82,125,302,380,272,203,160,117,151,375,380,250,211,216,332,475,466,341,280,268,233,242,302,401,496,518,444,341,393,419,410,488,419,406,470,531,514,410,453,414,423,514,483,470,505,531,574,578,539,466,462,526,479,518,557,509,518,626,643,608,561,427,427,539,574,626,578,457,362,457,608,682,665,501,354,332,479,539,535,462,289,328,462,505,436,393,272,285,345,419,483,380,388,311,280,280,315,388,311,289,285,229,263,285,263,194,142,69,125,224,220,203,82,86,134,160,164,129,69,86,86,108,121,43,13,0,60,22,13,-9,-86,-112,-69,-43,-65,-69,-129,-164,-168,-117,-56,-69,-99,-181,-211,-220,-207,-147,-147,-203,-250,-280,-268,-250,-207,-177,-237,-255,-315,-341,-306,-276,-285,-280,-306,-328,-272,-224,-207,-259,-289,-388,-444,-362,-367,-298,-293,-358,-362,-388,-492,-483,-449,-410,-311,-311,-354,-397,-423,-436,-345,-315,-367,-436,-466,-436,-384,-268,-272,-354,-449,-449,-414,-350,-345,-388,-475,-501,-457,-414,-324,-380,-406,-388,-367,-371,-432,-466,-496,-514,-462,-427,-401,-419,-457,-419,-414,-406,-414,-457,-470,-449,-414,-462,-423,-414,-397,-362,-436,-492,-488,-419,-371,-367,-410,-488,-496,-483,-432,-375,-393,-419,-462,-449,-453,-453,-436,-453,-427,-427,-449,-470,-470,-488,-483,-419,-406,-444,-479,-488,-470,-401,-384,-406,-496,-531,-496,-514,-440,-406,-423,-414,-466,-483,-479,-496,-475,-444,-479,-501,-483,-492,-457,-388,-401,-419,-479,-509,-449,-432,-397,-397,-406,-401,-423,-410,-436,-479,-453,-457,-384,-350,-393,-362,-371,-341,-345,-358,-410,-401,-384,-393,-328,-345,-324,-341,-319,-315,-341,-328,-367,-358,-328,-354,-324,-289,-280,-246,-268,-276,-298,-315,-306,-311,-298,-259,-259,-211,-203,-233,-211,-246,-263,-285,-298,-272,-229,-203,-190,-220,-259,-250,-224,-164,-129,-138,-181,-216,-207,-216,-190,-160,-186,-151,-134,-194,-186,-186,-177,-125,-47,-99,-216,-224,-242,-186,-95,-78,-138,-160,-177,-168,-99,-99,-121,-147,-155,-129,-95,-104,-155,-181,-134,-91,-73,-99,-134,-134,-142,-95,-60,-69,-86,-104,-121,-125,-95,-69,-47,-43,-78,-95,-56,-52,-43,-47,-86,-108,-91,-65,-47,-56,-60,-22,-17,9,4,-82,-108,-95,-78,-39,13,-13,-26,-30,-69,-60,-73,-35,-9,-13,-17,-35,-22,4,26,-4,-39,-22,-43,-17,4,9,0,-22,-4,-9,47,43,0,-17,-69,-86,-30,4,0,13,-4,-47,-4,43,9,-30,-65,-78,-22,65,43,4,-30,-112,-95,-47,-9,13,-9,-35,-65,-26,9,4,-13,-52,-73,-17,30,-4,9,-17,-56,-13,-26,0,-9,-35,-22,-30,-35,-22,4,9,17,35,13,-30,-52,-43,-65,-35,9,-9,-35,-4,-22,-17,-39,-86,-82,-52,-22,-43,-22,-26,-35,-22,4,-4,-60,-69,-91,-65,-43,-22,-22,-47,-4,-17,-26,-39,-91,-108,-91,-65,-73,-78,-60,-73,-39,-17,-56,-78,-108,-95,-60,-52,-65,-99,-108,-108,-65,-35,-78,-82,-104,-99,-78,-78,-60,-73,-52,-65,-86,-78,-99,-104,-82,-65,-26,-30,-56,-78,-78,-78,-65,-65,-104,-99,-95,-117,-73,-47,-47,-78,-95,-104,-147,-117,-91,-121,-117,-86,-69,-56,-73,-112,-121,-99,-60,-35,-47,-91,-129,-104,-60,-22,0,-26,-78,-117,-104,-43,4,-22,-43,-69,-95,-47,-9,-26,-65,-78,-108,-82,-30,0,-13,-73,-117,-121,-60,-35,-60,-78,-95,-78,-52,-52,-78,-78,-108,-95,-47,-30,-17,0,9,-30,-43,-17,-4,-17,-4,-22,-65,-35,13,17,17,-4,-35,-35,-22,17,17,39,-22,-52,-22,-13,-9,-13,-17,-26,-30,4,-4,-26,-9,-22,-13,17,-13,-39,-13,-22,-13,0,-17,-35,-43,-4,-4,17,13,-30,-26,-26,-26,9,30,30,0,-4,0,9,4,4,-17,-13,30,39,43,39,0,13,9,47,65,43,22,39,52,69,95,69,39,26,35,52,52,65,56,52,82,91,91,99,112,104,108,104,99,134,168,147,95,104,95,108,147,155,117,91,69,65,125,168,164,164,138,121,117,134,108,95,108,95,142,151,117,117,108,129,160,155,142,108,104,134,190,181,142,117,86,104,142,177,177,147,134,86,78,104,117,151,155,129,91,86,108,117,108,117,91,65,82,121,134,112,112,65,73,95,104,117,95,108,95,112,60,56,-78,26,-1571,-1515,-164,-142,328,129,26,211,99,-17,13,13,-13,-26,-65,-177,-52,-56,-86,-168,-177,-168,13,-35,-160,-280,-224,-268,-945,-1057,-708,-151,164,9,-86,47,-112,30,35,-35,30,13,-216,-306,-410,-561,-647,129,954,-263,-854,-613,-475,-138,-168,-367,65,298,190,26,-91,-17,375,293,-104,-108,91,289,186,-35,-255,30,311,242,69,-13,-52,151,224,-4,-65,129,324,397,186,-65,47,272,341,293,203,194,375,462,423,246,328,423,393,419,276,263,539,583,492,457,375,453,583,557,535,578,561,595,604,639,634,660,777,764,669,699,639,712,811,677,634,725,816,794,777,755,781,854,829,781,833,816,850,906,820,816,846,846,863,876,824,811,885,833,742,829,811,794,850,798,764,755,686,690,816,880,785,712,686,652,708,725,660,656,673,677,682,669,695,699,695,630,626,414,255,393,419,375,332,453,647,729,703,677,686,673,591,401,203,173,237,190,104,65,86,177,216,168,129,224,259,268,168,60,39,43,35,-39,-134,-186,-138,-112,-86,-108,-117,-73,-69,-91,-108,-125,-112,-104,-155,-194,-246,-229,-190,-229,-246,-250,-272,-216,-211,-268,-237,-181,-147,-155,-211,-242,-186,-151,-155,-177,-263,-250,-198,-216,-198,-160,-168,-177,-203,-211,-211,-151,-104,-112,-91,-65,-78,-52,-47,-82,-30,-35,-43,-60,-47,-47,-13,17,4,0,39,47,30,56,17,26,60,86,82,69,13,43,108,112,112,104,86,104,112,108,104,108,112,82,82,35,39,47,60,52,69,99,95,104,86,91,104,91,82,65,30,22,43,30,0,-17,-17,-13,-13,0,-35,-47,-30,-39,-78,-125,-108,-91,-91,-108,-151,-151,-155,-147,-173,-211,-211,-198,-229,-242,-242,-280,-285,-276,-285,-306,-315,-324,-285,-285,-324,-324,-337,-358,-354,-350,-384,-375,-393,-427,-440,-432,-436,-432,-423,-440,-449,-462,-466,-444,-470,-501,-518,-518,-501,-535,-539,-544,-544,-535,-526,-518,-518,-526,-526,-557,-539,-539,-544,-522,-557,-574,-591,-574,-578,-578,-595,-613,-583,-574,-578,-574,-591,-591,-587,-591,-583,-583,-570,-600,-600,-600,-595,-591,-583,-574,-557,-552,-561,-587,-557,-557,-578,-557,-557,-518,-514,-544,-539,-531,-522,-531,-539,-548,-552,-526,-488,-492,-505,-501,-518,-509,-470,-462,-453,-475,-475,-466,-488,-483,-470,-466,-457,-440,-449,-453,-453,-453,-449,-444,-414,-432,-436,-423,-410,-375,-367,-397,-401,-432,-427,-423,-423,-397,-384,-384,-388,-362,-358,-354,-341,-332,-350,-362,-380,-375,-350,-354,-337,-345,-362,-362,-358,-354,-324,-328,-350,-358,-350,-328,-328,-324,-315,-328,-315,-328,-315,-324,-324,-319,-315,-298,-311,-306,-306,-302,-302,-289,-311,-311,-319,-319,-285,-285,-285,-276,-285,-293,-311,-298,-263,-276,-293,-298,-311,-276,-280,-280,-272,-268,-237,-242,-259,-255,-255,-255,-246,-237,-229,-229,-229,-237,-250,-250,-220,-211,-198,-211,-224,-194,-194,-177,-173,-181,-194,-198,-216,-190,-173,-173,-164,-168,-181,-173,-147,-142,-147,-155,-155,-142,-138,-117,-99,-117,-125,-108,-112,-95,-69,-78,-56,-82,-73,-65,-69,-56,-82,-52,-39,-39,-56,-47,-39,-56,-35,-9,-13,-4,-9,-4,-9,-13,0,0,17,47,13,-22,35,43,17,47,13,9,17,13,39,43,39,35,43,43,35,43,43,30,52,39,43,60,52,26,35,35,30,39,56,47,35,43,35,39,65,56,43,43,35,43,35,35,13,13,0,13,13,26,17,17,17,4,13,13,17,30,22,17,22,13,0,9,-4,4,4,9,26,35,43,35,30,9,26,0,-4,9,17,17,13,22,17,22,17,35,43,30,17,43,43,26,47,22,17,13,9,-9,9,39,30,43,43,47,39,47,65,47,52,56,56,69,56,52,52,47,56,60,82,73,86,112,86,108,108,95,112,104,69,82,95,86,112,86,78,82,78,78,69,73,82,82,78,78,65,78,99,82,73,73,78,78,60,60,56,39,39,69,73,73,56,56,69,78,73,60,73,82,69,78,86,60,52,65,60,60,56,52,82,82,82,82,65,56,26,43,47,56,69,69,56,69,65,65,82,73,69,69,60,60,60,56,56,43,39,39,60,78,82,99,86,86,91,78,86,99,82,95,108,95,91,95,86,78,91,95,129,95,91,91,91,95,82,95,91,78,82,91,95,73,60,47,73,86,95,112,112,95,78,91,99,104,99,95,91,82,91,95,99,112,99,86,104,95,104,104,99,86,73,78,69,78,82,121,121,125,142,138,125,125,125,104,104,125,104,95,69,95,86,82,117,99,112,117,121,121,112,121,125,99,112,108,91,117,108,104,95,91,117,112,117,129,121,117,134,129,125,117,125,117,104,117,125,125,117,112,104,117,112,112,138,129,138,151,121,121,91,86,95,112,125,121,121,91,86,86,95,91,108,108,82,73,86,99,112,121,104,108,91,95,99,117,121,121,117,73,95,108,108,99,121,121,99,99,99,104,108,112,121,129,112,108,112,108,95,86,95,99,108,108,108,121,104,104,86,91,82,82,95,86,99,99,112,108,99,117,104,104,104,104,121,108,108,112,91,121,117,121,125,125,117,112,91,95,82,73,86,95,104,99,104,108,95,99,108,108,125,112,117,121,91,82,82,82,91,95,99,112,91,95,108,91,99,104,78,78,86,86,78,60,56,65,73,78,91,65,82,86,78,86,73,69,56,52,73,56,47,52,60,65,52,52,56,73,69,82,91,82,78,73,69,65,78,86,73,73,56,65,82,73,78,69,86,73,56,60,47,73,56,60,60,78,69,65,78,82,82,56,104,73,65,82,82,82,78,86,82,108,91,104,112,95,86,91,108,99,78,86,99,104,91,95,91,129,95,86,121,108,125,112,99,99,95,95,99,108,112,99,99,95,82,99,99,91,95,73,69,78,56,56,78,69,69,73,56,56,52,60,69,65,65,73,78,69,65,78,56,65,73,52,78,73,47,56,60,47,47,69,30,47,39,26,43,26,43,22,17,17,4,17,30,35,13,9,9,9,-4,-9,-13,-9,-13,-9,30,17,0,-9,13,13,13,0,9,-4,-9,-26,-43,-26,-52,-4,-13,-9,0,-17,0,-22,-30,-30,-30,-26,-13,-13,-9,-4,-13,-22,-35,-17,-39,-39,-17,-4,-22,-39,-35,-47,-60,-39,-69,-35,-35,-52,-26,-4,-39,-26,-43,-56,-22,-47,-22,-52,-43,-39,-86,-91,-82,-65,-60,-39,-47,-30,-30,-43,-47,-60,-43,-52,-52,-65,-47,-73,-69,-56,-69,-43,-56,-65,-69,-65,-78,-78,-108,-112,-160,-142,-60,-142,-82,-69,-138,-86,-86,-142,-121,-112,-151,-129,-121,-125,-117,-134,-138,-160,-121,-125,-129,-125,-99,-99,-91,-69,-117,-121,-108,-121,-121,-104,-104,-99,-95,-129,-129,-147,-155,-151,-134,-177,-186,-138,-164,-181,-86,-194,-142,-82,-186,-78,-104,-190,-142,-160,-168,-125,-164,-164,-91,-99,-117,-91,-121,-95,-95,-147,-104,-125,-129,-99,-147,-160,-147,-142,-134,-95,-117,-142,-99,-181,-129,-108,-181,-155,-142,-198,-108,-142,-173,-147,-194,-177,-134,-220,-268,-229,-211,-173,-155,-293,-233,-164,-164,-78,-216,-211,-82,-134,-203,-414,-362,-246,-272,-173,-255,-125,-60,-52,-69,-125,-4,9,26,9,22,147,86,-35,4,-26,35,73,-60,-91,108,229,35,272,134,142,255,99,147,112,95,-39,95,220,95,117,125,95,354,302,168,229,138,263,268,246,112,203,255,112,298,125,129,306,69,142,263,190,190,280,99,276,345,0,194,224,121,285,276,138,198,306,91,229,276,26,315,216,9,263,280,52,358,198,47,362,203,194,229,207,52,142,250,73,-73,280,142,259,350,9,552,86,302,444,17,393,173,-9,181,462,-56,298,453,-147,470,518,-302,488,164,-285,578,-99,259,-203,427,306,-91,712,-432,453,65,280,237,164,207,30,595,30,306,259,60,354,565,65,168,811,112,293,911,-302,829,729,-121,1040,319,505,734,280,712,280,880,216,22,1044,-488,1087,557,-73,1174,-56,419,280,423,341,173,673,397,488,824,112,790,647,211,591,354,388,449,397,362,885,30,837,358,-95,1256,9,677,734,397,155,168,1010,-436,1010,328,-26,850,557,-82,380,1053,-820,1178,686,-803,1528,-30,-565,1407,-371,104,764,99,-207,1105,-613,259,755,-829,837,22,-60,505,155,-69,436,4,-155,772,-816,600,734,-1351,1282,-470,-272,941,-531,207,-181,186,-142,-250,86,-367,-155,-220,17,-682,216,-600,-807,17,-686,-82,-177,-535,-971,168,-181,-824,216,-747,-444,496,-1437,293,-151,-1182,237,-665,-518,647,-928,-419,315,-682,-332,-134,-332,-164,164,-872,233,-583,104,-280,-863,492,-708,-384,-242,-712,-505,630,-1273,-147,272,-1610,665,-531,-643,-65,-583,-647,-337,-4,-962,-285,-315,-30,-276,-121,-526,-47,-125,-492,211,-816,95,-440,-423,-237,-108,-544,-488,375,-630,13,26,-928,332,-526,-315,78,-941,-73,-350,-798,285,-350,-1217,949,-690,-341,621,-1010,-207,535,-1100,35,-164,-777,17,-324,-837,354,-591,-224,-280,-444,224,-690,134,-302,-729,-695,1014,-1562,306,4,-1364,419,-466,-764,173,-384,-311,-298,-695,643,-889,-574,95,-673,-406,129,-591,-764,375,-652,-954,289,-207,-1040,-186,129,-1010,-86,432,-1588,250,129,-1722,984,-841,-889,846,-1062,4,-220,-893,-82,-121,-902,91,-380,-794,203,-539,-453,-198,-725,35,-436,-544,160,-958,17,-302,-574,-410,-414,-496,-30,-613,-462,259,-1424,427,-453,-997,108,-315,-712,-160,285,-1683,1053,-803,-695,919,-919,-462,928,-992,-656,975,-1105,-233,479,-501,-457,289,-406,-17,104,-781,259,738,-829,147,190,-833,738,-449,-332,-22,-293,60,-328,255,-496,-207,319,-781,798,-462,233,574,-647,466,-406,-39,198,-190,-194,-125,-444,488,-738,224,17,-358,-17,255,-138,47,-427,47,350,-505,673,-1109,298,173,-501,117,177,-268,-457,1907,-1700,332,1031,-1726,1920,194,-1010,1502,-634,73,531,-565,608,-613,276,95,298,-362,-406,466,-56,915,-742,522,367,-526,1320,-332,354,734,-246,794,-104,1105,-621,-229,1256,-1135,1178,280,-203,-449,811,-65,414,949,-1420,1109,466,-22,263,440,298,-885,1221,0,-824,962,203,-544,436,375,-250,552,-362,975,-427,268,604,-1118,1156,397,-613,1023,47,-1152,841,-190,-1139,1178,-198,-1480,915,-302,-544,52,-328,-272,-47,514,-397,492,-263,-440,9,-475,-276,-56,-121,-432,337,-677,-173,1739,-1644,833,112,-82,1523,-1799,198,17,-410,-129,-358,941,-449,-17,992,-652,941,306,-751,1131,-535,414,233,-747,-350,514,475,-514,112,1118,13,690,-151,509,1156,-703,587,-60,-332,716,-880,-142,1351,-854,686,803,117,423,-95,1584,-708,747,505,-2011,1627,-220,-263,462,-432,-967,1541,-207,-134,544,-561,-155,954,117,-522,397,-440,-643,-69,1178,-1342,1070,-203,-479,1152,-824,660,-190,-621,-91,-47,99,-194,-160,751,-565,-198,1320,-841,829,561,-315,276,-69,1023,-104,660,1282,280,630,949,-263,1998,492,-117,1126,885,885,436,2235,-1014,1799,1415,-302,1502,574,255,1100,583,501,2071,-880,1726,280,501,2529,78,677,1182,962,686,1040,690,829,388,725,410,142,1027,410,738,1484,-4,449,1364,246,-155,1817,73,-181,1005,17,-656,1674,432,-988,2287,-147,151,1536,1571,-263,1230,2028,-1273,1972,1372,-1178,1226,794,-255,565,1260,-306,932,1014,-557,1049,233,-397,203,932,-587,824,811,-850,1614,-259,-177,1295,-224,518,263,121,725,-22,919,233,-129,1592,462,272,1169,742,371,1325,285,725,2317,-26,1234,634,186,1476,337,1381,466,220,2231,-60,820,1709,-224,1463,289,768,1273,1135,1139,1113,1295,880,1739,673,367,2153,427,747,1907,375,1394,1260,781,794,949,2024,-466,1385,1644,-975,2408,587,-186,1713,470,-393,1208,-99,-95,798,-186,1044,-52,768,354,-639,686,643,-496,285,677,-255,833,-1325,867,280,-876,1342,-656,591,470,-371,-9,608,-289,595,604,-557,1666,9,-444,1131,-203,872,0,-173,898,-466,902,522,151,898,138,781,-501,1023,-13,337,505,470,138,276,544,-747,1031,151,-95,617,-466,1717,-371,-747,1890,-1877,1070,332,-1144,1709,-682,-539,1014,-1062,177,501,-1791,1169,-298,-1264,1213,-1187,-975,-514,-30,-587,-798,483,-2434,863,-919,-1118,324,-1868,311,-1428,35,-794,-824,-78,-1437,-414,-233,-790,-837,-539,-488,-734,-647,-790,-470,-518,-859,-198,-548,-621,-432,-483,-980,186,-911,-656,483,-1312,-56,-358,-764,-475,-436,-397,-932,-198,-1023,-375,-526,-954,-216,-1156,-272,-911,-841,-160,-1799,-198,-876,-1156,-237,-1290,-729,-608,-911,-893,-613,-854,-764,-898,-1092,-483,-734,-1579,-56,-1139,-1191,-341,-1653,-436,-1234,-816,-1118,-1234,-846,-1312,-660,-1325,-1031,-846,-1118,-1010,-1148,-807,-1359,-820,-949,-1359,-492,-1256,-820,-872,-962,-790,-1018,-863,-811,-846,-980,-837,-1031,-867,-824,-1221,-764,-923,-1126,-768,-1213,-971,-949,-1087,-1005,-1156,-1005,-1062,-1044,-997,-1014,-1113,-971,-988,-1122,-923,-1053,-1031,-949,-1092,-1079,-971,-1031,-1105,-902,-1191,-1010,-885,-1221,-919,-1066,-1070,-967,-1087,-1036,-1079,-1018,-1100,-1057,-980,-1113,-967,-1087,-1087,-928,-1161,-958,-1005,-1109,-923,-1109,-1027,-980,-1092,-923,-1001,-1083,-915,-962,-997,-928,-997,-967,-906,-1005,-1018,-859,-1018,-980,-893,-1014,-889,-915,-992,-872,-915,-898,-936,-954,-798,-928,-846,-846,-850,-837,-816,-798,-833,-686,-867,-669,-721,-811,-634,-794,-734,-617,-759,-634,-639,-734,-647,-626,-716,-613,-595,-712,-539,-552,-626,-423,-552,-565,-440,-583,-388,-488,-552,-367,-531,-406,-384,-470,-371,-436,-358,-354,-350,-324,-375,-315,-375,-302,-337,-306,-263,-298,-263,-246,-259,-272,-255,-272,-186,-293,-246,-177,-289,-181,-246,-220,-181,-211,-224,-129,-194,-242,-91,-298,-220,-129,-302,-186,-160,-255,-160,-173,-237,-177,-198,-194,-181,-190,-203,-190,-198,-203,-229,-164,-233,-220,-177,-242,-147,-203,-246,-147,-224,-177,-203,-246,-186,-207,-198,-190,-194,-198,-203,-207,-164,-138,-164,-125,-151,-142,-91,-168,-129,-78,-155,-99,-112,-117,-65,-95,-60,-52,-73,22,-47,-22,43,0,26,13,43,65,30,78,69,86,99,95,134,151,160,168,198,186,220,211,242,276,229,289,229,293,315,289,358,332,350,354,293,423,388,384,440,414,419,410,397,423,427,449,436,466,488,457,492,488,457,466,505,470,496,514,488,505,548,505,535,557,488,595,479,548,574,514,548,531,483,505,531,492,518,531,483,505,557,501,475,548,466,470,501,444,475,475,393,432,462,414,436,449,414,406,427,380,410,406,384,371,354,362,350,328,350,362,289,406,328,328,350,319,337,259,337,293,289,298,233,302,259,263,298,276,276,268,250,237,263,186,229,233,177,237,198,211,246,181,242,194,216,220,164,233,190,203,203,224,173,216,168,186,224,134,229,198,155,203,173,160,220,190,164,220,142,151,142,164,194,160,186,164,168,173,134,160,181,164,142,142,138,129,142,168,173,198,142,160,173,151,138,155,151,134,164,129,138,142,99,160,129,168,151,134,190,117,95,164,104,112,142,112,151,104,82,121,117,95,108,104,99,99,82,86,73,69,99,69,60,108,65,99,108,78,78,108,65,73,108,108,108,91,78,86,82,47,60,60,104,78,69,99,60,69,65,91,78,78,108,82,82,99,43,86,73,60,43,82,95,26,108,47,35,99,52,60,91,65,39,86,73,73,65,60,78,56,65,91,69,86,99,73,95,86,60,99,86,73,86,86,56,91,60,56,91,47,69,108,56,69,82,43,73,65,43,86,56,65,39,60,69,56,52,56,43,47,73,73,69,65,65,60,65,52,52,73,73,91,43,56,65,26,43,56,47,60,69,47,52,39,-13,39,43,22,43,52,26,22,9,17,39,-4,30,22,13,47,4,26,26,-17,13,13,-9,35,26,17,60,26,35,47,4,17,17,26,35,13,9,39,39,13,35,22,56,60,39,60,39,35,35,47,56,73,30,56,86,43,82,95,56,125,82,86,108,86,112,104,91,99,104,134,117,125,108,147,164,147,177,177,160,211,168,194,211,173,229,242,220,242,242,233,280,268,280,311,302,315,298,306,298,302,302,306,311,328,306,337,367,332,375,367,354,393,354,384,384,362,367,371,375,375,362,358,388,414,397,414,380,393,384,371,393,371,367,380,388,375,371,375,375,388,388,384,393,367,332,358,358,345,332,354,337,332,324,319,341,332,306,302,311,280,293,315,276,289,268,259,255,224,237,242,259,246,242,246,237,233,220,224,224,211,216,211,216,203,177,216,203,220,216,220,233,203,207,233,220,211,216,211,220,216,220,233,190,220,233,216,242,224,233,242,237,229,242,263,242,259,233,263,285,285,289,302,311,293,285,311,328,332,337,341,332,341,332,354,350,375,388,397,397,393,419,436,414,414,419,427,440,427,470,479,488,501,488,488,501,488,501,539,501,535,526,544,552,526,552,574,570,595,583,583,600,539,557,583,565,617,604,608,617,595,583,617,600,600,630,591,595,595,578,587,587,591,595,591,608,578,565,587,552,557,548,552,561,526,539,548,522,514,518,501,501,470,479,483,483,466,501,453,470,427,423,401,462,311,186,-1890,-30,3452,-3538,393,1696,-1717,2265,-1079,522,449,-129,608,-479,-168,-2261,992,1553,919,954,-1653,1053,-2611,514,-841,-1398,712,-1018,665,-173,-311,-751,-673,-613,194,-984,-466,-1208,-695,-2524,-419,-233,-1437,168,-1355,298,-958,-1230,-2857,-3646,-3064,-2335,-194,-1256,-1139,-1584,-1079,60,-1062,-1282,-1105,-1049,-565,-652,-984,-1920,-1881,-1424,-1631,-1346,-1912,-2455,-1938,-2438,-2438,-3003,-3258,-3517,-4069,-4082,-4596,-4669,-4876,-4807,-4440,-4039,-3383,-2516,-1545,-803,-324,557,1791,2835,3564,4091,4764,4259,1705,4,-2788,-4229,-3677,-3547,-2766,-2045,-203,1899,3797,4880,4086,2598,1131,-293,-1843,-4824,-7353,-8000,-6865,-3789,-980,285,1010,1821,2227,-108,-2602,-3586,-3487,-1290,43,3029,6779,8497,11004,13084,11772,10835,8497,-2516,-8013,-5959,-6654,-1528,2399,3607,6663,11552,15798,11768,8980,2865,-4729,-3534,-3776,-3305,-2166,1407,5467,8855,12644,7901,1774,-2356,-4561,-4030,-2356,-1394,-207,4052,7422,7979,5860,2080,945,734,2335,5247,6896,12648,16747,17865,21960,15185,-7754,-10089,-6525,-9882,1273,4216,3042,8682,17593,20661,12277,9127,-2127,-12475,-7120,-5916,-4583,-380,5424,8264,12385,16605,7388,-1100,-9748,-15345,-9278,- |