From 2ddce9700691a5efb47365954dc7228005042501 Mon Sep 17 00:00:00 2001 From: crc Date: Fri, 20 Oct 2017 13:30:31 +0000 Subject: [PATCH] add s:const to stdlib FossilOrigin-Name: 87ce2066d166476f2739747e97d4daa070b674173433fbf912cc6fba94afcbdd --- Words.txt | 1 + doc/Glossary.txt | 12 ++++++++++++ interfaces/image.c | 4 ++-- literate/RetroForth.md | 4 ++++ literate/Rx.md | 4 ++-- ngaImage | Bin 37404 -> 37500 bytes 6 files changed, 21 insertions(+), 4 deletions(-) diff --git a/Words.txt b/Words.txt index f27dccb..c859982 100644 --- a/Words.txt +++ b/Words.txt @@ -349,6 +349,7 @@ s: s:append s:case s:chop + s:const s:contains-char? s:contains-string? s:copy diff --git a/doc/Glossary.txt b/doc/Glossary.txt index 1f452ea..51e058a 100644 --- a/doc/Glossary.txt +++ b/doc/Glossary.txt @@ -2389,6 +2389,18 @@ Example: -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +s:const + + ss- + +Create a string constant. + +Example: + + 'Test_String 'HELLO s:const + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- + s:evaluate s-? diff --git a/interfaces/image.c b/interfaces/image.c index 220efad..cc0f340 100644 --- a/interfaces/image.c +++ b/interfaces/image.c @@ -1,3 +1,3 @@ #include -int32_t ngaImageCells = 10434; -int32_t ngaImage[] = { 1793,-1,10364,10433,201710,0,10,1,10,2,10,3,10,4,10,5,10,6,10,7,10,8,10,9,10,10,10,11,10,12,10,13,10,14,10,15,10,16,10,17,10,18,10,19,10,20,10,21,10,22,10,23,10,24,10,25,10,26,10,2049,10,67502597,10,2049,61,2049,61,10,68223234,1,2575,85000450,1,656912,2049,68,25,459011,74,524546,74,302256641,1,10,168756239,17043713,1,1,2577,134284549,63,2049,84,85263883,2049,85,302056966,1,25,1793,89,33620739,0,10,2049,63,2049,79,524548,79,590092,101,25,524546,79,134284289,-1,89,100860677,10,3201,3215,268505089,121,120,135205121,121,10,101384453,0,9,10,134287105,3,71,659457,3,459023,132,2049,68,25,2049,132,1793,139,2049,139,117506307,0,132,0,524545,25,137,168820993,0,151,1642241,151,134283523,7,137,1793,132,7,524545,59,137,1793,132,16846593,151,166,165,1793,122,16846593,151,137,165,1793,122,7,10,659713,1,659713,2,659713,3,17108737,3,2,524559,132,2049,132,2049,132,2049,146,168820998,2,3185,1025,167841793,204,5,17826049,0,204,2,15,25,524546,189,134287105,205,104,2305,206,459023,214,134287361,205,209,659201,204,2049,68,25,84152833,48,286458116,10,459014,229,184618754,45,25,16974851,-1,168886532,1,134284289,1,238,134284289,0,229,660227,32,0,0,112,114,101,102,105,120,58,125,0,285278479,255,7,2576,524546,79,1641217,1,167838467,252,2049,268,2049,264,524545,255,224,17826050,254,0,2572,2563,2049,245,1793,158,459023,158,17760513,171,3,191,8,251727617,3,2,2049,185,268501264,-1,151,10,2049,224,2049,185,459023,158,285282049,3,3,16846593,151,-1,151,134283536,7,137,16846593,3,0,132,8,524545,19,137,659201,3,524545,25,137,17043201,3,7,2049,137,2049,132,268505092,151,1642241,151,656131,659201,3,524545,7,137,2049,132,459009,19,137,1642241,151,117506307,55,137,1642241,151,117506307,15,137,1642241,151,117506307,17,137,1793,5,524546,185,134284303,187,1807,1025,1642241,254,285282049,379,1,459012,374,117509889,204,374,134287105,379,224,16845825,0,387,372,1793,122,17826050,379,274,8,117506305,380,390,122,0,9,177,100,117,112,0,407,11,177,100,114,111,112,0,414,13,177,115,119,97,112,0,422,21,177,99,97,108,108,0,430,27,177,101,113,63,0,438,29,177,45,101,113,63,0,445,31,177,108,116,63,0,453,33,177,103,116,63,0,460,35,177,102,101,116,99,104,0,467,37,177,115,116,111,114,101,0,476,39,177,43,0,485,41,177,45,0,490,43,177,42,0,495,45,177,47,109,111,100,0,500,47,177,97,110,100,0,508,49,177,111,114,0,515,51,177,120,111,114,0,521,53,177,115,104,105,102,116,0,528,362,183,112,117,115,104,0,537,367,183,112,111,112,0,545,357,183,48,59,0,552,68,171,102,101,116,99,104,45,110,101,120,116,0,558,71,171,115,116,111,114,101,45,110,101,120,116,0,572,245,171,115,58,116,111,45,110,117,109,98,101,114,0,586,104,171,115,58,101,113,63,0,601,79,171,115,58,108,101,110,103,116,104,0,610,122,171,99,104,111,111,115,101,0,622,130,171,105,102,0,632,128,171,45,105,102,0,638,285,183,112,114,101,102,105,120,58,40,0,645,151,158,67,111,109,112,105,108,101,114,0,657,3,158,72,101,97,112,0,669,132,171,44,0,677,146,171,115,44,0,682,152,183,59,0,688,312,183,91,0,693,332,183,93,0,698,2,158,68,105,99,116,105,111,110,97,114,121,0,703,184,171,100,58,108,105,110,107,0,717,185,171,100,58,120,116,0,727,187,171,100,58,99,108,97,115,115,0,735,189,171,100,58,110,97,109,101,0,746,171,171,99,108,97,115,115,58,119,111,114,100,0,756,183,171,99,108,97,115,115,58,109,97,99,114,111,0,770,158,171,99,108,97,115,115,58,100,97,116,97,0,785,191,171,100,58,97,100,100,45,104,101,97,100,101,114,0,799,286,183,112,114,101,102,105,120,58,35,0,815,292,183,112,114,101,102,105,120,58,58,0,827,306,183,112,114,101,102,105,120,58,38,0,839,290,183,112,114,101,102,105,120,58,36,0,851,347,183,114,101,112,101,97,116,0,863,349,183,97,103,97,105,110,0,873,399,171,105,110,116,101,114,112,114,101,116,0,882,224,171,100,58,108,111,111,107,117,112,0,895,177,171,99,108,97,115,115,58,112,114,105,109,105,116,105,118,101,0,907,4,158,86,101,114,115,105,111,110,0,926,372,171,101,114,114,58,110,111,116,102,111,117,110,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,125,125,0,102,101,114,58,112,114,101,115,101,114,118,101,0,105,110,101,0,63,0,63,64,91,92,93,94,96,123,124,125,126,0,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,937,1543,171,69,79,77,0,1,-3,15,10,1536,1557,171,100,58,108,97,115,116,0,1,2,15,10,1547,1575,171,100,58,108,97,115,116,60,120,116,62,0,2049,1557,2049,185,15,10,1561,1598,171,100,58,108,97,115,116,60,99,108,97,115,115,62,0,2049,1557,2049,187,15,10,1581,1620,171,100,58,108,97,115,116,60,110,97,109,101,62,0,2049,1557,2049,189,10,1604,1636,171,114,101,99,108,97,115,115,0,2049,1557,2049,187,16,10,1625,1655,171,105,109,109,101,100,105,97,116,101,0,1,183,2049,1636,10,1642,1668,171,100,97,116,97,0,1,158,2049,1636,10,1660,1682,171,100,101,112,116,104,0,1,-1,15,10,1673,1698,183,112,114,101,102,105,120,58,64,0,2049,224,2049,185,15,2049,158,1,35,2049,171,10,1686,1722,183,112,114,101,102,105,120,58,33,0,2049,224,2049,185,15,2049,158,1,37,2049,171,10,1710,1749,171,99,111,109,112,105,108,101,58,108,105,116,0,1,1,2049,132,2049,132,10,1734,1772,171,99,111,109,112,105,108,101,58,106,117,109,112,0,1,1793,2049,132,2049,132,10,1756,1795,171,99,111,109,112,105,108,101,58,99,97,108,108,0,1,2049,2049,132,2049,132,10,1779,1817,171,99,111,109,112,105,108,101,58,114,101,116,0,1,10,2049,132,10,1802,1836,171,99,111,109,112,105,108,105,110,103,63,0,1,151,2049,35,10,1822,1853,183,112,114,101,102,105,120,58,96,0,2049,1836,1,1863,7,2049,245,2049,132,10,1,1858,1,1870,7,3,10,1,1868,2049,122,10,1841,1883,171,104,101,114,101,0,1,3,2049,35,10,1875,1900,171,100,58,99,114,101,97,116,101,0,1,158,1,0,2049,191,2049,1883,2049,1557,2049,185,16,10,1888,1921,171,118,97,114,0,2049,1900,1,0,2049,132,10,1914,1938,171,118,97,114,60,110,62,0,2049,1900,2049,132,10,1928,1952,171,99,111,110,115,116,0,2049,1900,2049,1557,2049,185,16,10,1943,1968,171,116,117,99,107,0,2,5,4,6,10,1960,1981,171,111,118,101,114,0,5,2,6,4,10,1973,1998,171,100,117,112,45,112,97,105,114,0,2049,1981,2049,1981,10,1986,2010,171,110,105,112,0,4,3,10,2003,2026,171,100,114,111,112,45,112,97,105,114,0,3,3,10,2013,2037,171,63,100,117,112,0,2,25,10,2029,2047,171,100,105,112,0,4,5,8,6,10,2040,2059,171,115,105,112,0,5,2,6,4,1,21,2049,2047,10,2052,2074,171,98,105,0,1,2059,2049,2047,8,10,2068,2087,171,98,105,42,0,1,2047,2049,2047,8,10,2080,2100,171,98,105,64,0,2,2049,2087,10,2093,2111,171,116,114,105,0,1,2121,7,1,2059,2049,2047,2049,2059,10,1,2114,2049,2047,8,10,2104,2135,171,116,114,105,42,0,1,2154,7,1,2147,7,4,1,2047,2049,2047,10,1,2141,2049,2047,2049,2047,10,1,2138,2049,2047,8,10,2127,2168,171,116,114,105,64,0,2,2,2049,2135,10,2160,2182,171,119,104,105,108,101,0,1,2195,7,2,2049,2047,4,25,3,1,2185,7,10,1,2185,8,3,10,2173,2209,171,117,110,116,105,108,0,1,2225,7,2,2049,2047,4,1,-1,23,25,3,1,2212,7,10,1,2212,8,3,10,2200,2239,171,116,105,109,101,115,0,4,1,2257,7,25,1,1,18,5,1,21,2049,2059,6,1,2243,7,10,1,2243,8,3,10,2230,2270,171,84,82,85,69,0,1,-1,10,2262,2282,171,70,65,76,83,69,0,1,0,10,2273,2294,171,108,116,101,113,63,0,2049,1998,11,1,2302,7,13,10,1,2300,2049,2047,22,10,2285,2317,171,103,116,101,113,63,0,2049,1998,11,1,2325,7,14,10,1,2323,2049,2047,22,10,2308,2340,171,110,58,77,65,88,0,1,2147483647,10,2331,2352,171,110,58,77,73,78,0,1,1213605888,10,2343,2366,171,110,58,122,101,114,111,63,0,1,0,11,10,2355,2382,171,110,58,45,122,101,114,111,63,0,1,0,12,10,2370,2401,171,110,58,110,101,103,97,116,105,118,101,63,0,1,0,13,10,2386,2420,171,110,58,112,111,115,105,116,105,118,101,63,0,1,-1,14,10,2405,2448,171,110,58,115,116,114,105,99,116,108,121,45,112,111,115,105,116,105,118,101,63,0,1,0,14,10,2424,2463,171,110,58,101,118,101,110,63,0,1,2,20,3,2049,2366,10,2452,2480,171,110,58,111,100,100,63,0,1,2,20,3,2049,2382,10,2470,2495,171,99,97,115,101,0,1,2502,7,2049,1981,11,10,1,2498,2049,2047,4,1,2516,7,2049,2010,8,2049,2270,10,1,2510,1,2525,7,3,2049,2282,10,1,2521,2049,122,25,6,3,3,10,2487,2544,171,115,58,99,97,115,101,0,1,2552,7,2049,1981,2049,104,10,1,2547,2049,2047,4,1,2566,7,2049,2010,8,2049,2270,10,1,2560,1,2575,7,3,2049,2282,10,1,2571,2049,122,25,6,3,3,10,2534,2591,171,114,111,116,0,1,2596,7,4,10,1,2594,2049,2047,4,10,2584,2610,171,116,111,114,115,0,6,6,2,5,4,5,10,2602,2622,171,47,0,20,4,3,10,2617,2633,171,109,111,100,0,20,3,10,2626,2643,171,110,111,116,0,1,-1,23,10,2636,2656,171,110,58,112,111,119,0,1,1,4,1,2666,7,2049,1981,19,10,1,2662,2049,2239,2049,2010,10,2647,2685,171,110,58,110,101,103,97,116,101,0,1,-1,19,10,2673,2701,171,110,58,115,113,117,97,114,101,0,2,19,10,2689,2714,171,110,58,115,113,114,116,0,1,1,1,2736,7,2049,1998,2049,2622,2049,1981,18,1,2,2049,2622,25,17,1,2719,7,10,1,2719,8,2049,2010,10,2704,2751,171,110,58,109,105,110,0,2049,1998,13,1,2759,7,3,10,1,2757,1,2767,7,2049,2010,10,1,2764,2049,122,10,2742,2781,171,110,58,109,97,120,0,2049,1998,14,1,2789,7,3,10,1,2787,1,2797,7,2049,2010,10,1,2794,2049,122,10,2772,2811,171,110,58,97,98,115,0,2,2049,2685,2049,2781,10,2802,2828,171,110,58,108,105,109,105,116,0,4,5,2049,2751,6,2049,2781,10,2817,2845,171,110,58,105,110,99,0,1,1,17,10,2836,2858,171,110,58,100,101,99,0,1,1,18,10,2849,2876,171,110,58,98,101,116,119,101,101,110,63,0,2049,2591,1,2888,7,2049,2591,2049,2591,2049,2828,10,1,2881,2049,2059,11,10,2862,2906,171,118,58,105,110,99,45,98,121,0,1,2912,7,15,17,10,1,2909,2049,2059,16,10,2894,2930,171,118,58,100,101,99,45,98,121,0,1,2937,7,15,4,18,10,1,2933,2049,2059,16,10,2918,2952,171,118,58,105,110,99,0,1,1,4,2049,2906,10,2943,2967,171,118,58,100,101,99,0,1,1,4,2049,2930,10,2958,2984,171,118,58,108,105,109,105,116,0,5,5,2,15,6,6,2049,2828,4,16,10,2973,3003,171,118,58,111,110,0,2049,2270,4,16,10,2995,3017,171,118,58,111,102,102,0,2049,2282,4,16,10,3008,3036,171,118,58,112,114,101,115,101,114,118,101,0,4,2,15,1,3052,7,1,3047,7,8,10,1,3045,2049,2047,10,1,3042,2049,2047,4,16,10,3022,3068,171,97,108,108,111,116,0,1,3,2049,2906,10,3059,3091,171,118,58,117,112,100,97,116,101,45,117,115,105,110,103,0,4,1,3099,7,15,4,8,10,1,3095,2049,2059,16,10,3073,3113,171,99,111,112,121,0,1,3123,7,1,68,2049,2047,2049,71,10,1,3116,2049,2239,3,3,10,3105,3143,171,83,99,111,112,101,76,105,115,116,0,10267,10355,10,3130,3152,171,123,123,0,2049,1557,2,1,3143,2049,71,16,10,3146,3177,171,45,45,45,114,101,118,101,97,108,45,45,45,0,2049,1557,1,3143,2049,2845,16,10,3161,3191,171,125,125,0,1,3143,2049,68,4,15,11,1,3210,7,1,3143,2049,35,1,2,2049,37,10,1,3201,1,3244,7,1,3143,2049,35,1,3239,7,1,2,15,2,15,1,3143,2049,2845,15,12,25,3,1,3224,7,10,1,3222,8,16,10,1,3215,2049,122,10,3185,3259,158,66,117,102,102,101,114,0,0,10,3249,3268,158,80,116,114,0,0,10,3261,3283,171,116,101,114,109,105,110,97,116,101,0,1,0,1,3268,2049,35,16,10,3185,3307,171,98,117,102,102,101,114,58,115,116,97,114,116,0,1,3259,2049,35,10,3291,3326,171,98,117,102,102,101,114,58,101,110,100,0,1,3268,2049,35,10,3312,3345,171,98,117,102,102,101,114,58,97,100,100,0,2049,3326,16,1,3268,2049,2952,2049,3283,10,3331,3369,171,98,117,102,102,101,114,58,103,101,116,0,1,3268,2049,2967,2049,3326,15,2049,3283,10,3355,3395,171,98,117,102,102,101,114,58,101,109,112,116,121,0,2049,3307,1,3268,2049,37,2049,3283,10,3379,3419,171,98,117,102,102,101,114,58,115,105,122,101,0,2049,3326,2049,3307,18,10,3404,3439,171,98,117,102,102,101,114,58,115,101,116,0,1,3259,2049,37,2049,3395,10,3425,3465,171,98,117,102,102,101,114,58,112,114,101,115,101,114,118,101,0,1,3259,2049,35,1,3268,2049,35,1,3490,7,1,3481,7,8,10,1,3479,2049,2047,1,3259,2049,37,10,1,3476,2049,2047,1,3268,2049,37,10,3446,3514,158,84,101,109,112,83,116,114,105,110,103,115,0,12,3499,3532,158,84,101,109,112,83,116,114,105,110,103,77,97,120,0,512,3515,3544,171,83,84,82,73,78,71,83,0,2049,1543,1,3514,2049,35,1,3532,2049,35,19,18,10,3533,3571,171,77,65,88,45,76,69,78,71,84,72,0,1,512,10,3557,3587,158,115,58,67,117,114,114,101,110,116,0,3,10,3574,3602,171,115,58,112,111,105,110,116,101,114,0,1,3587,2049,35,2049,3571,19,2049,3544,17,10,3589,3623,171,115,58,110,101,120,116,0,1,3587,2049,2952,1,3587,2049,35,1,3514,2049,35,11,1,3646,7,1,0,1,3587,2049,37,10,1,3639,2049,130,10,3533,3661,171,115,58,116,101,109,112,0,2,2049,79,2049,2845,2049,3602,4,2049,3113,2049,3602,2049,3623,10,3651,3687,171,115,58,101,109,112,116,121,0,2049,3602,2049,3623,10,3676,3702,171,115,58,115,107,105,112,0,6,1,3711,7,2049,68,2049,2382,10,1,3706,2049,2182,2049,2858,5,10,3692,3729,171,115,58,107,101,101,112,0,2049,1836,1,3739,7,1,3702,2049,171,10,1,3734,2049,130,2049,1883,1,3751,7,2049,146,10,1,3748,2049,2047,2049,158,10,3719,3770,183,112,114,101,102,105,120,58,39,0,2049,1836,1,3778,7,2049,3729,10,1,3775,1,3786,7,2049,3661,10,1,3783,2049,122,10,3758,3801,171,115,58,99,104,111,112,0,2049,3661,2,2049,79,2049,1981,17,2049,2858,1,0,4,16,10,3791,3829,171,115,58,114,101,118,101,114,115,101,0,1,3874,7,2,2049,3661,2049,3439,1,79,1,3849,7,2,2049,79,17,2049,2858,10,1,3842,2049,2074,4,1,3864,7,2,15,2049,3345,2049,2858,10,1,3857,2049,2239,3,2049,3307,2049,3661,10,1,3832,2049,3465,10,3816,3894,171,115,58,116,114,105,109,45,108,101,102,116,0,2049,3661,1,3922,7,2049,68,1,3908,7,1,32,11,10,1,3904,1,3916,7,2049,2366,10,1,3913,2049,2074,21,10,1,3899,2049,2182,2049,2858,10,3879,3945,171,115,58,116,114,105,109,45,114,105,103,104,116,0,2049,3661,2049,3829,2049,3894,2049,3829,10,3929,3964,171,115,58,116,114,105,109,0,2049,3945,2049,3894,10,3954,3982,171,115,58,112,114,101,112,101,110,100,0,2049,3661,1,4008,7,2,2049,79,17,1,4000,7,2,2049,79,2049,2845,10,1,3994,2049,2047,4,2049,3113,10,1,3987,2049,2059,10,3969,4025,171,115,58,97,112,112,101,110,100,0,4,2049,3982,10,4013,4043,171,115,58,102,111,114,45,101,97,99,104,0,1,4093,7,2049,1981,15,25,3,2049,1998,1,4075,7,1,4070,7,1,4064,7,15,10,1,4062,2049,2047,8,10,1,4059,2049,2047,10,1,4056,2049,2047,1,4085,7,2049,2845,10,1,4082,2049,2047,1,4046,7,10,1,4046,8,2049,2026,10,4029,4111,171,115,58,102,105,108,116,101,114,0,1,4152,7,2049,3687,2049,3439,4,1,4144,7,2049,1998,4,8,1,4132,7,2049,3345,10,1,4129,1,4139,7,3,10,1,4137,2049,122,10,1,4122,2049,4043,3,2049,3307,10,1,4114,2049,3465,10,4099,4166,171,115,58,109,97,112,0,1,4191,7,2049,3687,2049,3439,4,1,4183,7,2049,1981,8,2049,3345,10,1,4177,2049,4043,3,2049,3307,10,1,4169,2049,3465,10,4157,4208,171,115,58,115,117,98,115,116,114,0,1,4215,7,17,2049,3687,10,1,4211,2049,2047,1,4235,7,2049,1981,1,4230,7,2049,3113,10,1,4227,2049,2047,10,1,4222,2049,2059,2049,1981,1,4250,7,17,1,0,4,16,10,1,4244,2049,2047,10,4196,4266,171,115,58,114,105,103,104,116,0,2049,1981,2049,79,2049,1981,18,4,2049,4208,10,4255,4287,171,115,58,108,101,102,116,0,1,0,4,2049,4208,10,4277,4303,171,115,58,104,97,115,104,0,1,5381,4,1,4315,7,4,1,33,19,17,10,1,4309,2049,4043,10,4293,4330,171,115,58,99,111,112,121,0,2049,1981,2049,79,2049,2845,2049,3113,10,4320,4351,171,115,58,68,73,71,73,84,83,0,2049,3702,48,49,50,51,52,53,54,55,56,57,0,1,4353,10,4339,4388,171,115,58,65,83,67,73,73,45,76,79,87,69,82,67,65,83,69,0,2049,3702,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,0,1,4390,10,4367,4441,171,115,58,65,83,67,73,73,45,85,80,80,69,82,67,65,83,69,0,2049,3702,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,0,1,4443,10,4420,4492,171,115,58,65,83,67,73,73,45,76,69,84,84,69,82,83,0,2049,3702,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,0,1,4494,10,4473,4567,171,115,58,80,85,78,67,84,85,65,84,73,79,78,0,2049,3702,95,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,58,59,60,61,62,63,64,91,92,93,94,96,123,124,125,126,0,1,4569,1,95,2049,1981,16,10,4550,4626,158,115,58,87,72,73,84,69,83,80,65,67,69,0,9,10,13,0,4610,4643,171,65,83,67,73,73,58,78,85,76,0,1,0,10,4630,4659,171,65,83,67,73,73,58,83,79,72,0,1,1,10,4646,4675,171,65,83,67,73,73,58,83,84,88,0,1,2,10,4662,4691,171,65,83,67,73,73,58,69,84,88,0,1,3,10,4678,4707,171,65,83,67,73,73,58,69,79,84,0,1,4,10,4694,4723,171,65,83,67,73,73,58,69,78,81,0,1,5,10,4710,4739,171,65,83,67,73,73,58,65,67,75,0,1,6,10,4726,4755,171,65,83,67,73,73,58,66,69,76,0,1,7,10,4742,4770,171,65,83,67,73,73,58,66,83,0,1,8,10,4758,4785,171,65,83,67,73,73,58,72,84,0,1,9,10,4773,4800,171,65,83,67,73,73,58,76,70,0,1,10,10,4788,4815,171,65,83,67,73,73,58,86,84,0,1,11,10,4803,4830,171,65,83,67,73,73,58,70,70,0,1,12,10,4818,4845,171,65,83,67,73,73,58,67,82,0,1,13,10,4833,4860,171,65,83,67,73,73,58,83,79,0,1,14,10,4848,4875,171,65,83,67,73,73,58,83,73,0,1,15,10,4863,4891,171,65,83,67,73,73,58,68,76,69,0,1,16,10,4878,4907,171,65,83,67,73,73,58,68,67,49,0,1,17,10,4894,4923,171,65,83,67,73,73,58,68,67,50,0,1,18,10,4910,4939,171,65,83,67,73,73,58,68,67,51,0,1,19,10,4926,4955,171,65,83,67,73,73,58,68,67,52,0,1,20,10,4942,4971,171,65,83,67,73,73,58,78,65,75,0,1,21,10,4958,4987,171,65,83,67,73,73,58,83,89,78,0,1,22,10,4974,5003,171,65,83,67,73,73,58,69,84,66,0,1,23,10,4990,5019,171,65,83,67,73,73,58,67,65,78,0,1,24,10,5006,5034,171,65,83,67,73,73,58,69,77,0,1,25,10,5022,5050,171,65,83,67,73,73,58,83,85,66,0,1,26,10,5037,5066,171,65,83,67,73,73,58,69,83,67,0,1,27,10,5053,5081,171,65,83,67,73,73,58,70,83,0,1,28,10,5069,5096,171,65,83,67,73,73,58,71,83,0,1,29,10,5084,5111,171,65,83,67,73,73,58,82,83,0,1,30,10,5099,5126,171,65,83,67,73,73,58,85,83,0,1,31,10,5114,5144,171,65,83,67,73,73,58,83,80,65,67,69,0,1,32,10,5129,5160,171,65,83,67,73,73,58,68,69,76,0,1,127,10,5147,5176,171,99,58,108,101,116,116,101,114,63,0,1,65,1,122,2049,2876,10,5163,5199,171,99,58,108,111,119,101,114,99,97,115,101,63,0,1,97,1,122,2049,2876,10,5183,5222,171,99,58,117,112,112,101,114,99,97,115,101,63,0,1,65,1,90,2049,2876,10,5206,5241,171,99,58,100,105,103,105,116,63,0,1,48,1,57,2049,2876,10,5229,5265,171,99,58,119,104,105,116,101,115,112,97,99,101,63,0,2049,5144,1,5273,7,2049,2270,10,1,5270,2049,2495,2049,4785,1,5285,7,2049,2270,10,1,5282,2049,2495,2049,4800,1,5297,7,2049,2270,10,1,5294,2049,2495,2049,4845,1,5309,7,2049,2270,10,1,5306,2049,2495,3,2049,2282,10,5248,5331,171,99,58,118,105,115,105,98,108,101,63,0,1,31,1,126,2049,2876,10,5317,5350,171,99,58,118,111,119,101,108,63,0,1,97,1,5358,7,2049,2270,10,1,5355,2049,2495,1,101,1,5370,7,2049,2270,10,1,5367,2049,2495,1,105,1,5382,7,2049,2270,10,1,5379,2049,2495,1,111,1,5394,7,2049,2270,10,1,5391,2049,2495,1,117,1,5406,7,2049,2270,10,1,5403,2049,2495,1,65,1,5418,7,2049,2270,10,1,5415,2049,2495,1,69,1,5430,7,2049,2270,10,1,5427,2049,2495,1,73,1,5442,7,2049,2270,10,1,5439,2049,2495,1,79,1,5454,7,2049,2270,10,1,5451,2049,2495,1,85,1,5466,7,2049,2270,10,1,5463,2049,2495,3,2049,2282,10,5338,5490,171,99,58,99,111,110,115,111,110,97,110,116,63,0,2,2049,5176,1,5501,7,2049,5350,2049,2643,10,1,5496,1,5510,7,3,2049,2282,10,1,5506,2049,122,10,5474,5532,171,99,58,45,108,111,119,101,114,99,97,115,101,63,0,2049,5199,2049,2643,10,5515,5554,171,99,58,45,117,112,112,101,114,99,97,115,101,63,0,2049,5222,2049,2643,10,5537,5572,171,99,58,45,100,105,103,105,116,63,0,2049,5241,2049,2643,10,5559,5595,171,99,58,45,119,104,105,116,101,115,112,97,99,101,63,0,2049,5265,2049,2643,10,5577,5615,171,99,58,45,118,105,115,105,98,108,101,63,0,2049,5331,2049,2643,10,5600,5633,171,99,58,45,118,111,119,101,108,63,0,2049,5350,2049,2643,10,5620,5655,171,99,58,45,99,111,110,115,111,110,97,110,116,63,0,2049,5490,2049,2643,10,5638,5674,171,99,58,116,111,45,117,112,112,101,114,0,2,2049,5199,25,3,2049,5144,18,10,5660,5697,171,99,58,116,111,45,108,111,119,101,114,0,2,2049,5222,25,3,2049,5144,17,10,5683,5723,171,99,58,116,111,103,103,108,101,45,99,97,115,101,0,2,2049,5199,1,5732,7,2049,5674,10,1,5729,1,5740,7,2049,5697,10,1,5737,2049,122,10,5706,5760,171,99,58,116,111,45,115,116,114,105,110,103,0,2049,3702,46,0,1,5762,2049,3661,1,5773,7,16,10,1,5771,2049,2059,10,5745,5792,171,115,58,116,111,45,117,112,112,101,114,0,1,5798,7,2049,5674,10,1,5795,2049,4166,10,5778,5817,171,115,58,116,111,45,108,111,119,101,114,0,1,5823,7,2049,5697,10,1,5820,2049,4166,10,5803,5837,171,86,97,108,117,101,0,0,10,5828,5850,171,99,111,114,114,101,99,116,0,2,1,48,13,1,5867,7,1,48,2049,1981,18,1,2,19,17,10,1,5857,2049,130,10,5803,5887,171,110,58,116,111,45,115,116,114,105,110,103,0,1,5949,7,2049,1883,2049,3439,2,1,5837,2049,37,2049,2811,1,5919,7,1,10,20,4,1,48,17,2049,5850,2049,3345,2,2049,2382,10,1,5904,2049,2182,3,1,5837,2049,35,2049,2401,1,5938,7,1,45,2049,3345,10,1,5933,2049,130,2049,3307,2049,3829,2049,3661,10,1,5890,2049,3465,10,5872,5976,158,82,101,119,114,105,116,101,85,110,100,101,114,115,99,111,114,101,115,0,-1,5954,5984,171,115,117,98,0,1,95,1,5992,7,2049,5144,10,1,5989,2049,2495,10,5977,6008,171,114,101,119,114,105,116,101,0,1,5976,2049,35,1,6026,7,1,6021,7,2049,5984,10,1,6018,2049,4166,10,1,6015,2049,130,1,3770,8,10,5954,6046,183,112,114,101,102,105,120,58,39,0,2049,6008,10,6034,6063,171,115,58,105,110,100,101,120,45,111,102,0,4,1,6089,7,2049,68,25,4,1,6078,7,2049,1981,12,10,1,6074,2049,2047,4,25,3,1,6067,7,10,1,6067,2049,2059,1,6102,7,18,2049,2858,2049,2010,10,1,6096,2049,2059,2049,79,2049,1981,11,1,6118,7,3,1,-1,10,1,6114,2049,130,10,6049,6143,171,115,58,99,111,110,116,97,105,110,115,45,99,104,97,114,63,0,2049,6063,1,-1,12,10,6123,6156,158,83,114,99,0,0,6149,6164,158,84,97,114,0,0,6157,6172,158,80,97,100,0,0,6165,6178,158,73,0,0,6173,6184,158,70,0,0,6179,6198,171,116,101,114,109,105,110,97,116,101,0,1,0,1,6172,2049,35,1,6164,2049,35,2049,79,17,16,10,6185,6224,171,101,120,116,114,97,99,116,0,1,6156,2049,35,1,6178,2049,35,17,1,6172,2049,35,1,6164,2049,35,2049,79,2049,3113,10,6213,6257,171,99,111,109,112,97,114,101,0,1,6172,2049,35,1,6164,2049,35,2049,104,1,6184,2049,35,22,1,6184,2049,37,10,6246,6285,171,110,101,120,116,0,1,6178,2049,2952,10,6123,6312,171,115,58,99,111,110,116,97,105,110,115,45,115,116,114,105,110,103,63,0,1,6164,2049,37,1,6156,2049,37,2049,3687,1,6172,2049,37,1,0,1,6178,2049,37,1,0,1,6184,2049,37,1,6156,2049,35,2049,79,1,6356,7,2049,6224,2049,6198,2049,6257,2049,6285,10,1,6347,2049,2239,1,6184,2049,35,10,6290,6376,171,115,58,115,112,108,105,116,0,2049,1998,2049,6063,2049,2010,2049,1998,2049,4287,1,6391,7,17,10,1,6389,2049,2047,10,6365,6406,158,86,97,108,117,101,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6396,6442,171,102,114,111,109,0,2049,79,2,1,6463,7,1,6456,7,1,6406,17,16,10,1,6451,2049,2059,2049,2858,10,1,6448,2049,2239,3,10,6434,6475,171,116,111,0,2,2049,79,1,6494,7,2049,68,1,97,18,2049,2845,1,6406,17,15,4,10,1,6481,2049,2239,3,10,6365,6511,171,114,101,111,114,100,101,114,0,1,6517,7,2049,6442,10,1,6514,2049,2047,2049,6475,10,6500,6533,171,99,117,114,114,121,0,2049,1883,1,6546,7,4,2049,1749,2049,1795,2049,1817,10,1,6538,2049,2047,10,6524,6559,171,100,111,101,115,0,2049,1575,4,2049,6533,2049,1557,2049,185,16,1,171,2049,1636,10,6551,6588,171,100,58,102,111,114,45,101,97,99,104,0,1,2,1,6619,7,15,25,2049,1998,1,6611,7,1,6606,7,4,8,10,1,6603,2049,2047,10,1,6600,2049,2047,1,6593,7,10,1,6593,8,3,10,6574,6632,171,99,104,97,114,0,1,110,1,6642,7,2049,4800,2049,3345,10,1,6637,2049,2495,1,116,1,6656,7,2049,4785,2049,3345,10,1,6651,2049,2495,2049,3345,10,6624,6673,171,115,116,114,105,110,103,0,2049,68,25,2049,3345,1,6673,7,10,6663,6690,171,116,121,112,101,0,1,99,1,6699,7,4,2049,3345,10,1,6695,2049,2495,1,115,1,6713,7,4,2049,6673,3,10,1,6708,2049,2495,1,110,1,6729,7,4,2049,5887,2049,6673,3,10,1,6722,2049,2495,3,10,6682,6745,171,104,97,110,100,108,101,0,1,92,1,6755,7,2049,68,2049,6632,10,1,6750,2049,2495,1,37,1,6769,7,2049,68,2049,6690,10,1,6764,2049,2495,2049,3345,10,6574,6793,171,115,58,119,105,116,104,45,102,111,114,109,97,116,0,1,6825,7,2049,3687,1,6820,7,2049,3439,1,6815,7,2049,68,25,2049,6745,1,6806,7,10,1,6806,8,3,10,1,6801,2049,2059,10,1,6796,2049,3465,10,6776,6844,171,115,101,116,58,108,101,110,103,116,104,0,15,10,6830,6866,171,115,101,116,58,102,114,111,109,45,114,101,115,117,108,116,115,0,2049,1682,1,6873,7,8,10,1,6871,2049,2047,2049,1682,4,18,2049,1883,1,6900,7,2,2049,132,1,6895,7,2049,132,10,1,6892,2049,2239,10,1,6886,2049,2047,10,6846,6924,171,115,101,116,58,102,114,111,109,45,115,116,114,105,110,103,0,2049,3829,1,6938,7,1,6933,7,10,1,6932,2049,4043,10,1,6929,2049,6533,2049,6866,10,6905,6950,158,81,0,0,6905,6967,171,115,101,116,58,102,111,114,45,101,97,99,104,0,1,6950,2049,35,1,7006,7,1,6950,2049,37,2049,68,1,7000,7,2049,68,4,1,6995,7,1,6950,2049,35,8,10,1,6989,2049,2047,10,1,6983,2049,2239,3,10,1,6974,2049,2047,1,6950,2049,37,10,6951,7026,171,115,101,116,58,100,117,112,0,2049,1883,1,7046,7,2,15,2049,132,1,7041,7,2049,132,10,1,7038,2049,6967,10,1,7031,2049,2047,10,7015,7065,171,115,101,116,58,102,105,108,116,101,114,0,1,7098,7,2049,1981,1,7075,7,8,10,1,7073,2049,2047,4,1,7086,7,2049,132,10,1,7083,1,7093,7,3,10,1,7091,2049,122,10,1,7068,2049,6533,2049,1883,1,7115,7,2049,1981,15,2049,132,2049,6967,10,1,7107,2049,2047,2049,1883,2049,1981,18,2049,2858,2049,1981,16,10,7051,7135,158,70,0,0,7051,7153,171,115,101,116,58,99,111,110,116,97,105,110,115,63,0,1,7135,2049,3017,1,7173,7,2049,1981,11,1,7135,2049,35,22,1,7135,2049,37,10,1,7160,2049,6967,3,1,7135,2049,35,10,7136,7207,171,115,101,116,58,99,111,110,116,97,105,110,115,45,115,116,114,105,110,103,63,0,1,7135,2049,3017,1,7228,7,2049,1981,2049,104,1,7135,2049,35,22,1,7135,2049,37,10,1,7214,2049,6967,3,1,7135,2049,35,10,7183,7249,171,115,101,116,58,109,97,112,0,1,7256,7,8,2049,132,10,1,7252,2049,6533,2049,1883,1,7273,7,2049,1981,15,2049,132,2049,6967,10,1,7265,2049,2047,10,7238,7293,171,115,101,116,58,114,101,118,101,114,115,101,0,2049,1883,1,7330,7,2049,68,1,7307,7,17,2049,2858,10,1,7303,2049,2059,2,2049,132,1,7324,7,2,15,2049,132,2049,2858,10,1,7317,2049,2239,3,10,1,7298,2049,2047,10,7278,7346,171,115,101,116,58,110,116,104,0,17,2049,2845,10,7335,7364,171,115,101,116,58,114,101,100,117,99,101,0,1,7369,7,4,10,1,7367,2049,2047,2049,6967,10,7350,7382,158,73,48,0,0,0,0,7376,7391,158,73,49,0,0,0,0,7385,7400,158,73,50,0,0,0,0,7394,7409,158,73,51,0,0,0,0,7403,7422,171,111,112,99,111,100,101,0,2049,3702,46,46,0,1,7424,1,7435,7,1,0,10,1,7432,2049,2544,2049,3702,108,105,0,1,7441,1,7452,7,1,1,10,1,7449,2049,2544,2049,3702,100,117,0,1,7458,1,7469,7,1,2,10,1,7466,2049,2544,2049,3702,100,114,0,1,7475,1,7486,7,1,3,10,1,7483,2049,2544,2049,3702,115,119,0,1,7492,1,7503,7,1,4,10,1,7500,2049,2544,2049,3702,112,117,0,1,7509,1,7520,7,1,5,10,1,7517,2049,2544,2049,3702,112,111,0,1,7526,1,7537,7,1,6,10,1,7534,2049,2544,2049,3702,106,117,0,1,7543,1,7554,7,1,7,10,1,7551,2049,2544,2049,3702,99,97,0,1,7560,1,7571,7,1,8,10,1,7568,2049,2544,2049,3702,99,99,0,1,7577,1,7588,7,1,9,10,1,7585,2049,2544,2049,3702,114,101,0,1,7594,1,7605,7,1,10,10,1,7602,2049,2544,2049,3702,101,113,0,1,7611,1,7622,7,1,11,10,1,7619,2049,2544,2049,3702,110,101,0,1,7628,1,7639,7,1,12,10,1,7636,2049,2544,2049,3702,108,116,0,1,7645,1,7656,7,1,13,10,1,7653,2049,2544,2049,3702,103,116,0,1,7662,1,7673,7,1,14,10,1,7670,2049,2544,2049,3702,102,101,0,1,7679,1,7690,7,1,15,10,1,7687,2049,2544,2049,3702,115,116,0,1,7696,1,7707,7,1,16,10,1,7704,2049,2544,2049,3702,97,100,0,1,7713,1,7724,7,1,17,10,1,7721,2049,2544,2049,3702,115,117,0,1,7730,1,7741,7,1,18,10,1,7738,2049,2544,2049,3702,109,117,0,1,7747,1,7758,7,1,19,10,1,7755,2049,2544,2049,3702,100,105,0,1,7764,1,7775,7,1,20,10,1,7772,2049,2544,2049,3702,97,110,0,1,7781,1,7792,7,1,21,10,1,7789,2049,2544,2049,3702,111,114,0,1,7798,1,7809,7,1,22,10,1,7806,2049,2544,2049,3702,120,111,0,1,7815,1,7826,7,1,23,10,1,7823,2049,2544,2049,3702,115,104,0,1,7832,1,7843,7,1,24,10,1,7840,2049,2544,2049,3702,122,114,0,1,7849,1,7860,7,1,25,10,1,7857,2049,2544,2049,3702,101,110,0,1,7866,1,7877,7,1,26,10,1,7874,2049,2544,3,1,0,10,7412,7893,171,112,97,99,107,0,1,7382,2049,7422,1,7391,2049,7422,1,7400,2049,7422,1,7409,2049,7422,1,-24,24,4,1,-16,24,17,4,1,-8,24,17,4,17,10,7350,7930,171,105,0,2,1,7382,1,2,2049,3113,1,2,17,2,1,7391,1,2,2049,3113,1,2,17,2,1,7400,1,2,2049,3113,1,2,17,1,7409,1,2,2049,3113,2049,7893,2049,132,10,7925,7976,171,100,0,2049,132,10,7971,7984,171,114,0,2049,224,2049,185,15,2049,132,10,7979,7999,183,97,115,123,0,1,151,2049,35,1,151,2049,3017,10,7992,8015,183,125,97,115,0,1,151,2049,37,10,8008,8036,158,67,117,114,114,101,110,116,45,76,105,110,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8020,9077,171,99,111,117,110,116,45,116,111,107,101,110,115,0,1,9084,7,2049,5144,11,10,1,9080,2049,4111,2049,79,10,9061,9105,171,110,101,120,116,45,116,111,107,101,110,0,2049,5144,2049,6376,10,9091,9128,171,112,114,111,99,101,115,115,45,116,111,107,101,110,115,0,1,9167,7,2049,9105,4,1,9160,7,2,2049,79,2049,2382,1,9148,7,2049,399,10,1,9145,1,9155,7,3,10,1,9153,2049,122,10,1,9137,2049,2047,2049,2845,10,1,9131,2049,2239,2049,399,10,8008,9188,171,115,58,101,118,97,108,117,97,116,101,0,1,8036,2049,4330,1,8036,2,2049,9077,2049,9128,10,9174,9208,171,112,117,116,99,0,1000,10,9200,9216,171,110,108,0,2049,4800,2049,9208,10,9210,9227,171,115,112,0,2049,5144,2049,9208,10,9221,9239,171,116,97,98,0,2049,4785,2049,9208,10,9232,9252,171,112,117,116,115,0,1,9258,7,2049,9208,10,1,9255,2049,4043,10,9244,9271,171,112,117,116,110,0,2049,5887,2049,9252,10,9263,9285,171,119,111,114,100,115,0,1,9295,7,2049,189,2049,9252,2049,9227,10,1,9288,2049,6588,10,9276,9309,171,114,101,115,101,116,0,2049,1682,25,5,3,6,1,1,18,1,9311,7,10,9300,9336,171,100,117,109,112,45,115,116,97,99,107,0,2049,1682,25,3,5,2049,9336,6,2,2049,9271,2049,9227,10,9322,9358,171,103,101,116,99,0,1001,10,9350,9374,171,110,58,116,111,45,102,108,111,97,116,0,1,0,-6000,10,9360,9392,171,115,58,116,111,45,102,108,111,97,116,0,1,1,-6000,10,9378,9411,171,102,58,116,111,45,115,116,114,105,110,103,0,2049,3687,2,1,2,-6000,10,9396,9425,171,102,58,43,0,1,3,-6000,10,9418,9436,171,102,58,45,0,1,4,-6000,10,9429,9447,171,102,58,42,0,1,5,-6000,10,9440,9458,171,102,58,47,0,1,6,-6000,10,9451,9473,171,102,58,102,108,111,111,114,0,1,7,-6000,10,9462,9486,171,102,58,101,113,63,0,1,8,-6000,10,9477,9500,171,102,58,45,101,113,63,0,1,9,-6000,10,9490,9513,171,102,58,108,116,63,0,1,10,-6000,10,9504,9526,171,102,58,103,116,63,0,1,11,-6000,10,9517,9541,171,102,58,100,101,112,116,104,0,1,12,-6000,10,9530,9554,171,102,58,100,117,112,0,1,13,-6000,10,9545,9568,171,102,58,100,114,111,112,0,1,14,-6000,10,9558,9582,171,102,58,115,119,97,112,0,1,15,-6000,10,9572,9596,171,102,58,111,118,101,114,0,2049,9411,2049,9554,2049,9392,2049,9582,10,9586,9615,171,102,58,116,117,99,107,0,2049,9582,2049,9596,10,9605,9635,171,102,58,112,111,115,105,116,105,118,101,63,0,1,0,2049,9374,2049,9526,10,9620,9657,171,102,58,110,101,103,97,116,105,118,101,63,0,1,0,2049,9374,2049,9513,10,9642,9676,171,102,58,110,101,103,97,116,101,0,1,-1,2049,9374,2049,9447,10,9664,9692,171,102,58,97,98,115,0,2049,9554,2049,9657,1,9702,7,2049,9676,10,1,9699,2049,130,10,9683,9716,171,102,58,108,111,103,0,1,16,-6000,10,9707,9731,171,102,58,112,111,119,101,114,0,1,17,-6000,10,9720,9750,171,102,58,116,111,45,110,117,109,98,101,114,0,1,18,-6000,10,9735,9766,183,112,114,101,102,105,120,58,46,0,2049,1836,1,9774,7,2049,3729,10,1,9771,1,9782,7,2049,3661,10,1,9779,2049,122,1,9392,2049,171,10,9754,9799,171,112,117,116,102,0,2049,9411,2049,9252,10,9791,9818,171,103,111,112,104,101,114,58,103,101,116,0,-6200,10,9804,9832,171,115,121,115,58,97,114,103,99,0,-6100,10,9820,9846,171,115,121,115,58,97,114,103,118,0,2049,3687,4,-6101,10,9834,0,158,102,105,108,101,58,82,0,9851,1,158,102,105,108,101,58,87,0,9861,2,158,102,105,108,101,58,65,0,9871,3,158,102,105,108,101,58,82,43,0,9881,9905,171,102,105,108,101,58,111,112,101,110,0,118,10,9892,9921,171,102,105,108,101,58,99,108,111,115,101,0,119,10,9907,9936,171,102,105,108,101,58,114,101,97,100,0,120,10,9923,9952,171,102,105,108,101,58,119,114,105,116,101,0,121,10,9938,9967,171,102,105,108,101,58,116,101,108,108,0,122,10,9954,9982,171,102,105,108,101,58,115,101,101,107,0,123,10,9969,9997,171,102,105,108,101,58,115,105,122,101,0,124,10,9984,10014,171,102,105,108,101,58,100,101,108,101,116,101,0,125,10,9999,10030,171,102,105,108,101,58,102,108,117,115,104,0,126,10,10016,10048,171,102,105,108,101,58,101,120,105,115,116,115,63,0,1,0,2049,9905,2,2049,2382,1,10063,7,2049,9921,2049,2270,10,1,10058,1,10072,7,3,2049,2282,10,1,10068,2049,122,10,10032,10084,158,70,73,68,0,0,10077,10094,158,70,83,105,122,101,0,0,10085,10105,158,65,99,116,105,111,110,0,0,10095,10116,158,66,117,102,102,101,114,0,0,10106,10126,171,45,101,111,102,63,0,1,10084,2049,35,2049,9967,1,10094,2049,35,13,10,10117,10150,171,112,114,101,115,101,114,118,101,0,1,10084,1,10167,7,1,10094,1,10162,7,8,10,1,10160,2049,3036,10,1,10155,2049,3036,10,10032,10190,171,102,105,108,101,58,114,101,97,100,45,108,105,110,101,0,1,10084,2049,37,1,10258,7,2049,1883,2,1,10116,2049,37,2049,3439,1,10250,7,1,10084,2049,35,2049,9936,2,2049,3345,1,10225,7,2049,4845,11,10,1,10221,1,10234,7,2049,4800,11,10,1,10230,1,10243,7,2049,4643,11,10,1,10239,2049,2111,22,22,10,1,10209,2049,2209,2049,3369,3,10,1,10197,2049,3465,1,10116,2049,35,10,10172,10289,171,102,105,108,101,58,102,111,114,45,101,97,99,104,45,108,105,110,101,0,1,10342,7,1,10105,2049,37,1,0,2049,9905,1,10084,2049,37,1,10084,2049,35,2049,9997,1,10094,2049,37,1,10331,7,1,10084,2049,35,2049,10190,1,10105,2049,35,8,2049,10126,10,1,10317,2049,2182,1,10084,2049,35,2049,9921,10,1,10292,2049,10150,10,10267,10354,158,70,73,68,0,0,10347,10363,158,83,105,122,101,0,0,10267,10378,171,102,105,108,101,58,115,108,117,114,112,0,1,10428,7,1,0,2049,9905,1,10354,2049,37,2049,3439,1,10354,2049,35,2049,9997,1,10363,2049,37,1,10363,2049,35,1,10417,7,1,10354,2049,35,2049,9936,2049,3345,10,1,10408,2049,2239,1,10354,2049,35,2049,9921,10,1,10381,2049,3465,10,0 }; +int32_t ngaImageCells = 10458; +int32_t ngaImage[] = { 1793,-1,10388,10457,201711,0,10,1,10,2,10,3,10,4,10,5,10,6,10,7,10,8,10,9,10,10,10,11,10,12,10,13,10,14,10,15,10,16,10,17,10,18,10,19,10,20,10,21,10,22,10,23,10,24,10,25,10,26,10,2049,10,67502597,10,2049,61,2049,61,10,68223234,1,2575,85000450,1,656912,2049,68,25,459011,74,524546,74,302256641,1,10,168756239,17043713,1,1,2577,134284549,63,2049,84,85263883,2049,85,302056966,1,25,1793,89,33620739,0,10,2049,63,2049,79,524548,79,590092,101,25,524546,79,134284289,-1,89,100860677,10,3201,3215,268505089,121,120,135205121,121,10,101384453,0,9,10,134287105,3,71,659457,3,459023,132,2049,68,25,2049,132,1793,139,2049,139,117506307,0,132,0,524545,25,137,168820993,0,151,1642241,151,134283523,7,137,1793,132,7,524545,59,137,1793,132,16846593,151,166,165,1793,122,16846593,151,137,165,1793,122,7,10,659713,1,659713,2,659713,3,17108737,3,2,524559,132,2049,132,2049,132,2049,146,168820998,2,3185,1025,167841793,204,5,17826049,0,204,2,15,25,524546,189,134287105,205,104,2305,206,459023,214,134287361,205,209,659201,204,2049,68,25,84152833,48,286458116,10,459014,229,184618754,45,25,16974851,-1,168886532,1,134284289,1,238,134284289,0,229,660227,32,0,0,112,114,101,102,105,120,58,125,0,285278479,255,7,2576,524546,79,1641217,1,167838467,252,2049,268,2049,264,524545,255,224,17826050,254,0,2572,2563,2049,245,1793,158,459023,158,17760513,171,3,191,8,251727617,3,2,2049,185,268501264,-1,151,10,2049,224,2049,185,459023,158,285282049,3,3,16846593,151,-1,151,134283536,7,137,16846593,3,0,132,8,524545,19,137,659201,3,524545,25,137,17043201,3,7,2049,137,2049,132,268505092,151,1642241,151,656131,659201,3,524545,7,137,2049,132,459009,19,137,1642241,151,117506307,55,137,1642241,151,117506307,15,137,1642241,151,117506307,17,137,1793,5,524546,185,134284303,187,1807,1025,1642241,254,285282049,379,1,459012,374,117509889,204,374,134287105,379,224,16845825,0,387,372,1793,122,17826050,379,274,8,117506305,380,390,122,0,9,177,100,117,112,0,407,11,177,100,114,111,112,0,414,13,177,115,119,97,112,0,422,21,177,99,97,108,108,0,430,27,177,101,113,63,0,438,29,177,45,101,113,63,0,445,31,177,108,116,63,0,453,33,177,103,116,63,0,460,35,177,102,101,116,99,104,0,467,37,177,115,116,111,114,101,0,476,39,177,43,0,485,41,177,45,0,490,43,177,42,0,495,45,177,47,109,111,100,0,500,47,177,97,110,100,0,508,49,177,111,114,0,515,51,177,120,111,114,0,521,53,177,115,104,105,102,116,0,528,362,183,112,117,115,104,0,537,367,183,112,111,112,0,545,357,183,48,59,0,552,68,171,102,101,116,99,104,45,110,101,120,116,0,558,71,171,115,116,111,114,101,45,110,101,120,116,0,572,245,171,115,58,116,111,45,110,117,109,98,101,114,0,586,104,171,115,58,101,113,63,0,601,79,171,115,58,108,101,110,103,116,104,0,610,122,171,99,104,111,111,115,101,0,622,130,171,105,102,0,632,128,171,45,105,102,0,638,285,183,112,114,101,102,105,120,58,40,0,645,151,158,67,111,109,112,105,108,101,114,0,657,3,158,72,101,97,112,0,669,132,171,44,0,677,146,171,115,44,0,682,152,183,59,0,688,312,183,91,0,693,332,183,93,0,698,2,158,68,105,99,116,105,111,110,97,114,121,0,703,184,171,100,58,108,105,110,107,0,717,185,171,100,58,120,116,0,727,187,171,100,58,99,108,97,115,115,0,735,189,171,100,58,110,97,109,101,0,746,171,171,99,108,97,115,115,58,119,111,114,100,0,756,183,171,99,108,97,115,115,58,109,97,99,114,111,0,770,158,171,99,108,97,115,115,58,100,97,116,97,0,785,191,171,100,58,97,100,100,45,104,101,97,100,101,114,0,799,286,183,112,114,101,102,105,120,58,35,0,815,292,183,112,114,101,102,105,120,58,58,0,827,306,183,112,114,101,102,105,120,58,38,0,839,290,183,112,114,101,102,105,120,58,36,0,851,347,183,114,101,112,101,97,116,0,863,349,183,97,103,97,105,110,0,873,399,171,105,110,116,101,114,112,114,101,116,0,882,224,171,100,58,108,111,111,107,117,112,0,895,177,171,99,108,97,115,115,58,112,114,105,109,105,116,105,118,101,0,907,4,158,86,101,114,115,105,111,110,0,926,372,171,101,114,114,58,110,111,116,102,111,117,110,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,125,125,0,102,101,114,58,112,114,101,115,101,114,118,101,0,105,110,101,0,63,0,63,64,91,92,93,94,96,123,124,125,126,0,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,937,1543,171,69,79,77,0,1,-3,15,10,1536,1557,171,100,58,108,97,115,116,0,1,2,15,10,1547,1575,171,100,58,108,97,115,116,60,120,116,62,0,2049,1557,2049,185,15,10,1561,1598,171,100,58,108,97,115,116,60,99,108,97,115,115,62,0,2049,1557,2049,187,15,10,1581,1620,171,100,58,108,97,115,116,60,110,97,109,101,62,0,2049,1557,2049,189,10,1604,1636,171,114,101,99,108,97,115,115,0,2049,1557,2049,187,16,10,1625,1655,171,105,109,109,101,100,105,97,116,101,0,1,183,2049,1636,10,1642,1668,171,100,97,116,97,0,1,158,2049,1636,10,1660,1682,171,100,101,112,116,104,0,1,-1,15,10,1673,1698,183,112,114,101,102,105,120,58,64,0,2049,224,2049,185,15,2049,158,1,35,2049,171,10,1686,1722,183,112,114,101,102,105,120,58,33,0,2049,224,2049,185,15,2049,158,1,37,2049,171,10,1710,1749,171,99,111,109,112,105,108,101,58,108,105,116,0,1,1,2049,132,2049,132,10,1734,1772,171,99,111,109,112,105,108,101,58,106,117,109,112,0,1,1793,2049,132,2049,132,10,1756,1795,171,99,111,109,112,105,108,101,58,99,97,108,108,0,1,2049,2049,132,2049,132,10,1779,1817,171,99,111,109,112,105,108,101,58,114,101,116,0,1,10,2049,132,10,1802,1836,171,99,111,109,112,105,108,105,110,103,63,0,1,151,2049,35,10,1822,1853,183,112,114,101,102,105,120,58,96,0,2049,1836,1,1863,7,2049,245,2049,132,10,1,1858,1,1870,7,3,10,1,1868,2049,122,10,1841,1883,171,104,101,114,101,0,1,3,2049,35,10,1875,1900,171,100,58,99,114,101,97,116,101,0,1,158,1,0,2049,191,2049,1883,2049,1557,2049,185,16,10,1888,1921,171,118,97,114,0,2049,1900,1,0,2049,132,10,1914,1938,171,118,97,114,60,110,62,0,2049,1900,2049,132,10,1928,1952,171,99,111,110,115,116,0,2049,1900,2049,1557,2049,185,16,10,1943,1968,171,116,117,99,107,0,2,5,4,6,10,1960,1981,171,111,118,101,114,0,5,2,6,4,10,1973,1998,171,100,117,112,45,112,97,105,114,0,2049,1981,2049,1981,10,1986,2010,171,110,105,112,0,4,3,10,2003,2026,171,100,114,111,112,45,112,97,105,114,0,3,3,10,2013,2037,171,63,100,117,112,0,2,25,10,2029,2047,171,100,105,112,0,4,5,8,6,10,2040,2059,171,115,105,112,0,5,2,6,4,1,21,2049,2047,10,2052,2074,171,98,105,0,1,2059,2049,2047,8,10,2068,2087,171,98,105,42,0,1,2047,2049,2047,8,10,2080,2100,171,98,105,64,0,2,2049,2087,10,2093,2111,171,116,114,105,0,1,2121,7,1,2059,2049,2047,2049,2059,10,1,2114,2049,2047,8,10,2104,2135,171,116,114,105,42,0,1,2154,7,1,2147,7,4,1,2047,2049,2047,10,1,2141,2049,2047,2049,2047,10,1,2138,2049,2047,8,10,2127,2168,171,116,114,105,64,0,2,2,2049,2135,10,2160,2182,171,119,104,105,108,101,0,1,2195,7,2,2049,2047,4,25,3,1,2185,7,10,1,2185,8,3,10,2173,2209,171,117,110,116,105,108,0,1,2225,7,2,2049,2047,4,1,-1,23,25,3,1,2212,7,10,1,2212,8,3,10,2200,2239,171,116,105,109,101,115,0,4,1,2257,7,25,1,1,18,5,1,21,2049,2059,6,1,2243,7,10,1,2243,8,3,10,2230,2270,171,84,82,85,69,0,1,-1,10,2262,2282,171,70,65,76,83,69,0,1,0,10,2273,2294,171,108,116,101,113,63,0,2049,1998,11,1,2302,7,13,10,1,2300,2049,2047,22,10,2285,2317,171,103,116,101,113,63,0,2049,1998,11,1,2325,7,14,10,1,2323,2049,2047,22,10,2308,2340,171,110,58,77,65,88,0,1,2147483647,10,2331,2352,171,110,58,77,73,78,0,1,1213605888,10,2343,2366,171,110,58,122,101,114,111,63,0,1,0,11,10,2355,2382,171,110,58,45,122,101,114,111,63,0,1,0,12,10,2370,2401,171,110,58,110,101,103,97,116,105,118,101,63,0,1,0,13,10,2386,2420,171,110,58,112,111,115,105,116,105,118,101,63,0,1,-1,14,10,2405,2448,171,110,58,115,116,114,105,99,116,108,121,45,112,111,115,105,116,105,118,101,63,0,1,0,14,10,2424,2463,171,110,58,101,118,101,110,63,0,1,2,20,3,2049,2366,10,2452,2480,171,110,58,111,100,100,63,0,1,2,20,3,2049,2382,10,2470,2495,171,99,97,115,101,0,1,2502,7,2049,1981,11,10,1,2498,2049,2047,4,1,2516,7,2049,2010,8,2049,2270,10,1,2510,1,2525,7,3,2049,2282,10,1,2521,2049,122,25,6,3,3,10,2487,2544,171,115,58,99,97,115,101,0,1,2552,7,2049,1981,2049,104,10,1,2547,2049,2047,4,1,2566,7,2049,2010,8,2049,2270,10,1,2560,1,2575,7,3,2049,2282,10,1,2571,2049,122,25,6,3,3,10,2534,2591,171,114,111,116,0,1,2596,7,4,10,1,2594,2049,2047,4,10,2584,2610,171,116,111,114,115,0,6,6,2,5,4,5,10,2602,2622,171,47,0,20,4,3,10,2617,2633,171,109,111,100,0,20,3,10,2626,2643,171,110,111,116,0,1,-1,23,10,2636,2656,171,110,58,112,111,119,0,1,1,4,1,2666,7,2049,1981,19,10,1,2662,2049,2239,2049,2010,10,2647,2685,171,110,58,110,101,103,97,116,101,0,1,-1,19,10,2673,2701,171,110,58,115,113,117,97,114,101,0,2,19,10,2689,2714,171,110,58,115,113,114,116,0,1,1,1,2736,7,2049,1998,2049,2622,2049,1981,18,1,2,2049,2622,25,17,1,2719,7,10,1,2719,8,2049,2010,10,2704,2751,171,110,58,109,105,110,0,2049,1998,13,1,2759,7,3,10,1,2757,1,2767,7,2049,2010,10,1,2764,2049,122,10,2742,2781,171,110,58,109,97,120,0,2049,1998,14,1,2789,7,3,10,1,2787,1,2797,7,2049,2010,10,1,2794,2049,122,10,2772,2811,171,110,58,97,98,115,0,2,2049,2685,2049,2781,10,2802,2828,171,110,58,108,105,109,105,116,0,4,5,2049,2751,6,2049,2781,10,2817,2845,171,110,58,105,110,99,0,1,1,17,10,2836,2858,171,110,58,100,101,99,0,1,1,18,10,2849,2876,171,110,58,98,101,116,119,101,101,110,63,0,2049,2591,1,2888,7,2049,2591,2049,2591,2049,2828,10,1,2881,2049,2059,11,10,2862,2906,171,118,58,105,110,99,45,98,121,0,1,2912,7,15,17,10,1,2909,2049,2059,16,10,2894,2930,171,118,58,100,101,99,45,98,121,0,1,2937,7,15,4,18,10,1,2933,2049,2059,16,10,2918,2952,171,118,58,105,110,99,0,1,1,4,2049,2906,10,2943,2967,171,118,58,100,101,99,0,1,1,4,2049,2930,10,2958,2984,171,118,58,108,105,109,105,116,0,5,5,2,15,6,6,2049,2828,4,16,10,2973,3003,171,118,58,111,110,0,2049,2270,4,16,10,2995,3017,171,118,58,111,102,102,0,2049,2282,4,16,10,3008,3036,171,118,58,112,114,101,115,101,114,118,101,0,4,2,15,1,3052,7,1,3047,7,8,10,1,3045,2049,2047,10,1,3042,2049,2047,4,16,10,3022,3068,171,97,108,108,111,116,0,1,3,2049,2906,10,3059,3091,171,118,58,117,112,100,97,116,101,45,117,115,105,110,103,0,4,1,3099,7,15,4,8,10,1,3095,2049,2059,16,10,3073,3113,171,99,111,112,121,0,1,3123,7,1,68,2049,2047,2049,71,10,1,3116,2049,2239,3,3,10,3105,3143,171,83,99,111,112,101,76,105,115,116,0,10291,10379,10,3130,3152,171,123,123,0,2049,1557,2,1,3143,2049,71,16,10,3146,3177,171,45,45,45,114,101,118,101,97,108,45,45,45,0,2049,1557,1,3143,2049,2845,16,10,3161,3191,171,125,125,0,1,3143,2049,68,4,15,11,1,3210,7,1,3143,2049,35,1,2,2049,37,10,1,3201,1,3244,7,1,3143,2049,35,1,3239,7,1,2,15,2,15,1,3143,2049,2845,15,12,25,3,1,3224,7,10,1,3222,8,16,10,1,3215,2049,122,10,3185,3259,158,66,117,102,102,101,114,0,0,10,3249,3268,158,80,116,114,0,0,10,3261,3283,171,116,101,114,109,105,110,97,116,101,0,1,0,1,3268,2049,35,16,10,3185,3307,171,98,117,102,102,101,114,58,115,116,97,114,116,0,1,3259,2049,35,10,3291,3326,171,98,117,102,102,101,114,58,101,110,100,0,1,3268,2049,35,10,3312,3345,171,98,117,102,102,101,114,58,97,100,100,0,2049,3326,16,1,3268,2049,2952,2049,3283,10,3331,3369,171,98,117,102,102,101,114,58,103,101,116,0,1,3268,2049,2967,2049,3326,15,2049,3283,10,3355,3395,171,98,117,102,102,101,114,58,101,109,112,116,121,0,2049,3307,1,3268,2049,37,2049,3283,10,3379,3419,171,98,117,102,102,101,114,58,115,105,122,101,0,2049,3326,2049,3307,18,10,3404,3439,171,98,117,102,102,101,114,58,115,101,116,0,1,3259,2049,37,2049,3395,10,3425,3465,171,98,117,102,102,101,114,58,112,114,101,115,101,114,118,101,0,1,3259,2049,35,1,3268,2049,35,1,3490,7,1,3481,7,8,10,1,3479,2049,2047,1,3259,2049,37,10,1,3476,2049,2047,1,3268,2049,37,10,3446,3514,158,84,101,109,112,83,116,114,105,110,103,115,0,12,3499,3532,158,84,101,109,112,83,116,114,105,110,103,77,97,120,0,512,3515,3544,171,83,84,82,73,78,71,83,0,2049,1543,1,3514,2049,35,1,3532,2049,35,19,18,10,3533,3571,171,77,65,88,45,76,69,78,71,84,72,0,1,512,10,3557,3587,158,115,58,67,117,114,114,101,110,116,0,3,10,3574,3602,171,115,58,112,111,105,110,116,101,114,0,1,3587,2049,35,2049,3571,19,2049,3544,17,10,3589,3623,171,115,58,110,101,120,116,0,1,3587,2049,2952,1,3587,2049,35,1,3514,2049,35,11,1,3646,7,1,0,1,3587,2049,37,10,1,3639,2049,130,10,3533,3661,171,115,58,116,101,109,112,0,2,2049,79,2049,2845,2049,3602,4,2049,3113,2049,3602,2049,3623,10,3651,3687,171,115,58,101,109,112,116,121,0,2049,3602,2049,3623,10,3676,3702,171,115,58,115,107,105,112,0,6,1,3711,7,2049,68,2049,2382,10,1,3706,2049,2182,2049,2858,5,10,3692,3729,171,115,58,107,101,101,112,0,2049,1836,1,3739,7,1,3702,2049,171,10,1,3734,2049,130,2049,1883,1,3751,7,2049,146,10,1,3748,2049,2047,2049,158,10,3719,3770,183,112,114,101,102,105,120,58,39,0,2049,1836,1,3778,7,2049,3729,10,1,3775,1,3786,7,2049,3661,10,1,3783,2049,122,10,3758,3801,171,115,58,99,104,111,112,0,2049,3661,2,2049,79,2049,1981,17,2049,2858,1,0,4,16,10,3791,3829,171,115,58,114,101,118,101,114,115,101,0,1,3874,7,2,2049,3661,2049,3439,1,79,1,3849,7,2,2049,79,17,2049,2858,10,1,3842,2049,2074,4,1,3864,7,2,15,2049,3345,2049,2858,10,1,3857,2049,2239,3,2049,3307,2049,3661,10,1,3832,2049,3465,10,3816,3894,171,115,58,116,114,105,109,45,108,101,102,116,0,2049,3661,1,3922,7,2049,68,1,3908,7,1,32,11,10,1,3904,1,3916,7,2049,2366,10,1,3913,2049,2074,21,10,1,3899,2049,2182,2049,2858,10,3879,3945,171,115,58,116,114,105,109,45,114,105,103,104,116,0,2049,3661,2049,3829,2049,3894,2049,3829,10,3929,3964,171,115,58,116,114,105,109,0,2049,3945,2049,3894,10,3954,3982,171,115,58,112,114,101,112,101,110,100,0,2049,3661,1,4008,7,2,2049,79,17,1,4000,7,2,2049,79,2049,2845,10,1,3994,2049,2047,4,2049,3113,10,1,3987,2049,2059,10,3969,4025,171,115,58,97,112,112,101,110,100,0,4,2049,3982,10,4013,4043,171,115,58,102,111,114,45,101,97,99,104,0,1,4093,7,2049,1981,15,25,3,2049,1998,1,4075,7,1,4070,7,1,4064,7,15,10,1,4062,2049,2047,8,10,1,4059,2049,2047,10,1,4056,2049,2047,1,4085,7,2049,2845,10,1,4082,2049,2047,1,4046,7,10,1,4046,8,2049,2026,10,4029,4111,171,115,58,102,105,108,116,101,114,0,1,4152,7,2049,3687,2049,3439,4,1,4144,7,2049,1998,4,8,1,4132,7,2049,3345,10,1,4129,1,4139,7,3,10,1,4137,2049,122,10,1,4122,2049,4043,3,2049,3307,10,1,4114,2049,3465,10,4099,4166,171,115,58,109,97,112,0,1,4191,7,2049,3687,2049,3439,4,1,4183,7,2049,1981,8,2049,3345,10,1,4177,2049,4043,3,2049,3307,10,1,4169,2049,3465,10,4157,4208,171,115,58,115,117,98,115,116,114,0,1,4215,7,17,2049,3687,10,1,4211,2049,2047,1,4235,7,2049,1981,1,4230,7,2049,3113,10,1,4227,2049,2047,10,1,4222,2049,2059,2049,1981,1,4250,7,17,1,0,4,16,10,1,4244,2049,2047,10,4196,4266,171,115,58,114,105,103,104,116,0,2049,1981,2049,79,2049,1981,18,4,2049,4208,10,4255,4287,171,115,58,108,101,102,116,0,1,0,4,2049,4208,10,4277,4303,171,115,58,104,97,115,104,0,1,5381,4,1,4315,7,4,1,33,19,17,10,1,4309,2049,4043,10,4293,4330,171,115,58,99,111,112,121,0,2049,1981,2049,79,2049,2845,2049,3113,10,4320,4351,171,115,58,68,73,71,73,84,83,0,2049,3702,48,49,50,51,52,53,54,55,56,57,0,1,4353,10,4339,4388,171,115,58,65,83,67,73,73,45,76,79,87,69,82,67,65,83,69,0,2049,3702,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,0,1,4390,10,4367,4441,171,115,58,65,83,67,73,73,45,85,80,80,69,82,67,65,83,69,0,2049,3702,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,0,1,4443,10,4420,4492,171,115,58,65,83,67,73,73,45,76,69,84,84,69,82,83,0,2049,3702,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,0,1,4494,10,4473,4567,171,115,58,80,85,78,67,84,85,65,84,73,79,78,0,2049,3702,95,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,58,59,60,61,62,63,64,91,92,93,94,96,123,124,125,126,0,1,4569,1,95,2049,1981,16,10,4550,4626,158,115,58,87,72,73,84,69,83,80,65,67,69,0,9,10,13,0,4610,4643,171,65,83,67,73,73,58,78,85,76,0,1,0,10,4630,4659,171,65,83,67,73,73,58,83,79,72,0,1,1,10,4646,4675,171,65,83,67,73,73,58,83,84,88,0,1,2,10,4662,4691,171,65,83,67,73,73,58,69,84,88,0,1,3,10,4678,4707,171,65,83,67,73,73,58,69,79,84,0,1,4,10,4694,4723,171,65,83,67,73,73,58,69,78,81,0,1,5,10,4710,4739,171,65,83,67,73,73,58,65,67,75,0,1,6,10,4726,4755,171,65,83,67,73,73,58,66,69,76,0,1,7,10,4742,4770,171,65,83,67,73,73,58,66,83,0,1,8,10,4758,4785,171,65,83,67,73,73,58,72,84,0,1,9,10,4773,4800,171,65,83,67,73,73,58,76,70,0,1,10,10,4788,4815,171,65,83,67,73,73,58,86,84,0,1,11,10,4803,4830,171,65,83,67,73,73,58,70,70,0,1,12,10,4818,4845,171,65,83,67,73,73,58,67,82,0,1,13,10,4833,4860,171,65,83,67,73,73,58,83,79,0,1,14,10,4848,4875,171,65,83,67,73,73,58,83,73,0,1,15,10,4863,4891,171,65,83,67,73,73,58,68,76,69,0,1,16,10,4878,4907,171,65,83,67,73,73,58,68,67,49,0,1,17,10,4894,4923,171,65,83,67,73,73,58,68,67,50,0,1,18,10,4910,4939,171,65,83,67,73,73,58,68,67,51,0,1,19,10,4926,4955,171,65,83,67,73,73,58,68,67,52,0,1,20,10,4942,4971,171,65,83,67,73,73,58,78,65,75,0,1,21,10,4958,4987,171,65,83,67,73,73,58,83,89,78,0,1,22,10,4974,5003,171,65,83,67,73,73,58,69,84,66,0,1,23,10,4990,5019,171,65,83,67,73,73,58,67,65,78,0,1,24,10,5006,5034,171,65,83,67,73,73,58,69,77,0,1,25,10,5022,5050,171,65,83,67,73,73,58,83,85,66,0,1,26,10,5037,5066,171,65,83,67,73,73,58,69,83,67,0,1,27,10,5053,5081,171,65,83,67,73,73,58,70,83,0,1,28,10,5069,5096,171,65,83,67,73,73,58,71,83,0,1,29,10,5084,5111,171,65,83,67,73,73,58,82,83,0,1,30,10,5099,5126,171,65,83,67,73,73,58,85,83,0,1,31,10,5114,5144,171,65,83,67,73,73,58,83,80,65,67,69,0,1,32,10,5129,5160,171,65,83,67,73,73,58,68,69,76,0,1,127,10,5147,5176,171,99,58,108,101,116,116,101,114,63,0,1,65,1,122,2049,2876,10,5163,5199,171,99,58,108,111,119,101,114,99,97,115,101,63,0,1,97,1,122,2049,2876,10,5183,5222,171,99,58,117,112,112,101,114,99,97,115,101,63,0,1,65,1,90,2049,2876,10,5206,5241,171,99,58,100,105,103,105,116,63,0,1,48,1,57,2049,2876,10,5229,5265,171,99,58,119,104,105,116,101,115,112,97,99,101,63,0,2049,5144,1,5273,7,2049,2270,10,1,5270,2049,2495,2049,4785,1,5285,7,2049,2270,10,1,5282,2049,2495,2049,4800,1,5297,7,2049,2270,10,1,5294,2049,2495,2049,4845,1,5309,7,2049,2270,10,1,5306,2049,2495,3,2049,2282,10,5248,5331,171,99,58,118,105,115,105,98,108,101,63,0,1,31,1,126,2049,2876,10,5317,5350,171,99,58,118,111,119,101,108,63,0,1,97,1,5358,7,2049,2270,10,1,5355,2049,2495,1,101,1,5370,7,2049,2270,10,1,5367,2049,2495,1,105,1,5382,7,2049,2270,10,1,5379,2049,2495,1,111,1,5394,7,2049,2270,10,1,5391,2049,2495,1,117,1,5406,7,2049,2270,10,1,5403,2049,2495,1,65,1,5418,7,2049,2270,10,1,5415,2049,2495,1,69,1,5430,7,2049,2270,10,1,5427,2049,2495,1,73,1,5442,7,2049,2270,10,1,5439,2049,2495,1,79,1,5454,7,2049,2270,10,1,5451,2049,2495,1,85,1,5466,7,2049,2270,10,1,5463,2049,2495,3,2049,2282,10,5338,5490,171,99,58,99,111,110,115,111,110,97,110,116,63,0,2,2049,5176,1,5501,7,2049,5350,2049,2643,10,1,5496,1,5510,7,3,2049,2282,10,1,5506,2049,122,10,5474,5532,171,99,58,45,108,111,119,101,114,99,97,115,101,63,0,2049,5199,2049,2643,10,5515,5554,171,99,58,45,117,112,112,101,114,99,97,115,101,63,0,2049,5222,2049,2643,10,5537,5572,171,99,58,45,100,105,103,105,116,63,0,2049,5241,2049,2643,10,5559,5595,171,99,58,45,119,104,105,116,101,115,112,97,99,101,63,0,2049,5265,2049,2643,10,5577,5615,171,99,58,45,118,105,115,105,98,108,101,63,0,2049,5331,2049,2643,10,5600,5633,171,99,58,45,118,111,119,101,108,63,0,2049,5350,2049,2643,10,5620,5655,171,99,58,45,99,111,110,115,111,110,97,110,116,63,0,2049,5490,2049,2643,10,5638,5674,171,99,58,116,111,45,117,112,112,101,114,0,2,2049,5199,25,3,2049,5144,18,10,5660,5697,171,99,58,116,111,45,108,111,119,101,114,0,2,2049,5222,25,3,2049,5144,17,10,5683,5723,171,99,58,116,111,103,103,108,101,45,99,97,115,101,0,2,2049,5199,1,5732,7,2049,5674,10,1,5729,1,5740,7,2049,5697,10,1,5737,2049,122,10,5706,5760,171,99,58,116,111,45,115,116,114,105,110,103,0,2049,3702,46,0,1,5762,2049,3661,1,5773,7,16,10,1,5771,2049,2059,10,5745,5792,171,115,58,116,111,45,117,112,112,101,114,0,1,5798,7,2049,5674,10,1,5795,2049,4166,10,5778,5817,171,115,58,116,111,45,108,111,119,101,114,0,1,5823,7,2049,5697,10,1,5820,2049,4166,10,5803,5837,171,86,97,108,117,101,0,0,10,5828,5850,171,99,111,114,114,101,99,116,0,2,1,48,13,1,5867,7,1,48,2049,1981,18,1,2,19,17,10,1,5857,2049,130,10,5803,5887,171,110,58,116,111,45,115,116,114,105,110,103,0,1,5949,7,2049,1883,2049,3439,2,1,5837,2049,37,2049,2811,1,5919,7,1,10,20,4,1,48,17,2049,5850,2049,3345,2,2049,2382,10,1,5904,2049,2182,3,1,5837,2049,35,2049,2401,1,5938,7,1,45,2049,3345,10,1,5933,2049,130,2049,3307,2049,3829,2049,3661,10,1,5890,2049,3465,10,5872,5976,158,82,101,119,114,105,116,101,85,110,100,101,114,115,99,111,114,101,115,0,-1,5954,5984,171,115,117,98,0,1,95,1,5992,7,2049,5144,10,1,5989,2049,2495,10,5977,6008,171,114,101,119,114,105,116,101,0,1,5976,2049,35,1,6026,7,1,6021,7,2049,5984,10,1,6018,2049,4166,10,1,6015,2049,130,1,3770,8,10,5954,6046,183,112,114,101,102,105,120,58,39,0,2049,6008,10,6034,6063,171,115,58,105,110,100,101,120,45,111,102,0,4,1,6089,7,2049,68,25,4,1,6078,7,2049,1981,12,10,1,6074,2049,2047,4,25,3,1,6067,7,10,1,6067,2049,2059,1,6102,7,18,2049,2858,2049,2010,10,1,6096,2049,2059,2049,79,2049,1981,11,1,6118,7,3,1,-1,10,1,6114,2049,130,10,6049,6143,171,115,58,99,111,110,116,97,105,110,115,45,99,104,97,114,63,0,2049,6063,1,-1,12,10,6123,6156,158,83,114,99,0,0,6149,6164,158,84,97,114,0,0,6157,6172,158,80,97,100,0,0,6165,6178,158,73,0,0,6173,6184,158,70,0,0,6179,6198,171,116,101,114,109,105,110,97,116,101,0,1,0,1,6172,2049,35,1,6164,2049,35,2049,79,17,16,10,6185,6224,171,101,120,116,114,97,99,116,0,1,6156,2049,35,1,6178,2049,35,17,1,6172,2049,35,1,6164,2049,35,2049,79,2049,3113,10,6213,6257,171,99,111,109,112,97,114,101,0,1,6172,2049,35,1,6164,2049,35,2049,104,1,6184,2049,35,22,1,6184,2049,37,10,6246,6285,171,110,101,120,116,0,1,6178,2049,2952,10,6123,6312,171,115,58,99,111,110,116,97,105,110,115,45,115,116,114,105,110,103,63,0,1,6164,2049,37,1,6156,2049,37,2049,3687,1,6172,2049,37,1,0,1,6178,2049,37,1,0,1,6184,2049,37,1,6156,2049,35,2049,79,1,6356,7,2049,6224,2049,6198,2049,6257,2049,6285,10,1,6347,2049,2239,1,6184,2049,35,10,6290,6376,171,115,58,115,112,108,105,116,0,2049,1998,2049,6063,2049,2010,2049,1998,2049,4287,1,6391,7,17,10,1,6389,2049,2047,10,6365,6406,158,86,97,108,117,101,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6396,6442,171,102,114,111,109,0,2049,79,2,1,6463,7,1,6456,7,1,6406,17,16,10,1,6451,2049,2059,2049,2858,10,1,6448,2049,2239,3,10,6434,6475,171,116,111,0,2,2049,79,1,6494,7,2049,68,1,97,18,2049,2845,1,6406,17,15,4,10,1,6481,2049,2239,3,10,6365,6511,171,114,101,111,114,100,101,114,0,1,6517,7,2049,6442,10,1,6514,2049,2047,2049,6475,10,6500,6533,171,99,117,114,114,121,0,2049,1883,1,6546,7,4,2049,1749,2049,1795,2049,1817,10,1,6538,2049,2047,10,6524,6559,171,100,111,101,115,0,2049,1575,4,2049,6533,2049,1557,2049,185,16,1,171,2049,1636,10,6551,6588,171,100,58,102,111,114,45,101,97,99,104,0,1,2,1,6619,7,15,25,2049,1998,1,6611,7,1,6606,7,4,8,10,1,6603,2049,2047,10,1,6600,2049,2047,1,6593,7,10,1,6593,8,3,10,6574,6632,171,99,104,97,114,0,1,110,1,6642,7,2049,4800,2049,3345,10,1,6637,2049,2495,1,116,1,6656,7,2049,4785,2049,3345,10,1,6651,2049,2495,2049,3345,10,6624,6673,171,115,116,114,105,110,103,0,2049,68,25,2049,3345,1,6673,7,10,6663,6690,171,116,121,112,101,0,1,99,1,6699,7,4,2049,3345,10,1,6695,2049,2495,1,115,1,6713,7,4,2049,6673,3,10,1,6708,2049,2495,1,110,1,6729,7,4,2049,5887,2049,6673,3,10,1,6722,2049,2495,3,10,6682,6745,171,104,97,110,100,108,101,0,1,92,1,6755,7,2049,68,2049,6632,10,1,6750,2049,2495,1,37,1,6769,7,2049,68,2049,6690,10,1,6764,2049,2495,2049,3345,10,6574,6793,171,115,58,119,105,116,104,45,102,111,114,109,97,116,0,1,6825,7,2049,3687,1,6820,7,2049,3439,1,6815,7,2049,68,25,2049,6745,1,6806,7,10,1,6806,8,3,10,1,6801,2049,2059,10,1,6796,2049,3465,10,6776,6841,171,115,58,99,111,110,115,116,0,1,6847,7,2049,3729,10,1,6844,2049,2047,2049,1952,10,6830,6868,171,115,101,116,58,108,101,110,103,116,104,0,15,10,6854,6890,171,115,101,116,58,102,114,111,109,45,114,101,115,117,108,116,115,0,2049,1682,1,6897,7,8,10,1,6895,2049,2047,2049,1682,4,18,2049,1883,1,6924,7,2,2049,132,1,6919,7,2049,132,10,1,6916,2049,2239,10,1,6910,2049,2047,10,6870,6948,171,115,101,116,58,102,114,111,109,45,115,116,114,105,110,103,0,2049,3829,1,6962,7,1,6957,7,10,1,6956,2049,4043,10,1,6953,2049,6533,2049,6890,10,6929,6974,158,81,0,0,6929,6991,171,115,101,116,58,102,111,114,45,101,97,99,104,0,1,6974,2049,35,1,7030,7,1,6974,2049,37,2049,68,1,7024,7,2049,68,4,1,7019,7,1,6974,2049,35,8,10,1,7013,2049,2047,10,1,7007,2049,2239,3,10,1,6998,2049,2047,1,6974,2049,37,10,6975,7050,171,115,101,116,58,100,117,112,0,2049,1883,1,7070,7,2,15,2049,132,1,7065,7,2049,132,10,1,7062,2049,6991,10,1,7055,2049,2047,10,7039,7089,171,115,101,116,58,102,105,108,116,101,114,0,1,7122,7,2049,1981,1,7099,7,8,10,1,7097,2049,2047,4,1,7110,7,2049,132,10,1,7107,1,7117,7,3,10,1,7115,2049,122,10,1,7092,2049,6533,2049,1883,1,7139,7,2049,1981,15,2049,132,2049,6991,10,1,7131,2049,2047,2049,1883,2049,1981,18,2049,2858,2049,1981,16,10,7075,7159,158,70,0,0,7075,7177,171,115,101,116,58,99,111,110,116,97,105,110,115,63,0,1,7159,2049,3017,1,7197,7,2049,1981,11,1,7159,2049,35,22,1,7159,2049,37,10,1,7184,2049,6991,3,1,7159,2049,35,10,7160,7231,171,115,101,116,58,99,111,110,116,97,105,110,115,45,115,116,114,105,110,103,63,0,1,7159,2049,3017,1,7252,7,2049,1981,2049,104,1,7159,2049,35,22,1,7159,2049,37,10,1,7238,2049,6991,3,1,7159,2049,35,10,7207,7273,171,115,101,116,58,109,97,112,0,1,7280,7,8,2049,132,10,1,7276,2049,6533,2049,1883,1,7297,7,2049,1981,15,2049,132,2049,6991,10,1,7289,2049,2047,10,7262,7317,171,115,101,116,58,114,101,118,101,114,115,101,0,2049,1883,1,7354,7,2049,68,1,7331,7,17,2049,2858,10,1,7327,2049,2059,2,2049,132,1,7348,7,2,15,2049,132,2049,2858,10,1,7341,2049,2239,3,10,1,7322,2049,2047,10,7302,7370,171,115,101,116,58,110,116,104,0,17,2049,2845,10,7359,7388,171,115,101,116,58,114,101,100,117,99,101,0,1,7393,7,4,10,1,7391,2049,2047,2049,6991,10,7374,7406,158,73,48,0,0,0,0,7400,7415,158,73,49,0,0,0,0,7409,7424,158,73,50,0,0,0,0,7418,7433,158,73,51,0,0,0,0,7427,7446,171,111,112,99,111,100,101,0,2049,3702,46,46,0,1,7448,1,7459,7,1,0,10,1,7456,2049,2544,2049,3702,108,105,0,1,7465,1,7476,7,1,1,10,1,7473,2049,2544,2049,3702,100,117,0,1,7482,1,7493,7,1,2,10,1,7490,2049,2544,2049,3702,100,114,0,1,7499,1,7510,7,1,3,10,1,7507,2049,2544,2049,3702,115,119,0,1,7516,1,7527,7,1,4,10,1,7524,2049,2544,2049,3702,112,117,0,1,7533,1,7544,7,1,5,10,1,7541,2049,2544,2049,3702,112,111,0,1,7550,1,7561,7,1,6,10,1,7558,2049,2544,2049,3702,106,117,0,1,7567,1,7578,7,1,7,10,1,7575,2049,2544,2049,3702,99,97,0,1,7584,1,7595,7,1,8,10,1,7592,2049,2544,2049,3702,99,99,0,1,7601,1,7612,7,1,9,10,1,7609,2049,2544,2049,3702,114,101,0,1,7618,1,7629,7,1,10,10,1,7626,2049,2544,2049,3702,101,113,0,1,7635,1,7646,7,1,11,10,1,7643,2049,2544,2049,3702,110,101,0,1,7652,1,7663,7,1,12,10,1,7660,2049,2544,2049,3702,108,116,0,1,7669,1,7680,7,1,13,10,1,7677,2049,2544,2049,3702,103,116,0,1,7686,1,7697,7,1,14,10,1,7694,2049,2544,2049,3702,102,101,0,1,7703,1,7714,7,1,15,10,1,7711,2049,2544,2049,3702,115,116,0,1,7720,1,7731,7,1,16,10,1,7728,2049,2544,2049,3702,97,100,0,1,7737,1,7748,7,1,17,10,1,7745,2049,2544,2049,3702,115,117,0,1,7754,1,7765,7,1,18,10,1,7762,2049,2544,2049,3702,109,117,0,1,7771,1,7782,7,1,19,10,1,7779,2049,2544,2049,3702,100,105,0,1,7788,1,7799,7,1,20,10,1,7796,2049,2544,2049,3702,97,110,0,1,7805,1,7816,7,1,21,10,1,7813,2049,2544,2049,3702,111,114,0,1,7822,1,7833,7,1,22,10,1,7830,2049,2544,2049,3702,120,111,0,1,7839,1,7850,7,1,23,10,1,7847,2049,2544,2049,3702,115,104,0,1,7856,1,7867,7,1,24,10,1,7864,2049,2544,2049,3702,122,114,0,1,7873,1,7884,7,1,25,10,1,7881,2049,2544,2049,3702,101,110,0,1,7890,1,7901,7,1,26,10,1,7898,2049,2544,3,1,0,10,7436,7917,171,112,97,99,107,0,1,7406,2049,7446,1,7415,2049,7446,1,7424,2049,7446,1,7433,2049,7446,1,-24,24,4,1,-16,24,17,4,1,-8,24,17,4,17,10,7374,7954,171,105,0,2,1,7406,1,2,2049,3113,1,2,17,2,1,7415,1,2,2049,3113,1,2,17,2,1,7424,1,2,2049,3113,1,2,17,1,7433,1,2,2049,3113,2049,7917,2049,132,10,7949,8000,171,100,0,2049,132,10,7995,8008,171,114,0,2049,224,2049,185,15,2049,132,10,8003,8023,183,97,115,123,0,1,151,2049,35,1,151,2049,3017,10,8016,8039,183,125,97,115,0,1,151,2049,37,10,8032,8060,158,67,117,114,114,101,110,116,45,76,105,110,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8044,9101,171,99,111,117,110,116,45,116,111,107,101,110,115,0,1,9108,7,2049,5144,11,10,1,9104,2049,4111,2049,79,10,9085,9129,171,110,101,120,116,45,116,111,107,101,110,0,2049,5144,2049,6376,10,9115,9152,171,112,114,111,99,101,115,115,45,116,111,107,101,110,115,0,1,9191,7,2049,9129,4,1,9184,7,2,2049,79,2049,2382,1,9172,7,2049,399,10,1,9169,1,9179,7,3,10,1,9177,2049,122,10,1,9161,2049,2047,2049,2845,10,1,9155,2049,2239,2049,399,10,8032,9212,171,115,58,101,118,97,108,117,97,116,101,0,1,8060,2049,4330,1,8060,2,2049,9101,2049,9152,10,9198,9232,171,112,117,116,99,0,1000,10,9224,9240,171,110,108,0,2049,4800,2049,9232,10,9234,9251,171,115,112,0,2049,5144,2049,9232,10,9245,9263,171,116,97,98,0,2049,4785,2049,9232,10,9256,9276,171,112,117,116,115,0,1,9282,7,2049,9232,10,1,9279,2049,4043,10,9268,9295,171,112,117,116,110,0,2049,5887,2049,9276,10,9287,9309,171,119,111,114,100,115,0,1,9319,7,2049,189,2049,9276,2049,9251,10,1,9312,2049,6588,10,9300,9333,171,114,101,115,101,116,0,2049,1682,25,5,3,6,1,1,18,1,9335,7,10,9324,9360,171,100,117,109,112,45,115,116,97,99,107,0,2049,1682,25,3,5,2049,9360,6,2,2049,9295,2049,9251,10,9346,9382,171,103,101,116,99,0,1001,10,9374,9398,171,110,58,116,111,45,102,108,111,97,116,0,1,0,-6000,10,9384,9416,171,115,58,116,111,45,102,108,111,97,116,0,1,1,-6000,10,9402,9435,171,102,58,116,111,45,115,116,114,105,110,103,0,2049,3687,2,1,2,-6000,10,9420,9449,171,102,58,43,0,1,3,-6000,10,9442,9460,171,102,58,45,0,1,4,-6000,10,9453,9471,171,102,58,42,0,1,5,-6000,10,9464,9482,171,102,58,47,0,1,6,-6000,10,9475,9497,171,102,58,102,108,111,111,114,0,1,7,-6000,10,9486,9510,171,102,58,101,113,63,0,1,8,-6000,10,9501,9524,171,102,58,45,101,113,63,0,1,9,-6000,10,9514,9537,171,102,58,108,116,63,0,1,10,-6000,10,9528,9550,171,102,58,103,116,63,0,1,11,-6000,10,9541,9565,171,102,58,100,101,112,116,104,0,1,12,-6000,10,9554,9578,171,102,58,100,117,112,0,1,13,-6000,10,9569,9592,171,102,58,100,114,111,112,0,1,14,-6000,10,9582,9606,171,102,58,115,119,97,112,0,1,15,-6000,10,9596,9620,171,102,58,111,118,101,114,0,2049,9435,2049,9578,2049,9416,2049,9606,10,9610,9639,171,102,58,116,117,99,107,0,2049,9606,2049,9620,10,9629,9659,171,102,58,112,111,115,105,116,105,118,101,63,0,1,0,2049,9398,2049,9550,10,9644,9681,171,102,58,110,101,103,97,116,105,118,101,63,0,1,0,2049,9398,2049,9537,10,9666,9700,171,102,58,110,101,103,97,116,101,0,1,-1,2049,9398,2049,9471,10,9688,9716,171,102,58,97,98,115,0,2049,9578,2049,9681,1,9726,7,2049,9700,10,1,9723,2049,130,10,9707,9740,171,102,58,108,111,103,0,1,16,-6000,10,9731,9755,171,102,58,112,111,119,101,114,0,1,17,-6000,10,9744,9774,171,102,58,116,111,45,110,117,109,98,101,114,0,1,18,-6000,10,9759,9790,183,112,114,101,102,105,120,58,46,0,2049,1836,1,9798,7,2049,3729,10,1,9795,1,9806,7,2049,3661,10,1,9803,2049,122,1,9416,2049,171,10,9778,9823,171,112,117,116,102,0,2049,9435,2049,9276,10,9815,9842,171,103,111,112,104,101,114,58,103,101,116,0,-6200,10,9828,9856,171,115,121,115,58,97,114,103,99,0,-6100,10,9844,9870,171,115,121,115,58,97,114,103,118,0,2049,3687,4,-6101,10,9858,0,158,102,105,108,101,58,82,0,9875,1,158,102,105,108,101,58,87,0,9885,2,158,102,105,108,101,58,65,0,9895,3,158,102,105,108,101,58,82,43,0,9905,9929,171,102,105,108,101,58,111,112,101,110,0,118,10,9916,9945,171,102,105,108,101,58,99,108,111,115,101,0,119,10,9931,9960,171,102,105,108,101,58,114,101,97,100,0,120,10,9947,9976,171,102,105,108,101,58,119,114,105,116,101,0,121,10,9962,9991,171,102,105,108,101,58,116,101,108,108,0,122,10,9978,10006,171,102,105,108,101,58,115,101,101,107,0,123,10,9993,10021,171,102,105,108,101,58,115,105,122,101,0,124,10,10008,10038,171,102,105,108,101,58,100,101,108,101,116,101,0,125,10,10023,10054,171,102,105,108,101,58,102,108,117,115,104,0,126,10,10040,10072,171,102,105,108,101,58,101,120,105,115,116,115,63,0,1,0,2049,9929,2,2049,2382,1,10087,7,2049,9945,2049,2270,10,1,10082,1,10096,7,3,2049,2282,10,1,10092,2049,122,10,10056,10108,158,70,73,68,0,0,10101,10118,158,70,83,105,122,101,0,0,10109,10129,158,65,99,116,105,111,110,0,0,10119,10140,158,66,117,102,102,101,114,0,0,10130,10150,171,45,101,111,102,63,0,1,10108,2049,35,2049,9991,1,10118,2049,35,13,10,10141,10174,171,112,114,101,115,101,114,118,101,0,1,10108,1,10191,7,1,10118,1,10186,7,8,10,1,10184,2049,3036,10,1,10179,2049,3036,10,10056,10214,171,102,105,108,101,58,114,101,97,100,45,108,105,110,101,0,1,10108,2049,37,1,10282,7,2049,1883,2,1,10140,2049,37,2049,3439,1,10274,7,1,10108,2049,35,2049,9960,2,2049,3345,1,10249,7,2049,4845,11,10,1,10245,1,10258,7,2049,4800,11,10,1,10254,1,10267,7,2049,4643,11,10,1,10263,2049,2111,22,22,10,1,10233,2049,2209,2049,3369,3,10,1,10221,2049,3465,1,10140,2049,35,10,10196,10313,171,102,105,108,101,58,102,111,114,45,101,97,99,104,45,108,105,110,101,0,1,10366,7,1,10129,2049,37,1,0,2049,9929,1,10108,2049,37,1,10108,2049,35,2049,10021,1,10118,2049,37,1,10355,7,1,10108,2049,35,2049,10214,1,10129,2049,35,8,2049,10150,10,1,10341,2049,2182,1,10108,2049,35,2049,9945,10,1,10316,2049,10174,10,10291,10378,158,70,73,68,0,0,10371,10387,158,83,105,122,101,0,0,10291,10402,171,102,105,108,101,58,115,108,117,114,112,0,1,10452,7,1,0,2049,9929,1,10378,2049,37,2049,3439,1,10378,2049,35,2049,10021,1,10387,2049,37,1,10387,2049,35,1,10441,7,1,10378,2049,35,2049,9960,2049,3345,10,1,10432,2049,2239,1,10378,2049,35,2049,9945,10,1,10405,2049,3465,10,0 }; diff --git a/literate/RetroForth.md b/literate/RetroForth.md index 4724057..71705b2 100644 --- a/literate/RetroForth.md +++ b/literate/RetroForth.md @@ -938,6 +938,10 @@ The format language is simple: }} ~~~ +~~~ +:s:const (ss-) [ s:keep ] dip const ; +~~~ + ## Sets Sets are statically sized arrays. They are represented in memory as: diff --git a/literate/Rx.md b/literate/Rx.md index c8c860b..18c3b56 100644 --- a/literate/Rx.md +++ b/literate/Rx.md @@ -1,7 +1,7 @@ ____ _ _ || \\ \\ // ||_// )x( - || \\ // \\ 2017.10 + || \\ // \\ 2017.11 a minimalist forth for nga *Rx* (*retro experimental*) is a minimal Forth implementation for the @@ -55,7 +55,7 @@ r 9999 d 1536 : Version -d 201710 +d 201711 ~~~ Both of these are pointers. `Dictionary` points to the most recent diff --git a/ngaImage b/ngaImage index 267356fa16aa39524f0568b5dd339998b82b343c..912d09388a5106955dd92d398a0298a9d9868e42 100644 GIT binary patch delta 2811 zcma)8Yitx%6rNeSg@pxXS?si3w#&LDWg`t;AvQcqk%vg6pgewPrKm^>+tSzexy4|B zpt1YlD29hX1BqY*v4I~TZ2(C~co{`PKtOHONC+)yqNy<;erI}bd*zpt+}v}&^PTUU zxv!bMhis1y*sLL~D>OhGh<`|> z8*(z7o_=+k$goAI52fBRGnfJ|Yo9@rdH+%JGIj&wY-$aAD1C!LW5W~IJ})%6`dnel z=t)BH^5{Xupuo0f^k=&dMdrJJ&qmt^dl{O17%xJ`0xx^Hz5raDtrlZzu3*om$6<3; zg+#!b2Q)=6H%OeBiVA20Z@QM2mAPlF7G9o%A&PgUz^(aLR3->c0sJ3QYuOarJ`XLa zGCA`uYgTuP$RhM|UgC-xWA9tATe_ z@YK35vk!rd@XPEcsJq;>{oZ))D4RAPyb8?YfwAA560gmv<+dLLHk4d5O?^LwsyzA$dZj8S_o#?`df)7RN^u*;m#DQW-+l(x9ZUOHc(>ybJ;K*1m(ykE~%lg=zwhpkPg<;u=#A0dv#Rh7|g!#_5lpt5mS!DVOj z52zjZHcRymRO15Qt*G)_%D4NJmercMYpgf!pN9h?qD_fV&)s1}1RU*x)j`d*rhdxG zcevJYd@b;+bPo6>3x7~+_`etUkBTZE5LpKf9%eMJ&hY;#m=6`EQ(-=!HFbgEe+rhC zMX|ax{jn8(65**?{jcFdFP9Tvk%2^`sIuNokH9nq^I3(7TY7-$vzT-04gW;JoT4xd zg_#Ftz%fm*=Fw;Mre0`88<7;cQtx!UEPN}d3%*w^pR>X6zb^216=k=g{IlEf#g;_(J8v>4I!P-to8%%wx6@9b8aKr?T3mN!M3m?~L`1cF^3q{pbR6n{UjKP0J8_Fp~7GWumH>vT6}dcOnC*locbBJ>!$MXtEpdyyGXkbg>E95i{(&QoFBw90)% z#qs=56xA~KK34|?9?O5D7NK(%J;(Q;H|Si#O*i9)eOR`prBip@H`0K`{xRqSl#v)j zyg(+?{6t`YGZDy4OJjS&nL8IF`My$xt0(}@Rms1msTda_D#tYw7Ux=sz8I~IdPlg) znRFJe!$@j%g2D03=01R4&OnL4I`H?!*m8^`Xl1uQ#8(4GB?93GR*afPNp%exN)Y_c^iH|>?DIKZJP(VsF4M!*DLf zL#SA6ag@~p2ywNi;PYD9o$kfHtzywbWB%6s;6d-h(kx zbg963AMARUsCk0RL`vk|3*dncEKdr4ZQ_g$o`|z|3xvg`Q zs0&%UkU0yCTShz2JxVV=6-^KykP4!b*y`lC~2_CRpB8O{o zliakU!#9<;=Lf`s)Ky>UaUxEILh^*YP`a=85NdJ{|ED(*oHFQ{lva|duBRhmZ%TPK zt*e`?Zl-HtpI_d9Dk13Hmlg2a?c|3W^3*q}s=?590~<%4LQ~yEi3YE_pWbZ<=D#8` zM?W{)Mk&_9KTc|6NP8RBr?z%^;{!!~@c6#-bK^WEUr4#mGCB4>@XHu{gC4^upz9M1 z?HeHd)Ys@6dll9|HVrmT^ZW=iDN*M$b?k3I?q<`1rp1268omwbnC<5ddVD!Oq*0J(rG9gC;ZjV8Bix`^eI8Zp&bBe8;r+dp5#mP+dK)49ZE*GF{!GQljB znDSn%p{_{4^@LzOO<$o_1u#5}5x46ZfrrV{Y^t@kYGJePj|zO7q{^#wR`)#hG@JQV z_KJu1;U$qlQigo)I*}1@?Gvm+bPe^o?0RWY-Sv*ZPm(`ss>f}7O;q=PDDclERX!k2 zA2@i}(M~Wg2<8=u>6Vz^(b;HV{58QEuxKzkS^e2g&x+~(K@k{|(kDpif7{FrVBQnV z@zd_#c)X=YS{g^+#tb?DrVa+5RIkL;C1w_w0heE}^5~zKspi_*^^sJ{i@RO(M68HP z;-~T_wN$;UP;xIR6A_u88BZH%!3j$OJW|NWJ|zxM6li?tJPF{?Ce#oy6cp{ zKcgz(pHRHjtKGyIyhQt2eT(@h^YOmRGc@~0`2(YTKF`B^`m^;Bi{A#fQJ@>Cn=$yZ z|Kl-Vrn0smzcTSVfL|Y-X-id;urjky@e=oic{`~5DE|X;qs@j@ zOv~GsXbWML(vJ4o_V>re6DQk?b*&s=goa)&R@-RN9XF;tAooR7h_Eo}loa zmD-E24pZ-*l~cZkWxsR4OTgyy&KvM0Ssgxn*%Wn{)(5~DJ14kfgdSsODcoULJhf{1CE& zo*Y=*$Q;beF}f+4ZqSy5yQCDJqty!r=QEqW$ay@6N5Dtd}nJy@MUd;lz#zV-Mcve