From 9a5b3ea4ac1d651218ffc720bad832228fc12c72 Mon Sep 17 00:00:00 2001 From: crc Date: Wed, 1 Dec 2021 10:40:02 +0000 Subject: [PATCH] retro.c now treats tab as whitespace when including files FossilOrigin-Name: 719a89d79908ef4df290ca99469a739b21dd5c21a6595934e5759560e8d6b784 --- RELEASE-NOTES | 39 +- vm/nga-c-native-x86/image.c | 1121 +++++++++++++++++------------------ vm/nga-c/image.c | 26 +- vm/nga-c/retro.c | 2 +- 4 files changed, 575 insertions(+), 613 deletions(-) diff --git a/RELEASE-NOTES b/RELEASE-NOTES index c24ba7e..ca1a24d 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -1,52 +1,19 @@ -# RetroForth 2021.11 Release Notes - +# RetroForth 2022.1 Release Notes + # Core Language - deprecated - NoEcho - - new words - h:fetch h:store w:fetch w:store - w:fetch-next w:store-next - h:fetch-next h:store-next - b:fetch-next b:store-next - s:fetch s:store - - dictionary - added d:source field - # VM ## nga-c: retro.c -- added optional support for multiple virtual processor cores -- started work on an optional ffi -- added optional support for unsigned numeric operations -- internal cleanups -- better error messages when socket device not present -- display warning when no code blocks are found in a source file - -## nga-rust - -- new implementation from bitmapper +- recognize TAB as whitespace when including files # Documentation -- Updated Build instructions for Linux (re: FFI support & libdl) -- Updated the description & example for `a:to-string` -- `d:source` field now populated for all standard words -- fixed stack comment for `a:store` - # Other - -- moved deprecated words to `interface/` instead of `package/extensions` -- added a tool to identify words missing `d:source` data -- start work on proper utf8 string support -- nga/unix: catch some signals for debugging purposes -- fix bugs in examplse - - - retro-stats - - alternate-listener diff --git a/vm/nga-c-native-x86/image.c b/vm/nga-c-native-x86/image.c index 530954a..9747d3e 100644 --- a/vm/nga-c-native-x86/image.c +++ b/vm/nga-c-native-x86/image.c @@ -10,18 +10,18 @@ #define CELL_MAX LLONG_MAX - 1 #endif #endif -CELL ngaImageCells = 15564; -CELL ngaImage[] = { 1793,15475,15464,15563,202111,405,377,1150,1535,0,10,1,10,2,10,3,10,4,10, +CELL ngaImageCells = 15195; +CELL ngaImage[] = { 1793,15106,15095,15194,202111,405,377,1150,1535,0,10,1,10,2,10,3,10,4,10, 5,10,6,10,7,10,8,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,68223234,1,2575, - 85000450,1,656912,3259,3268,268505089,63,62,285281281,0,63,2063,10,101384453,0,9,10,68485378,255,18350338, + 85000450,1,656912,3165,3174,268505089,63,62,285281281,0,63,2063,10,101384453,0,9,10,68485378,255,18350338, 8,255,1045,18350338,16,255,1045,352393217,24,255,10,268289,-24,68229121,-16,68229121,-8,2577,2049,56, 25,459011,97,524546,97,302256641,1,10,16974595,0,50529798,10,25,524547,116,50529798,10,17108738,1,251790353, 101777669,1,17565186,107,524545,111,64,167838467,-1,134287105,3,59,659457,3,459023,128,2049,56,25,2049, 128,1793,135,2049,135,117506307,0,128,0,524545,26,133,168820993,0,147,1642241,147,134283523,11,133, 1793,128,524545,2049,128,1793,128,16846593,147,161,178,1793,64,16846593,147,133,178,1793,64,7, 10,659713,1,659713,2,659713,3,659713,4,1793,190,17108737,3,2,524559,128,2049,128,2049,128, - 524545,0,128,2049,142,168820998,2,3243,1150,167841793,206,9,17826049,0,206,2,15,25,524546,186, + 524545,0,128,2049,142,168820998,2,3149,1150,167841793,206,9,17826049,0,206,2,15,25,524546,186, 134287105,207,116,2305,208,459023,216,134287361,207,211,659201,206,10,659969,7,2049,56,25,17694978,58, 232,9,84152833,48,319750404,231,117507601,234,184618754,45,25,16974851,-1,168886532,1,134284289,1,247,134284289,0, 234,660227,32,0,0,115,105,103,105,108,58,125,0,285278479,264,6,2576,524546,102,1641217, @@ -29,7 +29,7 @@ CELL ngaImage[] = { 1793,15475,15464,15563,202111,405,377,1150,1535,0,10,1,10,2, 154,1793,302,17760513,166,3,188,8,251727617,3,2,2049,180,16,168820993,-1,147,2049,180,2575, 2049,226,17563906,0,316,9,1793,154,285282049,3,2,134287105,147,313,524545,1793,128,16846593,3,0, 128,8,659201,3,524545,26,133,17043201,3,11,2049,133,2049,128,268505092,147,1642241,147,656131,659201, - 3,524545,11,133,2049,128,459009,23,133,459009,55,133,459009,19,133,459009,21,133,1793,15531, + 3,524545,11,133,2049,128,459009,23,133,459009,55,133,459009,19,133,459009,21,133,1793,15162, 10,524546,180,134284303,182,1807,1150,1642241,263,285282049,385,1,459012,380,117509889,206,380,134287105,385,226, 16845825,0,393,377,1793,64,1793,407,17826050,385,282,8,117506305,386,396,64,2116,11340,11700,11400, 13685,13104,12432,12402,9603,9801,11514,11413,11110,12528,11948,10302,13340,9700,13455,12753,10500,10670,12654,13320, @@ -126,495 +126,476 @@ CELL ngaImage[] = { 1793,15475,15464,15563,202111,405,377,1150,1535,0,10,1,10,2, 0,98,105,64,0,2,2049,2230,10,2236,2256,166,0,116,114,105,0,1793,2265,1, 2203,2049,2192,2049,2203,10,1,2258,2049,2192,8,10,2248,2280,166,0,116,114,105,42, 0,1793,2297,1793,2290,4,1,2192,2049,2192,10,1,2284,2049,2192,2049,2192,10,1,2282, - 2049,2192,8,10,2271,2312,166,0,116,114,105,64,0,2,2,2049,2280,10,2303,2330, - 166,0,99,108,101,97,118,101,47,50,0,2049,2216,10,2317,2346,166,0,99,108, - 101,97,118,101,47,51,0,2049,2256,10,2333,2362,166,0,115,112,114,101,97,100, - 47,50,0,2049,2230,10,2349,2378,166,0,115,112,114,101,97,100,47,51,0,2049, - 2280,10,2365,2393,166,0,97,112,112,108,121,47,50,0,2049,2244,10,2381,2408,166, - 0,97,112,112,108,121,47,51,0,2049,2312,10,2396,2421,166,0,119,104,105,108, - 101,0,1793,2430,525570,1639430,3,1,2423,7,10,1,2423,8,3,10,2411,2445,166,0, - 117,110,116,105,108,0,1793,2456,525570,385942534,-1,25,3,1,2447,7,10,1,2447,8, - 3,10,2435,2473,166,0,102,111,114,101,118,101,114,0,1793,2477,8,10,1,2475, - 2049,2203,1,2473,7,10,2461,2495,166,0,116,105,109,101,115,0,1793,2507,4,25, - 33886721,1,2053,1542,1,2498,7,10,1,2497,8,3,10,2485,2524,178,0,115,105,103, - 105,108,58,124,0,2049,226,1793,2532,2049,180,15,10,1,2528,1793,2540,2049,182,15, - 10,1,2536,2049,2216,2049,1893,1793,2555,1,154,2049,2192,2049,1850,10,1,2548,1,25, - 2049,64,10,2512,2571,166,0,84,82,85,69,0,1,-1,10,2562,2584,166,0,70, - 65,76,83,69,0,1,0,10,2574,2596,166,0,99,97,115,101,0,1793,2601,67502597, - 11,10,1,2598,2049,2192,4,1793,2613,772,8,2049,2571,10,1,2608,1793,2621,3,2049, - 2584,10,1,2617,2049,64,25,6,3,3,10,2587,2641,166,0,115,58,99,97,115, - 101,0,1793,2647,67502597,2049,116,10,1,2643,2049,2192,4,1793,2659,772,8,2049,2571,10, - 1,2654,1793,2667,3,2049,2584,10,1,2663,2049,64,25,6,3,3,10,2630,2684,166, - 0,110,111,116,0,1,-1,23,10,2676,2698,166,0,108,116,101,113,63,0,2049, - 2181,101516555,22,10,2688,2713,166,0,103,116,101,113,63,0,4,2049,2698,10,2703,2727, - 166,0,110,58,77,65,88,0,1,-5,15,10,2717,2741,166,0,110,58,77,73, - 78,0,1,-4,15,10,2731,2757,166,0,110,58,122,101,114,111,63,0,1,0, - 11,10,2745,2774,166,0,110,58,45,122,101,114,111,63,0,1,0,12,10,2761, - 2794,166,0,110,58,110,101,103,97,116,105,118,101,63,0,1,0,13,10,2778, - 2814,166,0,110,58,112,111,115,105,116,105,118,101,63,0,1,-1,14,10,2798, - 2843,166,0,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,2818,2859,166,0,110,58,101,118,101,110,63,0, - 1,2,20,3,2049,2757,10,2847,2877,166,0,110,58,111,100,100,63,0,2049,2859, - 2049,2684,10,2866,2890,166,0,105,102,59,0,67502597,1,74,2049,2192,25,6,771,10, - 2882,2908,166,0,45,105,102,59,0,67502597,1,72,2049,2192,2049,2684,25,6,771,10, - 2899,2927,172,0,114,111,116,0,67503109,10,2919,2935,172,0,47,0,197652,10,2929,2945, - 172,0,109,111,100,0,788,10,2937,2957,166,0,110,58,112,111,119,0,1,1, - 4,1793,2965,67502597,19,10,1,2962,2049,2495,772,10,2947,2984,166,0,110,58,110,101, - 103,97,116,101,0,1,-1,19,10,2971,3001,166,0,110,58,115,113,117,97,114, - 101,0,4866,10,2988,3014,166,0,110,58,115,113,114,116,0,1,1,1793,3032,2049, - 2181,197652,67502597,18,1,2,197652,25,17,1,3018,7,10,1,3018,8,772,10,3003,3047, - 166,0,110,58,109,105,110,0,2049,2181,13,1793,3054,3,10,1,3052,1793,3060,772, - 10,1,3058,2049,64,10,3037,3075,166,0,110,58,109,97,120,0,2049,2181,14,1793, - 3082,3,10,1,3080,1793,3088,772,10,1,3086,2049,64,10,3065,3103,166,0,110,58, - 97,98,115,0,2,2049,2794,1,2984,9,10,3093,3122,166,0,110,58,108,105,109, - 105,116,0,4,5,2049,3047,6,2049,3075,10,3110,3140,166,0,110,58,105,110,99, - 0,659713,1,10,3130,3153,166,0,110,58,100,101,99,0,659969,1,10,3143,3171,166, - 0,110,58,98,101,116,119,101,101,110,63,0,67503109,1793,3179,67503109,67503109,2049,3122,10, - 1,3174,2049,2203,11,10,3156,3199,166,0,83,99,111,112,101,76,105,115,116,0, - 15193,15295,10,3185,3209,166,0,123,123,0,2049,1573,2,1,3199,2049,59,16,10,3202, - 3235,166,0,45,45,45,114,101,118,101,97,108,45,45,45,0,2049,1573,1,3199, - 2049,3140,16,10,3218,3250,166,0,125,125,0,1,3199,2049,56,4,15,11,1793,3264, - 3841,3199,4097,2,10,1,3259,1793,3290,3841,3199,1793,3285,1,2,983567,1,3199,2049,3140, - 1641487,3,1,3274,7,10,1,3272,8,16,10,1,3268,2049,64,10,3243,3304,166,0, - 66,121,116,101,0,10,3295,3319,166,0,98,121,116,101,45,109,97,115,107,0, - 1,255,4,1,8,19,2,1793,3333,2049,2984,24,21,10,1,3328,2049,2192,24,10, - 3305,3351,166,0,114,101,112,108,97,99,101,0,1,0,1793,3380,1793,3375,1793,3370, - 1793,3365,3,3841,3304,10,1,3361,2049,2192,10,1,3359,2049,2192,10,1,3357,2049,2192, - 10,1,3355,2049,2596,1,1,1793,3406,1793,3401,1793,3396,3,3841,3304,10,1,3392,2049, - 2192,10,1,3390,2049,2192,10,1,3388,2049,2596,1,2,1793,3425,1793,3420,3,3841,3304, - 10,1,3416,2049,2192,10,1,3414,2049,2596,1,3,1793,3437,3,3841,3304,10,1,3433, - 2049,2596,3,10,3243,3465,166,0,98,58,116,111,45,98,121,116,101,45,97,100, - 100,114,101,115,115,0,1,4,19,10,3443,3481,166,0,98,58,102,101,116,99, - 104,0,1,4,20,4,1,4,20,67503109,17,15,4,2049,3319,10,3469,3507,166,0, - 98,58,115,116,111,114,101,0,4,4097,3304,1,4,20,4,1793,3521,2,15,2049, - 76,10,1,3516,2049,2192,2049,3351,2049,90,4,16,10,3495,3544,166,0,104,58,102, - 101,116,99,104,0,1793,3549,2049,3481,10,1,3546,1793,3561,2049,3140,2049,3481,1,-8, - 24,10,1,3553,2049,2216,22,10,3532,3579,166,0,104,58,115,116,111,114,101,0, - 2049,2181,1793,3587,1,255,21,10,1,3583,2049,2192,2049,3507,2049,3140,1793,3604,1,8, - 24,1,255,21,10,1,3597,2049,2192,2049,3507,10,3567,3623,166,0,119,58,102,101, - 116,99,104,0,1,4,197652,15,10,3611,3640,166,0,119,58,115,116,111,114,101, - 0,1,4,197652,16,10,3628,3662,166,0,119,58,102,101,116,99,104,45,110,101, - 120,116,0,2,1,4,17,4,2049,3623,10,3645,3687,166,0,104,58,102,101,116, - 99,104,45,110,101,120,116,0,2,1,2,17,4,2049,3544,10,3670,3712,166,0, - 98,58,102,101,116,99,104,45,110,101,120,116,0,2,1,1,17,4,2049,3481, - 10,3695,3737,166,0,119,58,115,116,111,114,101,45,110,101,120,116,0,2,1, - 4,17,1,3640,2049,2192,10,3720,3763,166,0,104,58,115,116,111,114,101,45,110, - 101,120,116,0,2,1,2,17,1,3579,2049,2192,10,3746,3789,166,0,98,58,115, - 116,111,114,101,45,110,101,120,116,0,2,1,1,17,1,3507,2049,2192,10,3772, - 3811,166,0,118,58,105,110,99,45,98,121,0,1793,3815,4367,10,1,3813,2049,2203, - 16,10,3798,3834,166,0,118,58,100,101,99,45,98,121,0,1793,3838,1180687,10,1, - 3836,2049,2203,16,10,3821,3854,166,0,118,58,105,110,99,0,1,1,4,2049,3811, - 10,3844,3870,166,0,118,58,100,101,99,0,1,1,4,2049,3834,10,3860,3888,166, - 0,118,58,108,105,109,105,116,0,251790597,1542,2049,3122,4100,10,3876,3903,166,0,118, - 58,111,110,0,2049,2571,4100,10,3894,3917,166,0,118,58,111,102,102,0,2049,2584, - 4100,10,3907,3931,166,0,97,108,108,111,116,0,1,3,2049,3811,10,3921,3951,166, - 0,118,58,112,114,101,115,101,114,118,101,0,983556,1793,3959,1,25,2049,2192,10, - 1,3954,2049,2192,4100,10,3936,3978,166,0,118,58,117,112,100,97,116,101,0,4, - 1793,3985,15,4,8,10,1,3981,2049,2203,16,10,3965,4000,166,0,99,111,112,121, - 0,1793,4009,285278725,1,33951492,268767489,1,6,10,1,4002,2049,2495,771,10,3991,4025,154,0, - 115,116,97,114,116,0,0,10,4015,4035,154,0,101,110,100,0,0,10,4027,4051, - 166,0,116,101,114,109,105,110,97,116,101,0,1,0,3841,4035,16,10,3991,4074, - 166,0,98,117,102,102,101,114,58,115,116,97,114,116,0,3841,4025,10,4057,4092, - 166,0,98,117,102,102,101,114,58,101,110,100,0,3841,4035,10,4077,4110,166,0, - 98,117,102,102,101,114,58,97,100,100,0,3841,4035,16,1,4035,2049,3854,2049,4051, - 10,4095,4135,166,0,98,117,102,102,101,114,58,103,101,116,0,1,4035,2049,3870, - 3841,4035,15,2049,4051,10,4120,4162,166,0,98,117,102,102,101,114,58,101,109,112, - 116,121,0,3841,4025,4097,4035,2049,4051,10,4145,4185,166,0,98,117,102,102,101,114, - 58,115,105,122,101,0,3841,4035,3841,4025,18,10,4169,4206,166,0,98,117,102,102, - 101,114,58,115,101,116,0,4097,4025,2049,4162,10,4191,4231,166,0,98,117,102,102, - 101,114,58,112,114,101,115,101,114,118,101,0,3841,4025,3841,4035,1793,4244,1,25, - 2049,2192,4097,4025,10,1,4237,2049,2192,4097,4035,10,4211,4267,154,0,84,101,109,112, - 83,116,114,105,110,103,115,0,32,4251,4286,154,0,84,101,109,112,83,116,114, - 105,110,103,77,97,120,0,512,4268,4299,166,0,83,84,82,73,78,71,83,0, - 2049,1544,3841,4267,3841,4286,19,18,10,4287,4320,154,0,67,117,114,114,101,110,116, - 0,7,10,4308,4336,166,0,115,58,112,111,105,110,116,101,114,0,3841,4320,3841, - 4286,19,2049,4299,17,10,4322,4356,166,0,115,58,110,101,120,116,0,1,4320,2049, - 3854,3841,4320,3841,4267,11,1793,4372,1,0,4097,4320,10,1,4367,9,10,4287,4387,166, - 0,115,58,116,101,109,112,0,2,2049,102,2049,3140,2049,4336,4,2049,4000,2049,4336, - 2049,4356,10,4376,4414,166,0,115,58,101,109,112,116,121,0,2049,4336,2049,4356,1, - 0,67502597,16,10,4402,4434,166,0,115,58,115,107,105,112,0,6,1793,4442,68223234,1, - 786703,0,10,1,4437,2049,2421,2049,3153,5,10,4423,4461,166,0,115,58,107,101,101, - 112,0,2049,1893,1793,4470,1,4434,2049,1850,10,1,4465,9,2049,1953,1,142,2049,2192, - 2049,154,10,4450,4494,178,0,115,105,103,105,108,58,39,0,2049,1893,1,4461,1, - 4387,2049,64,10,4482,4515,166,0,115,58,102,101,116,99,104,0,17,15,10,4503, - 4530,166,0,115,58,115,116,111,114,101,0,17,16,10,4518,4544,166,0,115,58, - 99,104,111,112,0,2049,4387,2,2049,102,67502597,17,2049,3153,1,0,4,16,10,4533, - 4572,166,0,115,58,114,101,118,101,114,115,101,0,1793,4614,2,2049,4387,2049,4206, - 1,102,1793,4590,2,2049,102,17,2049,3153,10,1,4583,2049,2216,4,1793,4604,2,15, - 2049,4110,2049,3153,10,1,4597,2049,2495,3,2049,4074,2049,4387,10,1,4574,2049,4231,10, - 4558,4633,166,0,115,58,112,114,101,112,101,110,100,0,2049,4387,1793,4657,2,2049, - 102,17,1793,4649,2,2049,102,2049,3140,10,1,4643,2049,2192,4,2049,4000,10,1,4637, - 2049,2203,10,4619,4675,166,0,115,58,97,112,112,101,110,100,0,4,2049,4633,10, - 4662,4694,166,0,115,58,102,111,114,45,101,97,99,104,0,1793,4709,67502597,6415,3, - 67502597,67502597,251987205,2054,101777670,1,1,4696,7,10,1,4696,8,771,10,4679,4731,166,0,115, - 58,105,110,100,101,120,47,99,104,97,114,0,4,1793,4745,68223234,1,6415,33883396,101450758, - 6404,3,1,4734,7,10,1,4734,1793,4754,18,2049,3153,772,10,1,4749,1793,4763,2049, - 102,67502597,11,10,1,4758,2049,2256,1793,4773,3,1,-1,10,1,4769,9,10,4714,4798, - 166,0,115,58,99,111,110,116,97,105,110,115,47,99,104,97,114,63,0,2049, - 4731,1,-1,12,10,4777,4815,166,0,115,58,104,97,115,104,0,1,5381,4,1793, - 4823,286458116,33,10,1,4820,2049,4694,10,4804,4836,154,0,83,114,99,0,0,4828,4845, - 154,0,84,97,114,0,0,4837,4854,154,0,80,97,100,0,0,4846,4861,154,0, - 73,0,0,4855,4868,154,0,70,0,0,4862,4876,154,0,65,116,0,0,4869,4891, - 166,0,116,101,114,109,105,110,97,116,101,0,1,0,3841,4854,3841,4845,2049,102, - 17,16,10,4877,4914,166,0,101,120,116,114,97,99,116,0,3841,4836,3841,4861,17, - 3841,4854,3841,4845,2049,102,2049,4000,10,4902,4940,166,0,99,111,109,112,97,114,101, - 0,3841,4854,3841,4845,2049,116,3841,4868,22,4097,4868,3841,4868,1793,4960,3841,4861,4097,4876, - 10,1,4955,2049,72,10,4928,4974,166,0,110,101,120,116,0,1,4861,2049,3854,10, - 4804,5002,166,0,115,58,99,111,110,116,97,105,110,115,47,115,116,114,105,110, - 103,63,0,4097,4845,4097,4836,2049,4414,4097,4854,1,0,4097,4861,1,0,4097,4868,3841, - 4836,2049,102,1793,5033,2049,4914,2049,4891,2049,4940,2049,4974,10,1,5024,2049,2495,3841,4868, - 10,4979,5048,154,0,83,116,114,0,0,5040,5061,166,0,101,120,116,114,97,99, - 116,0,2049,2181,3841,5048,4,2049,4000,3841,-1,67502597,17,1,0,4,16,10,5049,5087, - 166,0,99,104,101,99,107,0,1,5061,2049,2192,1793,5098,1,3140,2049,2192,10,1, - 5093,2049,2192,3841,5048,2049,4815,67502597,11,10,5077,5122,166,0,108,111,99,97,116,105, - 111,110,0,67503109,67503109,1793,5155,1793,5150,4,1793,5136,67502597,2049,2757,21,10,1,5131,2049, - 2192,4,1793,5146,772,2,10,1,5143,9,10,1,5128,2049,2192,10,1,5126,2049,2192, - 10,5109,5170,166,0,115,101,116,117,112,0,2049,4414,4097,5048,1,0,67503109,67503109,1, - 102,1,4815,2049,2216,2049,4414,2049,4206,1793,5194,67502597,2049,102,10,1,5190,2049,2192,4, - 10,4979,5219,166,0,115,58,105,110,100,101,120,47,115,116,114,105,110,103,0, - 67502597,1793,5245,1793,5238,2049,5170,1793,5233,2049,5087,2049,5122,10,1,5228,2049,2495,10,1, - 5224,2049,4231,771,3,10,1,5222,2049,2192,18,1,2,18,1,-1,2049,3075,10,5200, - 5271,166,0,115,58,102,105,108,116,101,114,0,1793,5299,2049,4414,2049,4206,4,1793, - 5291,2049,2181,4,8,1,4110,1,15,2049,64,10,1,5280,2049,4694,3,2049,4074,10, - 1,5273,2049,4231,10,5258,5314,166,0,115,58,109,97,112,0,1793,5336,2049,4414,2049, - 4206,4,1793,5328,67502597,8,2049,4110,10,1,5323,2049,4694,3,2049,4074,10,1,5316,2049, - 4231,10,5304,5354,166,0,115,58,115,117,98,115,116,114,0,1793,5360,17,2049,4414, - 10,1,5356,2049,2192,1793,5372,67502597,1,4000,2049,2192,10,1,5366,2049,2203,67502597,1793,5385, - 17,1,0,4,16,10,1,5379,2049,2192,10,5341,5402,166,0,115,58,114,105,103, - 104,116,0,67502597,2049,102,67502597,18,4,2049,5354,10,5390,5422,166,0,115,58,108,101, - 102,116,0,1,0,4,2049,5354,10,5411,5447,166,0,115,58,98,101,103,105,110, - 115,45,119,105,116,104,63,0,2,2049,102,1,17,2049,2192,2049,5422,2049,116,10, - 5428,5476,166,0,115,58,101,110,100,115,45,119,105,116,104,63,0,2,2049,102, - 1,17,2049,2192,2049,5402,2049,116,10,5459,5499,166,0,115,58,99,111,112,121,0, - 67502597,2049,102,2049,3140,2049,4000,10,5488,5520,166,0,115,58,68,73,71,73,84,83, - 0,2049,4434,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0, - 1,5522,10,5507,5564,166,0,115,58,65,83,67,73,73,45,76,79,87,69,82, - 67,65,83,69,0,2049,4434,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,5566,10,5542,5618,166, - 0,115,58,65,83,67,73,73,45,85,80,80,69,82,67,65,83,69,0,2049, - 4434,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,5620,10,5596,5670,166,0,115,58,65,83,67, - 73,73,45,76,69,84,84,69,82,83,0,2049,4434,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,5672,10,5650,5746,166,0,115,58,80,85,78,67,84, - 85,65,84,73,79,78,0,2049,4434,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,5748,1,95,67502597,16,10,5728,5805,154,0,115,58,87,72,73,84,69, - 83,80,65,67,69,0,32,9,10,13,0,5788,5816,178,0,39,0,1,4414,2049, - 166,10,5810,5827,178,0,36,0,1,0,2049,154,10,5821,0,154,0,65,83,67, - 73,73,58,78,85,76,0,5832,27,154,0,65,83,67,73,73,58,69,83,67, - 0,5846,8,154,0,65,83,67,73,73,58,66,83,0,5860,9,154,0,65,83, - 67,73,73,58,72,84,0,5873,10,154,0,65,83,67,73,73,58,76,70,0, - 5886,11,154,0,65,83,67,73,73,58,86,84,0,5899,12,154,0,65,83,67, - 73,73,58,70,70,0,5912,13,154,0,65,83,67,73,73,58,67,82,0,5925, - 32,154,0,65,83,67,73,73,58,83,80,65,67,69,0,5938,127,154,0,65, - 83,67,73,73,58,68,69,76,0,5954,1,154,0,65,83,67,73,73,58,83, - 79,72,0,5968,2,154,0,65,83,67,73,73,58,83,84,88,0,5982,3,154, - 0,65,83,67,73,73,58,69,84,88,0,5996,4,154,0,65,83,67,73,73, - 58,69,79,84,0,6010,5,154,0,65,83,67,73,73,58,69,78,81,0,6024, - 6,154,0,65,83,67,73,73,58,65,67,75,0,6038,7,154,0,65,83,67, - 73,73,58,66,69,76,0,6052,14,154,0,65,83,67,73,73,58,83,79,0, - 6066,15,154,0,65,83,67,73,73,58,83,73,0,6079,16,154,0,65,83,67, - 73,73,58,68,76,69,0,6092,17,154,0,65,83,67,73,73,58,68,67,49, - 0,6106,18,154,0,65,83,67,73,73,58,68,67,50,0,6120,19,154,0,65, - 83,67,73,73,58,68,67,51,0,6134,20,154,0,65,83,67,73,73,58,68, - 67,52,0,6148,21,154,0,65,83,67,73,73,58,78,65,75,0,6162,22,154, - 0,65,83,67,73,73,58,83,89,78,0,6176,23,154,0,65,83,67,73,73, - 58,69,84,66,0,6190,24,154,0,65,83,67,73,73,58,67,65,78,0,6204, - 25,154,0,65,83,67,73,73,58,69,77,0,6218,26,154,0,65,83,67,73, - 73,58,83,85,66,0,6231,28,154,0,65,83,67,73,73,58,70,83,0,6245, - 29,154,0,65,83,67,73,73,58,71,83,0,6258,30,154,0,65,83,67,73, - 73,58,82,83,0,6271,31,154,0,65,83,67,73,73,58,85,83,0,6284,6314, - 166,0,99,58,108,111,119,101,114,99,97,115,101,63,0,1,97,1,122,2049, - 3171,10,6297,6338,166,0,99,58,117,112,112,101,114,99,97,115,101,63,0,1, - 65,1,90,2049,3171,10,6321,6359,166,0,99,58,108,101,116,116,101,114,63,0, - 1,6314,1,6338,2049,2216,22,10,6345,6380,166,0,99,58,100,105,103,105,116,63, - 0,1,48,1,57,2049,3171,10,6367,6402,166,0,99,58,118,105,115,105,98,108, - 101,63,0,1,32,1,126,2049,3171,10,6387,6422,166,0,99,58,118,111,119,101, - 108,63,0,2049,4434,97,101,105,111,117,65,69,73,79,85,0,1,6424,4,2049, - 4798,10,6409,6458,166,0,99,58,99,111,110,115,111,110,97,110,116,63,0,2, - 2049,6359,1793,6468,2049,6422,2049,2684,10,1,6463,1793,6476,3,2049,2584,10,1,6472,2049, - 64,10,6441,6499,166,0,99,58,119,104,105,116,101,115,112,97,99,101,63,0, - 1,5805,4,2049,4798,10,6481,6523,166,0,99,58,45,108,111,119,101,114,99,97, - 115,101,63,0,2049,6314,2049,2684,10,6505,6546,166,0,99,58,45,117,112,112,101, - 114,99,97,115,101,63,0,2049,6338,2049,2684,10,6528,6565,166,0,99,58,45,100, - 105,103,105,116,63,0,2049,6380,2049,2684,10,6551,6589,166,0,99,58,45,119,104, - 105,116,101,115,112,97,99,101,63,0,2049,6499,2049,2684,10,6570,6610,166,0,99, - 58,45,118,105,115,105,98,108,101,63,0,2049,6402,2049,2684,10,6594,6629,166,0, - 99,58,45,118,111,119,101,108,63,0,2049,6422,2049,2684,10,6615,6652,166,0,99, - 58,45,99,111,110,115,111,110,97,110,116,63,0,2049,6458,2049,2684,10,6634,6672, - 166,0,99,58,116,111,45,117,112,112,101,114,0,2,2049,6314,25,3,1,32, - 18,10,6657,6696,166,0,99,58,116,111,45,108,111,119,101,114,0,2,2049,6338, - 25,3,1,32,17,10,6681,6721,166,0,99,58,116,111,45,115,116,114,105,110, - 103,0,2049,4434,46,0,1,6723,2049,4387,1,37,2049,2203,10,6705,6752,166,0,99, - 58,116,111,103,103,108,101,45,99,97,115,101,0,2,2049,6314,1,6672,1,6696, - 2049,64,10,6734,6778,166,0,99,58,116,111,45,110,117,109,98,101,114,0,2, - 2049,6380,1793,6787,1,48,18,10,1,6783,1793,6795,3,1,0,10,1,6791,2049,64, - 10,6762,6815,166,0,115,58,116,111,45,117,112,112,101,114,0,1,6672,2049,5314, - 10,6800,6835,166,0,115,58,116,111,45,108,111,119,101,114,0,1,6696,2049,5314, - 10,6820,6856,166,0,115,58,116,114,105,109,45,108,101,102,116,0,2049,4387,1793, - 6870,2049,56,1,6499,1,2774,2049,2216,21,10,1,6860,2049,2421,2049,3153,10,6840,6894, - 166,0,115,58,116,114,105,109,45,114,105,103,104,116,0,2049,4387,2049,4572,2049, - 6856,2049,4572,10,6877,6914,166,0,115,58,116,114,105,109,0,2049,6894,2049,6856,10, - 6903,6942,154,0,82,101,119,114,105,116,101,85,110,100,101,114,115,99,111,114, - 101,115,0,-1,6919,6951,166,0,115,117,98,0,1,95,1793,6958,1,32,10,1, - 6955,2049,2596,10,6943,6975,166,0,114,101,119,114,105,116,101,0,3841,6942,1793,6984, - 1,6951,2049,5314,10,1,6979,9,10,6963,6999,166,0,104,97,110,100,108,101,0, - 1,4494,8,10,6919,7015,178,0,115,105,103,105,108,58,39,0,2049,6975,2049,6999, - 10,7003,7037,166,0,115,58,115,112,108,105,116,47,99,104,97,114,0,2049,2181, - 2049,4731,772,2049,2181,2049,5422,1,39,2049,2192,10,7020,7070,166,0,115,58,115,112, - 108,105,116,47,115,116,114,105,110,103,0,2049,2181,2049,5219,2049,3140,772,2049,2181, - 2049,5422,1,39,2049,2192,10,7051,7100,166,0,115,58,114,101,112,108,97,99,101, - 0,67502597,2049,102,2049,1953,16,1793,7116,2049,7070,4,2049,1953,15,17,10,1,7108,2049, - 2192,2049,4633,2049,4675,10,7086,7138,154,0,83,112,108,105,116,45,79,110,0,0, - 7125,7150,166,0,109,97,116,99,104,63,0,3841,7138,11,10,7139,7168,166,0,116, - 101,114,109,105,110,97,116,101,0,1,0,67502597,2049,3153,16,10,7154,7184,166,0, - 115,116,101,112,0,1,3140,2049,2192,2049,7150,1793,7198,2,2049,128,2049,7168,10,1, - 7192,9,10,7086,7217,166,0,115,58,116,111,107,101,110,105,122,101,0,4097,7138, - 2049,4461,2049,1953,1,0,2049,128,1793,7239,2,2049,128,2,1,7184,2049,4694,3,10, - 1,7229,2049,2192,2049,1953,67502597,18,2049,3153,67502597,16,10,7202,7263,154,0,78,101,101, - 100,108,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,7252,7399,154,0,76,101,110,0, - 0,7391,7411,154,0,84,111,107,101,110,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, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 7400,7546,154,0,84,80,0,0,7539,7556,166,0,115,97,118,101,0,2049,4461,3841, - 7546,1,7411,17,2049,3140,16,1,7546,2049,3854,10,7547,7580,166,0,110,101,120,116, - 0,1793,7586,3841,7399,17,10,1,7582,2049,2203,10,7571,7601,166,0,100,111,110,101, - 63,0,2049,102,2049,2757,10,7202,7631,166,0,115,58,116,111,107,101,110,105,122, - 101,45,111,110,45,115,116,114,105,110,103,0,1,0,4097,7546,1793,7645,2,1, - 7263,2049,5499,2049,4675,10,1,7637,1793,7654,2049,102,4097,7399,10,1,7649,2049,2216,1793, - 7671,1,7263,2049,7070,2049,7556,2049,7580,2049,7601,10,1,7660,2049,2445,1,7411,3841,7546, - 2049,3153,4097,7411,10,7606,7697,166,0,102,111,114,45,101,97,99,104,0,4,2049, - 56,1,17,2049,2192,1793,7713,5,2049,56,84018692,525572,1542,10,1,7706,2049,2495,771,10, - 7684,7734,166,0,115,117,98,115,116,105,116,117,116,101,0,2049,4299,1,129,18, - 10,7719,7752,166,0,101,120,116,114,97,99,116,0,2049,7734,2049,5499,10,7740,7770, - 166,0,116,111,107,101,110,105,122,101,0,2049,7631,2049,4414,10,7757,7787,166,0, - 99,111,109,98,105,110,101,0,2049,7734,2049,4675,2049,4675,10,7775,7804,166,0,109, - 101,114,103,101,0,4,1,7787,2049,7697,772,10,7794,7824,166,0,102,105,110,100, - 45,101,110,100,0,2,2049,102,2049,7734,2049,102,18,67502597,17,10,7811,7845,166,0, - 99,108,101,97,110,0,2049,7824,1,0,4,16,10,7606,7870,166,0,115,58,114, - 101,112,108,97,99,101,45,97,108,108,0,1,3,1793,7885,2049,7752,2049,7770,2049, - 7804,2049,7845,2049,4387,10,1,7874,2049,3951,10,7852,7901,154,0,83,116,114,105,110, - 103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,7890,7982,166,0,99,104,101,99,107,45,115,105, - 103,110,0,2049,2794,1793,7991,1,45,2049,4110,10,1,7986,9,10,7967,8008,166,0, - 110,45,62,100,105,103,105,116,0,2049,5520,17,15,10,7995,8025,166,0,99,111, - 110,118,101,114,116,0,1793,8039,3841,231,20,4,2049,8008,2049,4110,2,2049,2757,10, - 1,8027,2049,2445,3,10,7852,8061,166,0,110,58,116,111,45,115,116,114,105,110, - 103,0,1793,8075,1,7901,2049,4206,2,2049,3103,2049,8025,2049,7982,10,1,8063,2049,4231, - 1,7901,2049,4572,10,8045,8093,166,0,99,104,97,114,0,1,32,1793,8102,1,95, - 2049,4110,10,1,8097,2049,2596,1,114,1793,8115,1,13,2049,4110,10,1,8110,2049,2596, - 1,110,1793,8128,1,10,2049,4110,10,1,8123,2049,2596,1,116,1793,8141,1,9,2049, - 4110,10,1,8136,2049,2596,1,48,1793,8154,1,0,2049,4110,10,1,8149,2049,2596,1, - 94,1793,8167,1,27,2049,4110,10,1,8162,2049,2596,2049,4110,10,8084,8183,166,0,116, - 121,112,101,0,1,99,1793,8191,4,2049,4110,10,1,8187,2049,2596,1,115,1793,8205, - 4,1,4110,2049,4694,10,1,8199,2049,2596,1,110,1793,8221,4,2049,8061,1,4110,2049, - 4694,10,1,8213,2049,2596,3,10,8174,8238,166,0,104,97,110,100,108,101,0,1, - 92,1793,8247,2049,56,2049,8093,10,1,8242,2049,2596,1,37,1793,8260,2049,56,2049,8183, - 10,1,8255,2049,2596,2049,4110,10,8045,8280,166,0,115,58,102,111,114,109,97,116, - 0,1793,8309,2049,4414,1793,8304,2049,4206,1793,8299,2049,56,25,2049,8238,1,8290,7,10, - 1,8290,8,3,10,1,8286,2049,2203,10,1,8282,2049,4231,10,8267,8326,166,0,115, - 58,99,111,110,115,116,0,1,4461,2049,2192,2049,2101,10,8314,8344,154,0,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,8333,8381,166,0,102,114,111, - 109,0,2049,102,2,1793,8399,1793,8392,1,8344,4113,10,1,8388,2049,2203,2049,3153,10, - 1,8386,2049,2495,3,10,8372,8412,166,0,116,111,0,2,2049,102,1793,8428,2049,56, - 1,97,18,2049,3140,1,8344,266001,10,1,8417,2049,2495,3,10,8314,8446,166,0,114, - 101,111,114,100,101,114,0,1,8381,2049,2192,2049,8412,10,8434,8463,166,0,99,117, - 114,114,121,0,2049,1953,1793,8473,4,2049,1802,2049,1826,10,1,8467,2049,2192,10,8453, - 8487,166,0,100,111,101,115,0,2049,1591,4,2049,8463,2049,1573,2049,180,16,1,166, - 2049,1653,10,8478,8517,166,0,100,58,102,111,114,45,101,97,99,104,0,1,2, - 1793,8543,6415,2049,2181,1793,8535,1793,8530,2052,10,1,8528,2049,2192,10,1,8526,2049,2192, - 1,8521,7,10,1,8521,8,3,10,8502,8564,166,0,100,58,108,111,111,107,117, - 112,45,120,116,0,1,0,4,1793,8589,2049,2181,2049,180,2831,1793,8582,4,1,2139, - 2049,2192,10,1,8576,1,15,2049,64,10,1,8569,2049,8517,3,10,8548,8608,166,0, - 97,58,108,101,110,103,116,104,0,15,10,8595,8626,154,0,97,58,65,99,99, - 101,115,115,111,114,115,0,35,37,56,59,8610,8644,166,0,97,58,40,102,101, - 116,99,104,41,0,1,8626,1,0,17,15,8,10,8630,8666,166,0,97,58,40, - 115,116,111,114,101,41,0,1,8626,1,1,17,15,8,10,8652,8693,166,0,97, - 58,40,102,101,116,99,104,45,110,101,120,116,41,0,1,8626,1,2,17,15, - 8,10,8674,8720,166,0,97,58,40,115,116,111,114,101,45,110,101,120,116,41, - 0,1,8626,1,3,17,15,8,10,8701,8746,166,0,97,58,115,105,122,101,47, - 110,97,116,105,118,101,0,1,59,1,56,1,37,1,35,1,8626,2049,59,2049, - 59,16,10,8728,8778,166,0,97,58,115,105,122,101,47,104,97,108,102,0,1, - 3763,1,3687,1,3579,1,3544,1,8626,2049,59,2049,59,16,10,8762,8810,166,0,97, - 58,115,105,122,101,47,98,121,116,101,0,1,3789,1,3712,1,3507,1,3481,1, - 8626,2049,59,2049,59,16,10,8794,8848,166,0,97,58,99,111,117,110,116,101,100, - 45,114,101,115,117,108,116,115,0,8,2049,1953,1793,8888,1793,8858,2049,128,10,1, - 8855,1793,8876,2049,1953,4,1793,8870,2049,8720,10,1,8867,2049,2495,3,10,1,8862,1793, - 8883,2049,3931,10,1,8880,2049,2256,10,1,8853,2049,2192,10,8826,8911,166,0,97,58, - 102,114,111,109,45,115,116,114,105,110,103,0,2049,1953,1793,8925,2,2049,102,2049, - 128,1,128,2049,4694,10,1,8915,2049,2192,10,8893,8945,166,0,97,58,102,111,114, - 45,101,97,99,104,0,4,2049,56,1,17,2049,2192,1793,8961,5,2049,8693,84018692,525572, - 1542,10,1,8954,2049,2495,771,10,8930,8977,166,0,97,58,100,117,112,0,2049,1953, - 1793,9019,1793,8987,15,2049,128,10,1,8983,1793,8995,15,2049,3931,10,1,8991,1793,9014, - 2049,1953,4,1793,9008,4,2049,8720,10,1,9004,2049,8945,3,10,1,8999,2049,2256,10, - 1,8981,2049,2192,10,8967,9035,166,0,97,58,99,111,112,121,0,1,3,1793,9051, - 4097,3,2,2049,8608,2049,128,1,128,2049,8945,10,1,9039,2049,3951,10,9024,9072,166, - 0,97,58,116,111,45,115,116,114,105,110,103,0,1793,9090,2049,4414,2049,4206,1793, - 9083,2049,4110,10,1,9080,2049,8945,2049,4074,10,1,9074,2049,4231,10,9056,9108,166,0, - 97,58,97,112,112,101,110,100,0,2049,2181,1,35,2049,2244,17,2049,1953,1793,9133, - 2049,128,1793,9128,1,128,2049,8945,10,1,9123,2049,2244,10,1,9119,2049,2192,10,9095, - 9152,166,0,97,58,112,114,101,112,101,110,100,0,4,2049,9108,10,9138,9167,166, - 0,97,58,99,104,111,112,0,2049,8977,1,-1,2049,3931,2,2049,3870,10,9156,9190, - 166,0,97,58,102,105,108,116,101,114,0,1793,9205,67502597,1,25,2049,2192,4,1, - 128,1,15,2049,64,10,1,9192,2049,8463,2049,1953,1793,9220,67502597,15,2049,128,2049,8945, - 10,1,9213,2049,2192,2049,1953,67502597,18,2049,3153,67502597,16,10,9177,9249,166,0,97,58, - 99,111,110,116,97,105,110,115,63,0,1,0,4,1793,9261,4,5,67502597,11,6, - 22,10,1,9254,2049,8945,772,10,9233,9290,166,0,97,58,99,111,110,116,97,105, - 110,115,47,115,116,114,105,110,103,63,0,1,0,4,1793,9303,4,5,67502597,2049, - 116,6,22,10,1,9295,2049,8945,772,10,9267,9319,166,0,97,58,109,97,112,0, - 1793,9325,8,2049,128,10,1,9321,2049,8463,2049,1953,1793,9340,67502597,15,2049,128,2049,8945, - 10,1,9333,2049,2192,10,9309,9359,166,0,97,58,114,101,118,101,114,115,101,0, - 2049,1953,1793,9393,2049,56,1793,9371,17,2049,3153,10,1,9367,2049,2203,2,2049,128,1793, - 9387,2,15,2049,128,2049,3153,10,1,9380,2049,2495,3,10,1,9363,2049,2192,10,9345, - 9407,166,0,97,58,116,104,0,17,2049,3140,10,9398,9423,166,0,97,58,102,101, - 116,99,104,0,2049,9407,15,10,9411,9439,166,0,97,58,115,116,111,114,101,0, - 2049,9407,16,10,9427,9456,166,0,97,58,114,101,100,117,99,101,0,1,17,2049, - 2192,2049,8945,10,9443,9476,166,0,105,100,101,110,116,105,102,121,0,1,-1,4, - 1,0,1793,9507,2049,2571,11,1793,9501,67502597,1,-1,11,1793,9497,772,2,10,1,9494, - 9,10,1,9488,9,2049,3140,10,1,9483,2049,9456,3,10,9443,9525,166,0,97,58, - 105,110,100,101,120,0,1,3,1793,9538,1,27,2049,8463,2049,9319,2049,9476,10,1, - 9529,2049,3951,10,9513,9562,166,0,97,58,105,110,100,101,120,47,115,116,114,105, - 110,103,0,1,3,1793,9575,1,116,2049,8463,2049,9319,2049,9476,10,1,9566,2049,3951, - 10,9543,9591,166,0,97,58,109,97,107,101,0,2049,8848,2,2,1,3,1793,9602, - 2049,9359,10,1,9599,2049,3951,4,2049,9035,10,9580,9616,178,0,123,0,1,327,2049, - 178,1,1558,2049,166,1,327,2049,178,10,9610,9635,178,0,125,0,1,343,2049,178, - 1,2192,2049,166,1,1558,2049,166,1,17,2049,172,1,41,2049,172,1,3153,2049,166, - 1,343,2049,178,1,9591,2049,166,10,9629,9680,166,0,98,111,117,110,100,115,63, - 0,67502597,2049,8608,67502597,13,10,9668,9695,166,0,99,111,112,121,0,2049,56,2049,128, - 10,9686,9711,166,0,116,111,45,101,110,100,0,2,2049,8608,17,2049,3140,10,9629, - 9729,166,0,97,58,108,101,102,116,0,2049,9680,1793,9737,771,1,-1,10,1,9733, - 2049,2890,2049,1953,67502597,2049,128,1793,9758,1,3140,2049,2192,1,9695,2049,2495,3,10,1, - 9748,2049,2192,10,9718,9775,166,0,97,58,114,105,103,104,116,0,2049,9680,1793,9783, - 771,1,-1,10,1,9779,2049,2890,2049,1953,67502597,2049,128,1793,9806,4,2049,9711,67502597,18, - 4,1,9695,2049,2495,3,10,1,9794,2049,2192,10,9763,9824,166,0,97,58,109,105, - 100,100,108,101,0,1,2129,2049,2192,4,67502597,2049,9680,1793,9839,771,3,1,-1,10, - 1,9834,2049,2890,771,2049,2181,4,18,2049,3140,2049,1953,67502597,2049,128,1793,9874,772,1793, - 9864,17,2049,3140,10,1,9860,2049,2192,1,9695,2049,2495,3,10,1,9857,2049,2192,10, - 9811,9888,154,0,70,108,97,103,0,0,9879,9901,166,0,99,111,109,112,97,114, - 101,0,67440386,184946434,10,9889,9915,166,0,108,101,110,103,116,104,0,659202,10,9904,9926, - 166,0,110,101,120,116,0,17043713,1,1,2577,10,9917,9945,166,0,110,111,116,45, - 101,113,117,97,108,0,50529030,2561,0,10,9931,9958,166,0,108,111,111,112,0,524549, - 9926,2049,9901,18157313,9888,9888,16,420610310,1,1,9958,7,10,9811,9982,166,0,97,58,101, - 113,63,0,1048833,-1,9888,2049,9901,151066369,-1,9945,2049,9915,2049,9958,251724547,9888,10,9972,10008, - 166,0,97,58,45,101,113,63,0,2049,9982,2049,2684,10,9997,10032,166,0,97,58, - 98,101,103,105,110,115,45,119,105,116,104,63,0,1,3,1793,10048,2,2049,8608, - 1,17,2049,2192,2049,9729,2049,9982,10,1,10036,2049,3951,10,10013,10070,166,0,97,58, - 101,110,100,115,45,119,105,116,104,63,0,1,3,1793,10086,2,2049,8608,1,17, - 2049,2192,2049,9775,2049,9982,10,1,10074,2049,3951,10,10053,10108,166,0,99,117,114,114, - 101,110,116,45,108,105,110,101,0,2049,4299,1,1025,18,10,10091,10131,166,0,99, - 111,117,110,116,45,116,111,107,101,110,115,0,1793,10137,1,32,11,10,1,10133, - 2049,5271,2049,102,10,10114,10163,166,0,112,114,111,99,101,115,115,45,116,111,107, - 101,110,115,0,1793,10191,1,32,2049,7037,4,1793,10184,2,2049,102,2049,2774,1,405, - 1,15,2049,64,10,1,10172,2049,2192,2049,3140,10,1,10165,2049,2495,2049,405,10,10053, - 10213,166,0,115,58,101,118,97,108,117,97,116,101,0,2049,10108,2049,5499,2049,10108, - 2,2049,10131,2049,10163,10,10198,10232,154,0,76,80,0,0,10225,10243,154,0,73,110, - 100,101,120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10233,10284,166,0, - 110,101,120,116,0,3841,10232,1,10243,17,2049,3854,10,10275,10301,166,0,112,114,101, - 112,0,1,10232,2049,3854,1,0,3841,10232,1,10243,17,16,10,10292,10323,166,0,100, - 111,110,101,0,1,10232,2049,3870,10,10198,10334,166,0,73,0,3841,10232,1,10243,17, - 15,10,10328,10347,166,0,74,0,3841,10232,1,10243,17,2049,3153,15,10,10341,10362,166, - 0,75,0,3841,10232,1,10243,17,1,2,18,15,10,10356,10390,166,0,105,110,100, - 101,120,101,100,45,116,105,109,101,115,0,2049,10301,4,1793,10406,25,33886721,1,2053, - 1542,2049,10284,1,10395,7,10,1,10395,8,3,2049,10323,10,10372,10425,166,0,100,101, - 99,105,109,97,108,0,1,10,4097,231,10,10413,10441,166,0,98,105,110,97,114, - 121,0,1,2,4097,231,10,10430,10456,166,0,111,99,116,97,108,0,1,8,4097, - 231,10,10446,10469,166,0,104,101,120,0,1,16,4097,231,10,10461,10491,166,0,105, - 111,58,101,110,117,109,101,114,97,116,101,0,27,10,10474,10506,166,0,105,111, - 58,113,117,101,114,121,0,28,10,10493,10522,166,0,105,111,58,105,110,118,111, - 107,101,0,29,10,10508,10540,166,0,105,111,58,115,99,97,110,45,102,111,114, - 0,1,-1,4,2049,10491,1793,10571,2049,10334,2049,10506,772,67502597,11,1793,10567,1793,10562,3, - 2049,10334,10,1,10558,2049,2192,10,1,10556,9,10,1,10547,2049,10390,3,10,10524,10587, - 166,0,99,58,112,117,116,0,1793,10589,1,0,2049,10522,10,10577,10601,166,0,110, - 108,0,1,10,2049,10587,10,10594,10613,166,0,115,112,0,1,32,2049,10587,10,10606, - 10626,166,0,116,97,98,0,1,9,2049,10587,10,10618,10641,166,0,115,58,112,117, - 116,0,1,10587,2049,4694,10,10631,10656,166,0,110,58,112,117,116,0,2049,8061,2049, - 10641,10,10646,10671,166,0,114,101,115,101,116,0,2049,1558,25,771,1,10671,7,10, - 10661,10694,166,0,100,117,109,112,45,115,116,97,99,107,0,2049,1558,25,134284547,10694, - 134283782,10656,2049,10613,10,10679,10713,166,0,70,82,69,69,0,2049,4299,1,1025,18,2049, - 1953,18,10,10704,10731,166,0,101,111,108,63,0,1793,10737,1,13,11,10,1,10733, - 1793,10745,1,10,11,10,1,10741,1793,10753,1,32,11,10,1,10749,2049,2256,22,22, - 10,10722,10771,166,0,118,97,108,105,100,63,0,2,2049,102,2049,2774,10,10760,10785, - 166,0,98,115,63,0,2,1793,10792,1,8,11,10,1,10788,1793,10800,1,127,11, - 10,1,10796,2049,2216,22,10,10777,10819,166,0,99,104,101,99,107,45,98,115,0, - 2049,10785,1793,10842,2049,4185,1,2,2049,2713,1793,10835,2049,4135,3,10,1,10831,9,2049, - 4135,3,10,1,10823,9,10,10704,10856,166,0,99,58,103,101,116,0,1793,10858,1, - 1,2049,10540,2049,10522,10,10846,10880,166,0,115,58,103,101,116,45,119,111,114,100, - 0,1793,10908,1,7,15,2049,4206,1793,10899,2049,10856,2,2049,4110,2049,10819,2049,10731,10, - 1,10889,2049,2445,2049,4074,2049,4544,10,1,10882,2049,4231,10,10865,10921,166,0,98,121, - 101,0,26,10,10913,10934,166,0,108,105,115,116,101,110,0,2049,10880,2049,10771,1, - 405,1,15,2049,64,1,10934,7,10,10923,10959,154,0,105,111,58,88,56,54,0, - 0,10948,10973,166,0,105,100,101,110,116,105,102,121,0,3841,10959,2049,2757,1793,11040, - 1,2000,2049,10540,2,2049,2794,1793,11028,3,2049,4434,73,79,32,68,69,86,73,67, - 69,32,84,89,80,69,32,50,48,48,48,32,78,79,84,32,70,79,85,78, - 68,0,1,10991,2049,10641,2049,10601,10,1,10988,1793,11035,4097,10959,10,1,11032,2049,64, - 10,1,10979,9,10,10923,11055,166,0,105,111,58,120,56,54,0,2049,10973,3841,10959, - 2049,10522,10,11044,11078,166,0,112,105,111,58,105,110,45,98,121,116,101,0,1, - 0,2049,11055,10,11062,11100,166,0,112,105,111,58,111,117,116,45,98,121,116,101, - 0,1,1,2049,11055,10,11083,11121,166,0,112,105,111,58,105,110,45,119,111,114, - 100,0,1,6,2049,11055,10,11105,11143,166,0,112,105,111,58,111,117,116,45,119, - 111,114,100,0,1,7,2049,11055,10,11126,11162,166,0,114,97,109,58,115,116,111, - 114,101,0,1,2,2049,11055,10,11148,11181,166,0,114,97,109,58,102,101,116,99, - 104,0,1,3,2049,11055,10,11167,11205,166,0,114,97,109,58,115,116,111,114,101, - 45,98,121,116,101,0,1,4,2049,11055,10,11186,11229,166,0,114,97,109,58,102, - 101,116,99,104,45,98,121,116,101,0,1,5,2049,11055,10,11210,11242,166,0,104, - 101,120,0,2,15,1,45,11,1793,11254,2049,3140,1,-1,10,1,11249,1793,11261,1, - 0,10,1,11258,2049,64,4,1,0,4,1793,11300,2049,4434,48,49,50,51,52,53, - 54,55,56,57,65,66,67,68,69,70,0,1,11273,4,2049,4731,17,1,16,19, - 10,1,11271,2049,4694,1,16,197652,4,25,19,10,11210,11323,178,0,115,105,103,105, - 108,58,48,0,2,2049,3153,2049,226,2049,2774,1793,11356,2049,3153,2049,226,1793,11342,2049, - 180,15,10,1,11338,1793,11350,2049,182,15,10,1,11346,2049,2216,8,10,1,11332,2049, - 2890,2049,3140,2049,11242,2049,154,10,11311,112,154,0,67,77,79,83,58,65,68,68, - 82,69,83,83,0,11367,113,154,0,67,77,79,83,58,68,65,84,65,0,11384, - 11412,166,0,114,116,99,58,113,117,101,114,121,0,1,112,2049,11100,1,113,2049, - 11078,10,11398,11436,166,0,114,116,99,58,115,101,99,111,110,100,0,1,0,2049, - 11412,10,11421,11456,166,0,114,116,99,58,109,105,110,117,116,101,0,1,2,2049, - 11412,10,11441,11474,166,0,114,116,99,58,104,111,117,114,0,1,4,2049,11412,10, - 11461,11491,166,0,114,116,99,58,100,97,121,0,1,7,2049,11412,10,11479,11510,166, - 0,114,116,99,58,109,111,110,116,104,0,1,8,2049,11412,10,11496,11528,166,0, - 114,116,99,58,121,101,97,114,0,1,9,2049,11412,10,11515,11542,166,0,116,105, - 109,101,0,2049,11474,2049,10656,1,58,2049,10587,2049,11456,2049,10656,2049,10601,10,11533,1016, - 154,0,115,101,114,105,97,108,58,67,79,77,49,0,11557,760,154,0,115,101, - 114,105,97,108,58,67,79,77,50,0,11573,1000,154,0,115,101,114,105,97,108, - 58,67,79,77,51,0,11589,744,154,0,115,101,114,105,97,108,58,67,79,77, - 52,0,11605,11637,154,0,115,101,114,105,97,108,58,80,111,114,116,0,1016,11621, - 11659,166,0,115,101,114,105,97,108,58,114,101,99,101,105,118,101,100,63,0, - 3841,11637,1,5,17,2049,11078,1,1,21,2049,2774,10,11638,11690,166,0,115,101,114, - 105,97,108,58,101,109,112,116,121,63,0,3841,11637,1,5,17,2049,11078,1,32, - 21,2049,2774,10,11672,11719,166,0,115,101,114,105,97,108,58,114,101,97,100,0, - 2049,11659,1793,11728,3841,11637,2049,11078,10,1,11723,2049,2890,2049,11719,10,11703,11752,166,0, - 115,101,114,105,97,108,58,119,114,105,116,101,0,2049,11690,1793,11761,3841,11637,2049, - 11100,10,1,11756,2049,2890,2049,11752,10,11735,11784,166,0,115,101,114,105,97,108,58, - 115,101,110,100,0,1793,11789,2049,11752,10,1,11786,2049,4694,10,11768,11810,166,0,115, - 101,114,105,97,108,58,105,110,105,116,0,1,0,3841,11637,1,1,17,2049,11100, - 1,128,3841,11637,1,3,17,2049,11100,1,3,3841,11637,2049,11100,1,0,3841,11637,1, - 1,17,2049,11100,1,3,3841,11637,1,3,17,2049,11100,1,199,3841,11637,1,2,17, - 2049,11100,1,11,3841,11637,1,4,17,2049,11100,10,11794,753664,154,0,86,71,65,45, - 66,65,83,69,0,11871,80,154,0,67,79,76,85,77,78,83,0,11884,25,154, - 0,82,79,87,83,0,11896,980,154,0,86,71,65,45,67,85,82,83,79,82, - 0,11905,981,154,0,86,71,65,45,68,65,84,65,0,11920,11945,154,0,118,103, - 97,58,82,111,119,0,0,11933,11961,154,0,118,103,97,58,67,111,108,117,109, - 110,0,0,11946,11984,166,0,118,103,97,58,117,112,100,97,116,101,45,99,117, - 114,115,111,114,0,3841,11945,1,80,19,3841,11961,17,2,1,15,1,980,2049,11100, - 1,255,21,1,981,2049,11100,1,14,1,980,2049,11100,1,8,24,1,255,21,1, - 981,2049,11100,10,11962,12043,166,0,118,103,97,58,109,111,118,101,45,99,117,114, - 115,111,114,0,4097,11961,4097,11945,2049,11984,10,12023,12066,154,0,118,103,97,58,68, - 105,115,112,108,97,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 2049,2192,8,10,2271,2312,166,0,116,114,105,64,0,2,2,2049,2280,10,2303,2327, + 166,0,119,104,105,108,101,0,1793,2336,525570,1639430,3,1,2329,7,10,1,2329,8, + 3,10,2317,2351,166,0,117,110,116,105,108,0,1793,2362,525570,385942534,-1,25,3,1, + 2353,7,10,1,2353,8,3,10,2341,2379,166,0,102,111,114,101,118,101,114,0, + 1793,2383,8,10,1,2381,2049,2203,1,2379,7,10,2367,2401,166,0,116,105,109,101, + 115,0,1793,2413,4,25,33886721,1,2053,1542,1,2404,7,10,1,2403,8,3,10,2391, + 2430,178,0,115,105,103,105,108,58,124,0,2049,226,1793,2438,2049,180,15,10,1, + 2434,1793,2446,2049,182,15,10,1,2442,2049,2216,2049,1893,1793,2461,1,154,2049,2192,2049, + 1850,10,1,2454,1,25,2049,64,10,2418,2477,166,0,84,82,85,69,0,1,-1, + 10,2468,2490,166,0,70,65,76,83,69,0,1,0,10,2480,2502,166,0,99,97, + 115,101,0,1793,2507,67502597,11,10,1,2504,2049,2192,4,1793,2519,772,8,2049,2477,10, + 1,2514,1793,2527,3,2049,2490,10,1,2523,2049,64,25,6,3,3,10,2493,2547,166, + 0,115,58,99,97,115,101,0,1793,2553,67502597,2049,116,10,1,2549,2049,2192,4,1793, + 2565,772,8,2049,2477,10,1,2560,1793,2573,3,2049,2490,10,1,2569,2049,64,25,6, + 3,3,10,2536,2590,166,0,110,111,116,0,1,-1,23,10,2582,2604,166,0,108, + 116,101,113,63,0,2049,2181,101516555,22,10,2594,2619,166,0,103,116,101,113,63,0, + 4,2049,2604,10,2609,2633,166,0,110,58,77,65,88,0,1,-5,15,10,2623,2647, + 166,0,110,58,77,73,78,0,1,-4,15,10,2637,2663,166,0,110,58,122,101, + 114,111,63,0,1,0,11,10,2651,2680,166,0,110,58,45,122,101,114,111,63, + 0,1,0,12,10,2667,2700,166,0,110,58,110,101,103,97,116,105,118,101,63, + 0,1,0,13,10,2684,2720,166,0,110,58,112,111,115,105,116,105,118,101,63, + 0,1,-1,14,10,2704,2749,166,0,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,2724,2765,166,0,110,58, + 101,118,101,110,63,0,1,2,20,3,2049,2663,10,2753,2783,166,0,110,58,111, + 100,100,63,0,2049,2765,2049,2590,10,2772,2796,166,0,105,102,59,0,67502597,1,74, + 2049,2192,25,6,771,10,2788,2814,166,0,45,105,102,59,0,67502597,1,72,2049,2192, + 2049,2590,25,6,771,10,2805,2833,172,0,114,111,116,0,67503109,10,2825,2841,172,0, + 47,0,197652,10,2835,2851,172,0,109,111,100,0,788,10,2843,2863,166,0,110,58, + 112,111,119,0,1,1,4,1793,2871,67502597,19,10,1,2868,2049,2401,772,10,2853,2890, + 166,0,110,58,110,101,103,97,116,101,0,1,-1,19,10,2877,2907,166,0,110, + 58,115,113,117,97,114,101,0,4866,10,2894,2920,166,0,110,58,115,113,114,116, + 0,1,1,1793,2938,2049,2181,197652,67502597,18,1,2,197652,25,17,1,2924,7,10,1, + 2924,8,772,10,2909,2953,166,0,110,58,109,105,110,0,2049,2181,13,1793,2960,3, + 10,1,2958,1793,2966,772,10,1,2964,2049,64,10,2943,2981,166,0,110,58,109,97, + 120,0,2049,2181,14,1793,2988,3,10,1,2986,1793,2994,772,10,1,2992,2049,64,10, + 2971,3009,166,0,110,58,97,98,115,0,2,2049,2700,1,2890,9,10,2999,3028,166, + 0,110,58,108,105,109,105,116,0,4,5,2049,2953,6,2049,2981,10,3016,3046,166, + 0,110,58,105,110,99,0,659713,1,10,3036,3059,166,0,110,58,100,101,99,0, + 659969,1,10,3049,3077,166,0,110,58,98,101,116,119,101,101,110,63,0,67503109,1793, + 3085,67503109,67503109,2049,3028,10,1,3080,2049,2203,11,10,3062,3105,166,0,83,99,111,112, + 101,76,105,115,116,0,14824,14926,10,3091,3115,166,0,123,123,0,2049,1573,2,1, + 3105,2049,59,16,10,3108,3141,166,0,45,45,45,114,101,118,101,97,108,45,45, + 45,0,2049,1573,1,3105,2049,3046,16,10,3124,3156,166,0,125,125,0,1,3105,2049, + 56,4,15,11,1793,3170,3841,3105,4097,2,10,1,3165,1793,3196,3841,3105,1793,3191,1, + 2,983567,1,3105,2049,3046,1641487,3,1,3180,7,10,1,3178,8,16,10,1,3174,2049, + 64,10,3149,3210,166,0,66,121,116,101,0,10,3201,3225,166,0,98,121,116,101, + 45,109,97,115,107,0,1,255,4,1,8,19,2,1793,3239,2049,2890,24,21,10, + 1,3234,2049,2192,24,10,3211,3257,166,0,114,101,112,108,97,99,101,0,1,0, + 1793,3286,1793,3281,1793,3276,1793,3271,3,3841,3210,10,1,3267,2049,2192,10,1,3265,2049, + 2192,10,1,3263,2049,2192,10,1,3261,2049,2502,1,1,1793,3312,1793,3307,1793,3302,3, + 3841,3210,10,1,3298,2049,2192,10,1,3296,2049,2192,10,1,3294,2049,2502,1,2,1793, + 3331,1793,3326,3,3841,3210,10,1,3322,2049,2192,10,1,3320,2049,2502,1,3,1793,3343, + 3,3841,3210,10,1,3339,2049,2502,3,10,3149,3371,166,0,98,58,116,111,45,98, + 121,116,101,45,97,100,100,114,101,115,115,0,1,4,19,10,3349,3387,166,0, + 98,58,102,101,116,99,104,0,1,4,20,4,1,4,20,67503109,17,15,4,2049, + 3225,10,3375,3413,166,0,98,58,115,116,111,114,101,0,4,4097,3210,1,4,20, + 4,1793,3427,2,15,2049,76,10,1,3422,2049,2192,2049,3257,2049,90,4,16,10,3401, + 3450,166,0,104,58,102,101,116,99,104,0,1793,3455,2049,3387,10,1,3452,1793,3467, + 2049,3046,2049,3387,1,-8,24,10,1,3459,2049,2216,22,10,3438,3485,166,0,104,58, + 115,116,111,114,101,0,2049,2181,1793,3493,1,255,21,10,1,3489,2049,2192,2049,3413, + 2049,3046,1793,3510,1,8,24,1,255,21,10,1,3503,2049,2192,2049,3413,10,3473,3529, + 166,0,119,58,102,101,116,99,104,0,1,4,197652,15,10,3517,3546,166,0,119, + 58,115,116,111,114,101,0,1,4,197652,16,10,3534,3568,166,0,119,58,102,101, + 116,99,104,45,110,101,120,116,0,2,1,4,17,4,2049,3529,10,3551,3593,166, + 0,104,58,102,101,116,99,104,45,110,101,120,116,0,2,1,2,17,4,2049, + 3450,10,3576,3618,166,0,98,58,102,101,116,99,104,45,110,101,120,116,0,2, + 1,1,17,4,2049,3387,10,3601,3643,166,0,119,58,115,116,111,114,101,45,110, + 101,120,116,0,2,1,4,17,1,3546,2049,2192,10,3626,3669,166,0,104,58,115, + 116,111,114,101,45,110,101,120,116,0,2,1,2,17,1,3485,2049,2192,10,3652, + 3695,166,0,98,58,115,116,111,114,101,45,110,101,120,116,0,2,1,1,17, + 1,3413,2049,2192,10,3678,3717,166,0,118,58,105,110,99,45,98,121,0,1793,3721, + 4367,10,1,3719,2049,2203,16,10,3704,3740,166,0,118,58,100,101,99,45,98,121, + 0,1793,3744,1180687,10,1,3742,2049,2203,16,10,3727,3760,166,0,118,58,105,110,99, + 0,1,1,4,2049,3717,10,3750,3776,166,0,118,58,100,101,99,0,1,1,4, + 2049,3740,10,3766,3794,166,0,118,58,108,105,109,105,116,0,251790597,1542,2049,3028,4100, + 10,3782,3809,166,0,118,58,111,110,0,2049,2477,4100,10,3800,3823,166,0,118,58, + 111,102,102,0,2049,2490,4100,10,3813,3837,166,0,97,108,108,111,116,0,1,3, + 2049,3717,10,3827,3857,166,0,118,58,112,114,101,115,101,114,118,101,0,983556,1793, + 3865,1,25,2049,2192,10,1,3860,2049,2192,4100,10,3842,3884,166,0,118,58,117,112, + 100,97,116,101,0,4,1793,3891,15,4,8,10,1,3887,2049,2203,16,10,3871,3906, + 166,0,99,111,112,121,0,1793,3915,285278725,1,33951492,268767489,1,6,10,1,3908,2049,2401, + 771,10,3897,3931,154,0,115,116,97,114,116,0,0,10,3921,3941,154,0,101,110, + 100,0,0,10,3933,3957,166,0,116,101,114,109,105,110,97,116,101,0,1,0, + 3841,3941,16,10,3897,3980,166,0,98,117,102,102,101,114,58,115,116,97,114,116, + 0,3841,3931,10,3963,3998,166,0,98,117,102,102,101,114,58,101,110,100,0,3841, + 3941,10,3983,4016,166,0,98,117,102,102,101,114,58,97,100,100,0,3841,3941,16, + 1,3941,2049,3760,2049,3957,10,4001,4041,166,0,98,117,102,102,101,114,58,103,101, + 116,0,1,3941,2049,3776,3841,3941,15,2049,3957,10,4026,4068,166,0,98,117,102,102, + 101,114,58,101,109,112,116,121,0,3841,3931,4097,3941,2049,3957,10,4051,4091,166,0, + 98,117,102,102,101,114,58,115,105,122,101,0,3841,3941,3841,3931,18,10,4075,4112, + 166,0,98,117,102,102,101,114,58,115,101,116,0,4097,3931,2049,4068,10,4097,4137, + 166,0,98,117,102,102,101,114,58,112,114,101,115,101,114,118,101,0,3841,3931, + 3841,3941,1793,4150,1,25,2049,2192,4097,3931,10,1,4143,2049,2192,4097,3941,10,4117,4173, + 154,0,84,101,109,112,83,116,114,105,110,103,115,0,32,4157,4192,154,0,84, + 101,109,112,83,116,114,105,110,103,77,97,120,0,512,4174,4205,166,0,83,84, + 82,73,78,71,83,0,2049,1544,3841,4173,3841,4192,19,18,10,4193,4226,154,0,67, + 117,114,114,101,110,116,0,5,10,4214,4242,166,0,115,58,112,111,105,110,116, + 101,114,0,3841,4226,3841,4192,19,2049,4205,17,10,4228,4262,166,0,115,58,110,101, + 120,116,0,1,4226,2049,3760,3841,4226,3841,4173,11,1793,4278,1,0,4097,4226,10,1, + 4273,9,10,4193,4293,166,0,115,58,116,101,109,112,0,2,2049,102,2049,3046,2049, + 4242,4,2049,3906,2049,4242,2049,4262,10,4282,4320,166,0,115,58,101,109,112,116,121, + 0,2049,4242,2049,4262,1,0,67502597,16,10,4308,4340,166,0,115,58,115,107,105,112, + 0,6,1793,4348,68223234,1,786703,0,10,1,4343,2049,2327,2049,3059,5,10,4329,4367,166, + 0,115,58,107,101,101,112,0,2049,1893,1793,4376,1,4340,2049,1850,10,1,4371,9, + 2049,1953,1,142,2049,2192,2049,154,10,4356,4400,178,0,115,105,103,105,108,58,39, + 0,2049,1893,1,4367,1,4293,2049,64,10,4388,4421,166,0,115,58,102,101,116,99, + 104,0,17,15,10,4409,4436,166,0,115,58,115,116,111,114,101,0,17,16,10, + 4424,4450,166,0,115,58,99,104,111,112,0,2049,4293,2,2049,102,67502597,17,2049,3059, + 1,0,4,16,10,4439,4478,166,0,115,58,114,101,118,101,114,115,101,0,1793, + 4520,2,2049,4293,2049,4112,1,102,1793,4496,2,2049,102,17,2049,3059,10,1,4489,2049, + 2216,4,1793,4510,2,15,2049,4016,2049,3059,10,1,4503,2049,2401,3,2049,3980,2049,4293, + 10,1,4480,2049,4137,10,4464,4539,166,0,115,58,112,114,101,112,101,110,100,0, + 2049,4293,1793,4563,2,2049,102,17,1793,4555,2,2049,102,2049,3046,10,1,4549,2049,2192, + 4,2049,3906,10,1,4543,2049,2203,10,4525,4581,166,0,115,58,97,112,112,101,110, + 100,0,4,2049,4539,10,4568,4600,166,0,115,58,102,111,114,45,101,97,99,104, + 0,1793,4615,67502597,6415,3,67502597,67502597,251987205,2054,101777670,1,1,4602,7,10,1,4602,8,771, + 10,4585,4637,166,0,115,58,105,110,100,101,120,47,99,104,97,114,0,4,1793, + 4651,68223234,1,6415,33883396,101450758,6404,3,1,4640,7,10,1,4640,1793,4660,18,2049,3059,772, + 10,1,4655,1793,4669,2049,102,67502597,11,10,1,4664,2049,2256,1793,4679,3,1,-1,10, + 1,4675,9,10,4620,4704,166,0,115,58,99,111,110,116,97,105,110,115,47,99, + 104,97,114,63,0,2049,4637,1,-1,12,10,4683,4721,166,0,115,58,104,97,115, + 104,0,1,5381,4,1793,4729,286458116,33,10,1,4726,2049,4600,10,4710,4742,154,0,83, + 114,99,0,0,4734,4751,154,0,84,97,114,0,0,4743,4760,154,0,80,97,100, + 0,0,4752,4767,154,0,73,0,0,4761,4774,154,0,70,0,0,4768,4782,154,0, + 65,116,0,0,4775,4797,166,0,116,101,114,109,105,110,97,116,101,0,1,0, + 3841,4760,3841,4751,2049,102,17,16,10,4783,4820,166,0,101,120,116,114,97,99,116, + 0,3841,4742,3841,4767,17,3841,4760,3841,4751,2049,102,2049,3906,10,4808,4846,166,0,99, + 111,109,112,97,114,101,0,3841,4760,3841,4751,2049,116,3841,4774,22,4097,4774,3841,4774, + 1793,4866,3841,4767,4097,4782,10,1,4861,2049,72,10,4834,4880,166,0,110,101,120,116, + 0,1,4767,2049,3760,10,4710,4908,166,0,115,58,99,111,110,116,97,105,110,115, + 47,115,116,114,105,110,103,63,0,4097,4751,4097,4742,2049,4320,4097,4760,1,0,4097, + 4767,1,0,4097,4774,3841,4742,2049,102,1793,4939,2049,4820,2049,4797,2049,4846,2049,4880,10, + 1,4930,2049,2401,3841,4774,10,4885,4954,154,0,83,116,114,0,0,4946,4967,166,0, + 101,120,116,114,97,99,116,0,2049,2181,3841,4954,4,2049,3906,3841,-1,67502597,17,1, + 0,4,16,10,4955,4993,166,0,99,104,101,99,107,0,1,4967,2049,2192,1793,5004, + 1,3046,2049,2192,10,1,4999,2049,2192,3841,4954,2049,4721,67502597,11,10,4983,5028,166,0, + 108,111,99,97,116,105,111,110,0,67503109,67503109,1793,5061,1793,5056,4,1793,5042,67502597,2049, + 2663,21,10,1,5037,2049,2192,4,1793,5052,772,2,10,1,5049,9,10,1,5034,2049, + 2192,10,1,5032,2049,2192,10,5015,5076,166,0,115,101,116,117,112,0,2049,4320,4097, + 4954,1,0,67503109,67503109,1,102,1,4721,2049,2216,2049,4320,2049,4112,1793,5100,67502597,2049,102, + 10,1,5096,2049,2192,4,10,4885,5125,166,0,115,58,105,110,100,101,120,47,115, + 116,114,105,110,103,0,67502597,1793,5151,1793,5144,2049,5076,1793,5139,2049,4993,2049,5028,10, + 1,5134,2049,2401,10,1,5130,2049,4137,771,3,10,1,5128,2049,2192,18,1,2,18, + 1,-1,2049,2981,10,5106,5177,166,0,115,58,102,105,108,116,101,114,0,1793,5205, + 2049,4320,2049,4112,4,1793,5197,2049,2181,4,8,1,4016,1,15,2049,64,10,1,5186, + 2049,4600,3,2049,3980,10,1,5179,2049,4137,10,5164,5220,166,0,115,58,109,97,112, + 0,1793,5242,2049,4320,2049,4112,4,1793,5234,67502597,8,2049,4016,10,1,5229,2049,4600,3, + 2049,3980,10,1,5222,2049,4137,10,5210,5260,166,0,115,58,115,117,98,115,116,114, + 0,1793,5266,17,2049,4320,10,1,5262,2049,2192,1793,5278,67502597,1,3906,2049,2192,10,1, + 5272,2049,2203,67502597,1793,5291,17,1,0,4,16,10,1,5285,2049,2192,10,5247,5308,166, + 0,115,58,114,105,103,104,116,0,67502597,2049,102,67502597,18,4,2049,5260,10,5296,5328, + 166,0,115,58,108,101,102,116,0,1,0,4,2049,5260,10,5317,5353,166,0,115, + 58,98,101,103,105,110,115,45,119,105,116,104,63,0,2,2049,102,1,17,2049, + 2192,2049,5328,2049,116,10,5334,5382,166,0,115,58,101,110,100,115,45,119,105,116, + 104,63,0,2,2049,102,1,17,2049,2192,2049,5308,2049,116,10,5365,5405,166,0,115, + 58,99,111,112,121,0,67502597,2049,102,2049,3046,2049,3906,10,5394,5426,166,0,115,58, + 68,73,71,73,84,83,0,2049,4340,48,49,50,51,52,53,54,55,56,57,65, + 66,67,68,69,70,0,1,5428,10,5413,5470,166,0,115,58,65,83,67,73,73, + 45,76,79,87,69,82,67,65,83,69,0,2049,4340,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,5472,10,5448,5524,166,0,115,58,65,83,67,73,73,45,85,80,80,69,82, + 67,65,83,69,0,2049,4340,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,5526,10,5502,5576,166, + 0,115,58,65,83,67,73,73,45,76,69,84,84,69,82,83,0,2049,4340,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,5578,10,5556,5652,166,0,115, + 58,80,85,78,67,84,85,65,84,73,79,78,0,2049,4340,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,5654,1,95,67502597,16,10,5634,5711,154,0,115, + 58,87,72,73,84,69,83,80,65,67,69,0,32,9,10,13,0,5694,5722,178, + 0,39,0,1,4320,2049,166,10,5716,5733,178,0,36,0,1,0,2049,154,10,5727, + 0,154,0,65,83,67,73,73,58,78,85,76,0,5738,27,154,0,65,83,67, + 73,73,58,69,83,67,0,5752,8,154,0,65,83,67,73,73,58,66,83,0, + 5766,9,154,0,65,83,67,73,73,58,72,84,0,5779,10,154,0,65,83,67, + 73,73,58,76,70,0,5792,11,154,0,65,83,67,73,73,58,86,84,0,5805, + 12,154,0,65,83,67,73,73,58,70,70,0,5818,13,154,0,65,83,67,73, + 73,58,67,82,0,5831,32,154,0,65,83,67,73,73,58,83,80,65,67,69, + 0,5844,127,154,0,65,83,67,73,73,58,68,69,76,0,5860,1,154,0,65, + 83,67,73,73,58,83,79,72,0,5874,2,154,0,65,83,67,73,73,58,83, + 84,88,0,5888,3,154,0,65,83,67,73,73,58,69,84,88,0,5902,4,154, + 0,65,83,67,73,73,58,69,79,84,0,5916,5,154,0,65,83,67,73,73, + 58,69,78,81,0,5930,6,154,0,65,83,67,73,73,58,65,67,75,0,5944, + 7,154,0,65,83,67,73,73,58,66,69,76,0,5958,14,154,0,65,83,67, + 73,73,58,83,79,0,5972,15,154,0,65,83,67,73,73,58,83,73,0,5985, + 16,154,0,65,83,67,73,73,58,68,76,69,0,5998,17,154,0,65,83,67, + 73,73,58,68,67,49,0,6012,18,154,0,65,83,67,73,73,58,68,67,50, + 0,6026,19,154,0,65,83,67,73,73,58,68,67,51,0,6040,20,154,0,65, + 83,67,73,73,58,68,67,52,0,6054,21,154,0,65,83,67,73,73,58,78, + 65,75,0,6068,22,154,0,65,83,67,73,73,58,83,89,78,0,6082,23,154, + 0,65,83,67,73,73,58,69,84,66,0,6096,24,154,0,65,83,67,73,73, + 58,67,65,78,0,6110,25,154,0,65,83,67,73,73,58,69,77,0,6124,26, + 154,0,65,83,67,73,73,58,83,85,66,0,6137,28,154,0,65,83,67,73, + 73,58,70,83,0,6151,29,154,0,65,83,67,73,73,58,71,83,0,6164,30, + 154,0,65,83,67,73,73,58,82,83,0,6177,31,154,0,65,83,67,73,73, + 58,85,83,0,6190,6220,166,0,99,58,108,111,119,101,114,99,97,115,101,63, + 0,1,97,1,122,2049,3077,10,6203,6244,166,0,99,58,117,112,112,101,114,99, + 97,115,101,63,0,1,65,1,90,2049,3077,10,6227,6265,166,0,99,58,108,101, + 116,116,101,114,63,0,1,6220,1,6244,2049,2216,22,10,6251,6286,166,0,99,58, + 100,105,103,105,116,63,0,1,48,1,57,2049,3077,10,6273,6308,166,0,99,58, + 118,105,115,105,98,108,101,63,0,1,32,1,126,2049,3077,10,6293,6328,166,0, + 99,58,118,111,119,101,108,63,0,2049,4340,97,101,105,111,117,65,69,73,79, + 85,0,1,6330,4,2049,4704,10,6315,6364,166,0,99,58,99,111,110,115,111,110, + 97,110,116,63,0,2,2049,6265,1793,6374,2049,6328,2049,2590,10,1,6369,1793,6382,3, + 2049,2490,10,1,6378,2049,64,10,6347,6405,166,0,99,58,119,104,105,116,101,115, + 112,97,99,101,63,0,1,5711,4,2049,4704,10,6387,6429,166,0,99,58,45,108, + 111,119,101,114,99,97,115,101,63,0,2049,6220,2049,2590,10,6411,6452,166,0,99, + 58,45,117,112,112,101,114,99,97,115,101,63,0,2049,6244,2049,2590,10,6434,6471, + 166,0,99,58,45,100,105,103,105,116,63,0,2049,6286,2049,2590,10,6457,6495,166, + 0,99,58,45,119,104,105,116,101,115,112,97,99,101,63,0,2049,6405,2049,2590, + 10,6476,6516,166,0,99,58,45,118,105,115,105,98,108,101,63,0,2049,6308,2049, + 2590,10,6500,6535,166,0,99,58,45,118,111,119,101,108,63,0,2049,6328,2049,2590, + 10,6521,6558,166,0,99,58,45,99,111,110,115,111,110,97,110,116,63,0,2049, + 6364,2049,2590,10,6540,6578,166,0,99,58,116,111,45,117,112,112,101,114,0,2, + 2049,6220,25,3,1,32,18,10,6563,6602,166,0,99,58,116,111,45,108,111,119, + 101,114,0,2,2049,6244,25,3,1,32,17,10,6587,6627,166,0,99,58,116,111, + 45,115,116,114,105,110,103,0,2049,4340,46,0,1,6629,2049,4293,1,37,2049,2203, + 10,6611,6658,166,0,99,58,116,111,103,103,108,101,45,99,97,115,101,0,2, + 2049,6220,1,6578,1,6602,2049,64,10,6640,6684,166,0,99,58,116,111,45,110,117, + 109,98,101,114,0,2,2049,6286,1793,6693,1,48,18,10,1,6689,1793,6701,3,1, + 0,10,1,6697,2049,64,10,6668,6721,166,0,115,58,116,111,45,117,112,112,101, + 114,0,1,6578,2049,5220,10,6706,6741,166,0,115,58,116,111,45,108,111,119,101, + 114,0,1,6602,2049,5220,10,6726,6762,166,0,115,58,116,114,105,109,45,108,101, + 102,116,0,2049,4293,1793,6776,2049,56,1,6405,1,2680,2049,2216,21,10,1,6766,2049, + 2327,2049,3059,10,6746,6800,166,0,115,58,116,114,105,109,45,114,105,103,104,116, + 0,2049,4293,2049,4478,2049,6762,2049,4478,10,6783,6820,166,0,115,58,116,114,105,109, + 0,2049,6800,2049,6762,10,6809,6848,154,0,82,101,119,114,105,116,101,85,110,100, + 101,114,115,99,111,114,101,115,0,-1,6825,6857,166,0,115,117,98,0,1,95, + 1793,6864,1,32,10,1,6861,2049,2502,10,6849,6881,166,0,114,101,119,114,105,116, + 101,0,3841,6848,1793,6890,1,6857,2049,5220,10,1,6885,9,10,6869,6905,166,0,104, + 97,110,100,108,101,0,1,4400,8,10,6825,6921,178,0,115,105,103,105,108,58, + 39,0,2049,6881,2049,6905,10,6909,6943,166,0,115,58,115,112,108,105,116,47,99, + 104,97,114,0,2049,2181,2049,4637,772,2049,2181,2049,5328,1,39,2049,2192,10,6926,6976, + 166,0,115,58,115,112,108,105,116,47,115,116,114,105,110,103,0,2049,2181,2049, + 5125,2049,3046,772,2049,2181,2049,5328,1,39,2049,2192,10,6957,7006,166,0,115,58,114, + 101,112,108,97,99,101,0,67502597,2049,102,2049,1953,16,1793,7022,2049,6976,4,2049,1953, + 15,17,10,1,7014,2049,2192,2049,4539,2049,4581,10,6992,7044,154,0,83,112,108,105, + 116,45,79,110,0,0,7031,7056,166,0,109,97,116,99,104,63,0,3841,7044,11, + 10,7045,7074,166,0,116,101,114,109,105,110,97,116,101,0,1,0,67502597,2049,3059, + 16,10,7060,7090,166,0,115,116,101,112,0,1,3046,2049,2192,2049,7056,1793,7104,2, + 2049,128,2049,7074,10,1,7098,9,10,6992,7123,166,0,115,58,116,111,107,101,110, + 105,122,101,0,4097,7044,2049,4367,2049,1953,1,0,2049,128,1793,7145,2,2049,128,2, + 1,7090,2049,4600,3,10,1,7135,2049,2192,2049,1953,67502597,18,2049,3059,67502597,16,10,7108, + 7169,154,0,78,101,101,100,108,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,7158,7305, + 154,0,76,101,110,0,0,7297,7317,154,0,84,111,107,101,110,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,7306,7452,154,0,84,80,0,0,7445,7462,166,0,115,97, + 118,101,0,2049,4367,3841,7452,1,7317,17,2049,3046,16,1,7452,2049,3760,10,7453,7486, + 166,0,110,101,120,116,0,1793,7492,3841,7305,17,10,1,7488,2049,2203,10,7477,7507, + 166,0,100,111,110,101,63,0,2049,102,2049,2663,10,7108,7537,166,0,115,58,116, + 111,107,101,110,105,122,101,45,111,110,45,115,116,114,105,110,103,0,1,0, + 4097,7452,1793,7551,2,1,7169,2049,5405,2049,4581,10,1,7543,1793,7560,2049,102,4097,7305, + 10,1,7555,2049,2216,1793,7577,1,7169,2049,6976,2049,7462,2049,7486,2049,7507,10,1,7566, + 2049,2351,1,7317,3841,7452,2049,3059,4097,7317,10,7512,7603,166,0,102,111,114,45,101, + 97,99,104,0,4,2049,56,1,17,2049,2192,1793,7619,5,2049,56,84018692,525572,1542,10, + 1,7612,2049,2401,771,10,7590,7640,166,0,115,117,98,115,116,105,116,117,116,101, + 0,2049,4205,1,129,18,10,7625,7658,166,0,101,120,116,114,97,99,116,0,2049, + 7640,2049,5405,10,7646,7676,166,0,116,111,107,101,110,105,122,101,0,2049,7537,2049, + 4320,10,7663,7693,166,0,99,111,109,98,105,110,101,0,2049,7640,2049,4581,2049,4581, + 10,7681,7710,166,0,109,101,114,103,101,0,4,1,7693,2049,7603,772,10,7700,7730, + 166,0,102,105,110,100,45,101,110,100,0,2,2049,102,2049,7640,2049,102,18,67502597, + 17,10,7717,7751,166,0,99,108,101,97,110,0,2049,7730,1,0,4,16,10,7512, + 7776,166,0,115,58,114,101,112,108,97,99,101,45,97,108,108,0,1,3,1793, + 7791,2049,7658,2049,7676,2049,7710,2049,7751,2049,4293,10,1,7780,2049,3857,10,7758,7807,154, + 0,83,116,114,105,110,103,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,7796,7888,166,0,99,104, + 101,99,107,45,115,105,103,110,0,2049,2700,1793,7897,1,45,2049,4016,10,1,7892, + 9,10,7873,7914,166,0,110,45,62,100,105,103,105,116,0,2049,5426,17,15,10, + 7901,7931,166,0,99,111,110,118,101,114,116,0,1793,7945,3841,231,20,4,2049,7914, + 2049,4016,2,2049,2663,10,1,7933,2049,2351,3,10,7758,7967,166,0,110,58,116,111, + 45,115,116,114,105,110,103,0,1793,7981,1,7807,2049,4112,2,2049,3009,2049,7931,2049, + 7888,10,1,7969,2049,4137,1,7807,2049,4478,10,7951,7999,166,0,99,104,97,114,0, + 1,32,1793,8008,1,95,2049,4016,10,1,8003,2049,2502,1,114,1793,8021,1,13,2049, + 4016,10,1,8016,2049,2502,1,110,1793,8034,1,10,2049,4016,10,1,8029,2049,2502,1, + 116,1793,8047,1,9,2049,4016,10,1,8042,2049,2502,1,48,1793,8060,1,0,2049,4016, + 10,1,8055,2049,2502,1,94,1793,8073,1,27,2049,4016,10,1,8068,2049,2502,2049,4016, + 10,7990,8089,166,0,116,121,112,101,0,1,99,1793,8097,4,2049,4016,10,1,8093, + 2049,2502,1,115,1793,8111,4,1,4016,2049,4600,10,1,8105,2049,2502,1,110,1793,8127, + 4,2049,7967,1,4016,2049,4600,10,1,8119,2049,2502,3,10,8080,8144,166,0,104,97, + 110,100,108,101,0,1,92,1793,8153,2049,56,2049,7999,10,1,8148,2049,2502,1,37, + 1793,8166,2049,56,2049,8089,10,1,8161,2049,2502,2049,4016,10,7951,8186,166,0,115,58, + 102,111,114,109,97,116,0,1793,8215,2049,4320,1793,8210,2049,4112,1793,8205,2049,56,25, + 2049,8144,1,8196,7,10,1,8196,8,3,10,1,8192,2049,2203,10,1,8188,2049,4137, + 10,8173,8232,166,0,115,58,99,111,110,115,116,0,1,4367,2049,2192,2049,2101,10, + 8220,8250,154,0,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,8239, + 8287,166,0,102,114,111,109,0,2049,102,2,1793,8305,1793,8298,1,8250,4113,10,1, + 8294,2049,2203,2049,3059,10,1,8292,2049,2401,3,10,8278,8318,166,0,116,111,0,2, + 2049,102,1793,8334,2049,56,1,97,18,2049,3046,1,8250,266001,10,1,8323,2049,2401,3, + 10,8220,8352,166,0,114,101,111,114,100,101,114,0,1,8287,2049,2192,2049,8318,10, + 8340,8369,166,0,99,117,114,114,121,0,2049,1953,1793,8379,4,2049,1802,2049,1826,10, + 1,8373,2049,2192,10,8359,8393,166,0,100,111,101,115,0,2049,1591,4,2049,8369,2049, + 1573,2049,180,16,1,166,2049,1653,10,8384,8423,166,0,100,58,102,111,114,45,101, + 97,99,104,0,1,2,1793,8449,6415,2049,2181,1793,8441,1793,8436,2052,10,1,8434,2049, + 2192,10,1,8432,2049,2192,1,8427,7,10,1,8427,8,3,10,8408,8470,166,0,100, + 58,108,111,111,107,117,112,45,120,116,0,1,0,4,1793,8495,2049,2181,2049,180, + 2831,1793,8488,4,1,2139,2049,2192,10,1,8482,1,15,2049,64,10,1,8475,2049,8423, + 3,10,8454,8514,166,0,97,58,108,101,110,103,116,104,0,15,10,8501,8538,166, + 0,97,58,99,111,117,110,116,101,100,45,114,101,115,117,108,116,115,0,8, + 2049,1953,1793,8551,2,2049,128,1,128,2049,2401,10,1,8543,2049,2192,10,8516,8574,166, + 0,97,58,102,114,111,109,45,115,116,114,105,110,103,0,2049,1953,1793,8588,2, + 2049,102,2049,128,1,128,2049,4600,10,1,8578,2049,2192,10,8556,8608,166,0,97,58, + 102,111,114,45,101,97,99,104,0,4,2049,56,1,17,2049,2192,1793,8624,5,2049, + 56,84018692,525572,1542,10,1,8617,2049,2401,771,10,8593,8640,166,0,97,58,100,117,112, + 0,2049,1953,1793,8653,2,15,2049,128,1,128,2049,8608,10,1,8644,2049,2192,10,8630, + 8669,166,0,97,58,99,111,112,121,0,1,3,1793,8685,4097,3,2,2049,8514,2049, + 128,1,128,2049,8608,10,1,8673,2049,3857,10,8658,8706,166,0,97,58,116,111,45, + 115,116,114,105,110,103,0,1,3,1793,8719,2049,8640,1,0,2049,128,2049,3046,10, + 1,8710,2049,3857,2049,4293,10,8690,8739,166,0,97,58,97,112,112,101,110,100,0, + 2049,2181,1,35,2049,2244,17,2049,1953,1793,8764,2049,128,1793,8759,1,128,2049,8608,10, + 1,8754,2049,2244,10,1,8750,2049,2192,10,8726,8783,166,0,97,58,112,114,101,112, + 101,110,100,0,4,2049,8739,10,8769,8798,166,0,97,58,99,104,111,112,0,2049, + 8640,1,-1,2049,3837,2,2049,3776,10,8787,8821,166,0,97,58,102,105,108,116,101, + 114,0,1793,8836,67502597,1,25,2049,2192,4,1,128,1,15,2049,64,10,1,8823,2049, + 8369,2049,1953,1793,8851,67502597,15,2049,128,2049,8608,10,1,8844,2049,2192,2049,1953,67502597,18, + 2049,3059,67502597,16,10,8808,8880,166,0,97,58,99,111,110,116,97,105,110,115,63, + 0,1,0,4,1793,8892,4,5,67502597,11,6,22,10,1,8885,2049,8608,772,10,8864, + 8921,166,0,97,58,99,111,110,116,97,105,110,115,47,115,116,114,105,110,103, + 63,0,1,0,4,1793,8934,4,5,67502597,2049,116,6,22,10,1,8926,2049,8608,772, + 10,8898,8950,166,0,97,58,109,97,112,0,1793,8956,8,2049,128,10,1,8952,2049, + 8369,2049,1953,1793,8971,67502597,15,2049,128,2049,8608,10,1,8964,2049,2192,10,8940,8990,166, + 0,97,58,114,101,118,101,114,115,101,0,2049,1953,1793,9024,2049,56,1793,9002,17, + 2049,3059,10,1,8998,2049,2203,2,2049,128,1793,9018,2,15,2049,128,2049,3059,10,1, + 9011,2049,2401,3,10,1,8994,2049,2192,10,8976,9038,166,0,97,58,116,104,0,17, + 2049,3046,10,9029,9054,166,0,97,58,102,101,116,99,104,0,2049,9038,15,10,9042, + 9070,166,0,97,58,115,116,111,114,101,0,2049,9038,16,10,9058,9087,166,0,97, + 58,114,101,100,117,99,101,0,1,17,2049,2192,2049,8608,10,9074,9107,166,0,105, + 100,101,110,116,105,102,121,0,1,-1,4,1,0,1793,9138,2049,2477,11,1793,9132, + 67502597,1,-1,11,1793,9128,772,2,10,1,9125,9,10,1,9119,9,2049,3046,10,1, + 9114,2049,9087,3,10,9074,9156,166,0,97,58,105,110,100,101,120,0,1,3,1793, + 9169,1,27,2049,8369,2049,8950,2049,9107,10,1,9160,2049,3857,10,9144,9193,166,0,97, + 58,105,110,100,101,120,47,115,116,114,105,110,103,0,1,3,1793,9206,1,116, + 2049,8369,2049,8950,2049,9107,10,1,9197,2049,3857,10,9174,9222,166,0,97,58,109,97, + 107,101,0,2049,8538,2,2,1,3,1793,9233,2049,8990,10,1,9230,2049,3857,4,2049, + 8669,10,9211,9247,178,0,123,0,1,327,2049,178,1,1558,2049,166,1,327,2049,178, + 10,9241,9266,178,0,125,0,1,343,2049,178,1,2192,2049,166,1,1558,2049,166,1, + 17,2049,172,1,41,2049,172,1,3059,2049,166,1,343,2049,178,1,9222,2049,166,10, + 9260,9311,166,0,98,111,117,110,100,115,63,0,67502597,2049,8514,67502597,13,10,9299,9326, + 166,0,99,111,112,121,0,2049,56,2049,128,10,9317,9342,166,0,116,111,45,101, + 110,100,0,2,2049,8514,17,2049,3046,10,9260,9360,166,0,97,58,108,101,102,116, + 0,2049,9311,1793,9368,771,1,-1,10,1,9364,2049,2796,2049,1953,67502597,2049,128,1793,9389, + 1,3046,2049,2192,1,9326,2049,2401,3,10,1,9379,2049,2192,10,9349,9406,166,0,97, + 58,114,105,103,104,116,0,2049,9311,1793,9414,771,1,-1,10,1,9410,2049,2796,2049, + 1953,67502597,2049,128,1793,9437,4,2049,9342,67502597,18,4,1,9326,2049,2401,3,10,1,9425, + 2049,2192,10,9394,9455,166,0,97,58,109,105,100,100,108,101,0,1,2129,2049,2192, + 4,67502597,2049,9311,1793,9470,771,3,1,-1,10,1,9465,2049,2796,771,2049,2181,4,18, + 2049,3046,2049,1953,67502597,2049,128,1793,9505,772,1793,9495,17,2049,3046,10,1,9491,2049,2192, + 1,9326,2049,2401,3,10,1,9488,2049,2192,10,9442,9519,154,0,70,108,97,103,0, + 0,9510,9532,166,0,99,111,109,112,97,114,101,0,67440386,184946434,10,9520,9546,166,0, + 108,101,110,103,116,104,0,659202,10,9535,9557,166,0,110,101,120,116,0,17043713,1, + 1,2577,10,9548,9576,166,0,110,111,116,45,101,113,117,97,108,0,50529030,2561,0, + 10,9562,9589,166,0,108,111,111,112,0,524549,9557,2049,9532,18157313,9519,9519,16,420610310,1, + 1,9589,7,10,9442,9613,166,0,97,58,101,113,63,0,1048833,-1,9519,2049,9532,151066369, + -1,9576,2049,9546,2049,9589,251724547,9519,10,9603,9639,166,0,97,58,45,101,113,63,0, + 2049,9613,2049,2590,10,9628,9663,166,0,97,58,98,101,103,105,110,115,45,119,105, + 116,104,63,0,1,3,1793,9679,2,2049,8514,1,17,2049,2192,2049,9360,2049,9613,10, + 1,9667,2049,3857,10,9644,9701,166,0,97,58,101,110,100,115,45,119,105,116,104, + 63,0,1,3,1793,9717,2,2049,8514,1,17,2049,2192,2049,9406,2049,9613,10,1,9705, + 2049,3857,10,9684,9739,166,0,99,117,114,114,101,110,116,45,108,105,110,101,0, + 2049,4205,1,1025,18,10,9722,9762,166,0,99,111,117,110,116,45,116,111,107,101, + 110,115,0,1793,9768,1,32,11,10,1,9764,2049,5177,2049,102,10,9745,9794,166,0, + 112,114,111,99,101,115,115,45,116,111,107,101,110,115,0,1793,9822,1,32,2049, + 6943,4,1793,9815,2,2049,102,2049,2680,1,405,1,15,2049,64,10,1,9803,2049,2192, + 2049,3046,10,1,9796,2049,2401,2049,405,10,9684,9844,166,0,115,58,101,118,97,108, + 117,97,116,101,0,2049,9739,2049,5405,2049,9739,2,2049,9762,2049,9794,10,9829,9863,154, + 0,76,80,0,0,9856,9874,154,0,73,110,100,101,120,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,9864,9915,166,0,110,101,120,116,0,3841,9863,1,9874, + 17,2049,3760,10,9906,9932,166,0,112,114,101,112,0,1,9863,2049,3760,1,0,3841, + 9863,1,9874,17,16,10,9923,9954,166,0,100,111,110,101,0,1,9863,2049,3776,10, + 9829,9965,166,0,73,0,3841,9863,1,9874,17,15,10,9959,9978,166,0,74,0,3841, + 9863,1,9874,17,2049,3059,15,10,9972,9993,166,0,75,0,3841,9863,1,9874,17,1, + 2,18,15,10,9987,10021,166,0,105,110,100,101,120,101,100,45,116,105,109,101, + 115,0,2049,9932,4,1793,10037,25,33886721,1,2053,1542,2049,9915,1,10026,7,10,1,10026, + 8,3,2049,9954,10,10003,10056,166,0,100,101,99,105,109,97,108,0,1,10,4097, + 231,10,10044,10072,166,0,98,105,110,97,114,121,0,1,2,4097,231,10,10061,10087, + 166,0,111,99,116,97,108,0,1,8,4097,231,10,10077,10100,166,0,104,101,120, + 0,1,16,4097,231,10,10092,10122,166,0,105,111,58,101,110,117,109,101,114,97, + 116,101,0,27,10,10105,10137,166,0,105,111,58,113,117,101,114,121,0,28,10, + 10124,10153,166,0,105,111,58,105,110,118,111,107,101,0,29,10,10139,10171,166,0, + 105,111,58,115,99,97,110,45,102,111,114,0,1,-1,4,2049,10122,1793,10202,2049, + 9965,2049,10137,772,67502597,11,1793,10198,1793,10193,3,2049,9965,10,1,10189,2049,2192,10,1, + 10187,9,10,1,10178,2049,10021,3,10,10155,10218,166,0,99,58,112,117,116,0,1793, + 10220,1,0,2049,10153,10,10208,10232,166,0,110,108,0,1,10,2049,10218,10,10225,10244, + 166,0,115,112,0,1,32,2049,10218,10,10237,10257,166,0,116,97,98,0,1,9, + 2049,10218,10,10249,10272,166,0,115,58,112,117,116,0,1,10218,2049,4600,10,10262,10287, + 166,0,110,58,112,117,116,0,2049,7967,2049,10272,10,10277,10302,166,0,114,101,115, + 101,116,0,2049,1558,25,771,1,10302,7,10,10292,10325,166,0,100,117,109,112,45, + 115,116,97,99,107,0,2049,1558,25,134284547,10325,134283782,10287,2049,10244,10,10310,10344,166,0, + 70,82,69,69,0,2049,4205,1,1025,18,2049,1953,18,10,10335,10362,166,0,101,111, + 108,63,0,1793,10368,1,13,11,10,1,10364,1793,10376,1,10,11,10,1,10372,1793, + 10384,1,32,11,10,1,10380,2049,2256,22,22,10,10353,10402,166,0,118,97,108,105, + 100,63,0,2,2049,102,2049,2680,10,10391,10416,166,0,98,115,63,0,2,1793,10423, + 1,8,11,10,1,10419,1793,10431,1,127,11,10,1,10427,2049,2216,22,10,10408,10450, + 166,0,99,104,101,99,107,45,98,115,0,2049,10416,1793,10473,2049,4091,1,2,2049, + 2619,1793,10466,2049,4041,3,10,1,10462,9,2049,4041,3,10,1,10454,9,10,10335,10487, + 166,0,99,58,103,101,116,0,1793,10489,1,1,2049,10171,2049,10153,10,10477,10511,166, + 0,115,58,103,101,116,45,119,111,114,100,0,1793,10539,1,7,15,2049,4112,1793, + 10530,2049,10487,2,2049,4016,2049,10450,2049,10362,10,1,10520,2049,2351,2049,3980,2049,4450,10, + 1,10513,2049,4137,10,10496,10552,166,0,98,121,101,0,26,10,10544,10565,166,0,108, + 105,115,116,101,110,0,2049,10511,2049,10402,1,405,1,15,2049,64,1,10565,7,10, + 10554,10590,154,0,105,111,58,88,56,54,0,0,10579,10604,166,0,105,100,101,110, + 116,105,102,121,0,3841,10590,2049,2663,1793,10671,1,2000,2049,10171,2,2049,2700,1793,10659, + 3,2049,4340,73,79,32,68,69,86,73,67,69,32,84,89,80,69,32,50,48, + 48,48,32,78,79,84,32,70,79,85,78,68,0,1,10622,2049,10272,2049,10232,10, + 1,10619,1793,10666,4097,10590,10,1,10663,2049,64,10,1,10610,9,10,10554,10686,166,0, + 105,111,58,120,56,54,0,2049,10604,3841,10590,2049,10153,10,10675,10709,166,0,112,105, + 111,58,105,110,45,98,121,116,101,0,1,0,2049,10686,10,10693,10731,166,0,112, + 105,111,58,111,117,116,45,98,121,116,101,0,1,1,2049,10686,10,10714,10752,166, + 0,112,105,111,58,105,110,45,119,111,114,100,0,1,6,2049,10686,10,10736,10774, + 166,0,112,105,111,58,111,117,116,45,119,111,114,100,0,1,7,2049,10686,10, + 10757,10793,166,0,114,97,109,58,115,116,111,114,101,0,1,2,2049,10686,10,10779, + 10812,166,0,114,97,109,58,102,101,116,99,104,0,1,3,2049,10686,10,10798,10836, + 166,0,114,97,109,58,115,116,111,114,101,45,98,121,116,101,0,1,4,2049, + 10686,10,10817,10860,166,0,114,97,109,58,102,101,116,99,104,45,98,121,116,101, + 0,1,5,2049,10686,10,10841,10873,166,0,104,101,120,0,2,15,1,45,11,1793, + 10885,2049,3046,1,-1,10,1,10880,1793,10892,1,0,10,1,10889,2049,64,4,1,0, + 4,1793,10931,2049,4340,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69, + 70,0,1,10904,4,2049,4637,17,1,16,19,10,1,10902,2049,4600,1,16,197652,4, + 25,19,10,10841,10954,178,0,115,105,103,105,108,58,48,0,2,2049,3059,2049,226, + 2049,2680,1793,10987,2049,3059,2049,226,1793,10973,2049,180,15,10,1,10969,1793,10981,2049,182, + 15,10,1,10977,2049,2216,8,10,1,10963,2049,2796,2049,3046,2049,10873,2049,154,10,10942, + 112,154,0,67,77,79,83,58,65,68,68,82,69,83,83,0,10998,113,154,0, + 67,77,79,83,58,68,65,84,65,0,11015,11043,166,0,114,116,99,58,113,117, + 101,114,121,0,1,112,2049,10731,1,113,2049,10709,10,11029,11067,166,0,114,116,99, + 58,115,101,99,111,110,100,0,1,0,2049,11043,10,11052,11087,166,0,114,116,99, + 58,109,105,110,117,116,101,0,1,2,2049,11043,10,11072,11105,166,0,114,116,99, + 58,104,111,117,114,0,1,4,2049,11043,10,11092,11122,166,0,114,116,99,58,100, + 97,121,0,1,7,2049,11043,10,11110,11141,166,0,114,116,99,58,109,111,110,116, + 104,0,1,8,2049,11043,10,11127,11159,166,0,114,116,99,58,121,101,97,114,0, + 1,9,2049,11043,10,11146,11173,166,0,116,105,109,101,0,2049,11105,2049,10287,1,58, + 2049,10218,2049,11087,2049,10287,2049,10232,10,11164,1016,154,0,115,101,114,105,97,108,58, + 67,79,77,49,0,11188,760,154,0,115,101,114,105,97,108,58,67,79,77,50, + 0,11204,1000,154,0,115,101,114,105,97,108,58,67,79,77,51,0,11220,744,154, + 0,115,101,114,105,97,108,58,67,79,77,52,0,11236,11268,154,0,115,101,114, + 105,97,108,58,80,111,114,116,0,1016,11252,11290,166,0,115,101,114,105,97,108, + 58,114,101,99,101,105,118,101,100,63,0,3841,11268,1,5,17,2049,10709,1,1, + 21,2049,2680,10,11269,11321,166,0,115,101,114,105,97,108,58,101,109,112,116,121, + 63,0,3841,11268,1,5,17,2049,10709,1,32,21,2049,2680,10,11303,11350,166,0,115, + 101,114,105,97,108,58,114,101,97,100,0,2049,11290,1793,11359,3841,11268,2049,10709,10, + 1,11354,2049,2796,2049,11350,10,11334,11383,166,0,115,101,114,105,97,108,58,119,114, + 105,116,101,0,2049,11321,1793,11392,3841,11268,2049,10731,10,1,11387,2049,2796,2049,11383,10, + 11366,11415,166,0,115,101,114,105,97,108,58,115,101,110,100,0,1793,11420,2049,11383, + 10,1,11417,2049,4600,10,11399,11441,166,0,115,101,114,105,97,108,58,105,110,105, + 116,0,1,0,3841,11268,1,1,17,2049,10731,1,128,3841,11268,1,3,17,2049,10731, + 1,3,3841,11268,2049,10731,1,0,3841,11268,1,1,17,2049,10731,1,3,3841,11268,1, + 3,17,2049,10731,1,199,3841,11268,1,2,17,2049,10731,1,11,3841,11268,1,4,17, + 2049,10731,10,11425,753664,154,0,86,71,65,45,66,65,83,69,0,11502,80,154,0, + 67,79,76,85,77,78,83,0,11515,25,154,0,82,79,87,83,0,11527,980,154, + 0,86,71,65,45,67,85,82,83,79,82,0,11536,981,154,0,86,71,65,45, + 68,65,84,65,0,11551,11576,154,0,118,103,97,58,82,111,119,0,0,11564,11592, + 154,0,118,103,97,58,67,111,108,117,109,110,0,0,11577,11615,166,0,118,103, + 97,58,117,112,100,97,116,101,45,99,117,114,115,111,114,0,3841,11576,1,80, + 19,3841,11592,17,2,1,15,1,980,2049,10731,1,255,21,1,981,2049,10731,1,14, + 1,980,2049,10731,1,8,24,1,255,21,1,981,2049,10731,10,11593,11674,166,0,118, + 103,97,58,109,111,118,101,45,99,117,114,115,111,114,0,4097,11592,4097,11576,2049, + 11615,10,11654,11697,154,0,118,103,97,58,68,105,115,112,108,97,121,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -714,79 +695,79 @@ CELL ngaImage[] = { 1793,15475,15464,15563,202111,405,377,1150,1535,0,10,1,10,2, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,12050,14088,166,0,115,116,97,114,116,105,110,103, - 45,97,100,100,114,101,115,115,0,1,753664,1,80,1,2,19,17,10,14067,14112, - 166,0,99,104,97,114,97,99,116,101,114,115,0,1,25,2049,3153,1,80,19, - 10,14097,14134,166,0,115,97,118,101,45,98,121,116,101,0,2,2049,11229,2049,4110, - 1,2,17,10,14120,14152,166,0,115,97,118,101,0,1793,14157,2049,14134,10,1,14154, - 2049,2495,3,10,14143,14179,166,0,97,108,108,45,98,117,116,45,116,111,112,0, - 1793,14192,1,12066,2049,4206,2049,14088,2049,14112,2049,14152,10,1,14181,2049,4231,10,14163,14209, - 166,0,109,111,118,101,45,117,112,0,1,753664,1,12066,1793,14222,67502597,2049,11205,1, - 2,17,10,1,14215,2049,4694,3,10,14197,14242,166,0,108,97,115,116,45,108,105, - 110,101,0,1,753664,1,25,2049,3153,1,80,19,1,2,19,17,10,14228,14266,166, - 0,101,114,97,115,101,0,1,32,67502597,2049,11205,1,2,17,10,14256,14295,166,0, - 101,114,97,115,101,45,108,97,115,116,45,108,105,110,101,0,2049,14242,1,80, - 1793,14304,2049,14266,10,1,14301,2049,2495,3,10,14275,14321,166,0,115,99,114,111,108, - 108,0,2049,14179,2049,14209,2049,14295,10,14310,14341,166,0,112,111,115,105,116,105,111, - 110,0,1,25,2049,3153,1,0,2049,12043,10,14328,14362,166,0,115,99,114,111,108, - 108,63,0,3841,11945,1,25,11,10,12023,14381,166,0,118,103,97,58,119,114,97, - 112,0,2049,14362,1793,14390,2049,14321,2049,14341,10,1,14385,9,2049,11984,10,14368,14409,166, - 0,112,111,115,105,116,105,111,110,0,3841,11945,1,80,19,1,2,19,3841,11961, - 1,2,19,17,1,753664,17,10,14396,14436,166,0,110,101,120,116,0,1,11961,2049, - 3854,3841,11961,1,80,14,1793,14456,1,11945,2049,3854,1,0,4097,11961,10,1,14447,9, - 2049,14381,10,14368,14476,166,0,118,103,97,58,99,58,112,117,116,0,1,10,1793, - 14491,1,0,4097,11961,1,11945,2049,3854,2049,14381,10,1,14480,2049,2596,1,13,1793,14510, - 1,0,4097,11961,1,11945,2049,3854,2049,14381,10,1,14499,2049,2596,1,8,1793,14533,1, - 11961,2049,3870,1,32,2049,14476,1,11961,2049,3870,2049,11984,10,1,14518,2049,2596,2049,14409, - 2049,11205,2049,14436,10,14462,14554,166,0,99,108,101,97,114,0,1,0,1,0,2049, - 12043,1,753664,1,80,1,25,19,1793,14578,1,32,67502597,2049,11205,1,2,17,10,1, - 14569,2049,2495,3,1,0,1,0,2049,12043,10,14544,14609,166,0,118,103,97,58,105, - 110,105,116,105,97,108,105,122,101,0,1,1793,1,10587,1,2,17,16,1,14476, - 1,10587,1,3,17,16,10,14590,14640,154,0,97,116,97,58,68,101,108,97,121, - 0,10000,14626,32,154,0,97,116,97,58,82,69,65,68,0,14641,48,154,0,97, - 116,97,58,87,82,73,84,69,0,14654,231,154,0,97,116,97,58,70,76,85, - 83,72,45,67,65,67,72,69,0,14668,496,154,0,97,116,97,58,80,82,73, - 77,65,82,89,0,14688,496,154,0,97,116,97,58,68,65,84,65,0,14704,497, - 154,0,97,116,97,58,69,82,82,79,82,0,14717,497,154,0,97,116,97,58, - 70,69,65,84,85,82,69,83,0,14731,498,154,0,97,116,97,58,83,69,67, - 84,79,82,45,67,79,85,78,84,0,14748,499,154,0,97,116,97,58,83,69, - 67,84,79,82,45,78,85,77,66,69,82,0,14769,500,154,0,97,116,97,58, - 67,89,76,73,78,68,69,82,45,76,79,87,0,14791,501,154,0,97,116,97, - 58,67,89,76,73,78,68,69,82,45,72,73,71,72,0,14812,502,154,0,97, - 116,97,58,68,82,73,86,69,0,14834,502,154,0,97,116,97,58,72,69,65, - 68,0,14848,503,154,0,97,116,97,58,83,84,65,84,85,83,0,14861,503,154, - 0,97,116,97,58,67,79,77,77,65,78,68,0,14876,1014,154,0,97,116,97, - 58,80,82,73,77,65,82,89,45,68,67,82,45,65,83,0,14892,14933,166,0, - 97,116,97,58,99,108,101,97,114,45,98,115,121,0,1793,14945,1,503,2049,11078, - 1,128,21,2049,2757,10,1,14935,2049,2445,10,14915,14969,166,0,97,116,97,58,115, - 101,116,45,115,101,99,116,111,114,0,1,224,1,502,2049,11100,1,0,1,497, - 2049,11100,1,1,1,498,2049,11100,2,1,499,2049,11100,2,1,8,24,1,500,2049, - 11100,1,16,24,1,501,2049,11100,10,14950,15017,166,0,109,97,115,107,0,1,255, - 21,10,15008,15031,166,0,100,101,108,97,121,0,3841,14640,1793,15036,10,1,15035,2049, - 2495,10,15021,15059,166,0,97,116,97,58,114,101,97,100,45,119,111,114,100,0, - 1,496,2049,11121,10,15041,15079,166,0,115,116,111,114,101,45,119,111,114,100,0, - 1793,15088,2049,15017,67502597,16,2049,3140,10,1,15081,2049,2203,1,8,24,67502597,16,2049,3140, - 10,15064,15113,166,0,97,116,97,58,114,101,97,100,0,2049,14969,1,32,1,503, - 2049,11100,2049,15031,1,256,1793,15132,2049,15059,2049,15079,10,1,15127,2049,2495,3,10,15100, - 15157,166,0,97,116,97,58,119,114,105,116,101,45,119,111,114,100,0,1,496, - 2049,11143,10,15138,15177,166,0,102,101,116,99,104,45,119,111,114,100,0,2049,56, - 1793,15187,2049,56,1,-8,24,10,1,15181,2049,2192,17,10,15162,15207,166,0,97,116, - 97,58,119,114,105,116,101,0,2049,14969,1,48,1,503,2049,11100,2049,15031,1,256, - 1793,15226,2049,15177,2049,15157,10,1,15221,2049,2495,3,1,231,1,503,2049,11100,2049,14933, - 10,15193,15249,166,0,101,111,108,63,0,1793,15255,1,13,11,10,1,15251,1793,15263, - 1,10,11,10,1,15259,1793,15271,1,32,11,10,1,15267,2049,2256,22,22,10,15240, - 15289,166,0,118,97,108,105,100,63,0,2,2049,102,2049,2774,10,15278,15308,166,0, - 99,104,101,99,107,45,98,115,0,2,1793,15315,1,8,11,10,1,15311,1793,15323, - 1,127,11,10,1,15319,2049,2216,22,1793,15336,2049,4135,2049,4135,771,10,1,15330,9, - 10,15193,15350,166,0,99,58,103,101,116,0,1793,15352,7425,1,2,2049,10587,10,15340, - 15373,166,0,115,58,103,101,116,45,119,111,114,100,0,1793,15400,1,1025,2049,4206, - 1793,15391,2049,15350,2,2049,4110,2049,15308,2049,15249,10,1,15381,2049,2445,2049,4074,2049,4544, - 10,1,15375,2049,4231,10,15358,15415,166,0,115,58,103,101,116,0,1793,15459,1,1025, - 2049,4206,1793,15450,2049,15350,2,2049,4110,2049,15308,1793,15436,1,13,11,10,1,15432,1793, - 15444,1,10,11,10,1,15440,2049,2216,22,10,1,15423,2049,2445,2049,4074,2049,4544,10, - 1,15417,2049,4231,10,15405,15475,166,0,108,105,115,116,101,110,0,2049,14609,2049,14554, - 2049,4434,82,69,84,82,79,47,78,97,116,105,118,101,0,1,15481,2049,10641,2049, - 10613,3841,4,1,100,20,2049,10656,1,46,2049,10587,2049,10656,2049,10601,2049,15373,2049,15289, - 1,405,1,15,2049,64,1,15515,7,10,1793,15561,1,63,2049,10587,2049,10613,2049,4434, - 119,111,114,100,32,110,111,116,32,102,111,117,110,100,0,1,15539,2049,10641,2049, - 10601,10,1,15531,0 }; + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11681, + 13719,166,0,115,116,97,114,116,105,110,103,45,97,100,100,114,101,115,115,0, + 1,753664,1,80,1,2,19,17,10,13698,13743,166,0,99,104,97,114,97,99,116, + 101,114,115,0,1,25,2049,3059,1,80,19,10,13728,13765,166,0,115,97,118,101, + 45,98,121,116,101,0,2,2049,10860,2049,4016,1,2,17,10,13751,13783,166,0,115, + 97,118,101,0,1793,13788,2049,13765,10,1,13785,2049,2401,3,10,13774,13810,166,0,97, + 108,108,45,98,117,116,45,116,111,112,0,1793,13823,1,11697,2049,4112,2049,13719,2049, + 13743,2049,13783,10,1,13812,2049,4137,10,13794,13840,166,0,109,111,118,101,45,117,112, + 0,1,753664,1,11697,1793,13853,67502597,2049,10836,1,2,17,10,1,13846,2049,4600,3,10, + 13828,13873,166,0,108,97,115,116,45,108,105,110,101,0,1,753664,1,25,2049,3059, + 1,80,19,1,2,19,17,10,13859,13897,166,0,101,114,97,115,101,0,1,32, + 67502597,2049,10836,1,2,17,10,13887,13926,166,0,101,114,97,115,101,45,108,97,115, + 116,45,108,105,110,101,0,2049,13873,1,80,1793,13935,2049,13897,10,1,13932,2049,2401, + 3,10,13906,13952,166,0,115,99,114,111,108,108,0,2049,13810,2049,13840,2049,13926,10, + 13941,13972,166,0,112,111,115,105,116,105,111,110,0,1,25,2049,3059,1,0,2049, + 11674,10,13959,13993,166,0,115,99,114,111,108,108,63,0,3841,11576,1,25,11,10, + 11654,14012,166,0,118,103,97,58,119,114,97,112,0,2049,13993,1793,14021,2049,13952,2049, + 13972,10,1,14016,9,2049,11615,10,13999,14040,166,0,112,111,115,105,116,105,111,110, + 0,3841,11576,1,80,19,1,2,19,3841,11592,1,2,19,17,1,753664,17,10,14027, + 14067,166,0,110,101,120,116,0,1,11592,2049,3760,3841,11592,1,80,14,1793,14087,1, + 11576,2049,3760,1,0,4097,11592,10,1,14078,9,2049,14012,10,13999,14107,166,0,118,103, + 97,58,99,58,112,117,116,0,1,10,1793,14122,1,0,4097,11592,1,11576,2049,3760, + 2049,14012,10,1,14111,2049,2502,1,13,1793,14141,1,0,4097,11592,1,11576,2049,3760,2049, + 14012,10,1,14130,2049,2502,1,8,1793,14164,1,11592,2049,3776,1,32,2049,14107,1,11592, + 2049,3776,2049,11615,10,1,14149,2049,2502,2049,14040,2049,10836,2049,14067,10,14093,14185,166,0, + 99,108,101,97,114,0,1,0,1,0,2049,11674,1,753664,1,80,1,25,19,1793, + 14209,1,32,67502597,2049,10836,1,2,17,10,1,14200,2049,2401,3,1,0,1,0,2049, + 11674,10,14175,14240,166,0,118,103,97,58,105,110,105,116,105,97,108,105,122,101, + 0,1,1793,1,10218,1,2,17,16,1,14107,1,10218,1,3,17,16,10,14221,14271, + 154,0,97,116,97,58,68,101,108,97,121,0,10000,14257,32,154,0,97,116,97, + 58,82,69,65,68,0,14272,48,154,0,97,116,97,58,87,82,73,84,69,0, + 14285,231,154,0,97,116,97,58,70,76,85,83,72,45,67,65,67,72,69,0, + 14299,496,154,0,97,116,97,58,80,82,73,77,65,82,89,0,14319,496,154,0, + 97,116,97,58,68,65,84,65,0,14335,497,154,0,97,116,97,58,69,82,82, + 79,82,0,14348,497,154,0,97,116,97,58,70,69,65,84,85,82,69,83,0, + 14362,498,154,0,97,116,97,58,83,69,67,84,79,82,45,67,79,85,78,84, + 0,14379,499,154,0,97,116,97,58,83,69,67,84,79,82,45,78,85,77,66, + 69,82,0,14400,500,154,0,97,116,97,58,67,89,76,73,78,68,69,82,45, + 76,79,87,0,14422,501,154,0,97,116,97,58,67,89,76,73,78,68,69,82, + 45,72,73,71,72,0,14443,502,154,0,97,116,97,58,68,82,73,86,69,0, + 14465,502,154,0,97,116,97,58,72,69,65,68,0,14479,503,154,0,97,116,97, + 58,83,84,65,84,85,83,0,14492,503,154,0,97,116,97,58,67,79,77,77, + 65,78,68,0,14507,1014,154,0,97,116,97,58,80,82,73,77,65,82,89,45, + 68,67,82,45,65,83,0,14523,14564,166,0,97,116,97,58,99,108,101,97,114, + 45,98,115,121,0,1793,14576,1,503,2049,10709,1,128,21,2049,2663,10,1,14566,2049, + 2351,10,14546,14600,166,0,97,116,97,58,115,101,116,45,115,101,99,116,111,114, + 0,1,224,1,502,2049,10731,1,0,1,497,2049,10731,1,1,1,498,2049,10731,2, + 1,499,2049,10731,2,1,8,24,1,500,2049,10731,1,16,24,1,501,2049,10731,10, + 14581,14648,166,0,109,97,115,107,0,1,255,21,10,14639,14662,166,0,100,101,108, + 97,121,0,3841,14271,1793,14667,10,1,14666,2049,2401,10,14652,14690,166,0,97,116,97, + 58,114,101,97,100,45,119,111,114,100,0,1,496,2049,10752,10,14672,14710,166,0, + 115,116,111,114,101,45,119,111,114,100,0,1793,14719,2049,14648,67502597,16,2049,3046,10, + 1,14712,2049,2203,1,8,24,67502597,16,2049,3046,10,14695,14744,166,0,97,116,97,58, + 114,101,97,100,0,2049,14600,1,32,1,503,2049,10731,2049,14662,1,256,1793,14763,2049, + 14690,2049,14710,10,1,14758,2049,2401,3,10,14731,14788,166,0,97,116,97,58,119,114, + 105,116,101,45,119,111,114,100,0,1,496,2049,10774,10,14769,14808,166,0,102,101, + 116,99,104,45,119,111,114,100,0,2049,56,1793,14818,2049,56,1,-8,24,10,1, + 14812,2049,2192,17,10,14793,14838,166,0,97,116,97,58,119,114,105,116,101,0,2049, + 14600,1,48,1,503,2049,10731,2049,14662,1,256,1793,14857,2049,14808,2049,14788,10,1,14852, + 2049,2401,3,1,231,1,503,2049,10731,2049,14564,10,14824,14880,166,0,101,111,108,63, + 0,1793,14886,1,13,11,10,1,14882,1793,14894,1,10,11,10,1,14890,1793,14902,1, + 32,11,10,1,14898,2049,2256,22,22,10,14871,14920,166,0,118,97,108,105,100,63, + 0,2,2049,102,2049,2680,10,14909,14939,166,0,99,104,101,99,107,45,98,115,0, + 2,1793,14946,1,8,11,10,1,14942,1793,14954,1,127,11,10,1,14950,2049,2216,22, + 1793,14967,2049,4041,2049,4041,771,10,1,14961,9,10,14824,14981,166,0,99,58,103,101, + 116,0,1793,14983,7425,1,2,2049,10218,10,14971,15004,166,0,115,58,103,101,116,45, + 119,111,114,100,0,1793,15031,1,1025,2049,4112,1793,15022,2049,14981,2,2049,4016,2049,14939, + 2049,14880,10,1,15012,2049,2351,2049,3980,2049,4450,10,1,15006,2049,4137,10,14989,15046,166, + 0,115,58,103,101,116,0,1793,15090,1,1025,2049,4112,1793,15081,2049,14981,2,2049,4016, + 2049,14939,1793,15067,1,13,11,10,1,15063,1793,15075,1,10,11,10,1,15071,2049,2216, + 22,10,1,15054,2049,2351,2049,3980,2049,4450,10,1,15048,2049,4137,10,15036,15106,166,0, + 108,105,115,116,101,110,0,2049,14240,2049,14185,2049,4340,82,69,84,82,79,47,78, + 97,116,105,118,101,0,1,15112,2049,10272,2049,10244,3841,4,1,100,20,2049,10287,1, + 46,2049,10218,2049,10287,2049,10232,2049,15004,2049,14920,1,405,1,15,2049,64,1,15146,7, + 10,1793,15192,1,63,2049,10218,2049,10244,2049,4340,119,111,114,100,32,110,111,116,32, + 102,111,117,110,100,0,1,15170,2049,10272,2049,10232,10,1,15162,0 }; diff --git a/vm/nga-c/image.c b/vm/nga-c/image.c index ab8f211..a012f9a 100644 --- a/vm/nga-c/image.c +++ b/vm/nga-c/image.c @@ -10,8 +10,8 @@ #define CELL_MAX LLONG_MAX - 1 #endif #endif -CELL ngaImageCells = 16786; -CELL ngaImage[] = { 1793,16447,16742,16785,202111,405,377,1150,1535,0,10,1,10,2,10,3,10,4,10, +CELL ngaImageCells = 17078; +CELL ngaImage[] = { 1793,16447,17034,17077,202111,405,377,1150,1535,0,10,1,10,2,10,3,10,4,10, 5,10,6,10,7,10,8,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,68223234,1,2575, 85000450,1,656912,161,178,268505089,63,62,285281281,0,63,2063,10,101384453,0,9,10,68485378,255,18350338, @@ -20,7 +20,7 @@ CELL ngaImage[] = { 1793,16447,16742,16785,202111,405,377,1150,1535,0,10,1,10,2, 101777669,1,17565186,107,524545,111,64,167838467,-1,134287105,3,59,659457,3,459023,128,2049,56,25,2049, 128,1793,135,2049,135,117506307,0,128,0,524545,26,133,168820993,0,147,1642241,147,134283523,11,133, 1793,128,524545,2049,128,1793,128,16846593,147,161,178,1793,64,16846593,147,133,178,1793,64,7, - 10,659713,1,659713,2,659713,3,659713,4,1793,16495,17108737,3,2,524559,128,2049,128,2049,128, + 10,659713,1,659713,2,659713,3,659713,4,1793,16787,17108737,3,2,524559,128,2049,128,2049,128, 524545,0,128,2049,142,168820998,2,15710,1150,167841793,206,9,17826049,0,206,2,15,25,524546,186, 134287105,207,116,2305,208,459023,216,134287361,207,211,659201,206,10,659969,7,2049,56,25,17694978,58, 232,9,84152833,48,319750404,231,117507601,234,184618754,45,25,16974851,-1,168886532,1,134284289,1,247,134284289,0, @@ -166,7 +166,7 @@ CELL ngaImage[] = { 1793,16447,16742,16785,202111,405,377,1150,1535,0,10,1,10,2, 14978,110,58,105,110,99,0,659713,1,10,3036,3059,166,14978,110,58,100,101,99,0, 659969,1,10,3049,3077,166,14978,110,58,98,101,116,119,101,101,110,63,0,67503109,1793, 3085,67503109,67503109,2049,3028,10,1,3080,2049,2203,11,10,3062,3105,166,14978,83,99,111,112, - 101,76,105,115,116,0,16596,16674,10,3091,3115,166,14978,123,123,0,2049,1573,2,1, + 101,76,105,115,116,0,16888,16966,10,3091,3115,166,14978,123,123,0,2049,1573,2,1, 3105,2049,59,16,10,3108,3141,166,14978,45,45,45,114,101,118,101,97,108,45,45, 45,0,2049,1573,1,3105,2049,3046,16,10,3124,3156,166,14978,125,125,0,1,3105,2049, 56,4,15,11,1793,3170,3841,3105,4097,2,10,1,3165,1793,3196,3841,3105,1793,3191,1, @@ -222,7 +222,7 @@ CELL ngaImage[] = { 1793,16447,16742,16785,202111,405,377,1150,1535,0,10,1,10,2, 154,14978,84,101,109,112,83,116,114,105,110,103,115,0,32,4157,4192,154,14978,84, 101,109,112,83,116,114,105,110,103,77,97,120,0,512,4174,4205,166,14978,83,84, 82,73,78,71,83,0,2049,1544,3841,4173,3841,4192,19,18,10,4193,4226,154,0,67, - 117,114,114,101,110,116,0,6,10,4214,4242,166,0,115,58,112,111,105,110,116, + 117,114,114,101,110,116,0,18,10,4214,4242,166,0,115,58,112,111,105,110,116, 101,114,0,3841,4226,3841,4192,19,2049,4205,17,10,4228,4262,166,0,115,58,110,101, 120,116,0,1,4226,2049,3760,3841,4226,3841,4173,11,1793,4278,1,0,4097,4226,10,1, 4273,9,10,4193,4293,166,14978,115,58,116,101,109,112,0,2,2049,102,2049,3046,2049, @@ -850,4 +850,18 @@ CELL ngaImage[] = { 1793,16447,16742,16785,202111,405,377,1150,1535,0,10,1,10,2, 99,116,45,119,111,114,100,115,45,108,105,115,116,105,110,103,46,102,111,114, 116,104,0,16596,16769,166,16717,100,58,119,111,114,100,115,45,98,101,103,105,110, 110,105,110,103,45,119,105,116,104,0,2049,1953,2049,5405,1793,16780,2049,186,2049,16694, - 10,1,16775,2049,8423,10,0 }; + 10,1,16775,2049,8423,10,1793,16810,2049,14824,2049,4367,1793,16800,1,188,1,2,17,8, + 10,1,16793,2049,2192,2049,1573,2049,184,16,10,1,16787,100,105,99,116,45,119,111, + 114,100,115,45,108,105,115,116,105,110,103,46,102,111,114,116,104,0,16742,16849, + 166,16812,100,58,119,111,114,100,115,0,1793,16858,2049,186,2049,10272,2049,10244,10,1, + 16851,2049,8423,10,100,105,99,116,45,119,111,114,100,115,45,108,105,115,116,105, + 110,103,46,102,111,114,116,104,0,16837,16905,166,16863,100,58,119,111,114,100,115, + 45,119,105,116,104,0,2049,1953,2049,5405,1793,16936,2049,186,2,2049,1953,2049,4908,1793, + 16925,2049,10272,2049,10244,10,1,16920,1793,16931,3,10,1,16929,2049,64,10,1,16911,2049, + 8423,10,100,105,99,116,45,119,111,114,100,115,45,108,105,115,116,105,110,103, + 46,102,111,114,116,104,0,16888,16986,166,16941,100,105,115,112,108,97,121,45,105, + 102,45,108,101,102,116,0,2,2049,1953,2049,5353,1793,16998,2049,10272,2049,10244,10,1, + 16993,1793,17004,3,10,1,17002,2049,64,10,100,105,99,116,45,119,111,114,100,115, + 45,108,105,115,116,105,110,103,46,102,111,114,116,104,0,16888,17061,166,17009,100, + 58,119,111,114,100,115,45,98,101,103,105,110,110,105,110,103,45,119,105,116, + 104,0,2049,1953,2049,5405,1793,17072,2049,186,2049,16986,10,1,17067,2049,8423,10,0 }; diff --git a/vm/nga-c/retro.c b/vm/nga-c/retro.c index ab88af6..df23792 100644 --- a/vm/nga-c/retro.c +++ b/vm/nga-c/retro.c @@ -1533,7 +1533,7 @@ void evaluate(char *s) { ---------------------------------------------------------------------*/ int not_eol(int c) { - return (c != 10) && (c != 13) && (c != 32) && (c != EOF) && (c != 0); + return (c != 9) && (c != 10) && (c != 13) && (c != 32) && (c != EOF) && (c != 0); } void read_token(FILE *file, char *token_buffer) {