Commit 791d449b authored by Huang's avatar Huang

Resampling module for USRP. Not completed. In progress.

git-svn-id: http://svn.eurecom.fr/openair4G/trunk@5085 818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent 18e4f19e
# compiles the openair_usrp
#OPENAIRTARGETS_DIR ?=../../../..
#OPENAIROBJS += $(OPENAIRTARGETS_DIR)/ARCH/USRP/USERSPACE/LIB/openair0_lib.o
#CFLAGS += -I$(OPENAIRTARGETS_DIR)/ARCH/USRP/USERSPACE/LIB -I$(OPENAIRTARGETS_DIR)/ARCH/USRP/DEFS
#example: example.o $(OPENAIROBJS)
# gcc -o $@ $(CFLAGS) -lm $(OPENAIROBJS) $<
#openair_usrp.o:
# $(CXX) -c openair_usrp.cpp -o openair_usrp.o
#clean:
# rm -f *.o *~
#a rm -f example
USRP_OBJ += $(OPENAIR_TARGETS)/ARCH/USRP/USERSPACE/LIB/openair_usrp.o
PPS_OBJ += $(OPENAIR_TARGETS)/ARCH/USRP/USERSPACE/LIB/polyphaseResample.o
USRP_FILE_OBJ += $(OPENAIR_TARGETS)/ARCH/USRP/USERSPACE/LIB/openair_usrp.cpp
PPS_FILE_OBJ += $(OPENAIR_TARGETS)/ARCH/USRP/USERSPACE/LIB/polyphaseResample.cpp
USRP_CFLAGS += -I$(OPENAIR_TARGETS)/ARCH/USRP/USERSPACE/LIB/
short coeff_25_to_3072[] = {26,25,25,25,25,25,25,25,25,25,25,24,24,24,24,24,24,24,24,24,23,23,23,23,23,23,23,23,23,22,22,22,22,22,22,22,22,21,21,21,21,21,21,21,21,20,20,20,20,20,20,20,19,19,19,19,19,19,19,18,18,18,18,18,18,17,17,17,17,17,17,17,16,16,16,16,16,16,15,15,15,15,15,15,14,14,14,14,14,13,13,13,13,13,13,12,12,12,12,12,11,11,11,11,11,11,10,10,10,10,10,9,9,9,9,9,8,8,8,8,8,7,7,7,7,6,6,6,6,6,5,5,5,5,5,4,4,4,4,3,3,3,3,3,2,2,2,2,1,1,1,1,0,0,0,0,-0,-0,-0,-0,-0,-1,-1,-1,-1,-2,-2,-2,-2,-3,-3,-3,-3,-4,-4,-4,-4,-5,-5,-5,-5,-6,-6,-6,-7,-7,-7,-7,-8,-8,-8,-8,-9,-9,-9,-9,-10,-10,-10,-11,-11,-11,-11,-12,-12,-12,-12,-13,-13,-13,-14,-14,-14,-14,-15,-15,-15,-16,-16,-16,-16,-17,-17,-17,-18,-18,-18,-18,-19,-19,-19,-20,-20,-20,-20,-21,-21,-21,-22,-22,-22,-23,-23,-23,-23,-24,-24,-24,-25,-25,-25,-26,-26,-26,-27,-27,-27,-27,-28,-28,-28,-29,-29,-29,-30,-30,-30,-31,-31,-31,-32,-32,-32,-32,-33,-33,-33,-34,-34,-34,-35,-35,-35,-36,-36,-36,-37,-37,-37,-38,-38,-38,-39,-39,-39,-40,-40,-40,-41,-41,-41,-41,-42,-42,-42,-43,-43,-43,-44,-44,-44,-45,-45,-45,-46,-46,-46,-47,-47,-47,-48,-48,-48,-49,-49,-49,-50,-50,-50,-51,-51,-51,-52,-52,-52,-53,-53,-53,-54,-54,-54,-55,-55,-55,-56,-56,-56,-57,-57,-57,-58,-58,-58,-59,-59,-59,-60,-60,-60,-61,-61,-61,-62,-62,-62,-63,-63,-63,-64,-64,-64,-65,-65,-65,-66,-66,-66,-67,-67,-67,-68,-68,-68,-69,-69,-69,-70,-70,-70,-71,-71,-71,-72,-72,-72,-73,-73,-73,-74,-74,-74,-74,-75,-75,-75,-76,-76,-76,-77,-77,-77,-78,-78,-78,-79,-79,-79,-80,-80,-80,-81,-81,-81,-81,-82,-82,-82,-83,-83,-83,-84,-84,-84,-85,-85,-85,-86,-86,-86,-86,-87,-87,-87,-88,-88,-88,-89,-89,-89,-89,-90,-90,-90,-91,-91,-91,-91,-92,-92,-92,-93,-93,-93,-93,-94,-94,-94,-95,-95,-95,-95,-96,-96,-96,-97,-97,-97,-97,-98,-98,-98,-98,-99,-99,-99,-100,-100,-100,-100,-101,-101,-101,-101,-102,-102,-102,-102,-103,-103,-103,-103,-104,-104,-104,-104,-105,-105,-105,-105,-106,-106,-106,-106,-106,-107,-107,-107,-107,-108,-108,-108,-108,-109,-109,-109,-109,-109,-110,-110,-110,-110,-110,-111,-111,-111,-111,-111,-112,-112,-112,-112,-112,-113,-113,-113,-113,-113,-114,-114,-114,-114,-114,-115,-115,-115,-115,-115,-115,-116,-116,-116,-116,-116,-116,-117,-117,-117,-117,-117,-117,-117,-118,-118,-118,-118,-118,-118,-118,-119,-119,-119,-119,-119,-119,-119,-120,-120,-120,-120,-120,-120,-120,-120,-120,-121,-121,-121,-121,-121,-121,-121,-121,-121,-121,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-121,-121,-121,-121,-121,-121,-121,-121,-121,-120,-120,-120,-120,-120,-120,-120,-120,-119,-119,-119,-119,-119,-119,-119,-118,-118,-118,-118,-118,-118,-117,-117,-117,-117,-117,-117,-116,-116,-116,-116,-116,-115,-115,-115,-115,-115,-114,-114,-114,-114,-114,-113,-113,-113,-113,-112,-112,-112,-112,-111,-111,-111,-111,-110,-110,-110,-110,-109,-109,-109,-109,-108,-108,-108,-107,-107,-107,-107,-106,-106,-106,-105,-105,-105,-105,-104,-104,-104,-103,-103,-103,-102,-102,-102,-101,-101,-101,-100,-100,-100,-99,-99,-99,-98,-98,-97,-97,-97,-96,-96,-96,-95,-95,-94,-94,-94,-93,-93,-92,-92,-92,-91,-91,-90,-90,-90,-89,-89,-88,-88,-87,-87,-87,-86,-86,-85,-85,-84,-84,-83,-83,-83,-82,-82,-81,-81,-80,-80,-79,-79,-78,-78,-77,-77,-76,-76,-75,-75,-74,-74,-73,-73,-72,-72,-71,-71,-70,-70,-69,-69,-68,-68,-67,-67,-66,-65,-65,-64,-64,-63,-63,-62,-62,-61,-60,-60,-59,-59,-58,-58,-57,-56,-56,-55,-55,-54,-53,-53,-52,-52,-51,-50,-50,-49,-49,-48,-47,-47,-46,-45,-45,-44,-44,-43,-42,-42,-41,-40,-40,-39,-38,-38,-37,-36,-36,-35,-34,-34,-33,-32,-32,-31,-30,-30,-29,-28,-28,-27,-26,-25,-25,-24,-23,-23,-22,-21,-21,-20,-19,-18,-18,-17,-16,-16,-15,-14,-13,-13,-12,-11,-10,-10,-9,-8,-7,-7,-6,-5,-4,-4,-3,-2,-1,-1,-0,0,1,2,2,3,4,5,5,6,7,8,9,9,10,11,12,13,13,14,15,16,17,17,18,19,20,21,21,22,23,24,25,26,26,27,28,29,30,30,31,32,33,34,35,36,36,37,38,39,40,41,41,42,43,44,45,46,47,47,48,49,50,51,52,53,53,54,55,56,57,58,59,60,60,61,62,63,64,65,66,67,68,68,69,70,71,72,73,74,75,76,76,77,78,79,80,81,82,83,84,85,85,86,87,88,89,90,91,92,93,94,94,95,96,97,98,99,100,101,102,103,104,105,105,106,107,108,109,110,111,112,113,114,115,115,116,117,118,119,120,121,122,123,124,125,126,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,156,157,158,158,159,160,161,162,163,164,165,166,167,167,168,169,170,171,172,173,174,175,176,176,177,178,179,180,181,182,183,184,184,185,186,187,188,189,190,191,191,192,193,194,195,196,197,197,198,199,200,201,202,203,203,204,205,206,207,208,209,209,210,211,212,213,214,214,215,216,217,218,219,219,220,221,222,223,223,224,225,226,227,228,228,229,230,231,231,232,233,234,235,235,236,237,238,239,239,240,241,242,242,243,244,245,245,246,247,248,248,249,250,251,251,252,253,253,254,255,256,256,257,258,258,259,260,261,261,262,263,263,264,265,265,266,267,267,268,269,269,270,271,271,272,273,273,274,275,275,276,276,277,278,278,279,279,280,281,281,282,282,283,284,284,285,285,286,286,287,288,288,289,289,290,290,291,291,292,292,293,294,294,295,295,296,296,297,297,298,298,299,299,299,300,300,301,301,302,302,303,303,304,304,304,305,305,306,306,306,307,307,308,308,308,309,309,310,310,310,311,311,311,312,312,312,313,313,313,314,314,314,315,315,315,316,316,316,316,317,317,317,317,318,318,318,318,319,319,319,319,320,320,320,320,320,321,321,321,321,321,321,322,322,322,322,322,322,322,323,323,323,323,323,323,323,323,323,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,323,323,323,323,323,323,323,323,323,322,322,322,322,322,322,321,321,321,321,321,321,320,320,320,320,319,319,319,319,319,318,318,318,317,317,317,317,316,316,316,315,315,315,314,314,314,313,313,313,312,312,312,311,311,310,310,310,309,309,308,308,307,307,307,306,306,305,305,304,304,303,303,302,302,301,301,300,300,299,299,298,297,297,296,296,295,295,294,293,293,292,292,291,290,290,289,288,288,287,286,286,285,284,284,283,282,282,281,280,279,279,278,277,276,276,275,274,273,273,272,271,270,269,269,268,267,266,265,264,264,263,262,261,260,259,258,257,257,256,255,254,253,252,251,250,249,248,247,246,245,244,243,242,241,240,239,238,237,236,235,234,233,232,231,230,229,228,227,226,225,224,222,221,220,219,218,217,216,215,213,212,211,210,209,208,206,205,204,203,202,200,199,198,197,195,194,193,192,190,189,188,187,185,184,183,182,180,179,178,176,175,174,172,171,170,168,167,166,164,163,161,160,159,157,156,154,153,152,150,149,147,146,144,143,142,140,139,137,136,134,133,131,130,128,127,125,124,122,121,119,118,116,115,113,111,110,108,107,105,104,102,100,99,97,96,94,92,91,89,88,86,84,83,81,79,78,76,74,73,71,69,68,66,64,63,61,59,58,56,54,52,51,49,47,46,44,42,40,39,37,35,33,31,30,28,26,24,23,21,19,17,15,14,12,10,8,6,4,3,1,-0,-2,-4,-6,-7,-9,-11,-13,-15,-17,-19,-20,-22,-24,-26,-28,-30,-32,-34,-36,-37,-39,-41,-43,-45,-47,-49,-51,-53,-55,-57,-59,-60,-62,-64,-66,-68,-70,-72,-74,-76,-78,-80,-82,-84,-86,-88,-90,-92,-94,-96,-98,-100,-102,-104,-106,-108,-110,-112,-114,-116,-118,-120,-122,-124,-126,-128,-130,-132,-134,-136,-138,-140,-142,-144,-146,-148,-150,-152,-154,-156,-158,-160,-162,-164,-166,-168,-171,-173,-175,-177,-179,-181,-183,-185,-187,-189,-191,-193,-195,-197,-199,-201,-203,-205,-207,-210,-212,-214,-216,-218,-220,-222,-224,-226,-228,-230,-232,-234,-236,-238,-241,-243,-245,-247,-249,-251,-253,-255,-257,-259,-261,-263,-265,-267,-269,-272,-274,-276,-278,-280,-282,-284,-286,-288,-290,-292,-294,-296,-298,-300,-302,-304,-306,-309,-311,-313,-315,-317,-319,-321,-323,-325,-327,-329,-331,-333,-335,-337,-339,-341,-343,-345,-347,-349,-351,-353,-355,-357,-359,-361,-363,-365,-367,-369,-371,-373,-375,-377,-379,-381,-383,-385,-387,-389,-391,-393,-395,-397,-399,-401,-403,-405,-407,-409,-411,-413,-414,-416,-418,-420,-422,-424,-426,-428,-430,-432,-434,-436,-437,-439,-441,-443,-445,-447,-449,-451,-453,-454,-456,-458,-460,-462,-464,-465,-467,-469,-471,-473,-475,-476,-478,-480,-482,-484,-485,-487,-489,-491,-493,-494,-496,-498,-500,-501,-503,-505,-507,-508,-510,-512,-513,-515,-517,-519,-520,-522,-524,-525,-527,-529,-530,-532,-534,-535,-537,-539,-540,-542,-543,-545,-547,-548,-550,-551,-553,-555,-556,-558,-559,-561,-562,-564,-565,-567,-568,-570,-571,-573,-574,-576,-577,-579,-580,-582,-583,-585,-586,-588,-589,-590,-592,-593,-595,-596,-597,-599,-600,-602,-603,-604,-606,-607,-608,-610,-611,-612,-614,-615,-616,-617,-619,-620,-621,-622,-624,-625,-626,-627,-628,-630,-631,-632,-633,-634,-636,-637,-638,-639,-640,-641,-642,-643,-644,-646,-647,-648,-649,-650,-651,-652,-653,-654,-655,-656,-657,-658,-659,-660,-661,-662,-663,-664,-664,-665,-666,-667,-668,-669,-670,-671,-671,-672,-673,-674,-675,-676,-676,-677,-678,-679,-679,-680,-681,-682,-682,-683,-684,-684,-685,-686,-686,-687,-688,-688,-689,-689,-690,-691,-691,-692,-692,-693,-693,-694,-694,-695,-695,-696,-696,-697,-697,-698,-698,-698,-699,-699,-700,-700,-700,-701,-701,-701,-702,-702,-702,-703,-703,-703,-703,-704,-704,-704,-704,-705,-705,-705,-705,-705,-705,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-705,-705,-705,-705,-705,-705,-704,-704,-704,-704,-703,-703,-703,-703,-702,-702,-702,-701,-701,-701,-700,-700,-699,-699,-699,-698,-698,-697,-697,-696,-696,-695,-695,-694,-694,-693,-693,-692,-691,-691,-690,-690,-689,-688,-688,-687,-686,-686,-685,-684,-683,-683,-682,-681,-680,-679,-679,-678,-677,-676,-675,-674,-674,-673,-672,-671,-670,-669,-668,-667,-666,-665,-664,-663,-662,-661,-660,-659,-658,-657,-656,-654,-653,-652,-651,-650,-649,-647,-646,-645,-644,-643,-641,-640,-639,-637,-636,-635,-633,-632,-631,-629,-628,-627,-625,-624,-622,-621,-619,-618,-616,-615,-613,-612,-610,-609,-607,-606,-604,-603,-601,-599,-598,-596,-594,-593,-591,-589,-588,-586,-584,-582,-581,-579,-577,-575,-573,-572,-570,-568,-566,-564,-562,-560,-559,-557,-555,-553,-551,-549,-547,-545,-543,-541,-539,-537,-535,-533,-531,-528,-526,-524,-522,-520,-518,-516,-514,-511,-509,-507,-505,-502,-500,-498,-496,-493,-491,-489,-486,-484,-482,-479,-477,-475,-472,-470,-468,-465,-463,-460,-458,-455,-453,-450,-448,-445,-443,-440,-438,-435,-432,-430,-427,-425,-422,-419,-417,-414,-411,-409,-406,-403,-401,-398,-395,-392,-390,-387,-384,-381,-379,-376,-373,-370,-367,-364,-362,-359,-356,-353,-350,-347,-344,-341,-338,-335,-332,-329,-326,-323,-320,-317,-314,-311,-308,-305,-302,-299,-296,-293,-290,-287,-283,-280,-277,-274,-271,-268,-264,-261,-258,-255,-251,-248,-245,-242,-238,-235,-232,-229,-225,-222,-219,-215,-212,-209,-205,-202,-198,-195,-192,-188,-185,-181,-178,-174,-171,-168,-164,-161,-157,-154,-150,-147,-143,-139,-136,-132,-129,-125,-122,-118,-115,-111,-107,-104,-100,-96,-93,-89,-86,-82,-78,-74,-71,-67,-63,-60,-56,-52,-49,-45,-41,-37,-34,-30,-26,-22,-18,-15,-11,-7,-3,0,3,7,11,15,19,23,27,30,34,38,42,46,50,54,58,62,66,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,174,178,182,186,190,194,198,202,206,210,214,218,223,227,231,235,239,243,247,251,256,260,264,268,272,276,280,285,289,293,297,301,305,310,314,318,322,326,330,335,339,343,347,351,356,360,364,368,372,377,381,385,389,393,398,402,406,410,414,419,423,427,431,435,440,444,448,452,456,461,465,469,473,478,482,486,490,494,499,503,507,511,515,520,524,528,532,536,541,545,549,553,557,562,566,570,574,578,582,587,591,595,599,603,608,612,616,620,624,628,632,637,641,645,649,653,657,661,666,670,674,678,682,686,690,694,698,703,707,711,715,719,723,727,731,735,739,743,747,751,755,759,763,767,771,775,779,783,787,791,795,799,803,807,811,815,819,823,827,831,835,839,843,846,850,854,858,862,866,870,874,877,881,885,889,893,896,900,904,908,912,915,919,923,927,930,934,938,941,945,949,952,956,960,963,967,971,974,978,982,985,989,992,996,999,1003,1007,1010,1014,1017,1021,1024,1028,1031,1034,1038,1041,1045,1048,1052,1055,1058,1062,1065,1068,1072,1075,1078,1082,1085,1088,1092,1095,1098,1101,1104,1108,1111,1114,1117,1120,1124,1127,1130,1133,1136,1139,1142,1145,1148,1151,1154,1157,1160,1163,1166,1169,1172,1175,1178,1181,1184,1187,1189,1192,1195,1198,1201,1204,1206,1209,1212,1215,1217,1220,1223,1225,1228,1231,1233,1236,1238,1241,1244,1246,1249,1251,1254,1256,1259,1261,1264,1266,1268,1271,1273,1275,1278,1280,1282,1285,1287,1289,1292,1294,1296,1298,1300,1302,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,1329,1331,1333,1335,1337,1338,1340,1342,1344,1346,1347,1349,1351,1352,1354,1356,1357,1359,1361,1362,1364,1365,1367,1368,1370,1371,1373,1374,1376,1377,1378,1380,1381,1382,1384,1385,1386,1388,1389,1390,1391,1392,1393,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1405,1406,1407,1408,1409,1410,1410,1411,1412,1413,1413,1414,1415,1415,1416,1416,1417,1417,1418,1418,1419,1419,1420,1420,1421,1421,1421,1422,1422,1422,1422,1423,1423,1423,1423,1423,1423,1424,1424,1424,1424,1424,1424,1424,1424,1423,1423,1423,1423,1423,1423,1422,1422,1422,1422,1421,1421,1421,1420,1420,1419,1419,1418,1418,1417,1417,1416,1416,1415,1414,1414,1413,1412,1412,1411,1410,1409,1408,1408,1407,1406,1405,1404,1403,1402,1401,1400,1399,1398,1397,1396,1394,1393,1392,1391,1389,1388,1387,1386,1384,1383,1381,1380,1378,1377,1375,1374,1372,1371,1369,1368,1366,1364,1363,1361,1359,1357,1356,1354,1352,1350,1348,1346,1344,1342,1340,1338,1336,1334,1332,1330,1328,1326,1323,1321,1319,1317,1314,1312,1310,1307,1305,1302,1300,1298,1295,1293,1290,1287,1285,1282,1280,1277,1274,1272,1269,1266,1263,1260,1258,1255,1252,1249,1246,1243,1240,1237,1234,1231,1228,1225,1222,1218,1215,1212,1209,1205,1202,1199,1196,1192,1189,1185,1182,1178,1175,1172,1168,1164,1161,1157,1154,1150,1146,1143,1139,1135,1131,1127,1124,1120,1116,1112,1108,1104,1100,1096,1092,1088,1084,1080,1076,1072,1067,1063,1059,1055,1051,1046,1042,1038,1033,1029,1024,1020,1015,1011,1007,1002,997,993,988,984,979,974,970,965,960,955,951,946,941,936,931,926,921,916,911,906,901,896,891,886,881,876,871,866,860,855,850,845,839,834,829,823,818,812,807,801,796,790,785,779,774,768,763,757,751,746,740,734,729,723,717,711,705,699,694,688,682,676,670,664,658,652,646,640,634,628,621,615,609,603,597,590,584,578,572,565,559,553,546,540,533,527,521,514,508,501,495,488,481,475,468,462,455,448,442,435,428,421,415,408,401,394,387,381,374,367,360,353,346,339,332,325,318,311,304,297,290,283,276,269,261,254,247,240,233,225,218,211,204,196,189,182,174,167,159,152,145,137,130,122,115,107,100,92,85,77,70,62,54,47,39,32,24,16,9,1,-6,-14,-21,-29,-37,-45,-52,-60,-68,-76,-84,-92,-99,-107,-115,-123,-131,-139,-147,-155,-163,-171,-179,-187,-195,-203,-211,-219,-227,-235,-243,-251,-259,-268,-276,-284,-292,-300,-308,-317,-325,-333,-341,-349,-358,-366,-374,-382,-391,-399,-407,-415,-424,-432,-440,-449,-457,-465,-474,-482,-490,-499,-507,-516,-524,-532,-541,-549,-558,-566,-575,-583,-591,-600,-608,-617,-625,-634,-642,-651,-659,-668,-676,-685,-693,-702,-710,-719,-727,-736,-744,-753,-762,-770,-779,-787,-796,-804,-813,-822,-830,-839,-847,-856,-864,-873,-882,-890,-899,-907,-916,-925,-933,-942,-950,-959,-968,-976,-985,-994,-1002,-1011,-1019,-1028,-1037,-1045,-1054,-1062,-1071,-1080,-1088,-1097,-1105,-1114,-1123,-1131,-1140,-1148,-1157,-1166,-1174,-1183,-1191,-1200,-1209,-1217,-1226,-1234,-1243,-1251,-1260,-1269,-1277,-1286,-1294,-1303,-1311,-1320,-1328,-1337,-1345,-1354,-1362,-1371,-1379,-1388,-1396,-1405,-1413,-1422,-1430,-1439,-1447,-1456,-1464,-1472,-1481,-1489,-1498,-1506,-1514,-1523,-1531,-1540,-1548,-1556,-1565,-1573,-1581,-1590,-1598,-1606,-1614,-1623,-1631,-1639,-1647,-1656,-1664,-1672,-1680,-1688,-1697,-1705,-1713,-1721,-1729,-1737,-1745,-1754,-1762,-1770,-1778,-1786,-1794,-1802,-1810,-1818,-1826,-1834,-1842,-1850,-1858,-1866,-1874,-1881,-1889,-1897,-1905,-1913,-1921,-1928,-1936,-1944,-1952,-1959,-1967,-1975,-1983,-1990,-1998,-2006,-2013,-2021,-2028,-2036,-2043,-2051,-2059,-2066,-2074,-2081,-2088,-2096,-2103,-2111,-2118,-2125,-2133,-2140,-2147,-2155,-2162,-2169,-2176,-2183,-2191,-2198,-2205,-2212,-2219,-2226,-2233,-2240,-2247,-2254,-2261,-2268,-2275,-2282,-2289,-2296,-2303,-2309,-2316,-2323,-2330,-2336,-2343,-2350,-2356,-2363,-2370,-2376,-2383,-2389,-2396,-2402,-2409,-2415,-2421,-2428,-2434,-2440,-2447,-2453,-2459,-2465,-2472,-2478,-2484,-2490,-2496,-2502,-2508,-2514,-2520,-2526,-2532,-2538,-2544,-2550,-2555,-2561,-2567,-2573,-2578,-2584,-2590,-2595,-2601,-2606,-2612,-2617,-2623,-2628,-2634,-2639,-2644,-2650,-2655,-2660,-2665,-2670,-2676,-2681,-2686,-2691,-2696,-2701,-2706,-2711,-2716,-2720,-2725,-2730,-2735,-2739,-2744,-2749,-2753,-2758,-2762,-2767,-2771,-2776,-2780,-2785,-2789,-2793,-2798,-2802,-2806,-2810,-2814,-2818,-2822,-2826,-2830,-2834,-2838,-2842,-2846,-2850,-2854,-2857,-2861,-2865,-2868,-2872,-2875,-2879,-2882,-2886,-2889,-2892,-2896,-2899,-2902,-2905,-2909,-2912,-2915,-2918,-2921,-2924,-2927,-2930,-2932,-2935,-2938,-2941,-2943,-2946,-2949,-2951,-2954,-2956,-2958,-2961,-2963,-2966,-2968,-2970,-2972,-2974,-2976,-2978,-2980,-2982,-2984,-2986,-2988,-2990,-2992,-2993,-2995,-2997,-2998,-3000,-3001,-3003,-3004,-3005,-3007,-3008,-3009,-3010,-3011,-3012,-3014,-3015,-3015,-3016,-3017,-3018,-3019,-3020,-3020,-3021,-3021,-3022,-3022,-3023,-3023,-3024,-3024,-3024,-3024,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3024,-3024,-3024,-3024,-3023,-3023,-3022,-3022,-3021,-3021,-3020,-3019,-3019,-3018,-3017,-3016,-3015,-3014,-3013,-3012,-3011,-3010,-3008,-3007,-3006,-3004,-3003,-3001,-3000,-2998,-2996,-2995,-2993,-2991,-2989,-2987,-2985,-2983,-2981,-2979,-2977,-2975,-2973,-2970,-2968,-2966,-2963,-2961,-2958,-2955,-2953,-2950,-2947,-2944,-2941,-2938,-2935,-2932,-2929,-2926,-2923,-2920,-2916,-2913,-2910,-2906,-2903,-2899,-2895,-2892,-2888,-2884,-2880,-2876,-2872,-2868,-2864,-2860,-2856,-2852,-2847,-2843,-2839,-2834,-2830,-2825,-2821,-2816,-2811,-2806,-2802,-2797,-2792,-2787,-2782,-2777,-2771,-2766,-2761,-2756,-2750,-2745,-2739,-2734,-2728,-2722,-2717,-2711,-2705,-2699,-2693,-2687,-2681,-2675,-2669,-2663,-2656,-2650,-2644,-2637,-2631,-2624,-2618,-2611,-2604,-2597,-2591,-2584,-2577,-2570,-2563,-2555,-2548,-2541,-2534,-2526,-2519,-2512,-2504,-2496,-2489,-2481,-2473,-2465,-2458,-2450,-2442,-2434,-2426,-2417,-2409,-2401,-2393,-2384,-2376,-2367,-2359,-2350,-2341,-2333,-2324,-2315,-2306,-2297,-2288,-2279,-2270,-2261,-2252,-2242,-2233,-2223,-2214,-2204,-2195,-2185,-2175,-2166,-2156,-2146,-2136,-2126,-2116,-2106,-2096,-2086,-2075,-2065,-2054,-2044,-2034,-2023,-2012,-2002,-1991,-1980,-1969,-1958,-1947,-1936,-1925,-1914,-1903,-1892,-1880,-1869,-1857,-1846,-1834,-1823,-1811,-1799,-1788,-1776,-1764,-1752,-1740,-1728,-1716,-1704,-1691,-1679,-1667,-1654,-1642,-1629,-1617,-1604,-1591,-1579,-1566,-1553,-1540,-1527,-1514,-1501,-1488,-1475,-1461,-1448,-1435,-1421,-1408,-1394,-1380,-1367,-1353,-1339,-1326,-1312,-1298,-1284,-1270,-1256,-1241,-1227,-1213,-1199,-1184,-1170,-1155,-1141,-1126,-1111,-1097,-1082,-1067,-1052,-1037,-1022,-1007,-992,-977,-962,-946,-931,-916,-900,-885,-869,-854,-838,-822,-807,-791,-775,-759,-743,-727,-711,-695,-678,-662,-646,-630,-613,-597,-580,-564,-547,-530,-514,-497,-480,-463,-446,-429,-412,-395,-378,-361,-343,-326,-309,-291,-274,-256,-239,-221,-204,-186,-168,-150,-132,-114,-96,-78,-60,-42,-24,-6,11,30,48,67,85,104,122,141,160,178,197,216,235,254,273,292,311,330,349,368,388,407,426,446,465,485,504,524,543,563,583,603,622,642,662,682,702,722,742,763,783,803,823,844,864,884,905,925,946,967,987,1008,1029,1050,1070,1091,1112,1133,1154,1175,1196,1217,1239,1260,1281,1302,1324,1345,1367,1388,1410,1431,1453,1474,1496,1518,1540,1561,1583,1605,1627,1649,1671,1693,1715,1737,1760,1782,1804,1826,1849,1871,1893,1916,1938,1961,1984,2006,2029,2051,2074,2097,2120,2143,2165,2188,2211,2234,2257,2280,2303,2326,2350,2373,2396,2419,2443,2466,2489,2513,2536,2560,2583,2607,2630,2654,2677,2701,2725,2748,2772,2796,2820,2844,2868,2891,2915,2939,2963,2987,3012,3036,3060,3084,3108,3132,3157,3181,3205,3230,3254,3278,3303,3327,3352,3376,3401,3425,3450,3475,3499,3524,3549,3573,3598,3623,3648,3673,3697,3722,3747,3772,3797,3822,3847,3872,3897,3922,3947,3973,3998,4023,4048,4073,4099,4124,4149,4174,4200,4225,4251,4276,4301,4327,4352,4378,4403,4429,4454,4480,4505,4531,4557,4582,4608,4634,4659,4685,4711,4736,4762,4788,4814,4840,4865,4891,4917,4943,4969,4995,5021,5047,5073,5099,5125,5151,5177,5203,5229,5255,5281,5307,5333,5359,5385,5411,5437,5464,5490,5516,5542,5568,5594,5621,5647,5673,5699,5726,5752,5778,5804,5831,5857,5883,5910,5936,5962,5988,6015,6041,6068,6094,6120,6147,6173,6199,6226,6252,6279,6305,6331,6358,6384,6411,6437,6463,6490,6516,6543,6569,6596,6622,6648,6675,6701,6728,6754,6781,6807,6833,6860,6886,6913,6939,6966,6992,7019,7045,7071,7098,7124,7151,7177,7204,7230,7256,7283,7309,7336,7362,7388,7415,7441,7467,7494,7520,7547,7573,7599,7626,7652,7678,7705,7731,7757,7783,7810,7836,7862,7889,7915,7941,7967,7993,8020,8046,8072,8098,8124,8150,8177,8203,8229,8255,8281,8307,8333,8359,8385,8411,8437,8463,8489,8515,8541,8567,8593,8619,8645,8671,8697,8722,8748,8774,8800,8826,8851,8877,8903,8928,8954,8980,9005,9031,9057,9082,9108,9133,9159,9184,9210,9235,9261,9286,9312,9337,9362,9388,9413,9438,9463,9489,9514,9539,9564,9589,9615,9640,9665,9690,9715,9740,9765,9790,9815,9839,9864,9889,9914,9939,9963,9988,10013,10037,10062,10087,10111,10136,10160,10185,10209,10234,10258,10282,10307,10331,10355,10380,10404,10428,10452,10476,10500,10524,10548,10572,10596,10620,10644,10668,10692,10716,10739,10763,10787,10810,10834,10857,10881,10904,10928,10951,10975,10998,11021,11045,11068,11091,11114,11137,11160,11183,11206,11229,11252,11275,11298,11321,11344,11366,11389,11412,11434,11457,11479,11502,11524,11547,11569,11591,11613,11636,11658,11680,11702,11724,11746,11768,11790,11812,11834,11855,11877,11899,11920,11942,11963,11985,12006,12028,12049,12070,12092,12113,12134,12155,12176,12197,12218,12239,12260,12281,12302,12322,12343,12364,12384,12405,12425,12446,12466,12486,12506,12527,12547,12567,12587,12607,12627,12647,12667,12686,12706,12726,12746,12765,12785,12804,12823,12843,12862,12881,12901,12920,12939,12958,12977,12996,13015,13033,13052,13071,13089,13108,13127,13145,13163,13182,13200,13218,13236,13255,13273,13291,13309,13326,13344,13362,13380,13397,13415,13432,13450,13467,13485,13502,13519,13536,13553,13570,13587,13604,13621,13638,13654,13671,13688,13704,13721,13737,13753,13770,13786,13802,13818,13834,13850,13866,13882,13898,13913,13929,13945,13960,13975,13991,14006,14021,14037,14052,14067,14082,14097,14111,14126,14141,14155,14170,14185,14199,14213,14228,14242,14256,14270,14284,14298,14312,14326,14340,14353,14367,14380,14394,14407,14421,14434,14447,14460,14473,14486,14499,14512,14525,14537,14550,14563,14575,14587,14600,14612,14624,14636,14648,14660,14672,14684,14696,14708,14719,14731,14742,14754,14765,14776,14787,14799,14810,14820,14831,14842,14853,14864,14874,14885,14895,14905,14916,14926,14936,14946,14956,14966,14976,14986,14995,15005,15015,15024,15033,15043,15052,15061,15070,15079,15088,15097,15106,15114,15123,15132,15140,15148,15157,15165,15173,15181,15189,15197,15205,15213,15220,15228,15236,15243,15250,15258,15265,15272,15279,15286,15293,15300,15307,15313,15320,15326,15333,15339,15346,15352,15358,15364,15370,15376,15382,15387,15393,15399,15404,15409,15415,15420,15425,15430,15435,15440,15445,15450,15455,15459,15464,15468,15473,15477,15481,15485,15489,15493,15497,15501,15505,15508,15512,15515,15519,15522,15525,15529,15532,15535,15538,15540,15543,15546,15548,15551,15553,15556,15558,15560,15562,15564,15566,15568,15570,15572,15573,15575,15576,15578,15579,15580,15581,15582,15583,15584,15585,15586,15586,15587,15588,15588,15588,15588,15589,15589,15589,15589,15588,15588,15588,15588,15587,15586,15586,15585,15584,15583,15582,15581,15580,15579,15578,15576,15575,15573,15572,15570,15568,15566,15564,15562,15560,15558,15556,15553,15551,15548,15546,15543,15540,15538,15535,15532,15529,15525,15522,15519,15515,15512,15508,15505,15501,15497,15493,15489,15485,15481,15477,15473,15468,15464,15459,15455,15450,15445,15440,15435,15430,15425,15420,15415,15409,15404,15399,15393,15387,15382,15376,15370,15364,15358,15352,15346,15339,15333,15326,15320,15313,15307,15300,15293,15286,15279,15272,15265,15258,15250,15243,15236,15228,15220,15213,15205,15197,15189,15181,15173,15165,15157,15148,15140,15132,15123,15114,15106,15097,15088,15079,15070,15061,15052,15043,15033,15024,15015,15005,14995,14986,14976,14966,14956,14946,14936,14926,14916,14905,14895,14885,14874,14864,14853,14842,14831,14820,14810,14799,14787,14776,14765,14754,14742,14731,14719,14708,14696,14684,14672,14660,14648,14636,14624,14612,14600,14587,14575,14563,14550,14537,14525,14512,14499,14486,14473,14460,14447,14434,14421,14407,14394,14380,14367,14353,14340,14326,14312,14298,14284,14270,14256,14242,14228,14213,14199,14185,14170,14155,14141,14126,14111,14097,14082,14067,14052,14037,14021,14006,13991,13975,13960,13945,13929,13913,13898,13882,13866,13850,13834,13818,13802,13786,13770,13753,13737,13721,13704,13688,13671,13654,13638,13621,13604,13587,13570,13553,13536,13519,13502,13485,13467,13450,13432,13415,13397,13380,13362,13344,13326,13309,13291,13273,13255,13236,13218,13200,13182,13163,13145,13127,13108,13089,13071,13052,13033,13015,12996,12977,12958,12939,12920,12901,12881,12862,12843,12823,12804,12785,12765,12746,12726,12706,12686,12667,12647,12627,12607,12587,12567,12547,12527,12506,12486,12466,12446,12425,12405,12384,12364,12343,12322,12302,12281,12260,12239,12218,12197,12176,12155,12134,12113,12092,12070,12049,12028,12006,11985,11963,11942,11920,11899,11877,11855,11834,11812,11790,11768,11746,11724,11702,11680,11658,11636,11613,11591,11569,11547,11524,11502,11479,11457,11434,11412,11389,11366,11344,11321,11298,11275,11252,11229,11206,11183,11160,11137,11114,11091,11068,11045,11021,10998,10975,10951,10928,10904,10881,10857,10834,10810,10787,10763,10739,10716,10692,10668,10644,10620,10596,10572,10548,10524,10500,10476,10452,10428,10404,10380,10355,10331,10307,10282,10258,10234,10209,10185,10160,10136,10111,10087,10062,10037,10013,9988,9963,9939,9914,9889,9864,9839,9815,9790,9765,9740,9715,9690,9665,9640,9615,9589,9564,9539,9514,9489,9463,9438,9413,9388,9362,9337,9312,9286,9261,9235,9210,9184,9159,9133,9108,9082,9057,9031,9005,8980,8954,8928,8903,8877,8851,8826,8800,8774,8748,8722,8697,8671,8645,8619,8593,8567,8541,8515,8489,8463,8437,8411,8385,8359,8333,8307,8281,8255,8229,8203,8177,8150,8124,8098,8072,8046,8020,7993,7967,7941,7915,7889,7862,7836,7810,7783,7757,7731,7705,7678,7652,7626,7599,7573,7547,7520,7494,7467,7441,7415,7388,7362,7336,7309,7283,7256,7230,7204,7177,7151,7124,7098,7071,7045,7019,6992,6966,6939,6913,6886,6860,6833,6807,6781,6754,6728,6701,6675,6648,6622,6596,6569,6543,6516,6490,6463,6437,6411,6384,6358,6331,6305,6279,6252,6226,6199,6173,6147,6120,6094,6068,6041,6015,5988,5962,5936,5910,5883,5857,5831,5804,5778,5752,5726,5699,5673,5647,5621,5594,5568,5542,5516,5490,5464,5437,5411,5385,5359,5333,5307,5281,5255,5229,5203,5177,5151,5125,5099,5073,5047,5021,4995,4969,4943,4917,4891,4865,4840,4814,4788,4762,4736,4711,4685,4659,4634,4608,4582,4557,4531,4505,4480,4454,4429,4403,4378,4352,4327,4301,4276,4251,4225,4200,4174,4149,4124,4099,4073,4048,4023,3998,3973,3947,3922,3897,3872,3847,3822,3797,3772,3747,3722,3697,3673,3648,3623,3598,3573,3549,3524,3499,3475,3450,3425,3401,3376,3352,3327,3303,3278,3254,3230,3205,3181,3157,3132,3108,3084,3060,3036,3012,2987,2963,2939,2915,2891,2868,2844,2820,2796,2772,2748,2725,2701,2677,2654,2630,2607,2583,2560,2536,2513,2489,2466,2443,2419,2396,2373,2350,2326,2303,2280,2257,2234,2211,2188,2165,2143,2120,2097,2074,2051,2029,2006,1984,1961,1938,1916,1893,1871,1849,1826,1804,1782,1760,1737,1715,1693,1671,1649,1627,1605,1583,1561,1540,1518,1496,1474,1453,1431,1410,1388,1367,1345,1324,1302,1281,1260,1239,1217,1196,1175,1154,1133,1112,1091,1070,1050,1029,1008,987,967,946,925,905,884,864,844,823,803,783,763,742,722,702,682,662,642,622,603,583,563,543,524,504,485,465,446,426,407,388,368,349,330,311,292,273,254,235,216,197,178,160,141,122,104,85,67,48,30,11,-6,-24,-42,-60,-78,-96,-114,-132,-150,-168,-186,-204,-221,-239,-256,-274,-291,-309,-326,-343,-361,-378,-395,-412,-429,-446,-463,-480,-497,-514,-530,-547,-564,-580,-597,-613,-630,-646,-662,-678,-695,-711,-727,-743,-759,-775,-791,-807,-822,-838,-854,-869,-885,-900,-916,-931,-946,-962,-977,-992,-1007,-1022,-1037,-1052,-1067,-1082,-1097,-1111,-1126,-1141,-1155,-1170,-1184,-1199,-1213,-1227,-1241,-1256,-1270,-1284,-1298,-1312,-1326,-1339,-1353,-1367,-1380,-1394,-1408,-1421,-1435,-1448,-1461,-1475,-1488,-1501,-1514,-1527,-1540,-1553,-1566,-1579,-1591,-1604,-1617,-1629,-1642,-1654,-1667,-1679,-1691,-1704,-1716,-1728,-1740,-1752,-1764,-1776,-1788,-1799,-1811,-1823,-1834,-1846,-1857,-1869,-1880,-1892,-1903,-1914,-1925,-1936,-1947,-1958,-1969,-1980,-1991,-2002,-2012,-2023,-2034,-2044,-2054,-2065,-2075,-2086,-2096,-2106,-2116,-2126,-2136,-2146,-2156,-2166,-2175,-2185,-2195,-2204,-2214,-2223,-2233,-2242,-2252,-2261,-2270,-2279,-2288,-2297,-2306,-2315,-2324,-2333,-2341,-2350,-2359,-2367,-2376,-2384,-2393,-2401,-2409,-2417,-2426,-2434,-2442,-2450,-2458,-2465,-2473,-2481,-2489,-2496,-2504,-2512,-2519,-2526,-2534,-2541,-2548,-2555,-2563,-2570,-2577,-2584,-2591,-2597,-2604,-2611,-2618,-2624,-2631,-2637,-2644,-2650,-2656,-2663,-2669,-2675,-2681,-2687,-2693,-2699,-2705,-2711,-2717,-2722,-2728,-2734,-2739,-2745,-2750,-2756,-2761,-2766,-2771,-2777,-2782,-2787,-2792,-2797,-2802,-2806,-2811,-2816,-2821,-2825,-2830,-2834,-2839,-2843,-2847,-2852,-2856,-2860,-2864,-2868,-2872,-2876,-2880,-2884,-2888,-2892,-2895,-2899,-2903,-2906,-2910,-2913,-2916,-2920,-2923,-2926,-2929,-2932,-2935,-2938,-2941,-2944,-2947,-2950,-2953,-2955,-2958,-2961,-2963,-2966,-2968,-2970,-2973,-2975,-2977,-2979,-2981,-2983,-2985,-2987,-2989,-2991,-2993,-2995,-2996,-2998,-3000,-3001,-3003,-3004,-3006,-3007,-3008,-3010,-3011,-3012,-3013,-3014,-3015,-3016,-3017,-3018,-3019,-3019,-3020,-3021,-3021,-3022,-3022,-3023,-3023,-3024,-3024,-3024,-3024,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3024,-3024,-3024,-3024,-3023,-3023,-3022,-3022,-3021,-3021,-3020,-3020,-3019,-3018,-3017,-3016,-3015,-3015,-3014,-3012,-3011,-3010,-3009,-3008,-3007,-3005,-3004,-3003,-3001,-3000,-2998,-2997,-2995,-2993,-2992,-2990,-2988,-2986,-2984,-2982,-2980,-2978,-2976,-2974,-2972,-2970,-2968,-2966,-2963,-2961,-2958,-2956,-2954,-2951,-2949,-2946,-2943,-2941,-2938,-2935,-2932,-2930,-2927,-2924,-2921,-2918,-2915,-2912,-2909,-2905,-2902,-2899,-2896,-2892,-2889,-2886,-2882,-2879,-2875,-2872,-2868,-2865,-2861,-2857,-2854,-2850,-2846,-2842,-2838,-2834,-2830,-2826,-2822,-2818,-2814,-2810,-2806,-2802,-2798,-2793,-2789,-2785,-2780,-2776,-2771,-2767,-2762,-2758,-2753,-2749,-2744,-2739,-2735,-2730,-2725,-2720,-2716,-2711,-2706,-2701,-2696,-2691,-2686,-2681,-2676,-2670,-2665,-2660,-2655,-2650,-2644,-2639,-2634,-2628,-2623,-2617,-2612,-2606,-2601,-2595,-2590,-2584,-2578,-2573,-2567,-2561,-2555,-2550,-2544,-2538,-2532,-2526,-2520,-2514,-2508,-2502,-2496,-2490,-2484,-2478,-2472,-2465,-2459,-2453,-2447,-2440,-2434,-2428,-2421,-2415,-2409,-2402,-2396,-2389,-2383,-2376,-2370,-2363,-2356,-2350,-2343,-2336,-2330,-2323,-2316,-2309,-2303,-2296,-2289,-2282,-2275,-2268,-2261,-2254,-2247,-2240,-2233,-2226,-2219,-2212,-2205,-2198,-2191,-2183,-2176,-2169,-2162,-2155,-2147,-2140,-2133,-2125,-2118,-2111,-2103,-2096,-2088,-2081,-2074,-2066,-2059,-2051,-2043,-2036,-2028,-2021,-2013,-2006,-1998,-1990,-1983,-1975,-1967,-1959,-1952,-1944,-1936,-1928,-1921,-1913,-1905,-1897,-1889,-1881,-1874,-1866,-1858,-1850,-1842,-1834,-1826,-1818,-1810,-1802,-1794,-1786,-1778,-1770,-1762,-1754,-1745,-1737,-1729,-1721,-1713,-1705,-1697,-1688,-1680,-1672,-1664,-1656,-1647,-1639,-1631,-1623,-1614,-1606,-1598,-1590,-1581,-1573,-1565,-1556,-1548,-1540,-1531,-1523,-1514,-1506,-1498,-1489,-1481,-1472,-1464,-1456,-1447,-1439,-1430,-1422,-1413,-1405,-1396,-1388,-1379,-1371,-1362,-1354,-1345,-1337,-1328,-1320,-1311,-1303,-1294,-1286,-1277,-1269,-1260,-1251,-1243,-1234,-1226,-1217,-1209,-1200,-1191,-1183,-1174,-1166,-1157,-1148,-1140,-1131,-1123,-1114,-1105,-1097,-1088,-1080,-1071,-1062,-1054,-1045,-1037,-1028,-1019,-1011,-1002,-994,-985,-976,-968,-959,-950,-942,-933,-925,-916,-907,-899,-890,-882,-873,-864,-856,-847,-839,-830,-822,-813,-804,-796,-787,-779,-770,-762,-753,-744,-736,-727,-719,-710,-702,-693,-685,-676,-668,-659,-651,-642,-634,-625,-617,-608,-600,-591,-583,-575,-566,-558,-549,-541,-532,-524,-516,-507,-499,-490,-482,-474,-465,-457,-449,-440,-432,-424,-415,-407,-399,-391,-382,-374,-366,-358,-349,-341,-333,-325,-317,-308,-300,-292,-284,-276,-268,-259,-251,-243,-235,-227,-219,-211,-203,-195,-187,-179,-171,-163,-155,-147,-139,-131,-123,-115,-107,-99,-92,-84,-76,-68,-60,-52,-45,-37,-29,-21,-14,-6,1,9,16,24,32,39,47,54,62,70,77,85,92,100,107,115,122,130,137,145,152,159,167,174,182,189,196,204,211,218,225,233,240,247,254,261,269,276,283,290,297,304,311,318,325,332,339,346,353,360,367,374,381,387,394,401,408,415,421,428,435,442,448,455,462,468,475,481,488,495,501,508,514,521,527,533,540,546,553,559,565,572,578,584,590,597,603,609,615,621,628,634,640,646,652,658,664,670,676,682,688,694,699,705,711,717,723,729,734,740,746,751,757,763,768,774,779,785,790,796,801,807,812,818,823,829,834,839,845,850,855,860,866,871,876,881,886,891,896,901,906,911,916,921,926,931,936,941,946,951,955,960,965,970,974,979,984,988,993,997,1002,1007,1011,1015,1020,1024,1029,1033,1038,1042,1046,1051,1055,1059,1063,1067,1072,1076,1080,1084,1088,1092,1096,1100,1104,1108,1112,1116,1120,1124,1127,1131,1135,1139,1143,1146,1150,1154,1157,1161,1164,1168,1172,1175,1178,1182,1185,1189,1192,1196,1199,1202,1205,1209,1212,1215,1218,1222,1225,1228,1231,1234,1237,1240,1243,1246,1249,1252,1255,1258,1260,1263,1266,1269,1272,1274,1277,1280,1282,1285,1287,1290,1293,1295,1298,1300,1302,1305,1307,1310,1312,1314,1317,1319,1321,1323,1326,1328,1330,1332,1334,1336,1338,1340,1342,1344,1346,1348,1350,1352,1354,1356,1357,1359,1361,1363,1364,1366,1368,1369,1371,1372,1374,1375,1377,1378,1380,1381,1383,1384,1386,1387,1388,1389,1391,1392,1393,1394,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1408,1409,1410,1411,1412,1412,1413,1414,1414,1415,1416,1416,1417,1417,1418,1418,1419,1419,1420,1420,1421,1421,1421,1422,1422,1422,1422,1423,1423,1423,1423,1423,1423,1424,1424,1424,1424,1424,1424,1424,1424,1423,1423,1423,1423,1423,1423,1422,1422,1422,1422,1421,1421,1421,1420,1420,1419,1419,1418,1418,1417,1417,1416,1416,1415,1415,1414,1413,1413,1412,1411,1410,1410,1409,1408,1407,1406,1405,1405,1404,1403,1402,1401,1400,1399,1398,1397,1396,1395,1393,1392,1391,1390,1389,1388,1386,1385,1384,1382,1381,1380,1378,1377,1376,1374,1373,1371,1370,1368,1367,1365,1364,1362,1361,1359,1357,1356,1354,1352,1351,1349,1347,1346,1344,1342,1340,1338,1337,1335,1333,1331,1329,1327,1325,1323,1321,1319,1317,1315,1313,1311,1309,1307,1305,1302,1300,1298,1296,1294,1292,1289,1287,1285,1282,1280,1278,1275,1273,1271,1268,1266,1264,1261,1259,1256,1254,1251,1249,1246,1244,1241,1238,1236,1233,1231,1228,1225,1223,1220,1217,1215,1212,1209,1206,1204,1201,1198,1195,1192,1189,1187,1184,1181,1178,1175,1172,1169,1166,1163,1160,1157,1154,1151,1148,1145,1142,1139,1136,1133,1130,1127,1124,1120,1117,1114,1111,1108,1104,1101,1098,1095,1092,1088,1085,1082,1078,1075,1072,1068,1065,1062,1058,1055,1052,1048,1045,1041,1038,1034,1031,1028,1024,1021,1017,1014,1010,1007,1003,999,996,992,989,985,982,978,974,971,967,963,960,956,952,949,945,941,938,934,930,927,923,919,915,912,908,904,900,896,893,889,885,881,877,874,870,866,862,858,854,850,846,843,839,835,831,827,823,819,815,811,807,803,799,795,791,787,783,779,775,771,767,763,759,755,751,747,743,739,735,731,727,723,719,715,711,707,703,698,694,690,686,682,678,674,670,666,661,657,653,649,645,641,637,632,628,624,620,616,612,608,603,599,595,591,587,582,578,574,570,566,562,557,553,549,545,541,536,532,528,524,520,515,511,507,503,499,494,490,486,482,478,473,469,465,461,456,452,448,444,440,435,431,427,423,419,414,410,406,402,398,393,389,385,381,377,372,368,364,360,356,351,347,343,339,335,330,326,322,318,314,310,305,301,297,293,289,285,280,276,272,268,264,260,256,251,247,243,239,235,231,227,223,218,214,210,206,202,198,194,190,186,182,178,174,169,165,161,157,153,149,145,141,137,133,129,125,121,117,113,109,105,101,97,93,89,85,81,77,73,69,66,62,58,54,50,46,42,38,34,30,27,23,19,15,11,7,3,0,-3,-7,-11,-15,-18,-22,-26,-30,-34,-37,-41,-45,-49,-52,-56,-60,-63,-67,-71,-74,-78,-82,-86,-89,-93,-96,-100,-104,-107,-111,-115,-118,-122,-125,-129,-132,-136,-139,-143,-147,-150,-154,-157,-161,-164,-168,-171,-174,-178,-181,-185,-188,-192,-195,-198,-202,-205,-209,-212,-215,-219,-222,-225,-229,-232,-235,-238,-242,-245,-248,-251,-255,-258,-261,-264,-268,-271,-274,-277,-280,-283,-287,-290,-293,-296,-299,-302,-305,-308,-311,-314,-317,-320,-323,-326,-329,-332,-335,-338,-341,-344,-347,-350,-353,-356,-359,-362,-364,-367,-370,-373,-376,-379,-381,-384,-387,-390,-392,-395,-398,-401,-403,-406,-409,-411,-414,-417,-419,-422,-425,-427,-430,-432,-435,-438,-440,-443,-445,-448,-450,-453,-455,-458,-460,-463,-465,-468,-470,-472,-475,-477,-479,-482,-484,-486,-489,-491,-493,-496,-498,-500,-502,-505,-507,-509,-511,-514,-516,-518,-520,-522,-524,-526,-528,-531,-533,-535,-537,-539,-541,-543,-545,-547,-549,-551,-553,-555,-557,-559,-560,-562,-564,-566,-568,-570,-572,-573,-575,-577,-579,-581,-582,-584,-586,-588,-589,-591,-593,-594,-596,-598,-599,-601,-603,-604,-606,-607,-609,-610,-612,-613,-615,-616,-618,-619,-621,-622,-624,-625,-627,-628,-629,-631,-632,-633,-635,-636,-637,-639,-640,-641,-643,-644,-645,-646,-647,-649,-650,-651,-652,-653,-654,-656,-657,-658,-659,-660,-661,-662,-663,-664,-665,-666,-667,-668,-669,-670,-671,-672,-673,-674,-674,-675,-676,-677,-678,-679,-679,-680,-681,-682,-683,-683,-684,-685,-686,-686,-687,-688,-688,-689,-690,-690,-691,-691,-692,-693,-693,-694,-694,-695,-695,-696,-696,-697,-697,-698,-698,-699,-699,-699,-700,-700,-701,-701,-701,-702,-702,-702,-703,-703,-703,-703,-704,-704,-704,-704,-705,-705,-705,-705,-705,-705,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-706,-705,-705,-705,-705,-705,-705,-704,-704,-704,-704,-703,-703,-703,-703,-702,-702,-702,-701,-701,-701,-700,-700,-700,-699,-699,-698,-698,-698,-697,-697,-696,-696,-695,-695,-694,-694,-693,-693,-692,-692,-691,-691,-690,-689,-689,-688,-688,-687,-686,-686,-685,-684,-684,-683,-682,-682,-681,-680,-679,-679,-678,-677,-676,-676,-675,-674,-673,-672,-671,-671,-670,-669,-668,-667,-666,-665,-664,-664,-663,-662,-661,-660,-659,-658,-657,-656,-655,-654,-653,-652,-651,-650,-649,-648,-647,-646,-644,-643,-642,-641,-640,-639,-638,-637,-636,-634,-633,-632,-631,-630,-628,-627,-626,-625,-624,-622,-621,-620,-619,-617,-616,-615,-614,-612,-611,-610,-608,-607,-606,-604,-603,-602,-600,-599,-597,-596,-595,-593,-592,-590,-589,-588,-586,-585,-583,-582,-580,-579,-577,-576,-574,-573,-571,-570,-568,-567,-565,-564,-562,-561,-559,-558,-556,-555,-553,-551,-550,-548,-547,-545,-543,-542,-540,-539,-537,-535,-534,-532,-530,-529,-527,-525,-524,-522,-520,-519,-517,-515,-513,-512,-510,-508,-507,-505,-503,-501,-500,-498,-496,-494,-493,-491,-489,-487,-485,-484,-482,-480,-478,-476,-475,-473,-471,-469,-467,-465,-464,-462,-460,-458,-456,-454,-453,-451,-449,-447,-445,-443,-441,-439,-437,-436,-434,-432,-430,-428,-426,-424,-422,-420,-418,-416,-414,-413,-411,-409,-407,-405,-403,-401,-399,-397,-395,-393,-391,-389,-387,-385,-383,-381,-379,-377,-375,-373,-371,-369,-367,-365,-363,-361,-359,-357,-355,-353,-351,-349,-347,-345,-343,-341,-339,-337,-335,-333,-331,-329,-327,-325,-323,-321,-319,-317,-315,-313,-311,-309,-306,-304,-302,-300,-298,-296,-294,-292,-290,-288,-286,-284,-282,-280,-278,-276,-274,-272,-269,-267,-265,-263,-261,-259,-257,-255,-253,-251,-249,-247,-245,-243,-241,-238,-236,-234,-232,-230,-228,-226,-224,-222,-220,-218,-216,-214,-212,-210,-207,-205,-203,-201,-199,-197,-195,-193,-191,-189,-187,-185,-183,-181,-179,-177,-175,-173,-171,-168,-166,-164,-162,-160,-158,-156,-154,-152,-150,-148,-146,-144,-142,-140,-138,-136,-134,-132,-130,-128,-126,-124,-122,-120,-118,-116,-114,-112,-110,-108,-106,-104,-102,-100,-98,-96,-94,-92,-90,-88,-86,-84,-82,-80,-78,-76,-74,-72,-70,-68,-66,-64,-62,-60,-59,-57,-55,-53,-51,-49,-47,-45,-43,-41,-39,-37,-36,-34,-32,-30,-28,-26,-24,-22,-20,-19,-17,-15,-13,-11,-9,-7,-6,-4,-2,-0,1,3,4,6,8,10,12,14,15,17,19,21,23,24,26,28,30,31,33,35,37,39,40,42,44,46,47,49,51,52,54,56,58,59,61,63,64,66,68,69,71,73,74,76,78,79,81,83,84,86,88,89,91,92,94,96,97,99,100,102,104,105,107,108,110,111,113,115,116,118,119,121,122,124,125,127,128,130,131,133,134,136,137,139,140,142,143,144,146,147,149,150,152,153,154,156,157,159,160,161,163,164,166,167,168,170,171,172,174,175,176,178,179,180,182,183,184,185,187,188,189,190,192,193,194,195,197,198,199,200,202,203,204,205,206,208,209,210,211,212,213,215,216,217,218,219,220,221,222,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,257,258,259,260,261,262,263,264,264,265,266,267,268,269,269,270,271,272,273,273,274,275,276,276,277,278,279,279,280,281,282,282,283,284,284,285,286,286,287,288,288,289,290,290,291,292,292,293,293,294,295,295,296,296,297,297,298,299,299,300,300,301,301,302,302,303,303,304,304,305,305,306,306,307,307,307,308,308,309,309,310,310,310,311,311,312,312,312,313,313,313,314,314,314,315,315,315,316,316,316,317,317,317,317,318,318,318,319,319,319,319,319,320,320,320,320,321,321,321,321,321,321,322,322,322,322,322,322,323,323,323,323,323,323,323,323,323,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,324,323,323,323,323,323,323,323,323,323,322,322,322,322,322,322,322,321,321,321,321,321,321,320,320,320,320,320,319,319,319,319,318,318,318,318,317,317,317,317,316,316,316,316,315,315,315,314,314,314,313,313,313,312,312,312,311,311,311,310,310,310,309,309,308,308,308,307,307,306,306,306,305,305,304,304,304,303,303,302,302,301,301,300,300,299,299,299,298,298,297,297,296,296,295,295,294,294,293,292,292,291,291,290,290,289,289,288,288,287,286,286,285,285,284,284,283,282,282,281,281,280,279,279,278,278,277,276,276,275,275,274,273,273,272,271,271,270,269,269,268,267,267,266,265,265,264,263,263,262,261,261,260,259,258,258,257,256,256,255,254,253,253,252,251,251,250,249,248,248,247,246,245,245,244,243,242,242,241,240,239,239,238,237,236,235,235,234,233,232,231,231,230,229,228,228,227,226,225,224,223,223,222,221,220,219,219,218,217,216,215,214,214,213,212,211,210,209,209,208,207,206,205,204,203,203,202,201,200,199,198,197,197,196,195,194,193,192,191,191,190,189,188,187,186,185,184,184,183,182,181,180,179,178,177,176,176,175,174,173,172,171,170,169,168,167,167,166,165,164,163,162,161,160,159,158,158,157,156,155,154,153,152,151,150,149,148,148,147,146,145,144,143,142,141,140,139,138,137,137,136,135,134,133,132,131,130,129,128,127,126,126,125,124,123,122,121,120,119,118,117,116,115,115,114,113,112,111,110,109,108,107,106,105,105,104,103,102,101,100,99,98,97,96,95,94,94,93,92,91,90,89,88,87,86,85,85,84,83,82,81,80,79,78,77,76,76,75,74,73,72,71,70,69,68,68,67,66,65,64,63,62,61,60,60,59,58,57,56,55,54,53,53,52,51,50,49,48,47,47,46,45,44,43,42,41,41,40,39,38,37,36,36,35,34,33,32,31,30,30,29,28,27,26,26,25,24,23,22,21,21,20,19,18,17,17,16,15,14,13,13,12,11,10,9,9,8,7,6,5,5,4,3,2,2,1,0,-0,-1,-1,-2,-3,-4,-4,-5,-6,-7,-7,-8,-9,-10,-10,-11,-12,-13,-13,-14,-15,-16,-16,-17,-18,-18,-19,-20,-21,-21,-22,-23,-23,-24,-25,-25,-26,-27,-28,-28,-29,-30,-30,-31,-32,-32,-33,-34,-34,-35,-36,-36,-37,-38,-38,-39,-40,-40,-41,-42,-42,-43,-44,-44,-45,-45,-46,-47,-47,-48,-49,-49,-50,-50,-51,-52,-52,-53,-53,-54,-55,-55,-56,-56,-57,-58,-58,-59,-59,-60,-60,-61,-62,-62,-63,-63,-64,-64,-65,-65,-66,-67,-67,-68,-68,-69,-69,-70,-70,-71,-71,-72,-72,-73,-73,-74,-74,-75,-75,-76,-76,-77,-77,-78,-78,-79,-79,-80,-80,-81,-81,-82,-82,-83,-83,-83,-84,-84,-85,-85,-86,-86,-87,-87,-87,-88,-88,-89,-89,-90,-90,-90,-91,-91,-92,-92,-92,-93,-93,-94,-94,-94,-95,-95,-96,-96,-96,-97,-97,-97,-98,-98,-99,-99,-99,-100,-100,-100,-101,-101,-101,-102,-102,-102,-103,-103,-103,-104,-104,-104,-105,-105,-105,-105,-106,-106,-106,-107,-107,-107,-107,-108,-108,-108,-109,-109,-109,-109,-110,-110,-110,-110,-111,-111,-111,-111,-112,-112,-112,-112,-113,-113,-113,-113,-114,-114,-114,-114,-114,-115,-115,-115,-115,-115,-116,-116,-116,-116,-116,-117,-117,-117,-117,-117,-117,-118,-118,-118,-118,-118,-118,-119,-119,-119,-119,-119,-119,-119,-120,-120,-120,-120,-120,-120,-120,-120,-121,-121,-121,-121,-121,-121,-121,-121,-121,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-123,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-122,-121,-121,-121,-121,-121,-121,-121,-121,-121,-121,-120,-120,-120,-120,-120,-120,-120,-120,-120,-119,-119,-119,-119,-119,-119,-119,-118,-118,-118,-118,-118,-118,-118,-117,-117,-117,-117,-117,-117,-117,-116,-116,-116,-116,-116,-116,-115,-115,-115,-115,-115,-115,-114,-114,-114,-114,-114,-113,-113,-113,-113,-113,-112,-112,-112,-112,-112,-111,-111,-111,-111,-111,-110,-110,-110,-110,-110,-109,-109,-109,-109,-109,-108,-108,-108,-108,-107,-107,-107,-107,-106,-106,-106,-106,-106,-105,-105,-105,-105,-104,-104,-104,-104,-103,-103,-103,-103,-102,-102,-102,-102,-101,-101,-101,-101,-100,-100,-100,-100,-99,-99,-99,-98,-98,-98,-98,-97,-97,-97,-97,-96,-96,-96,-95,-95,-95,-95,-94,-94,-94,-93,-93,-93,-93,-92,-92,-92,-91,-91,-91,-91,-90,-90,-90,-89,-89,-89,-89,-88,-88,-88,-87,-87,-87,-86,-86,-86,-86,-85,-85,-85,-84,-84,-84,-83,-83,-83,-82,-82,-82,-81,-81,-81,-81,-80,-80,-80,-79,-79,-79,-78,-78,-78,-77,-77,-77,-76,-76,-76,-75,-75,-75,-74,-74,-74,-74,-73,-73,-73,-72,-72,-72,-71,-71,-71,-70,-70,-70,-69,-69,-69,-68,-68,-68,-67,-67,-67,-66,-66,-66,-65,-65,-65,-64,-64,-64,-63,-63,-63,-62,-62,-62,-61,-61,-61,-60,-60,-60,-59,-59,-59,-58,-58,-58,-57,-57,-57,-56,-56,-56,-55,-55,-55,-54,-54,-54,-53,-53,-53,-52,-52,-52,-51,-51,-51,-50,-50,-50,-49,-49,-49,-48,-48,-48,-47,-47,-47,-46,-46,-46,-45,-45,-45,-44,-44,-44,-43,-43,-43,-42,-42,-42,-41,-41,-41,-41,-40,-40,-40,-39,-39,-39,-38,-38,-38,-37,-37,-37,-36,-36,-36,-35,-35,-35,-34,-34,-34,-33,-33,-33,-32,-32,-32,-32,-31,-31,-31,-30,-30,-30,-29,-29,-29,-28,-28,-28,-27,-27,-27,-27,-26,-26,-26,-25,-25,-25,-24,-24,-24,-23,-23,-23,-23,-22,-22,-22,-21,-21,-21,-20,-20,-20,-20,-19,-19,-19,-18,-18,-18,-18,-17,-17,-17,-16,-16,-16,-16,-15,-15,-15,-14,-14,-14,-14,-13,-13,-13,-12,-12,-12,-12,-11,-11,-11,-11,-10,-10,-10,-9,-9,-9,-9,-8,-8,-8,-8,-7,-7,-7,-7,-6,-6,-6,-5,-5,-5,-5,-4,-4,-4,-4,-3,-3,-3,-3,-2,-2,-2,-2,-1,-1,-1,-1,-0,-0,-0,-0,-0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,6,7,7,7,7,8,8,8,8,8,9,9,9,9,9,10,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,13,13,13,13,13,13,14,14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,19,19,19,19,19,19,19,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,26};
short coeff_3072_to_25[] = {21,21,21,20,20,20,20,20,20,20,20,20,20,20,20,19,19,19,19,19,19,19,19,19,19,19,18,18,18,18,18,18,18,18,18,18,17,17,17,17,17,17,17,17,17,16,16,16,16,16,16,16,16,16,15,15,15,15,15,15,15,15,14,14,14,14,14,14,14,14,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,11,11,11,11,11,11,11,10,10,10,10,10,10,10,9,9,9,9,9,9,8,8,8,8,8,8,8,7,7,7,7,7,7,6,6,6,6,6,6,5,5,5,5,5,4,4,4,4,4,4,3,3,3,3,3,3,2,2,2,2,2,1,1,1,1,1,0,0,0,0,0,-0,-0,-0,-0,-0,-0,-1,-1,-1,-1,-1,-2,-2,-2,-2,-2,-3,-3,-3,-3,-4,-4,-4,-4,-4,-5,-5,-5,-5,-5,-6,-6,-6,-6,-6,-7,-7,-7,-7,-8,-8,-8,-8,-8,-9,-9,-9,-9,-10,-10,-10,-10,-10,-11,-11,-11,-11,-12,-12,-12,-12,-13,-13,-13,-13,-13,-14,-14,-14,-14,-15,-15,-15,-15,-16,-16,-16,-16,-17,-17,-17,-17,-18,-18,-18,-18,-19,-19,-19,-19,-20,-20,-20,-20,-21,-21,-21,-21,-22,-22,-22,-22,-23,-23,-23,-23,-24,-24,-24,-24,-25,-25,-25,-25,-26,-26,-26,-26,-27,-27,-27,-27,-28,-28,-28,-28,-29,-29,-29,-29,-30,-30,-30,-30,-31,-31,-31,-32,-32,-32,-32,-33,-33,-33,-33,-34,-34,-34,-34,-35,-35,-35,-36,-36,-36,-36,-37,-37,-37,-37,-38,-38,-38,-38,-39,-39,-39,-40,-40,-40,-40,-41,-41,-41,-41,-42,-42,-42,-43,-43,-43,-43,-44,-44,-44,-44,-45,-45,-45,-46,-46,-46,-46,-47,-47,-47,-47,-48,-48,-48,-48,-49,-49,-49,-50,-50,-50,-50,-51,-51,-51,-51,-52,-52,-52,-53,-53,-53,-53,-54,-54,-54,-54,-55,-55,-55,-55,-56,-56,-56,-57,-57,-57,-57,-58,-58,-58,-58,-59,-59,-59,-59,-60,-60,-60,-61,-61,-61,-61,-62,-62,-62,-62,-63,-63,-63,-63,-64,-64,-64,-64,-65,-65,-65,-65,-66,-66,-66,-66,-67,-67,-67,-67,-68,-68,-68,-68,-69,-69,-69,-69,-70,-70,-70,-70,-71,-71,-71,-71,-72,-72,-72,-72,-73,-73,-73,-73,-74,-74,-74,-74,-75,-75,-75,-75,-76,-76,-76,-76,-76,-77,-77,-77,-77,-78,-78,-78,-78,-78,-79,-79,-79,-79,-80,-80,-80,-80,-80,-81,-81,-81,-81,-82,-82,-82,-82,-82,-83,-83,-83,-83,-83,-84,-84,-84,-84,-84,-85,-85,-85,-85,-85,-86,-86,-86,-86,-86,-87,-87,-87,-87,-87,-88,-88,-88,-88,-88,-88,-89,-89,-89,-89,-89,-89,-90,-90,-90,-90,-90,-90,-91,-91,-91,-91,-91,-91,-92,-92,-92,-92,-92,-92,-93,-93,-93,-93,-93,-93,-93,-94,-94,-94,-94,-94,-94,-94,-95,-95,-95,-95,-95,-95,-95,-95,-96,-96,-96,-96,-96,-96,-96,-96,-96,-97,-97,-97,-97,-97,-97,-97,-97,-97,-97,-98,-98,-98,-98,-98,-98,-98,-98,-98,-98,-98,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-100,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-99,-98,-98,-98,-98,-98,-98,-98,-98,-98,-98,-97,-97,-97,-97,-97,-97,-97,-97,-97,-96,-96,-96,-96,-96,-96,-96,-95,-95,-95,-95,-95,-95,-95,-94,-94,-94,-94,-94,-94,-94,-93,-93,-93,-93,-93,-92,-92,-92,-92,-92,-92,-91,-91,-91,-91,-91,-90,-90,-90,-90,-90,-89,-89,-89,-89,-89,-88,-88,-88,-88,-87,-87,-87,-87,-86,-86,-86,-86,-85,-85,-85,-85,-84,-84,-84,-84,-83,-83,-83,-83,-82,-82,-82,-82,-81,-81,-81,-80,-80,-80,-79,-79,-79,-79,-78,-78,-78,-77,-77,-77,-76,-76,-76,-75,-75,-75,-74,-74,-74,-73,-73,-73,-72,-72,-72,-71,-71,-71,-70,-70,-70,-69,-69,-69,-68,-68,-67,-67,-67,-66,-66,-66,-65,-65,-64,-64,-64,-63,-63,-62,-62,-62,-61,-61,-60,-60,-60,-59,-59,-58,-58,-58,-57,-57,-56,-56,-55,-55,-54,-54,-54,-53,-53,-52,-52,-51,-51,-50,-50,-50,-49,-49,-48,-48,-47,-47,-46,-46,-45,-45,-44,-44,-43,-43,-42,-42,-41,-41,-40,-40,-39,-39,-38,-38,-37,-37,-36,-36,-35,-35,-34,-34,-33,-33,-32,-32,-31,-31,-30,-30,-29,-28,-28,-27,-27,-26,-26,-25,-25,-24,-23,-23,-22,-22,-21,-21,-20,-20,-19,-18,-18,-17,-17,-16,-15,-15,-14,-14,-13,-13,-12,-11,-11,-10,-10,-9,-8,-8,-7,-7,-6,-5,-5,-4,-3,-3,-2,-2,-1,-0,-0,0,1,1,2,2,3,4,4,5,6,6,7,8,8,9,9,10,11,11,12,13,13,14,15,15,16,17,17,18,19,19,20,21,21,22,23,23,24,25,25,26,27,27,28,29,29,30,31,32,32,33,34,34,35,36,36,37,38,39,39,40,41,41,42,43,43,44,45,46,46,47,48,48,49,50,51,51,52,53,53,54,55,56,56,57,58,58,59,60,61,61,62,63,64,64,65,66,67,67,68,69,69,70,71,72,72,73,74,75,75,76,77,78,78,79,80,80,81,82,83,83,84,85,86,86,87,88,89,89,90,91,92,92,93,94,95,95,96,97,98,98,99,100,101,101,102,103,104,104,105,106,107,107,108,109,110,110,111,112,113,113,114,115,116,116,117,118,118,119,120,121,121,122,123,124,124,125,126,127,127,128,129,130,130,131,132,133,133,134,135,135,136,137,138,138,139,140,141,141,142,143,143,144,145,146,146,147,148,149,149,150,151,151,152,153,154,154,155,156,156,157,158,159,159,160,161,161,162,163,163,164,165,166,166,167,168,168,169,170,170,171,172,172,173,174,174,175,176,176,177,178,178,179,180,180,181,182,182,183,184,184,185,186,186,187,188,188,189,190,190,191,191,192,193,193,194,195,195,196,197,197,198,198,199,200,200,201,201,202,203,203,204,204,205,206,206,207,207,208,209,209,210,210,211,211,212,213,213,214,214,215,215,216,216,217,218,218,219,219,220,220,221,221,222,222,223,223,224,224,225,225,226,226,227,227,228,228,229,229,230,230,231,231,232,232,233,233,234,234,234,235,235,236,236,237,237,238,238,238,239,239,240,240,240,241,241,242,242,242,243,243,244,244,244,245,245,245,246,246,247,247,247,248,248,248,249,249,249,250,250,250,251,251,251,252,252,252,252,253,253,253,254,254,254,254,255,255,255,255,256,256,256,256,257,257,257,257,258,258,258,258,258,259,259,259,259,259,260,260,260,260,260,260,261,261,261,261,261,261,262,262,262,262,262,262,262,262,262,263,263,263,263,263,263,263,263,263,263,263,263,263,263,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,264,263,263,263,263,263,263,263,263,263,263,263,263,263,263,262,262,262,262,262,262,262,262,261,261,261,261,261,261,260,260,260,260,260,260,259,259,259,259,258,258,258,258,258,257,257,257,257,256,256,256,256,255,255,255,254,254,254,253,253,253,253,252,252,252,251,251,250,250,250,249,249,249,248,248,247,247,247,246,246,245,245,245,244,244,243,243,242,242,242,241,241,240,240,239,239,238,238,237,237,236,236,235,235,234,233,233,232,232,231,231,230,230,229,228,228,227,227,226,225,225,224,224,223,222,222,221,220,220,219,218,218,217,216,216,215,214,214,213,212,212,211,210,209,209,208,207,206,206,205,204,203,203,202,201,200,200,199,198,197,196,195,195,194,193,192,191,190,190,189,188,187,186,185,184,184,183,182,181,180,179,178,177,176,175,175,174,173,172,171,170,169,168,167,166,165,164,163,162,161,160,159,158,157,156,155,154,153,152,151,150,149,148,147,146,144,143,142,141,140,139,138,137,136,135,134,132,131,130,129,128,127,126,124,123,122,121,120,119,117,116,115,114,113,112,110,109,108,107,106,104,103,102,101,99,98,97,96,94,93,92,91,89,88,87,86,84,83,82,80,79,78,76,75,74,73,71,70,69,67,66,65,63,62,60,59,58,56,55,54,52,51,50,48,47,45,44,43,41,40,38,37,36,34,33,31,30,28,27,26,24,23,21,20,18,17,15,14,12,11,9,8,7,5,4,2,1,-0,-1,-3,-4,-6,-7,-9,-10,-12,-13,-15,-17,-18,-20,-21,-23,-24,-26,-27,-29,-30,-32,-33,-35,-37,-38,-40,-41,-43,-44,-46,-48,-49,-51,-52,-54,-55,-57,-59,-60,-62,-63,-65,-67,-68,-70,-71,-73,-75,-76,-78,-79,-81,-83,-84,-86,-88,-89,-91,-92,-94,-96,-97,-99,-101,-102,-104,-106,-107,-109,-111,-112,-114,-115,-117,-119,-120,-122,-124,-125,-127,-129,-130,-132,-134,-135,-137,-139,-140,-142,-144,-145,-147,-149,-150,-152,-154,-155,-157,-159,-160,-162,-164,-165,-167,-169,-170,-172,-174,-175,-177,-179,-181,-182,-184,-186,-187,-189,-191,-192,-194,-196,-197,-199,-201,-202,-204,-206,-207,-209,-211,-212,-214,-216,-217,-219,-221,-223,-224,-226,-228,-229,-231,-233,-234,-236,-238,-239,-241,-243,-244,-246,-248,-249,-251,-253,-254,-256,-258,-259,-261,-263,-264,-266,-268,-269,-271,-273,-274,-276,-277,-279,-281,-282,-284,-286,-287,-289,-291,-292,-294,-296,-297,-299,-300,-302,-304,-305,-307,-309,-310,-312,-313,-315,-317,-318,-320,-321,-323,-325,-326,-328,-329,-331,-332,-334,-336,-337,-339,-340,-342,-344,-345,-347,-348,-350,-351,-353,-354,-356,-357,-359,-361,-362,-364,-365,-367,-368,-370,-371,-373,-374,-376,-377,-379,-380,-382,-383,-385,-386,-388,-389,-391,-392,-393,-395,-396,-398,-399,-401,-402,-404,-405,-406,-408,-409,-411,-412,-414,-415,-416,-418,-419,-421,-422,-423,-425,-426,-427,-429,-430,-431,-433,-434,-436,-437,-438,-440,-441,-442,-443,-445,-446,-447,-449,-450,-451,-452,-454,-455,-456,-458,-459,-460,-461,-463,-464,-465,-466,-467,-469,-470,-471,-472,-473,-475,-476,-477,-478,-479,-480,-482,-483,-484,-485,-486,-487,-488,-489,-491,-492,-493,-494,-495,-496,-497,-498,-499,-500,-501,-502,-503,-504,-505,-506,-507,-508,-509,-510,-511,-512,-513,-514,-515,-516,-517,-518,-519,-520,-521,-522,-523,-523,-524,-525,-526,-527,-528,-529,-530,-530,-531,-532,-533,-534,-534,-535,-536,-537,-538,-538,-539,-540,-541,-541,-542,-543,-544,-544,-545,-546,-546,-547,-548,-548,-549,-550,-550,-551,-552,-552,-553,-553,-554,-555,-555,-556,-556,-557,-557,-558,-558,-559,-559,-560,-560,-561,-561,-562,-562,-563,-563,-564,-564,-565,-565,-565,-566,-566,-567,-567,-567,-568,-568,-568,-569,-569,-569,-570,-570,-570,-570,-571,-571,-571,-571,-572,-572,-572,-572,-573,-573,-573,-573,-573,-573,-574,-574,-574,-574,-574,-574,-574,-574,-574,-574,-575,-575,-575,-575,-575,-575,-575,-575,-575,-575,-575,-575,-574,-574,-574,-574,-574,-574,-574,-574,-574,-574,-573,-573,-573,-573,-573,-573,-572,-572,-572,-572,-571,-571,-571,-571,-570,-570,-570,-569,-569,-569,-568,-568,-568,-567,-567,-567,-566,-566,-565,-565,-564,-564,-564,-563,-563,-562,-562,-561,-561,-560,-559,-559,-558,-558,-557,-557,-556,-555,-555,-554,-554,-553,-552,-552,-551,-550,-549,-549,-548,-547,-547,-546,-545,-544,-544,-543,-542,-541,-540,-539,-539,-538,-537,-536,-535,-534,-533,-532,-532,-531,-530,-529,-528,-527,-526,-525,-524,-523,-522,-521,-520,-519,-518,-516,-515,-514,-513,-512,-511,-510,-509,-508,-506,-505,-504,-503,-502,-500,-499,-498,-497,-495,-494,-493,-492,-490,-489,-488,-486,-485,-484,-482,-481,-479,-478,-477,-475,-474,-472,-471,-470,-468,-467,-465,-464,-462,-461,-459,-458,-456,-454,-453,-451,-450,-448,-447,-445,-443,-442,-440,-438,-437,-435,-433,-432,-430,-428,-427,-425,-423,-421,-420,-418,-416,-414,-412,-411,-409,-407,-405,-403,-401,-400,-398,-396,-394,-392,-390,-388,-386,-384,-382,-380,-378,-376,-374,-372,-370,-368,-366,-364,-362,-360,-358,-356,-354,-352,-350,-348,-346,-343,-341,-339,-337,-335,-333,-330,-328,-326,-324,-322,-319,-317,-315,-313,-310,-308,-306,-303,-301,-299,-296,-294,-292,-289,-287,-285,-282,-280,-278,-275,-273,-270,-268,-265,-263,-261,-258,-256,-253,-251,-248,-246,-243,-241,-238,-236,-233,-231,-228,-225,-223,-220,-218,-215,-212,-210,-207,-205,-202,-199,-197,-194,-191,-189,-186,-183,-180,-178,-175,-172,-170,-167,-164,-161,-159,-156,-153,-150,-147,-145,-142,-139,-136,-133,-131,-128,-125,-122,-119,-116,-113,-111,-108,-105,-102,-99,-96,-93,-90,-87,-84,-81,-78,-75,-72,-69,-67,-64,-61,-58,-55,-52,-48,-45,-42,-39,-36,-33,-30,-27,-24,-21,-18,-15,-12,-9,-6,-3,0,3,6,9,12,15,18,21,25,28,31,34,37,40,44,47,50,53,56,60,63,66,69,72,76,79,82,85,89,92,95,98,102,105,108,111,115,118,121,125,128,131,135,138,141,144,148,151,154,158,161,164,168,171,174,178,181,184,188,191,194,198,201,205,208,211,215,218,221,225,228,232,235,238,242,245,248,252,255,259,262,265,269,272,276,279,282,286,289,293,296,300,303,306,310,313,317,320,323,327,330,334,337,341,344,347,351,354,358,361,365,368,371,375,378,382,385,389,392,395,399,402,406,409,413,416,419,423,426,430,433,436,440,443,447,450,454,457,460,464,467,471,474,477,481,484,488,491,494,498,501,504,508,511,515,518,521,525,528,531,535,538,542,545,548,552,555,558,562,565,568,572,575,578,582,585,588,592,595,598,601,605,608,611,615,618,621,624,628,631,634,637,641,644,647,650,654,657,660,663,666,670,673,676,679,682,686,689,692,695,698,701,704,708,711,714,717,720,723,726,729,733,736,739,742,745,748,751,754,757,760,763,766,769,772,775,778,781,784,787,790,793,796,799,802,805,807,810,813,816,819,822,825,828,830,833,836,839,842,845,847,850,853,856,858,861,864,867,869,872,875,878,880,883,886,888,891,893,896,899,901,904,907,909,912,914,917,919,922,924,927,929,932,934,937,939,942,944,947,949,951,954,956,959,961,963,966,968,970,973,975,977,979,982,984,986,988,991,993,995,997,999,1001,1003,1006,1008,1010,1012,1014,1016,1018,1020,1022,1024,1026,1028,1030,1032,1034,1036,1038,1040,1042,1044,1045,1047,1049,1051,1053,1055,1056,1058,1060,1062,1063,1065,1067,1068,1070,1072,1073,1075,1077,1078,1080,1081,1083,1085,1086,1088,1089,1091,1092,1093,1095,1096,1098,1099,1101,1102,1103,1105,1106,1107,1109,1110,1111,1112,1114,1115,1116,1117,1118,1119,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1137,1138,1139,1140,1141,1141,1142,1143,1144,1144,1145,1146,1146,1147,1148,1148,1149,1149,1150,1151,1151,1152,1152,1153,1153,1153,1154,1154,1155,1155,1155,1156,1156,1156,1157,1157,1157,1157,1157,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1158,1157,1157,1157,1157,1156,1156,1156,1155,1155,1155,1154,1154,1153,1153,1153,1152,1152,1151,1150,1150,1149,1149,1148,1147,1147,1146,1145,1145,1144,1143,1142,1142,1141,1140,1139,1138,1137,1137,1136,1135,1134,1133,1132,1131,1130,1129,1127,1126,1125,1124,1123,1122,1121,1119,1118,1117,1115,1114,1113,1112,1110,1109,1107,1106,1104,1103,1102,1100,1099,1097,1095,1094,1092,1091,1089,1087,1086,1084,1082,1080,1079,1077,1075,1073,1071,1070,1068,1066,1064,1062,1060,1058,1056,1054,1052,1050,1048,1046,1043,1041,1039,1037,1035,1032,1030,1028,1026,1023,1021,1019,1016,1014,1011,1009,1007,1004,1002,999,997,994,991,989,986,984,981,978,976,973,970,967,965,962,959,956,953,950,948,945,942,939,936,933,930,927,924,921,917,914,911,908,905,902,898,895,892,889,885,882,879,875,872,869,865,862,858,855,851,848,844,841,837,834,830,826,823,819,815,812,808,804,800,797,793,789,785,781,777,773,770,766,762,758,754,750,746,742,738,733,729,725,721,717,713,708,704,700,696,691,687,683,679,674,670,665,661,657,652,648,643,639,634,630,625,621,616,611,607,602,597,593,588,583,579,574,569,564,560,555,550,545,540,535,530,525,521,516,511,506,501,496,491,485,480,475,470,465,460,455,450,444,439,434,429,424,418,413,408,402,397,392,386,381,376,370,365,359,354,348,343,337,332,326,321,315,310,304,298,293,287,282,276,270,264,259,253,247,242,236,230,224,218,213,207,201,195,189,183,177,171,166,160,154,148,142,136,130,124,118,112,105,99,93,87,81,75,69,63,57,50,44,38,32,26,19,13,7,1,-5,-11,-17,-24,-30,-36,-43,-49,-55,-62,-68,-74,-81,-87,-94,-100,-107,-113,-120,-126,-132,-139,-145,-152,-159,-165,-172,-178,-185,-191,-198,-204,-211,-218,-224,-231,-238,-244,-251,-257,-264,-271,-278,-284,-291,-298,-304,-311,-318,-325,-331,-338,-345,-352,-358,-365,-372,-379,-385,-392,-399,-406,-413,-420,-426,-433,-440,-447,-454,-461,-467,-474,-481,-488,-495,-502,-509,-516,-523,-529,-536,-543,-550,-557,-564,-571,-578,-585,-592,-599,-606,-613,-620,-627,-634,-641,-648,-655,-661,-668,-675,-682,-689,-696,-703,-710,-717,-724,-731,-738,-745,-752,-759,-766,-773,-780,-787,-794,-801,-808,-815,-822,-829,-836,-843,-850,-857,-864,-871,-878,-885,-893,-900,-907,-914,-921,-928,-935,-941,-948,-955,-962,-969,-976,-983,-990,-997,-1004,-1011,-1018,-1025,-1032,-1039,-1046,-1053,-1060,-1067,-1074,-1081,-1088,-1095,-1102,-1109,-1116,-1122,-1129,-1136,-1143,-1150,-1157,-1164,-1171,-1178,-1184,-1191,-1198,-1205,-1212,-1219,-1226,-1232,-1239,-1246,-1253,-1260,-1266,-1273,-1280,-1287,-1293,-1300,-1307,-1314,-1320,-1327,-1334,-1341,-1347,-1354,-1361,-1367,-1374,-1381,-1387,-1394,-1401,-1407,-1414,-1420,-1427,-1434,-1440,-1447,-1453,-1460,-1466,-1473,-1479,-1486,-1492,-1499,-1505,-1512,-1518,-1525,-1531,-1537,-1544,-1550,-1557,-1563,-1569,-1576,-1582,-1588,-1595,-1601,-1607,-1613,-1620,-1626,-1632,-1638,-1644,-1651,-1657,-1663,-1669,-1675,-1681,-1687,-1693,-1699,-1706,-1712,-1718,-1724,-1730,-1736,-1741,-1747,-1753,-1759,-1765,-1771,-1777,-1783,-1788,-1794,-1800,-1806,-1812,-1817,-1823,-1829,-1834,-1840,-1846,-1851,-1857,-1863,-1868,-1874,-1879,-1885,-1890,-1896,-1901,-1907,-1912,-1918,-1923,-1928,-1934,-1939,-1944,-1950,-1955,-1960,-1965,-1970,-1976,-1981,-1986,-1991,-1996,-2001,-2006,-2011,-2016,-2021,-2026,-2031,-2036,-2041,-2046,-2051,-2056,-2060,-2065,-2070,-2075,-2080,-2084,-2089,-2094,-2098,-2103,-2107,-2112,-2116,-2121,-2125,-2130,-2134,-2139,-2143,-2147,-2152,-2156,-2160,-2165,-2169,-2173,-2177,-2181,-2186,-2190,-2194,-2198,-2202,-2206,-2210,-2214,-2218,-2222,-2225,-2229,-2233,-2237,-2241,-2244,-2248,-2252,-2255,-2259,-2263,-2266,-2270,-2273,-2277,-2280,-2283,-2287,-2290,-2294,-2297,-2300,-2303,-2307,-2310,-2313,-2316,-2319,-2322,-2325,-2328,-2331,-2334,-2337,-2340,-2343,-2346,-2348,-2351,-2354,-2357,-2359,-2362,-2364,-2367,-2369,-2372,-2374,-2377,-2379,-2382,-2384,-2386,-2389,-2391,-2393,-2395,-2397,-2399,-2402,-2404,-2406,-2408,-2409,-2411,-2413,-2415,-2417,-2419,-2420,-2422,-2424,-2425,-2427,-2429,-2430,-2432,-2433,-2434,-2436,-2437,-2438,-2440,-2441,-2442,-2443,-2445,-2446,-2447,-2448,-2449,-2450,-2451,-2451,-2452,-2453,-2454,-2455,-2455,-2456,-2457,-2457,-2458,-2458,-2459,-2459,-2460,-2460,-2460,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2461,-2460,-2460,-2460,-2459,-2459,-2459,-2458,-2458,-2457,-2456,-2456,-2455,-2454,-2454,-2453,-2452,-2451,-2450,-2449,-2448,-2447,-2446,-2445,-2444,-2442,-2441,-2440,-2438,-2437,-2436,-2434,-2433,-2431,-2429,-2428,-2426,-2424,-2423,-2421,-2419,-2417,-2415,-2413,-2411,-2409,-2407,-2405,-2403,-2401,-2398,-2396,-2394,-2391,-2389,-2386,-2384,-2381,-2379,-2376,-2373,-2370,-2368,-2365,-2362,-2359,-2356,-2353,-2350,-2347,-2344,-2341,-2337,-2334,-2331,-2328,-2324,-2321,-2317,-2314,-2310,-2306,-2303,-2299,-2295,-2292,-2288,-2284,-2280,-2276,-2272,-2268,-2264,-2260,-2255,-2251,-2247,-2242,-2238,-2234,-2229,-2225,-2220,-2215,-2211,-2206,-2201,-2197,-2192,-2187,-2182,-2177,-2172,-2167,-2162,-2157,-2151,-2146,-2141,-2135,-2130,-2125,-2119,-2114,-2108,-2102,-2097,-2091,-2085,-2080,-2074,-2068,-2062,-2056,-2050,-2044,-2038,-2031,-2025,-2019,-2013,-2006,-2000,-1993,-1987,-1980,-1974,-1967,-1961,-1954,-1947,-1940,-1933,-1926,-1919,-1912,-1905,-1898,-1891,-1884,-1877,-1869,-1862,-1855,-1847,-1840,-1832,-1825,-1817,-1809,-1802,-1794,-1786,-1778,-1770,-1762,-1754,-1746,-1738,-1730,-1722,-1714,-1705,-1697,-1689,-1680,-1672,-1663,-1655,-1646,-1638,-1629,-1620,-1611,-1602,-1594,-1585,-1576,-1567,-1558,-1548,-1539,-1530,-1521,-1511,-1502,-1493,-1483,-1474,-1464,-1455,-1445,-1435,-1426,-1416,-1406,-1396,-1386,-1376,-1366,-1356,-1346,-1336,-1326,-1316,-1305,-1295,-1285,-1274,-1264,-1253,-1243,-1232,-1221,-1211,-1200,-1189,-1178,-1167,-1156,-1145,-1134,-1123,-1112,-1101,-1090,-1079,-1067,-1056,-1045,-1033,-1022,-1010,-999,-987,-975,-964,-952,-940,-928,-916,-904,-892,-880,-868,-856,-844,-832,-820,-807,-795,-783,-770,-758,-745,-733,-720,-707,-695,-682,-669,-656,-643,-630,-618,-605,-591,-578,-565,-552,-539,-526,-512,-499,-486,-472,-459,-445,-431,-418,-404,-391,-377,-363,-349,-335,-321,-307,-293,-279,-265,-251,-237,-223,-209,-194,-180,-166,-151,-137,-122,-108,-93,-78,-64,-49,-34,-19,-5,9,24,39,54,69,84,99,115,130,145,160,176,191,206,222,237,253,268,284,300,315,331,347,363,378,394,410,426,442,458,474,490,506,523,539,555,571,588,604,620,637,653,670,686,703,720,736,753,770,787,803,820,837,854,871,888,905,922,939,956,973,991,1008,1025,1043,1060,1077,1095,1112,1130,1147,1165,1182,1200,1217,1235,1253,1271,1288,1306,1324,1342,1360,1378,1396,1414,1432,1450,1468,1486,1504,1523,1541,1559,1577,1596,1614,1632,1651,1669,1688,1706,1725,1743,1762,1781,1799,1818,1837,1856,1874,1893,1912,1931,1950,1969,1988,2007,2026,2045,2064,2083,2102,2121,2140,2159,2179,2198,2217,2237,2256,2275,2295,2314,2334,2353,2372,2392,2412,2431,2451,2470,2490,2510,2529,2549,2569,2589,2608,2628,2648,2668,2688,2708,2728,2748,2768,2788,2808,2828,2848,2868,2888,2908,2928,2948,2968,2989,3009,3029,3049,3070,3090,3110,3131,3151,3172,3192,3212,3233,3253,3274,3294,3315,3335,3356,3377,3397,3418,3438,3459,3480,3500,3521,3542,3563,3583,3604,3625,3646,3666,3687,3708,3729,3750,3771,3792,3813,3834,3854,3875,3896,3917,3938,3959,3980,4001,4023,4044,4065,4086,4107,4128,4149,4170,4191,4213,4234,4255,4276,4297,4319,4340,4361,4382,4404,4425,4446,4467,4489,4510,4531,4553,4574,4595,4617,4638,4659,4681,4702,4723,4745,4766,4788,4809,4831,4852,4873,4895,4916,4938,4959,4981,5002,5023,5045,5066,5088,5109,5131,5152,5174,5195,5217,5238,5260,5281,5303,5324,5346,5367,5389,5410,5432,5453,5475,5496,5518,5540,5561,5583,5604,5626,5647,5669,5690,5712,5733,5755,5776,5798,5819,5841,5862,5884,5905,5927,5948,5970,5991,6013,6034,6055,6077,6098,6120,6141,6163,6184,6206,6227,6248,6270,6291,6313,6334,6355,6377,6398,6420,6441,6462,6484,6505,6526,6548,6569,6590,6612,6633,6654,6675,6697,6718,6739,6760,6781,6803,6824,6845,6866,6887,6908,6930,6951,6972,6993,7014,7035,7056,7077,7098,7119,7140,7161,7182,7203,7224,7245,7266,7287,7308,7329,7349,7370,7391,7412,7433,7453,7474,7495,7516,7536,7557,7578,7598,7619,7640,7660,7681,7701,7722,7742,7763,7783,7804,7824,7845,7865,7885,7906,7926,7946,7967,7987,8007,8027,8048,8068,8088,8108,8128,8148,8168,8188,8209,8229,8248,8268,8288,8308,8328,8348,8368,8388,8407,8427,8447,8467,8486,8506,8526,8545,8565,8584,8604,8623,8643,8662,8682,8701,8720,8740,8759,8778,8797,8817,8836,8855,8874,8893,8912,8931,8950,8969,8988,9007,9026,9045,9063,9082,9101,9120,9138,9157,9176,9194,9213,9231,9250,9268,9287,9305,9323,9342,9360,9378,9396,9415,9433,9451,9469,9487,9505,9523,9541,9559,9577,9595,9612,9630,9648,9665,9683,9701,9718,9736,9753,9771,9788,9805,9823,9840,9857,9875,9892,9909,9926,9943,9960,9977,9994,10011,10028,10045,10061,10078,10095,10111,10128,10145,10161,10178,10194,10211,10227,10243,10260,10276,10292,10308,10324,10340,10356,10372,10388,10404,10420,10436,10451,10467,10483,10498,10514,10530,10545,10560,10576,10591,10607,10622,10637,10652,10667,10682,10697,10712,10727,10742,10757,10772,10786,10801,10816,10830,10845,10859,10874,10888,10903,10917,10931,10945,10960,10974,10988,11002,11016,11030,11043,11057,11071,11085,11098,11112,11126,11139,11152,11166,11179,11193,11206,11219,11232,11245,11258,11271,11284,11297,11310,11323,11335,11348,11361,11373,11386,11398,11411,11423,11435,11447,11460,11472,11484,11496,11508,11520,11532,11543,11555,11567,11578,11590,11601,11613,11624,11636,11647,11658,11669,11681,11692,11703,11714,11725,11735,11746,11757,11768,11778,11789,11799,11810,11820,11830,11841,11851,11861,11871,11881,11891,11901,11911,11921,11931,11940,11950,11959,11969,11978,11988,11997,12006,12016,12025,12034,12043,12052,12061,12070,12079,12087,12096,12105,12113,12122,12130,12138,12147,12155,12163,12171,12179,12187,12195,12203,12211,12219,12226,12234,12242,12249,12257,12264,12271,12279,12286,12293,12300,12307,12314,12321,12328,12334,12341,12348,12354,12361,12367,12374,12380,12386,12393,12399,12405,12411,12417,12423,12428,12434,12440,12445,12451,12457,12462,12467,12473,12478,12483,12488,12493,12498,12503,12508,12513,12518,12522,12527,12531,12536,12540,12545,12549,12553,12557,12561,12565,12569,12573,12577,12581,12584,12588,12592,12595,12598,12602,12605,12608,12611,12615,12618,12621,12624,12626,12629,12632,12634,12637,12640,12642,12644,12647,12649,12651,12653,12655,12657,12659,12661,12663,12665,12666,12668,12669,12671,12672,12673,12675,12676,12677,12678,12679,12680,12681,12682,12682,12683,12684,12684,12685,12685,12685,12686,12686,12686,12686,12686,12686,12686,12686,12685,12685,12685,12684,12684,12683,12682,12682,12681,12680,12679,12678,12677,12676,12675,12673,12672,12671,12669,12668,12666,12665,12663,12661,12659,12657,12655,12653,12651,12649,12647,12644,12642,12640,12637,12634,12632,12629,12626,12624,12621,12618,12615,12611,12608,12605,12602,12598,12595,12592,12588,12584,12581,12577,12573,12569,12565,12561,12557,12553,12549,12545,12540,12536,12531,12527,12522,12518,12513,12508,12503,12498,12493,12488,12483,12478,12473,12467,12462,12457,12451,12445,12440,12434,12428,12423,12417,12411,12405,12399,12393,12386,12380,12374,12367,12361,12354,12348,12341,12334,12328,12321,12314,12307,12300,12293,12286,12279,12271,12264,12257,12249,12242,12234,12226,12219,12211,12203,12195,12187,12179,12171,12163,12155,12147,12138,12130,12122,12113,12105,12096,12087,12079,12070,12061,12052,12043,12034,12025,12016,12006,11997,11988,11978,11969,11959,11950,11940,11931,11921,11911,11901,11891,11881,11871,11861,11851,11841,11830,11820,11810,11799,11789,11778,11768,11757,11746,11735,11725,11714,11703,11692,11681,11669,11658,11647,11636,11624,11613,11601,11590,11578,11567,11555,11543,11532,11520,11508,11496,11484,11472,11460,11447,11435,11423,11411,11398,11386,11373,11361,11348,11335,11323,11310,11297,11284,11271,11258,11245,11232,11219,11206,11193,11179,11166,11152,11139,11126,11112,11098,11085,11071,11057,11043,11030,11016,11002,10988,10974,10960,10945,10931,10917,10903,10888,10874,10859,10845,10830,10816,10801,10786,10772,10757,10742,10727,10712,10697,10682,10667,10652,10637,10622,10607,10591,10576,10560,10545,10530,10514,10498,10483,10467,10451,10436,10420,10404,10388,10372,10356,10340,10324,10308,10292,10276,10260,10243,10227,10211,10194,10178,10161,10145,10128,10111,10095,10078,10061,10045,10028,10011,9994,9977,9960,9943,9926,9909,9892,9875,9857,9840,9823,9805,9788,9771,9753,9736,9718,9701,9683,9665,9648,9630,9612,9595,9577,9559,9541,9523,9505,9487,9469,9451,9433,9415,9396,9378,9360,9342,9323,9305,9287,9268,9250,9231,9213,9194,9176,9157,9138,9120,9101,9082,9063,9045,9026,9007,8988,8969,8950,8931,8912,8893,8874,8855,8836,8817,8797,8778,8759,8740,8720,8701,8682,8662,8643,8623,8604,8584,8565,8545,8526,8506,8486,8467,8447,8427,8407,8388,8368,8348,8328,8308,8288,8268,8248,8229,8209,8188,8168,8148,8128,8108,8088,8068,8048,8027,8007,7987,7967,7946,7926,7906,7885,7865,7845,7824,7804,7783,7763,7742,7722,7701,7681,7660,7640,7619,7598,7578,7557,7536,7516,7495,7474,7453,7433,7412,7391,7370,7349,7329,7308,7287,7266,7245,7224,7203,7182,7161,7140,7119,7098,7077,7056,7035,7014,6993,6972,6951,6930,6908,6887,6866,6845,6824,6803,6781,6760,6739,6718,6697,6675,6654,6633,6612,6590,6569,6548,6526,6505,6484,6462,6441,6420,6398,6377,6355,6334,6313,6291,6270,6248,6227,6206,6184,6163,6141,6120,6098,6077,6055,6034,6013,5991,5970,5948,5927,5905,5884,5862,5841,5819,5798,5776,5755,5733,5712,5690,5669,5647,5626,5604,5583,5561,5540,5518,5496,5475,5453,5432,5410,5389,5367,5346,5324,5303,5281,5260,5238,5217,5195,5174,5152,5131,5109,5088,5066,5045,5023,5002,4981,4959,4938,4916,4895,4873,4852,4831,4809,4788,4766,4745,4723,4702,4681,4659,4638,4617,4595,