From 7c29018d118fafbcff4bf93952e8c3b71dbfafa8 Mon Sep 17 00:00:00 2001 From: crc <> Date: Wed, 12 Apr 2023 00:34:17 +0000 Subject: [PATCH] more use of d:set-source instead of raw lookup/patching for initial source data; remove NoEcho variable FossilOrigin-Name: 6e56f20570a58f1e5a7782f7a26a3cdeaa2af17b6a58f46a63ba509366306ebf --- image/build.retro | 2 +- interface/block.retro | 8 +- interface/deprecated.retro | 3 - interface/ffi.retro | 10 +- interface/filesystem.retro | 47 ++-- interface/retro-unix.retro | 8 +- interface/rng.retro | 3 +- interface/sockets.retro | 31 ++- interface/unix.retro | 48 ++-- ngaImage | Bin 90312 -> 90312 bytes vm/nga-c/image.c | 506 ++++++++++++++++++------------------- 11 files changed, 329 insertions(+), 337 deletions(-) diff --git a/image/build.retro b/image/build.retro index 9e76240..adae11e 100644 --- a/image/build.retro +++ b/image/build.retro @@ -1,3 +1,3 @@ ~~~ -#15 'BUILD const +#16 'BUILD const ~~~ diff --git a/interface/block.retro b/interface/block.retro index 82172ae..bc1dc2b 100644 --- a/interface/block.retro +++ b/interface/block.retro @@ -15,8 +15,8 @@ The exposed word set is compact: {{ :block:invoke #3 io:scan-for io:invoke ; ---reveal--- - :block:read (na-) #0 block:invoke ; - :block:write (na-) #1 block:invoke ; + :block:read (na-) #0 block:invoke ; + :block:write (na-) #1 block:invoke ; :block:set-file (s-) #2 block:invoke ; }} ~~~ @@ -25,8 +25,8 @@ The exposed word set is compact: ~~~ 'interface/blocks.retro s:dedup -dup 'block:read d:lookup d:source store -dup 'block:write d:lookup d:source store +dup 'block:read d:lookup d:source store +dup 'block:write d:lookup d:source store dup 'block:set-file d:lookup d:source store drop ~~~ diff --git a/interface/deprecated.retro b/interface/deprecated.retro index 528780b..e69de29 100644 --- a/interface/deprecated.retro +++ b/interface/deprecated.retro @@ -1,3 +0,0 @@ -~~~ - -~~~ diff --git a/interface/ffi.retro b/interface/ffi.retro index 041017b..afd2fcb 100644 --- a/interface/ffi.retro +++ b/interface/ffi.retro @@ -29,10 +29,10 @@ :ffi:invoke (n-) #2 ffi:operation ; -'interface/ffi.retro s:dedup -dup 'ffi:operation d:lookup d:source store -dup 'ffi:open d:lookup d:source store -dup 'ffi:map-sym d:lookup d:source store -dup 'ffi:invoke d:lookup d:source store +'interface/ffi.retro +dup 'ffi:operation d:set-source +dup 'ffi:open d:set-source +dup 'ffi:map-sym d:set-source +dup 'ffi:invoke d:set-source drop ~~~ diff --git a/interface/filesystem.retro b/interface/filesystem.retro index b98bc41..89c1d81 100644 --- a/interface/filesystem.retro +++ b/interface/filesystem.retro @@ -167,29 +167,28 @@ once for each line in a file. This makes some things trivial. E.g., a simple ## d:source ~~~ -'interface/filesystem.retro s:dedup -dup 'file:spew d:lookup d:source store -dup 'file:slurp d:lookup d:source store -dup 'file:for-each-line d:lookup d:source store -dup 'file:read-line d:lookup d:source store -dup 'file:open-for-writing d:lookup d:source store -dup 'file:open-for-append d:lookup d:source store -dup 'file:open-for-reading d:lookup d:source store -dup 'file:exists? d:lookup d:source store -dup 'file:flush d:lookup d:source store -dup 'file:delete d:lookup d:source store -dup 'file:size d:lookup d:source store -dup 'file:seek d:lookup d:source store -dup 'file:tell d:lookup d:source store -dup 'file:write d:lookup d:source store -dup 'file:read d:lookup d:source store -dup 'file:close d:lookup d:source store -dup 'file:open d:lookup d:source store -dup 'file:R+ d:lookup d:source store -dup 'file:A d:lookup d:source store -dup 'file:W d:lookup d:source store -dup 'file:R d:lookup d:source store -dup 'file:operation d:lookup d:source store +'interface/filesystem.retro +dup 'file:spew d:set-source +dup 'file:slurp d:set-source +dup 'file:for-each-line d:set-source +dup 'file:read-line d:set-source +dup 'file:open-for-writing d:set-source +dup 'file:open-for-append d:set-source +dup 'file:open-for-reading d:set-source +dup 'file:exists? d:set-source +dup 'file:flush d:set-source +dup 'file:delete d:set-source +dup 'file:size d:set-source +dup 'file:seek d:set-source +dup 'file:tell d:set-source +dup 'file:write d:set-source +dup 'file:read d:set-source +dup 'file:close d:set-source +dup 'file:open d:set-source +dup 'file:R+ d:set-source +dup 'file:A d:set-source +dup 'file:W d:set-source +dup 'file:R d:set-source +dup 'file:operation d:set-source drop ~~~ - diff --git a/interface/retro-unix.retro b/interface/retro-unix.retro index 2d64e96..ebb23cb 100644 --- a/interface/retro-unix.retro +++ b/interface/retro-unix.retro @@ -37,8 +37,7 @@ a quote which looks for an end of line character. ~~~ :s:get (-s) [ [ ASCII:CR eq? ] - [ ASCII:LF eq? ] - bi or ] parse-until ; + [ ASCII:LF eq? ] bi or ] parse-until ; ~~~ ~~~ @@ -56,8 +55,6 @@ RRE's C part will access a couple parts of this, based on the startup flags passed. ~~~ -'NoEcho var - {{ 'EOT var FALSE 'Ignoring var-n @@ -84,7 +81,7 @@ startup flags passed. :// script:ignore-to-eol &Ignoring v:on ; immediate :banner version 'RETRO_12_(%n.%n)\n s:format s:put FREE EOM FREE - EOM '%n_Max,_%n_Used,_%n_Free\n s:format s:put ; - :listen @NoEcho [ banner ] -if repeat input process again ; + :listen banner repeat input process again ; }} &listen #1 store @@ -97,7 +94,6 @@ startup flags passed. dup 'listen d:lookup d:source store dup 'banner d:lookup d:source store dup '// d:lookup d:source store -dup 'NoEcho d:lookup d:source store dup 'clear d:lookup d:source store dup 's:get d:lookup d:source store dup 'parse-until d:lookup d:source store diff --git a/interface/rng.retro b/interface/rng.retro index 61bf4f4..6f8c5e6 100644 --- a/interface/rng.retro +++ b/interface/rng.retro @@ -10,5 +10,6 @@ best approach on their host system. dup n:negative? [ drop 'Error:_device_(0010)_not_found s:put nl ] if; io:invoke ; -'interface/rng.retro s:dedup d:last d:source store +'interface/rng.retro 'n:random d:set-source ~~~ + diff --git a/interface/sockets.retro b/interface/sockets.retro index a67cc63..e629d99 100644 --- a/interface/sockets.retro +++ b/interface/sockets.retro @@ -7,12 +7,11 @@ that it is fairly low level. ~~~ :socket:operation - #7 io:scan-for - dup n:negative? [ drop 'Error:_device_(0007)_not_found s:put nl - 'See_https://retroforth.org/support/2022.1/SOCKETS.md - s:put nl - 'for_instructions_on_enabling_sockets. - s:put nl ] if; + #7 io:scan-for dup n:negative? + [ drop 'Error:_device_(0007)_not_found s:put nl + 'See_https://retroforth.org/support/2022.1/SOCKETS.md + s:put nl + 'for_instructions_on_enabling_sockets. s:put nl ] if; io:invoke ; ~~~ @@ -97,16 +96,16 @@ Does not return anything. ~~~ 'interface/sockets.retro -dup 'socket:configure d:set-source -dup 'socket:close d:set-source -dup 'socket:recv d:set-source -dup 'socket:send d:set-source -dup 'socket:connect d:set-source -dup 'socket:accept d:set-source -dup 'socket:listen d:set-source -dup 'socket:bind d:set-source -dup 'socket:create d:set-source +dup 'socket:configure d:set-source +dup 'socket:close d:set-source +dup 'socket:recv d:set-source +dup 'socket:send d:set-source +dup 'socket:connect d:set-source +dup 'socket:accept d:set-source +dup 'socket:listen d:set-source +dup 'socket:bind d:set-source +dup 'socket:create d:set-source dup 'socket:gethostbyname d:set-source -dup 'socket:operation d:set-source +dup 'socket:operation d:set-source drop ~~~ diff --git a/interface/unix.retro b/interface/unix.retro index 4c3369d..1880439 100644 --- a/interface/unix.retro +++ b/interface/unix.retro @@ -137,30 +137,30 @@ seconds. ## d:source ~~~ -'interface/unix.retro s:dedup -dup 'unix:slurp-pipe d:lookup d:source store -dup 'unix:for-each-file d:lookup d:source store -dup 'unix:count-files-in-cwd d:lookup d:source store -dup 'unix:get-cwd d:lookup d:source store -dup 'unix:pipe d:lookup d:source store -dup 'unix:execute d:lookup d:source store -dup 'unix:sleep d:lookup d:source store -dup 'unix:putenv d:lookup d:source store -dup 'unix:getenv d:lookup d:source store -dup 'unix:chdir d:lookup d:source store -dup 'unix:pclose d:lookup d:source store -dup 'unix:popen d:lookup d:source store -dup 'unix:kill d:lookup d:source store -dup 'unix:wait d:lookup d:source store -dup 'unix:getpid d:lookup d:source store -dup 'unix:exit d:lookup d:source store -dup 'unix:exec3 d:lookup d:source store -dup 'unix:exec2 d:lookup d:source store -dup 'unix:exec1 d:lookup d:source store -dup 'unix:exec0 d:lookup d:source store -dup 'unix:fork d:lookup d:source store -dup 'unix:system d:lookup d:source store -dup 'io:unix-syscall d:lookup d:source store +'interface/unix.retro +dup 'unix:slurp-pipe d:set-source +dup 'unix:for-each-file d:set-source +dup 'unix:count-files-in-cwd d:set-source +dup 'unix:get-cwd d:set-source +dup 'unix:pipe d:set-source +dup 'unix:execute d:set-source +dup 'unix:sleep d:set-source +dup 'unix:putenv d:set-source +dup 'unix:getenv d:set-source +dup 'unix:chdir d:set-source +dup 'unix:pclose d:set-source +dup 'unix:popen d:set-source +dup 'unix:kill d:set-source +dup 'unix:wait d:set-source +dup 'unix:getpid d:set-source +dup 'unix:exit d:set-source +dup 'unix:exec3 d:set-source +dup 'unix:exec2 d:set-source +dup 'unix:exec1 d:set-source +dup 'unix:exec0 d:set-source +dup 'unix:fork d:set-source +dup 'unix:system d:set-source +dup 'io:unix-syscall d:set-source drop ~~~ diff --git a/ngaImage b/ngaImage index 18e667663438540e14fdb41d294d1d7856f592c4..d66cb3825ed649ebd6beef98c629cdfc60185a75 100644 GIT binary patch delta 18 ZcmX?ckoCkt)`l&N1qqA-(+d+A!vRef2J-*_ delta 18 ZcmX?ckoCkt)`l&N1qqD&(+d+A!vReZ2J!#^ diff --git a/vm/nga-c/image.c b/vm/nga-c/image.c index acebc8e..7f6fe73 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 = 19890; -CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10,1,10,2,10,3,10, +CELL ngaImageCells = 19893; +CELL ngaImage[] = { 1793,19399,19848,19892,202309,417,389,1249,1535,0,11254,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,163,180,268505089,65,64,285281281,0,65,2063,10,101384453,0,9,10,68485378, @@ -20,9 +20,9 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 1,251790353,101777669,1,17565186,109,524545,113,66,167838467,-1,134287105,3,61,659457,3,459023,130,2049,58, 25,2049,130,1793,137,2049,137,117506307,0,130,0,524545,28,135,168820993,0,149,1642241,149,134283523, 13,135,1793,130,524545,2049,130,1793,130,16846593,149,163,180,1793,66,16846593,149,135,180,1793, - 66,7,10,659713,1,659713,2,659713,3,659713,4,659713,5,1793,19642,17108737,3,2,524559,130, - 2049,130,2049,130,524545,0,130,524545,0,130,2049,144,1048838,2,1642241,10,7,18623,8246457295145463473,167841793, - 216,11,17826049,0,216,2,15,25,524546,17961,134287105,217,29,2305,218,459023,226,2049,4875,134287361, + 66,7,10,659713,1,659713,2,659713,3,659713,4,659713,5,1793,19645,17108737,3,2,524559,130, + 2049,130,2049,130,524545,0,130,524545,0,130,2049,144,1048838,2,1642241,10,7,18648,8246457295145463473,167841793, + 216,11,17826049,0,216,2,15,25,524546,17986,134287105,217,29,2305,218,459023,226,2049,4875,134287361, 217,221,659201,216,10,659969,7,2049,58,25,17694978,58,244,9,84152833,48,319750404,243,117507601,246, 184618754,45,25,16974851,-1,168886532,1,134284289,1,259,134284289,0,246,660227,32,0,0,115,105,103, 105,108,58,105,0,285278479,276,6,2576,524546,104,1641217,1,167838467,273,2049,288,2049,284,524545, @@ -170,7 +170,7 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 110,58,105,110,99,0,659713,1,10,3114,3139,168,12041,210720197721,110,58,100,101,99,0, 659969,1,10,3128,3158,168,12041,8246617666422322998,110,58,98,101,116,119,101,101,110,63,0,67503109, 1793,3166,67503109,67503109,2049,3106,10,1,3161,2049,2241,11,10,3142,3187,168,12041,249861296566813883,83,99, - 111,112,101,76,105,115,116,0,19747,19801,10,3172,3198,168,12041,5864091,123,123,0,2049, + 111,112,101,76,105,115,116,0,19750,19804,10,3172,3198,168,12041,5864091,123,123,0,2049, 1576,2,1,3187,2049,61,16,10,3190,3225,168,12041,-6305314778776785742,45,45,45,114,101,118,101, 97,108,45,45,45,0,2049,1576,1,3187,2049,3125,16,10,3207,3241,168,12041,5864159,125, 125,0,1,3187,2049,58,4,15,11,1793,3255,3841,3187,4097,2,10,1,3250,1793,3281, @@ -228,7 +228,7 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 10,4239,4297,156,12041,-4600587576916820603,84,101,109,112,83,116,114,105,110,103,115,0,32,4280, 4317,156,12041,7474516786580364824,84,101,109,112,83,116,114,105,110,103,77,97,120,0,512,4298, 4331,168,12041,229440420829967,83,84,82,73,78,71,83,0,2049,1545,3841,4297,3841,4317,19,18, - 10,4318,4353,156,0,0,67,117,114,114,101,110,116,0,0,10,4340,4370,168,0, + 10,4318,4353,156,0,0,67,117,114,114,101,110,116,0,30,10,4340,4370,168,0, 0,115,58,112,111,105,110,116,101,114,0,3841,4353,3841,4317,19,2049,4331,17,10, 4355,4391,168,0,0,115,58,110,101,120,116,0,1,4353,2049,3864,3841,4353,3841,4297, 11,1793,4407,1,0,4097,4353,10,1,4402,9,10,4318,4423,168,12041,6953962777192,115,58,116, @@ -574,7 +574,7 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 115,116,101,110,0,2049,11148,2049,11035,1,417,1,17,2049,66,1,11204,7,10,11192, 11239,156,12041,-213800119713087686,100,58,72,97,115,104,45,70,117,110,99,116,105,111,110,0, 4875,11218,11254,168,12041,7572226109254526,100,58,114,101,104,97,115,104,0,1793,11272,1793,11264,2049, - 190,3841,11239,8,10,1,11258,2049,2241,2049,188,16,10,1,11256,2049,8491,10,11240,15, + 190,3841,11239,8,10,1,11258,2049,2241,2049,188,16,10,1,11256,2049,8491,10,11240,16, 156,0,210668957237,66,85,73,76,68,0,11277,11299,168,0,210709067314,99,111,109,109,97,0, 2049,130,10,11288,11312,168,0,6385123288,99,111,110,115,0,2049,1977,1793,11322,4,2049,11299, 2049,11299,10,1,11316,2049,2229,10,11302,11336,168,0,193488123,99,97,114,0,10,11327,11346, @@ -583,7 +583,7 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 168,0,6385111390,99,100,114,64,0,2049,11346,15,10,11377,11401,168,0,6385111359,99,100,114, 33,0,2049,11346,16,10,11391,11414,168,0,193454780,69,78,68,0,10,11405,11431,168,0, 8246317064958091121,102,108,108,58,99,114,101,97,116,101,0,1,11414,2049,11312,10,11415,11443,156, - 0,177687,114,0,17822,11415,11460,168,0,8246317065617826724,102,108,108,58,116,111,45,101,110,100, + 0,177687,114,0,17847,11415,11460,168,0,8246317065617826724,102,108,108,58,116,111,45,101,110,100, 0,2,4097,11443,1793,11489,2049,11387,2,1,11414,12,2,1793,11478,67502597,4097,11443,10,1, 11474,1793,11484,772,10,1,11482,2049,66,10,1,11465,2049,2372,3841,11443,10,11444,11518,168, 0,4204933718218055169,102,108,108,58,97,112,112,101,110,100,47,118,97,108,117,101,0,1, @@ -601,7 +601,7 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 3139,2049,11546,1,11546,2049,2229,3841,11715,4,2049,11401,3841,11715,2049,11401,10,11716,11769,168, 0,229465928304278,102,108,108,58,112,117,116,0,1793,11776,2049,10934,2049,10888,10,1,11771,2049, 11620,10,105,110,105,116,0,11781,12053,11756,11806,156,0,-2744922491217532500,115,58,100,101,100,117, - 112,46,100,97,116,97,0,11786,11788,11815,156,0,5863786,116,49,0,509952,11807,11824,156, + 112,46,100,97,116,97,0,11786,11788,11815,156,0,5863786,116,49,0,510976,11807,11824,156, 0,5863787,116,50,0,0,11788,11847,168,0,-1192507208876296873,115,58,100,101,100,117,112,46,114, 101,103,105,115,116,101,114,0,2049,4500,3841,11806,4,1,11518,2049,2241,10,11825,11879, 168,0,-1192507805573830048,115,58,100,101,100,117,112,46,100,101,102,105,110,101,100,63,0, @@ -721,14 +721,14 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 1,14133,2049,10918,10,1,14131,2049,2554,1,-9223372036854775806,1793,14166,2049,4472,101,58,45,73,78, 70,0,1,14154,2049,10918,10,1,14152,2049,2554,2049,13892,2049,12916,10,105,110,116,101, 114,102,97,99,101,47,102,108,111,97,116,105,110,103,112,111,105,110,116,46, - 114,101,116,114,111,0,14175,15022,14034,14227,168,14995,8056574075740390096,102,105,108,101,58,111,112, + 114,101,116,114,111,0,14175,15022,14034,14227,168,15024,8056574075740390096,102,105,108,101,58,111,112, 101,114,97,116,105,111,110,0,1,4,2049,10812,2,2049,2761,1793,14277,3,2049,4472, 69,114,114,111,114,58,32,100,101,118,105,99,101,32,40,48,48,48,52,41, 32,110,111,116,32,102,111,117,110,100,0,1,14239,2049,10918,2049,10875,10,1,14236, - 2049,2862,2049,10793,10,14207,0,156,14995,6953509466161,102,105,108,101,58,82,0,14284,1,156, - 14995,6953509466166,102,105,108,101,58,87,0,14296,2,156,14995,6953509466144,102,105,108,101,58,65, - 0,14308,3,156,14995,229465812383356,102,105,108,101,58,82,43,0,14320,14348,168,14995,249888269686595441,102, - 105,108,101,58,111,112,101,110,0,1,0,2049,14227,10,14333,14369,168,14995,8246312899643285909,102, + 2049,2862,2049,10793,10,14207,0,156,15024,6953509466161,102,105,108,101,58,82,0,14284,1,156, + 15024,6953509466166,102,105,108,101,58,87,0,14296,2,156,15024,6953509466144,102,105,108,101,58,65, + 0,14308,3,156,15024,229465812383356,102,105,108,101,58,82,43,0,14320,14348,168,15024,249888269686595441,102, + 105,108,101,58,111,112,101,110,0,1,0,2049,14227,10,14333,14369,168,15024,8246312899643285909,102, 105,108,101,58,99,108,111,115,101,0,1,1,2049,14227,10,14353,14389,168,14995,249888269686691131, 102,105,108,101,58,114,101,97,100,0,1,2,2049,14227,10,14374,14410,168,14995,8246312899667213450, 102,105,108,101,58,119,114,105,116,101,0,1,3,2049,14227,10,14394,14430,168,14995, @@ -762,247 +762,247 @@ CELL ngaImage[] = { 1793,19387,19845,19889,202309,417,389,1249,1535,0,11254,0,10 1,14934,2049,4260,10,14916,14979,168,14995,249888269686739198,102,105,108,101,58,115,112,101,119,0, 2049,14661,4,1793,14988,67502597,2049,14410,10,1,14984,2049,4741,2049,14369,10,105,110,116,101, 114,102,97,99,101,47,102,105,108,101,115,121,115,116,101,109,46,114,101,116, - 114,111,0,14995,15761,14964,15045,168,15740,4299348465103751587,105,111,58,117,110,105,120,45,115,121, - 115,99,97,108,108,0,1,8,2049,10812,2,2049,2761,1793,15095,3,2049,4472,69,114, - 114,111,114,58,32,100,101,118,105,99,101,32,40,48,48,48,56,41,32,110, - 111,116,32,102,111,117,110,100,0,1,15057,2049,10918,2049,10875,10,1,15054,2049,2862, - 2049,10793,10,15024,15119,168,15740,-4549633084047572696,117,110,105,120,58,115,121,115,116,101,109,0, - 1,0,2049,15045,10,15102,15139,168,15740,249909575776928405,117,110,105,120,58,102,111,114,107,0, - 1,1,2049,15045,10,15124,15160,168,15740,8247016000637760504,117,110,105,120,58,101,120,101,99,48, - 0,1,2,2049,15045,10,15144,15181,168,15740,8247016000637760505,117,110,105,120,58,101,120,101,99, - 49,0,1,3,2049,15045,10,15165,15202,168,15740,8247016000637760506,117,110,105,120,58,101,120,101, - 99,50,0,1,4,2049,15045,10,15186,15223,168,15740,8247016000637760507,117,110,105,120,58,101,120, - 101,99,51,0,1,5,2049,15045,10,15207,15243,168,15740,249909575776901981,117,110,105,120,58,101, - 120,105,116,0,1,6,2049,15045,10,15228,15265,168,15740,-4549633084540884128,117,110,105,120,58,103, - 101,116,112,105,100,0,1,7,2049,15045,10,15248,15285,168,15740,249909575777523800,117,110,105,120, - 58,119,97,105,116,0,1,8,2049,15045,10,15270,15305,168,15740,249909575777101359,117,110,105,120, - 58,107,105,108,108,0,1,9,2049,15045,10,15290,15326,168,15740,8247016000650494309,117,110,105,120, - 58,112,111,112,101,110,0,1,10,2049,15045,10,15310,15348,168,15740,-4549633084191325687,117,110,105, - 120,58,112,99,108,111,115,101,0,1,11,2049,15045,10,15331,15369,168,15740,8247016000634812845,117, - 110,105,120,58,99,104,100,105,114,0,1,13,2049,15045,10,15353,15391,168,15740,-4549633084540895924, - 117,110,105,120,58,103,101,116,101,110,118,0,1,14,2049,15045,10,15374,15413,168, - 15740,-4549633084169702651,117,110,105,120,58,112,117,116,101,110,118,0,1,15,2049,15045,10,15396, - 15434,168,15740,8247016000653932284,117,110,105,120,58,115,108,101,101,112,0,1,16,2049,15045,10, - 15418,15457,168,15740,-2563939202030369066,117,110,105,120,58,101,120,101,99,117,116,101,0,1,17, - 2049,15045,10,15439,15477,168,15740,249909575777281169,117,110,105,120,58,112,105,112,101,0,1,0, - 2049,15326,1,14782,1,15348,2049,2255,10,15462,15506,168,15740,-2563939200175176882,117,110,105,120,58,103, - 101,116,45,99,119,100,0,2049,4472,112,119,100,0,1,15508,2049,15477,2049,7055,2049, - 4472,47,0,1,15520,2049,4721,10,15488,15556,168,15740,-2316844556017942917,117,110,105,120,58,99,111, - 117,110,116,45,102,105,108,101,115,45,105,110,45,99,119,100,0,2049,4472,108, - 115,32,45,49,32,124,32,119,99,32,45,108,0,1,15558,2049,15477,2049,7055,2049, - 266,10,15527,15605,168,15740,-4594486429310984907,117,110,105,120,58,102,111,114,45,101,97,99,104, - 45,102,105,108,101,0,2049,4472,108,115,32,45,49,32,45,112,0,1,15607,1, - 0,2049,15326,2049,15556,1793,15640,1793,15635,2049,14782,2049,4423,67502597,8,10,1,15628,2049,2241, - 10,1,15626,2049,2449,2049,15348,3,10,15581,15659,168,0,210728208851,115,116,97,114,116,0, - 4,2049,4234,1,0,2049,15326,10,15648,15677,168,0,6385651009,114,101,97,100,0,2,2049, - 14389,2,2049,4134,2049,2722,10,15667,15698,168,0,6953509544294,102,105,110,105,115,104,0,2049, - 15348,2049,4212,10,15581,15724,168,15740,1204178398703148788,117,110,105,120,58,115,108,117,114,112,45, - 112,105,112,101,0,1793,15735,2049,15659,1,15677,2049,2397,2049,15698,10,1,15726,2049,4260, - 10,105,110,116,101,114,102,97,99,101,47,117,110,105,120,46,114,101,116,114, - 111,0,15740,15854,15703,15777,168,15834,7572652289159374,110,58,114,97,110,100,111,109,0,1,10, - 2049,10812,2,2049,2761,1793,15827,3,2049,4472,69,114,114,111,114,58,32,100,101,118, + 114,111,0,14995,15035,102,105,108,101,58,99,108,111,115,101,0,15024,15774,14964,15058, + 168,15776,4299348465103751587,105,111,58,117,110,105,120,45,115,121,115,99,97,108,108,0,1, + 8,2049,10812,2,2049,2761,1793,15108,3,2049,4472,69,114,114,111,114,58,32,100,101, + 118,105,99,101,32,40,48,48,48,56,41,32,110,111,116,32,102,111,117,110, + 100,0,1,15070,2049,10918,2049,10875,10,1,15067,2049,2862,2049,10793,10,15037,15132,168,15776, + -4549633084047572696,117,110,105,120,58,115,121,115,116,101,109,0,1,0,2049,15058,10,15115,15152, + 168,15776,249909575776928405,117,110,105,120,58,102,111,114,107,0,1,1,2049,15058,10,15137,15173, + 168,15776,8247016000637760504,117,110,105,120,58,101,120,101,99,48,0,1,2,2049,15058,10,15157, + 15194,168,15776,8247016000637760505,117,110,105,120,58,101,120,101,99,49,0,1,3,2049,15058,10, + 15178,15215,168,15776,8247016000637760506,117,110,105,120,58,101,120,101,99,50,0,1,4,2049,15058, + 10,15199,15236,168,15776,8247016000637760507,117,110,105,120,58,101,120,101,99,51,0,1,5,2049, + 15058,10,15220,15256,168,15776,249909575776901981,117,110,105,120,58,101,120,105,116,0,1,6,2049, + 15058,10,15241,15278,168,15753,-4549633084540884128,117,110,105,120,58,103,101,116,112,105,100,0,1, + 7,2049,15058,10,15261,15298,168,15753,249909575777523800,117,110,105,120,58,119,97,105,116,0,1, + 8,2049,15058,10,15283,15318,168,15753,249909575777101359,117,110,105,120,58,107,105,108,108,0,1, + 9,2049,15058,10,15303,15339,168,15753,8247016000650494309,117,110,105,120,58,112,111,112,101,110,0, + 1,10,2049,15058,10,15323,15361,168,15753,-4549633084191325687,117,110,105,120,58,112,99,108,111,115, + 101,0,1,11,2049,15058,10,15344,15382,168,15753,8247016000634812845,117,110,105,120,58,99,104,100, + 105,114,0,1,13,2049,15058,10,15366,15404,168,15753,-4549633084540895924,117,110,105,120,58,103,101, + 116,101,110,118,0,1,14,2049,15058,10,15387,15426,168,15753,-4549633084169702651,117,110,105,120,58, + 112,117,116,101,110,118,0,1,15,2049,15058,10,15409,15447,168,15753,8247016000653932284,117,110,105, + 120,58,115,108,101,101,112,0,1,16,2049,15058,10,15431,15470,168,15753,-2563939202030369066,117,110, + 105,120,58,101,120,101,99,117,116,101,0,1,17,2049,15058,10,15452,15490,168,15753, + 249909575777281169,117,110,105,120,58,112,105,112,101,0,1,0,2049,15339,1,14782,1,15361,2049, + 2255,10,15475,15519,168,15753,-2563939200175176882,117,110,105,120,58,103,101,116,45,99,119,100,0, + 2049,4472,112,119,100,0,1,15521,2049,15490,2049,7055,2049,4472,47,0,1,15533,2049,4721, + 10,15501,15569,168,15753,-2316844556017942917,117,110,105,120,58,99,111,117,110,116,45,102,105,108, + 101,115,45,105,110,45,99,119,100,0,2049,4472,108,115,32,45,49,32,124,32, + 119,99,32,45,108,0,1,15571,2049,15490,2049,7055,2049,266,10,15540,15618,168,15753,-4594486429310984907, + 117,110,105,120,58,102,111,114,45,101,97,99,104,45,102,105,108,101,0,2049, + 4472,108,115,32,45,49,32,45,112,0,1,15620,1,0,2049,15339,2049,15569,1793,15653, + 1793,15648,2049,14782,2049,4423,67502597,8,10,1,15641,2049,2241,10,1,15639,2049,2449,2049,15361, + 3,10,15594,15672,168,0,210728208851,115,116,97,114,116,0,4,2049,4234,1,0,2049,15339, + 10,15661,15690,168,0,6385651009,114,101,97,100,0,2,2049,14389,2,2049,4134,2049,2722,10, + 15680,15711,168,0,6953509544294,102,105,110,105,115,104,0,2049,15361,2049,4212,10,15594,15737,168, + 15753,1204178398703148788,117,110,105,120,58,115,108,117,114,112,45,112,105,112,101,0,1793,15748, + 2049,15672,1,15690,2049,2397,2049,15711,10,1,15739,2049,4260,10,105,110,116,101,114,102, + 97,99,101,47,117,110,105,120,46,114,101,116,114,111,0,15753,15786,117,110,105, + 120,58,101,120,105,116,0,15776,15879,15716,15802,168,15859,7572652289159374,110,58,114,97,110,100, + 111,109,0,1,10,2049,10812,2,2049,2761,1793,15852,3,2049,4472,69,114,114,111,114, + 58,32,100,101,118,105,99,101,32,40,48,48,49,48,41,32,110,111,116,32, + 102,111,117,110,100,0,1,15814,2049,10918,2049,10875,10,1,15811,2049,2862,2049,10793,10, + 105,110,116,101,114,102,97,99,101,47,114,110,103,46,114,101,116,114,111,0, + 15859,16291,15788,15902,168,16269,4482520117059041020,99,108,111,99,107,58,111,112,101,114,97,116,105, + 111,110,0,1,5,2049,10812,2,2049,2761,1793,15952,3,2049,4472,69,114,114,111,114, + 58,32,100,101,118,105,99,101,32,40,48,48,48,53,41,32,110,111,116,32, + 102,111,117,110,100,0,1,15914,2049,10918,2049,10875,10,1,15911,2049,2862,2049,10793,10, + 15881,15980,168,16269,4482526860617352831,99,108,111,99,107,58,116,105,109,101,115,116,97,109,112, + 0,1,0,2049,15902,10,15959,16000,168,16269,249884182168395049,99,108,111,99,107,58,100,97,121, + 0,1,1,2049,15902,10,15985,16022,168,16269,-4577286724249897519,99,108,111,99,107,58,109,111,110, + 116,104,0,1,2,2049,15902,10,16005,16043,168,16269,8246178011557794972,99,108,111,99,107,58,121, + 101,97,114,0,1,3,2049,15902,10,16027,16064,168,16269,8246178011557195593,99,108,111,99,107,58, + 104,111,117,114,0,1,4,2049,15902,10,16048,16087,168,16269,-3476509310577319139,99,108,111,99,107, + 58,109,105,110,117,116,101,0,1,5,2049,15902,10,16069,16110,168,16269,-3476509310347652505,99,108, + 111,99,107,58,115,101,99,111,110,100,0,1,6,2049,15902,10,16092,16134,168,16269, + -4044342796047171665,99,108,111,99,107,58,117,116,99,58,100,97,121,0,1,7,2049,15902,10, + 16115,16160,168,16269,4482528721224061399,99,108,111,99,107,58,117,116,99,58,109,111,110,116,104, + 0,1,8,2049,15902,10,16139,16185,168,16269,-4336103753589045278,99,108,111,99,107,58,117,116,99, + 58,121,101,97,114,0,1,9,2049,15902,10,16165,16210,168,16269,-4336103753589644657,99,108,111,99, + 107,58,117,116,99,58,104,111,117,114,0,1,10,2049,15902,10,16190,16237,168,16269, + 349495210710499299,99,108,111,99,107,58,117,116,99,58,109,105,110,117,116,101,0,1,11, + 2049,15902,10,16215,16264,168,16269,349495210940165933,99,108,111,99,107,58,117,116,99,58,115,101, + 99,111,110,100,0,1,12,2049,15902,10,105,110,116,101,114,102,97,99,101,47, + 99,108,111,99,107,46,114,101,116,114,111,0,16269,16690,16242,16315,168,0,1976442044545254821,115, + 99,114,105,112,116,58,111,112,101,114,97,116,105,111,110,0,1,9,2049,10812, + 2,2049,2761,1793,16365,3,2049,4472,69,114,114,111,114,58,32,100,101,118,105,99, + 101,32,40,48,48,48,57,41,32,110,111,116,32,102,111,117,110,100,0,1, + 16327,2049,10918,2049,10875,10,1,16324,2049,2862,2049,10793,10,16242,16394,168,16664,1976422442775525130,115,99, + 114,105,112,116,58,97,114,103,117,109,101,110,116,115,0,1,0,2049,16315,10, + 16372,16424,168,16664,7012485947518414468,115,99,114,105,112,116,58,103,101,116,45,97,114,103,117, + 109,101,110,116,0,2049,4451,4,1,1,2049,16315,10,16399,16445,168,16664,229469872107401,105,110, + 99,108,117,100,101,0,1,2,2049,16315,10,16432,16467,168,16664,-4553194680242110987,115,99,114,105, + 112,116,58,110,97,109,101,0,2049,4451,1,3,2049,16315,10,16450,16499,168,16664,6834827170184619652, + 115,99,114,105,112,116,58,99,117,114,114,101,110,116,45,102,105,108,101,0, + 2049,4451,1,4,2049,16315,10,16474,16531,180,16664,6834827170184835340,115,99,114,105,112,116,58,99, + 117,114,114,101,110,116,45,108,105,110,101,0,1,5,2049,16315,2049,156,10,16506, + 16564,168,16664,-4964876483161304491,115,99,114,105,112,116,58,105,103,110,111,114,101,45,116,111, + 45,101,111,108,0,1,6,2049,16315,10,16538,16595,168,16664,-112287744780050755,115,99,114,105,112, + 116,58,97,98,111,114,116,45,105,110,99,108,117,100,101,0,1,7,2049,16315, + 10,16569,16611,168,16664,210706230653,97,98,111,114,116,0,1,149,2049,3931,1,8,2049,16315, + 10,16600,16650,168,0,-7741142524340576066,115,99,114,105,112,116,58,99,117,114,114,101,110,116, + 45,108,105,110,101,45,116,101,120,116,0,2049,4451,1793,16659,1,9,2049,16315,10, + 1,16654,2049,2241,10,105,110,116,101,114,102,97,99,101,47,115,99,114,105,112, + 116,105,110,103,46,114,101,116,114,111,0,16664,17146,16620,16714,168,17122,1183117598919957017,115,111, + 99,107,101,116,58,111,112,101,114,97,116,105,111,110,0,1,7,2049,10812,2, + 2049,2761,1793,16871,3,2049,4472,69,114,114,111,114,58,32,100,101,118,105,99,101, + 32,40,48,48,48,55,41,32,110,111,116,32,102,111,117,110,100,0,1,16726, + 2049,10918,2049,10875,2049,4472,83,101,101,32,104,116,116,112,115,58,47,47,114,101, + 116,114,111,102,111,114,116,104,46,111,114,103,47,115,117,112,112,111,114,116, + 47,50,48,50,50,46,49,47,83,79,67,75,69,84,83,46,109,100,0,1, + 16765,2049,10918,2049,10875,2049,4472,102,111,114,32,105,110,115,116,114,117,99,116,105, + 111,110,115,32,111,110,32,101,110,97,98,108,105,110,103,32,115,111,99,107, + 101,116,115,46,0,1,16826,2049,10918,2049,10875,10,1,16723,2049,2862,2049,10793,10,16692, + 16904,168,17122,-7671511728383126910,115,111,99,107,101,116,58,103,101,116,104,111,115,116,98,121, + 110,97,109,101,0,1,0,2049,16714,10,16878,16928,168,17122,4328757989659661596,115,111,99,107,101, + 116,58,99,114,101,97,116,101,0,1,1,2049,16714,10,16909,16950,168,17122,-4552658767528245371,115, + 111,99,107,101,116,58,98,105,110,100,0,1,2,2049,16714,10,16933,16974,168,17122, + 4328757990001730167,115,111,99,107,101,116,58,108,105,115,116,101,110,0,1,3,2049,16714,10, + 16955,16998,168,17122,4328757989563534360,115,111,99,107,101,116,58,97,99,99,101,112,116,0,1, + 4,2049,16714,10,16979,17023,168,17122,-4724938931013862254,115,111,99,107,101,116,58,99,111,110,110, + 101,99,116,0,1,5,2049,16714,10,17003,17045,168,17122,-4552658767527638798,115,111,99,107,101,116, + 58,115,101,110,100,0,1,6,2049,16714,10,17028,17067,168,17122,-4552658767527675080,115,111,99,107, + 101,116,58,114,101,99,118,0,1,7,2049,16714,10,17050,17090,168,17122,-2663786738754388898,115,111, + 99,107,101,116,58,99,108,111,115,101,0,1,8,2049,16714,10,17072,17117,168,17122, + 1183100690560715498,115,111,99,107,101,116,58,99,111,110,102,105,103,117,114,101,0,1,9, + 2049,16714,10,105,110,116,101,114,102,97,99,101,47,115,111,99,107,101,116,115, + 46,114,101,116,114,111,0,17122,17356,17095,17161,168,17330,229469862290528,105,111,58,99,111,114, + 101,0,1,8000,2049,10812,2049,10793,10,17148,17183,168,17330,249884313919988732,99,111,114,101,58,105, + 110,105,116,0,1,0,2049,17161,10,17168,17204,168,17330,8246182359371694326,99,111,114,101,58,115, + 116,97,114,116,0,1,1,2049,17161,10,17188,17225,168,17330,8246182359367475558,99,111,114,101,58, + 112,97,117,115,101,0,1,2,2049,17161,10,17209,17254,168,17330,8337299194488917014,99,111,114,101, + 58,112,97,117,115,101,45,99,117,114,114,101,110,116,0,1,3,2049,17161,10, + 17230,17276,168,17330,-4577143246433635687,99,111,114,101,58,114,101,115,117,109,101,0,1,4,2049, + 17161,10,17259,17300,168,17330,-3888095465377135055,99,111,114,101,58,114,101,97,100,47,114,101,103, + 0,1,5,2049,17161,10,17281,17325,168,17330,820065755623810592,99,111,114,101,58,119,114,105,116, + 101,47,114,101,103,0,1,6,2049,17161,10,105,110,116,101,114,102,97,99,101, + 47,109,117,108,116,105,99,111,114,101,46,114,101,116,114,111,0,17330,17516,17305, + 17377,168,17496,644988671245709381,102,102,105,58,111,112,101,114,97,116,105,111,110,0,1,8100, + 2049,10812,2,2049,2761,1793,17427,3,2049,4472,69,114,114,111,114,58,32,100,101,118, 105,99,101,32,40,48,48,49,48,41,32,110,111,116,32,102,111,117,110,100, - 0,1,15789,2049,10918,2049,10875,10,1,15786,2049,2862,2049,10793,10,105,110,116,101,114, - 102,97,99,101,47,114,110,103,46,114,101,116,114,111,0,15834,16266,15763,15877,168, - 16244,4482520117059041020,99,108,111,99,107,58,111,112,101,114,97,116,105,111,110,0,1,5, - 2049,10812,2,2049,2761,1793,15927,3,2049,4472,69,114,114,111,114,58,32,100,101,118, - 105,99,101,32,40,48,48,48,53,41,32,110,111,116,32,102,111,117,110,100, - 0,1,15889,2049,10918,2049,10875,10,1,15886,2049,2862,2049,10793,10,15856,15955,168,16244,4482526860617352831, - 99,108,111,99,107,58,116,105,109,101,115,116,97,109,112,0,1,0,2049,15877, - 10,15934,15975,168,16244,249884182168395049,99,108,111,99,107,58,100,97,121,0,1,1,2049,15877, - 10,15960,15997,168,16244,-4577286724249897519,99,108,111,99,107,58,109,111,110,116,104,0,1,2, - 2049,15877,10,15980,16018,168,16244,8246178011557794972,99,108,111,99,107,58,121,101,97,114,0,1, - 3,2049,15877,10,16002,16039,168,16244,8246178011557195593,99,108,111,99,107,58,104,111,117,114,0, - 1,4,2049,15877,10,16023,16062,168,16244,-3476509310577319139,99,108,111,99,107,58,109,105,110,117, - 116,101,0,1,5,2049,15877,10,16044,16085,168,16244,-3476509310347652505,99,108,111,99,107,58,115, - 101,99,111,110,100,0,1,6,2049,15877,10,16067,16109,168,16244,-4044342796047171665,99,108,111,99, - 107,58,117,116,99,58,100,97,121,0,1,7,2049,15877,10,16090,16135,168,16244,4482528721224061399, - 99,108,111,99,107,58,117,116,99,58,109,111,110,116,104,0,1,8,2049,15877, - 10,16114,16160,168,16244,-4336103753589045278,99,108,111,99,107,58,117,116,99,58,121,101,97,114, - 0,1,9,2049,15877,10,16140,16185,168,16244,-4336103753589644657,99,108,111,99,107,58,117,116,99, - 58,104,111,117,114,0,1,10,2049,15877,10,16165,16212,168,16244,349495210710499299,99,108,111,99, - 107,58,117,116,99,58,109,105,110,117,116,101,0,1,11,2049,15877,10,16190,16239, - 168,16244,349495210940165933,99,108,111,99,107,58,117,116,99,58,115,101,99,111,110,100,0, - 1,12,2049,15877,10,105,110,116,101,114,102,97,99,101,47,99,108,111,99,107, - 46,114,101,116,114,111,0,16244,16665,16217,16290,168,0,1976442044545254821,115,99,114,105,112,116, - 58,111,112,101,114,97,116,105,111,110,0,1,9,2049,10812,2,2049,2761,1793,16340, - 3,2049,4472,69,114,114,111,114,58,32,100,101,118,105,99,101,32,40,48,48, - 48,57,41,32,110,111,116,32,102,111,117,110,100,0,1,16302,2049,10918,2049,10875, - 10,1,16299,2049,2862,2049,10793,10,16217,16369,168,16639,1976422442775525130,115,99,114,105,112,116,58, - 97,114,103,117,109,101,110,116,115,0,1,0,2049,16290,10,16347,16399,168,16639,7012485947518414468, - 115,99,114,105,112,116,58,103,101,116,45,97,114,103,117,109,101,110,116,0, - 2049,4451,4,1,1,2049,16290,10,16374,16420,168,16639,229469872107401,105,110,99,108,117,100,101, - 0,1,2,2049,16290,10,16407,16442,168,16639,-4553194680242110987,115,99,114,105,112,116,58,110,97, - 109,101,0,2049,4451,1,3,2049,16290,10,16425,16474,168,16639,6834827170184619652,115,99,114,105,112, - 116,58,99,117,114,114,101,110,116,45,102,105,108,101,0,2049,4451,1,4,2049, - 16290,10,16449,16506,180,16639,6834827170184835340,115,99,114,105,112,116,58,99,117,114,114,101,110, - 116,45,108,105,110,101,0,1,5,2049,16290,2049,156,10,16481,16539,168,16639,-4964876483161304491,115, - 99,114,105,112,116,58,105,103,110,111,114,101,45,116,111,45,101,111,108,0, - 1,6,2049,16290,10,16513,16570,168,16639,-112287744780050755,115,99,114,105,112,116,58,97,98,111, - 114,116,45,105,110,99,108,117,100,101,0,1,7,2049,16290,10,16544,16586,168,16639, - 210706230653,97,98,111,114,116,0,1,149,2049,3931,1,8,2049,16290,10,16575,16625,168,0, - -7741142524340576066,115,99,114,105,112,116,58,99,117,114,114,101,110,116,45,108,105,110,101, - 45,116,101,120,116,0,2049,4451,1793,16634,1,9,2049,16290,10,1,16629,2049,2241,10, - 105,110,116,101,114,102,97,99,101,47,115,99,114,105,112,116,105,110,103,46, - 114,101,116,114,111,0,16639,17121,16595,16689,168,17097,1183117598919957017,115,111,99,107,101,116,58, - 111,112,101,114,97,116,105,111,110,0,1,7,2049,10812,2,2049,2761,1793,16846,3, - 2049,4472,69,114,114,111,114,58,32,100,101,118,105,99,101,32,40,48,48,48, - 55,41,32,110,111,116,32,102,111,117,110,100,0,1,16701,2049,10918,2049,10875,2049, - 4472,83,101,101,32,104,116,116,112,115,58,47,47,114,101,116,114,111,102,111, - 114,116,104,46,111,114,103,47,115,117,112,112,111,114,116,47,50,48,50,50, - 46,49,47,83,79,67,75,69,84,83,46,109,100,0,1,16740,2049,10918,2049,10875, - 2049,4472,102,111,114,32,105,110,115,116,114,117,99,116,105,111,110,115,32,111, - 110,32,101,110,97,98,108,105,110,103,32,115,111,99,107,101,116,115,46,0, - 1,16801,2049,10918,2049,10875,10,1,16698,2049,2862,2049,10793,10,16667,16879,168,17097,-7671511728383126910,115, - 111,99,107,101,116,58,103,101,116,104,111,115,116,98,121,110,97,109,101,0, - 1,0,2049,16689,10,16853,16903,168,17097,4328757989659661596,115,111,99,107,101,116,58,99,114,101, - 97,116,101,0,1,1,2049,16689,10,16884,16925,168,17097,-4552658767528245371,115,111,99,107,101,116, - 58,98,105,110,100,0,1,2,2049,16689,10,16908,16949,168,17097,4328757990001730167,115,111,99,107, - 101,116,58,108,105,115,116,101,110,0,1,3,2049,16689,10,16930,16973,168,17097,4328757989563534360, - 115,111,99,107,101,116,58,97,99,99,101,112,116,0,1,4,2049,16689,10,16954, - 16998,168,17097,-4724938931013862254,115,111,99,107,101,116,58,99,111,110,110,101,99,116,0,1, - 5,2049,16689,10,16978,17020,168,17097,-4552658767527638798,115,111,99,107,101,116,58,115,101,110,100, - 0,1,6,2049,16689,10,17003,17042,168,17097,-4552658767527675080,115,111,99,107,101,116,58,114,101, - 99,118,0,1,7,2049,16689,10,17025,17065,168,17097,-2663786738754388898,115,111,99,107,101,116,58, - 99,108,111,115,101,0,1,8,2049,16689,10,17047,17092,168,17097,1183100690560715498,115,111,99,107, - 101,116,58,99,111,110,102,105,103,117,114,101,0,1,9,2049,16689,10,105,110, - 116,101,114,102,97,99,101,47,115,111,99,107,101,116,115,46,114,101,116,114, - 111,0,17097,17331,17070,17136,168,17305,229469862290528,105,111,58,99,111,114,101,0,1,8000,2049, - 10812,2049,10793,10,17123,17158,168,17305,249884313919988732,99,111,114,101,58,105,110,105,116,0,1, - 0,2049,17136,10,17143,17179,168,17305,8246182359371694326,99,111,114,101,58,115,116,97,114,116,0, - 1,1,2049,17136,10,17163,17200,168,17305,8246182359367475558,99,111,114,101,58,112,97,117,115,101, - 0,1,2,2049,17136,10,17184,17229,168,17305,8337299194488917014,99,111,114,101,58,112,97,117,115, - 101,45,99,117,114,114,101,110,116,0,1,3,2049,17136,10,17205,17251,168,17305,-4577143246433635687, - 99,111,114,101,58,114,101,115,117,109,101,0,1,4,2049,17136,10,17234,17275,168, - 17305,-3888095465377135055,99,111,114,101,58,114,101,97,100,47,114,101,103,0,1,5,2049,17136, - 10,17256,17300,168,17305,820065755623810592,99,111,114,101,58,119,114,105,116,101,47,114,101,103, - 0,1,6,2049,17136,10,105,110,116,101,114,102,97,99,101,47,109,117,108,116, - 105,99,111,114,101,46,114,101,116,114,111,0,17305,17491,17280,17352,168,17471,644988671245709381,102, - 102,105,58,111,112,101,114,97,116,105,111,110,0,1,8100,2049,10812,2,2049,2761, - 1793,17402,3,2049,4472,69,114,114,111,114,58,32,100,101,118,105,99,101,32,40, - 48,48,49,48,41,32,110,111,116,32,102,111,117,110,100,0,1,17364,2049,10918, - 2049,10875,10,1,17361,2049,2862,2049,10793,10,17333,17423,168,17471,7572367767785414,102,102,105,58,111, - 112,101,110,0,1,0,2049,17352,10,17409,17445,168,17471,-4572980637897979592,102,102,105,58,109,97, - 112,45,115,121,109,0,1,1,2049,17352,10,17428,17466,168,17471,8246308498881747296,102,102,105,58, - 105,110,118,111,107,101,0,1,2,2049,17352,10,105,110,116,101,114,102,97,99, - 101,47,102,102,105,46,114,101,116,114,111,0,17471,17822,17450,17509,168,17797,8247016409221251463,117, - 110,115,105,103,110,101,100,58,43,0,1,0,1,8101,2049,10812,2049,10793,17,10, - 17493,17535,168,17797,8247016409221251465,117,110,115,105,103,110,101,100,58,45,0,1,0,1,8101, - 2049,10812,2049,10793,18,10,17519,17561,168,17797,8247016409221251462,117,110,115,105,103,110,101,100,58, - 42,0,1,0,1,8101,2049,10812,2049,10793,19,10,17545,17590,168,17797,7638409966457829387,117,110,115, - 105,103,110,101,100,58,47,109,111,100,0,1,0,1,8101,2049,10812,2049,10793,20, - 10,17571,17618,168,17797,-2563494254608726831,117,110,115,105,103,110,101,100,58,101,113,63,0,1, - 0,1,8101,2049,10812,2049,10793,11,10,17600,17647,168,17797,7638409966457748830,117,110,115,105,103,110, - 101,100,58,45,101,113,63,0,1,0,1,8101,2049,10812,2049,10793,12,10,17628,17675, - 168,17797,-2563494254608719109,117,110,115,105,103,110,101,100,58,108,116,63,0,1,0,1,8101, - 2049,10812,2049,10793,13,10,17657,17703,168,17797,-2563494254608724554,117,110,115,105,103,110,101,100,58, - 103,116,63,0,1,0,1,8101,2049,10812,2049,10793,14,10,17685,17733,168,17797,-6186888138744896262,117, - 110,115,105,103,110,101,100,58,115,104,105,102,116,0,1,0,1,8101,2049,10812, - 2049,10793,24,10,17713,17763,168,17797,-6186888138833512267,117,110,115,105,103,110,101,100,58,42,47, - 109,111,100,0,1,1,1,0,1,8101,2049,10812,2,2049,10793,2049,10793,10,17743,17788, - 168,17797,210639169918,42,47,109,111,100,0,1,1,1,8101,2049,10812,2049,10793,10,105,110, - 116,101,114,102,97,99,101,47,117,110,115,105,103,110,101,100,46,114,101,116, - 114,111,0,17797,18150,17777,17835,168,519168,210720194422,110,58,97,100,100,0,17,10,17824,17848, - 168,519168,210720214583,110,58,115,117,98,0,18,10,17837,17861,168,519168,210720208059,110,58,109,117, - 108,0,19,10,17850,17874,168,519168,210720197872,110,58,100,105,118,0,197652,10,17863,17887,168, - 519168,210720207853,110,58,109,111,100,0,788,10,17876,17903,168,519168,7572651751048528,110,58,100,105,118, - 109,111,100,0,20,10,17889,17916,168,0,210709067314,99,111,109,109,97,0,2049,130,10, - 17905,17927,168,0,5863407,103,99,0,1,3,4,2049,3967,10,17919,17951,168,0,-3502245454587251943,100, - 58,117,115,101,45,104,97,115,104,101,115,0,1,29,1,236,1,5,18,16, - 1793,17965,2049,188,15,10,1,17961,1,236,1,8,18,16,1,2049,1,236,16,1, - 4875,1,236,2049,3125,16,10,17933,18005,168,0,-4893635544173424761,100,58,117,115,101,45,115,116, - 114,105,110,103,115,0,1,118,1,236,1,5,18,16,1,190,1,236,1,8, - 18,16,1,0,1,236,16,1,0,1,236,2049,3125,16,10,17986,18052,168,0,-3527051417241377258, - 98,108,111,99,107,58,105,110,118,111,107,101,0,1,3,2049,10812,2049,10793,10, - 17986,18075,168,18127,8246131600073141446,98,108,111,99,107,58,114,101,97,100,0,1,0,2049,18052, - 10,18059,18097,168,18127,-4578818303223200395,98,108,111,99,107,58,119,114,105,116,101,0,1,1, - 2049,18052,10,18080,18122,168,18127,-4036225629868593021,98,108,111,99,107,58,115,101,116,45,102,105, - 108,101,0,1,2,2049,18052,10,105,110,116,101,114,102,97,99,101,47,98,108, - 111,99,107,115,46,114,101,116,114,111,0,18127,11414,18102,18168,168,0,8246228896775126019,100,111, - 117,98,108,101,58,118,97,114,0,2049,2075,4,2049,130,2049,130,10,18152,18194,168, - 0,-3421095308458227740,100,111,117,98,108,101,58,102,101,116,99,104,0,2049,58,4,15,10, - 18176,18217,168,0,-3421095308442276665,100,111,117,98,108,101,58,115,116,111,114,101,0,1,19, - 2049,2229,2049,61,16,10,18199,18243,168,0,-3421095308461432127,100,111,117,98,108,101,58,99,111, - 110,115,116,0,2049,18168,1,18194,2049,8460,10,18225,18267,168,0,-4575607512064199915,100,111,117,98, - 108,101,58,115,119,97,112,0,67503109,5,67503109,6,10,18250,18288,168,0,8246228896775106679,100,111, - 117,98,108,101,58,100,105,112,0,67503109,67503109,5,5,8,6,6,10,18272,18312,168, - 0,8246228896775123014,100,111,117,98,108,101,58,115,105,112,0,1,2217,2049,2229,2049,18288,10, - 18296,18335,168,0,8246632143337714634,109,101,109,58,105,110,118,111,107,101,0,1,15,2049,10812, - 2049,10793,10,18319,0,156,0,210667451248,65,76,76,79,67,0,18342,1,156,0,6384048135,70, - 82,69,69,0,18353,2,156,0,210689088690,83,84,79,82,69,0,18363,3,156,0,210673137615, - 70,69,84,67,72,0,18374,4,156,0,6952683137271,82,69,83,73,90,69,0,18296,18412, - 168,0,249897943727936361,109,101,109,58,97,108,108,111,99,0,1,0,2049,18335,10,18397,18432, - 168,0,249897943749573803,109,101,109,58,115,116,111,114,101,0,1,2,2049,18335,10,18417,18452, - 168,0,249897943733622728,109,101,109,58,102,101,116,99,104,0,1,3,2049,18335,10,18437,18471, - 168,0,7572664961638592,109,101,109,58,102,114,101,101,0,1,1,2049,18335,10,18457,18492,168, - 0,8246632143679146032,109,101,109,58,114,101,115,105,122,101,0,1,4,2049,18335,10,18476,18512, - 168,0,249897943730056489,109,101,109,58,99,101,108,108,43,0,1,8,19,17,10,18497,18539, - 168,0,1050530996183190288,109,101,109,58,102,101,116,99,104,45,100,111,117,98,108,101,0, - 2,1,1,2049,18512,15,5,2049,18452,6,10,18517,18572,168,0,1730340976492540563,109,101,109,58, - 115,116,111,114,101,45,100,111,117,98,108,101,0,5,5,2049,2217,1,1,2049, - 18512,6,2049,18432,6,2049,18432,10,1793,18608,1,192,1,2,17,8,2049,1576,2049,190, - 3841,11239,8,2049,1576,2049,188,16,10,1,18589,18550,18619,168,19406,193470948,84,73,66,0, - 1,7,15,10,18610,18639,168,19406,8246457295145463473,105,109,97,103,101,58,115,97,118,101,0, - 1,1000,2049,10812,2049,10793,10,18623,18657,168,0,210711039690,101,100,105,116,63,0,2,1793, - 18664,1,8,11,10,1,18660,1793,18672,1,127,11,10,1,18668,2049,2255,22,10,18646, - 18690,168,0,6953539406400,103,97,116,104,101,114,0,2049,18657,1,17,1,4134,2049,66,10, - 18678,18710,168,0,210709415765,99,121,99,108,101,0,2049,11123,2049,2217,4,8,2049,2644,25, - 3,2049,18690,1,18710,7,10,18623,18743,168,19406,-4557881830897049127,112,97,114,115,101,45,117,110, - 116,105,108,0,1793,18755,2049,4451,2049,4234,2049,18710,771,2049,4096,10,1,18745,2049,4260, - 10,18726,18771,168,19406,210726130610,115,58,103,101,116,0,1793,18793,1793,18779,1,13,11,10, - 1,18775,1793,18787,1,10,11,10,1,18783,2049,2255,22,10,1,18773,2049,18743,10,18760, - 18809,168,19406,210708950412,99,108,101,97,114,0,2049,4472,92,94,91,50,74,92,94,91, - 48,59,48,72,0,1,18811,2049,8246,2049,10918,10,18798,18843,156,19406,6952575930081,78,111,69, - 99,104,111,0,0,18831,18853,156,0,193454829,69,79,84,0,0,18844,18868,156,0,7571133383038306, - 73,103,110,111,114,105,110,103,0,0,18854,18884,168,0,249892406716047873,105,103,110,111,114, - 105,110,103,63,0,3841,18868,10,18869,18900,168,0,229486327000139,118,101,114,115,105,111,110, - 0,3841,4,1,100,20,10,18887,18917,168,0,210710254026,100,111,110,101,63,0,2,4097, - 18853,1793,18926,1,13,11,10,1,18922,1793,18934,1,10,11,10,1,18930,1793,18942,1, - 32,11,10,1,18938,2049,2298,22,22,10,18906,18959,168,0,6385195044,101,111,108,63,0, - 3841,18853,1793,18967,1,13,11,10,1,18963,1793,18975,1,10,11,10,1,18971,2049,2255, - 22,10,18949,18993,168,0,6954126150804,118,97,108,105,100,63,0,2,2049,104,2049,2812,10, - 18981,19014,168,0,249883998779477802,99,104,101,99,107,45,101,111,102,0,2,1793,19021,1,-1, - 11,10,1,19017,1793,19029,1,4,11,10,1,19025,2049,2255,22,1793,19039,2049,11190,10, - 1,19036,9,10,18999,19051,168,0,5863258,98,115,0,2049,4212,1,2,2049,2675,1793,19063, - 2049,4160,3,10,1,19059,9,2049,4160,3,10,19043,19084,168,0,7572242387256805,99,104,101,99, - 107,45,98,115,0,2,1793,19091,1,8,11,10,1,19087,1793,19099,1,127,11,10, - 1,19095,2049,2255,22,1793,19109,2049,19051,10,1,19106,9,10,19070,19124,168,0,210708806723,99, - 104,101,99,107,0,2049,19014,2049,19084,10,19113,19144,168,0,249883994190734226,99,104,97,114,97, - 99,116,101,114,0,2049,11123,2,2049,4134,10,19129,19162,168,0,6953366942559,98,117,102,102, - 101,114,0,1793,19172,2049,18619,2049,4234,8,2049,4096,10,1,19164,2049,4260,10,19150,19193, - 168,0,8246863741238799215,114,101,97,100,45,116,111,107,101,110,0,1793,19209,1793,19204,2049,19144, - 2049,19124,2049,18917,10,1,19197,2049,2397,10,1,19195,2049,19162,2049,4587,10,19177,19227,168, - 0,210716150453,105,110,112,117,116,0,2049,19193,2049,18993,10,19216,19245,168,0,229479082815460,112,114, - 111,99,101,115,115,0,2049,18884,1793,19263,771,2049,18959,1793,19259,1,18868,2049,3931,10, - 1,19254,9,10,1,19249,2049,2862,1,417,1,17,2049,66,10,18831,19282,180,19406,5861507, - 47,47,0,2049,16539,1,18868,2049,3916,10,19274,19301,168,19406,6953343520347,98,97,110,110,101, - 114,0,2049,18900,2049,4472,82,69,84,82,79,32,49,50,32,40,37,110,46,37, - 110,41,92,110,0,1,19305,2049,8246,2049,10918,2049,9335,2049,1545,2049,9335,18,2049,1545, - 2049,4472,37,110,32,77,97,120,44,32,37,110,32,85,115,101,100,44,32,37, - 110,32,70,114,101,101,92,110,0,1,19341,2049,8246,2049,10918,10,19289,19387,168,19406, - 6953744547860,108,105,115,116,101,110,0,3841,18843,1793,19394,2049,19301,10,1,19391,2049,74,2049, - 19227,2049,19245,1,19398,7,10,105,110,116,101,114,102,97,99,101,47,114,101,116, - 114,111,45,117,110,105,120,46,114,101,116,114,111,0,19375,19446,156,0,229441520490121,83, - 111,117,114,99,101,115,0,1,19695,0,0,0,0,0,0,0,0,0,0,0, + 0,1,17389,2049,10918,2049,10875,10,1,17386,2049,2862,2049,10793,10,17358,17448,168,17496,7572367767785414, + 102,102,105,58,111,112,101,110,0,1,0,2049,17377,10,17434,17470,168,17496,-4572980637897979592,102, + 102,105,58,109,97,112,45,115,121,109,0,1,1,2049,17377,10,17453,17491,168,17496, + 8246308498881747296,102,102,105,58,105,110,118,111,107,101,0,1,2,2049,17377,10,105,110,116, + 101,114,102,97,99,101,47,102,102,105,46,114,101,116,114,111,0,17496,17847,17475, + 17534,168,17822,8247016409221251463,117,110,115,105,103,110,101,100,58,43,0,1,0,1,8101,2049, + 10812,2049,10793,17,10,17518,17560,168,17822,8247016409221251465,117,110,115,105,103,110,101,100,58,45, + 0,1,0,1,8101,2049,10812,2049,10793,18,10,17544,17586,168,17822,8247016409221251462,117,110,115,105, + 103,110,101,100,58,42,0,1,0,1,8101,2049,10812,2049,10793,19,10,17570,17615,168, + 17822,7638409966457829387,117,110,115,105,103,110,101,100,58,47,109,111,100,0,1,0,1,8101, + 2049,10812,2049,10793,20,10,17596,17643,168,17822,-2563494254608726831,117,110,115,105,103,110,101,100,58, + 101,113,63,0,1,0,1,8101,2049,10812,2049,10793,11,10,17625,17672,168,17822,7638409966457748830,117, + 110,115,105,103,110,101,100,58,45,101,113,63,0,1,0,1,8101,2049,10812,2049, + 10793,12,10,17653,17700,168,17822,-2563494254608719109,117,110,115,105,103,110,101,100,58,108,116,63, + 0,1,0,1,8101,2049,10812,2049,10793,13,10,17682,17728,168,17822,-2563494254608724554,117,110,115,105, + 103,110,101,100,58,103,116,63,0,1,0,1,8101,2049,10812,2049,10793,14,10,17710, + 17758,168,17822,-6186888138744896262,117,110,115,105,103,110,101,100,58,115,104,105,102,116,0,1, + 0,1,8101,2049,10812,2049,10793,24,10,17738,17788,168,17822,-6186888138833512267,117,110,115,105,103,110, + 101,100,58,42,47,109,111,100,0,1,1,1,0,1,8101,2049,10812,2,2049,10793, + 2049,10793,10,17768,17813,168,17822,210639169918,42,47,109,111,100,0,1,1,1,8101,2049,10812, + 2049,10793,10,105,110,116,101,114,102,97,99,101,47,117,110,115,105,103,110,101, + 100,46,114,101,116,114,111,0,17822,18175,17802,17860,168,520192,210720194422,110,58,97,100,100, + 0,17,10,17849,17873,168,520192,210720214583,110,58,115,117,98,0,18,10,17862,17886,168,520192, + 210720208059,110,58,109,117,108,0,19,10,17875,17899,168,520192,210720197872,110,58,100,105,118,0, + 197652,10,17888,17912,168,520192,210720207853,110,58,109,111,100,0,788,10,17901,17928,168,520192,7572651751048528, + 110,58,100,105,118,109,111,100,0,20,10,17914,17941,168,0,210709067314,99,111,109,109, + 97,0,2049,130,10,17930,17952,168,0,5863407,103,99,0,1,3,4,2049,3967,10,17944, + 17976,168,0,-3502245454587251943,100,58,117,115,101,45,104,97,115,104,101,115,0,1,29,1, + 236,1,5,18,16,1793,17990,2049,188,15,10,1,17986,1,236,1,8,18,16,1, + 2049,1,236,16,1,4875,1,236,2049,3125,16,10,17958,18030,168,0,-4893635544173424761,100,58,117, + 115,101,45,115,116,114,105,110,103,115,0,1,118,1,236,1,5,18,16,1, + 190,1,236,1,8,18,16,1,0,1,236,16,1,0,1,236,2049,3125,16,10, + 18011,18077,168,0,-3527051417241377258,98,108,111,99,107,58,105,110,118,111,107,101,0,1,3, + 2049,10812,2049,10793,10,18011,18100,168,18152,8246131600073141446,98,108,111,99,107,58,114,101,97,100, + 0,1,0,2049,18077,10,18084,18122,168,18152,-4578818303223200395,98,108,111,99,107,58,119,114,105, + 116,101,0,1,1,2049,18077,10,18105,18147,168,18152,-4036225629868593021,98,108,111,99,107,58,115, + 101,116,45,102,105,108,101,0,1,2,2049,18077,10,105,110,116,101,114,102,97, + 99,101,47,98,108,111,99,107,115,46,114,101,116,114,111,0,18152,11414,18127,18193, + 168,0,8246228896775126019,100,111,117,98,108,101,58,118,97,114,0,2049,2075,4,2049,130,2049, + 130,10,18177,18219,168,0,-3421095308458227740,100,111,117,98,108,101,58,102,101,116,99,104,0, + 2049,58,4,15,10,18201,18242,168,0,-3421095308442276665,100,111,117,98,108,101,58,115,116,111, + 114,101,0,1,19,2049,2229,2049,61,16,10,18224,18268,168,0,-3421095308461432127,100,111,117,98, + 108,101,58,99,111,110,115,116,0,2049,18193,1,18219,2049,8460,10,18250,18292,168,0, + -4575607512064199915,100,111,117,98,108,101,58,115,119,97,112,0,67503109,5,67503109,6,10,18275,18313, + 168,0,8246228896775106679,100,111,117,98,108,101,58,100,105,112,0,67503109,67503109,5,5,8,6, + 6,10,18297,18337,168,0,8246228896775123014,100,111,117,98,108,101,58,115,105,112,0,1,2217, + 2049,2229,2049,18313,10,18321,18360,168,0,8246632143337714634,109,101,109,58,105,110,118,111,107,101, + 0,1,15,2049,10812,2049,10793,10,18344,0,156,0,210667451248,65,76,76,79,67,0,18367, + 1,156,0,6384048135,70,82,69,69,0,18378,2,156,0,210689088690,83,84,79,82,69,0, + 18388,3,156,0,210673137615,70,69,84,67,72,0,18399,4,156,0,6952683137271,82,69,83,73, + 90,69,0,18321,18437,168,0,249897943727936361,109,101,109,58,97,108,108,111,99,0,1,0, + 2049,18360,10,18422,18457,168,0,249897943749573803,109,101,109,58,115,116,111,114,101,0,1,2, + 2049,18360,10,18442,18477,168,0,249897943733622728,109,101,109,58,102,101,116,99,104,0,1,3, + 2049,18360,10,18462,18496,168,0,7572664961638592,109,101,109,58,102,114,101,101,0,1,1,2049, + 18360,10,18482,18517,168,0,8246632143679146032,109,101,109,58,114,101,115,105,122,101,0,1,4, + 2049,18360,10,18501,18537,168,0,249897943730056489,109,101,109,58,99,101,108,108,43,0,1,8, + 19,17,10,18522,18564,168,0,1050530996183190288,109,101,109,58,102,101,116,99,104,45,100,111, + 117,98,108,101,0,2,1,1,2049,18537,15,5,2049,18477,6,10,18542,18597,168,0, + 1730340976492540563,109,101,109,58,115,116,111,114,101,45,100,111,117,98,108,101,0,5,5, + 2049,2217,1,1,2049,18537,6,2049,18457,6,2049,18457,10,1793,18633,1,192,1,2,17, + 8,2049,1576,2049,190,3841,11239,8,2049,1576,2049,188,16,10,1,18614,18575,18644,168,19409, + 193470948,84,73,66,0,1,7,15,10,18635,18664,168,19409,8246457295145463473,105,109,97,103,101,58, + 115,97,118,101,0,1,1000,2049,10812,2049,10793,10,18648,18682,168,0,210711039690,101,100,105, + 116,63,0,2,1793,18689,1,8,11,10,1,18685,1793,18697,1,127,11,10,1,18693, + 2049,2255,22,10,18671,18715,168,0,6953539406400,103,97,116,104,101,114,0,2049,18682,1,17, + 1,4134,2049,66,10,18703,18735,168,0,210709415765,99,121,99,108,101,0,2049,11123,2049,2217, + 4,8,2049,2644,25,3,2049,18715,1,18735,7,10,18648,18768,168,19409,-4557881830897049127,112,97,114, + 115,101,45,117,110,116,105,108,0,1793,18780,2049,4451,2049,4234,2049,18735,771,2049,4096, + 10,1,18770,2049,4260,10,18751,18796,168,19409,210726130610,115,58,103,101,116,0,1793,18818,1793, + 18804,1,13,11,10,1,18800,1793,18812,1,10,11,10,1,18808,2049,2255,22,10,1, + 18798,2049,18768,10,18785,18834,168,19409,210708950412,99,108,101,97,114,0,2049,4472,92,94,91, + 50,74,92,94,91,48,59,48,72,0,1,18836,2049,8246,2049,10918,10,18823,18865,156, + 0,193454829,69,79,84,0,0,18856,18880,156,0,7571133383038306,73,103,110,111,114,105,110,103, + 0,0,18866,18896,168,0,249892406716047873,105,103,110,111,114,105,110,103,63,0,3841,18880,10, + 18881,18912,168,0,229486327000139,118,101,114,115,105,111,110,0,3841,4,1,100,20,10,18899, + 18929,168,0,210710254026,100,111,110,101,63,0,2,4097,18865,1793,18938,1,13,11,10,1, + 18934,1793,18946,1,10,11,10,1,18942,1793,18954,1,32,11,10,1,18950,2049,2298,22, + 22,10,18918,18971,168,0,6385195044,101,111,108,63,0,3841,18865,1793,18979,1,13,11,10, + 1,18975,1793,18987,1,10,11,10,1,18983,2049,2255,22,10,18961,19005,168,0,6954126150804,118, + 97,108,105,100,63,0,2,2049,104,2049,2812,10,18993,19026,168,0,249883998779477802,99,104,101, + 99,107,45,101,111,102,0,2,1793,19033,1,-1,11,10,1,19029,1793,19041,1,4, + 11,10,1,19037,2049,2255,22,1793,19051,2049,11190,10,1,19048,9,10,19011,19063,168,0, + 5863258,98,115,0,2049,4212,1,2,2049,2675,1793,19075,2049,4160,3,10,1,19071,9,2049, + 4160,3,10,19055,19096,168,0,7572242387256805,99,104,101,99,107,45,98,115,0,2,1793,19103, + 1,8,11,10,1,19099,1793,19111,1,127,11,10,1,19107,2049,2255,22,1793,19121,2049, + 19063,10,1,19118,9,10,19082,19136,168,0,210708806723,99,104,101,99,107,0,2049,19026,2049, + 19096,10,19125,19156,168,0,249883994190734226,99,104,97,114,97,99,116,101,114,0,2049,11123,2, + 2049,4134,10,19141,19174,168,0,6953366942559,98,117,102,102,101,114,0,1793,19184,2049,18644,2049, + 4234,8,2049,4096,10,1,19176,2049,4260,10,19162,19205,168,0,8246863741238799215,114,101,97,100,45, + 116,111,107,101,110,0,1793,19221,1793,19216,2049,19156,2049,19136,2049,18929,10,1,19209,2049, + 2397,10,1,19207,2049,19174,2049,4587,10,19189,19239,168,0,210716150453,105,110,112,117,116,0, + 2049,19205,2049,19005,10,19228,19257,168,0,229479082815460,112,114,111,99,101,115,115,0,2049,18896, + 1793,19275,771,2049,18971,1793,19271,1,18880,2049,3931,10,1,19266,9,10,1,19261,2049,2862, + 1,417,1,17,2049,66,10,18823,19294,180,19409,5861507,47,47,0,2049,16564,1,18880,2049, + 3916,10,19286,19313,168,19409,6953343520347,98,97,110,110,101,114,0,2049,18912,2049,4472,82,69, + 84,82,79,32,49,50,32,40,37,110,46,37,110,41,92,110,0,1,19317,2049, + 8246,2049,10918,2049,9335,2049,1545,2049,9335,18,2049,1545,2049,4472,37,110,32,77,97,120, + 44,32,37,110,32,85,115,101,100,44,32,37,110,32,70,114,101,101,92,110, + 0,1,19353,2049,8246,2049,10918,10,19301,19399,168,19409,6953744547860,108,105,115,116,101,110,0, + 2049,19313,2049,19239,2049,19257,1,19401,7,10,105,110,116,101,114,102,97,99,101,47, + 114,101,116,114,111,45,117,110,105,120,46,114,101,116,114,111,0,19387,19449,156, + 0,229441520490121,83,111,117,114,99,101,115,0,1,19698,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19433,19586,168,0,6953711201841, - 107,110,111,119,110,63,0,2,1,19446,2049,9099,10,19574,19603,168,0,210716136861,105,110, - 100,101,120,0,1,19446,4,2049,9775,1,19446,4,2049,9245,10,19592,19626,168,0,6953974036516, - 114,101,99,111,114,100,0,2049,4500,2,1,19446,2049,3864,3841,19446,1,19446,17,16, - 10,1793,19693,2049,16474,2049,19586,1793,19651,2049,19603,10,1,19648,1793,19658,2049,19626,10,1, - 19655,2049,66,1793,19671,1,192,1,2,17,8,10,1,19664,2049,2229,2049,1576,2049,186, - 16,2049,1576,2049,190,3841,11239,8,2049,1576,2049,188,16,10,1,19642,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,19375,19733,168,19695,229461403550098,100,58,119,111,114,100,115,0,1793,19742,2049,190,2049,10918, - 2049,10888,10,1,19735,2049,8491,10,19720,19765,168,19695,-3502157631813457253,100,58,119,111,114,100,115, - 45,119,105,116,104,0,2049,1977,2049,5573,1793,19796,2049,190,2,2049,1977,2049,5286,1793, - 19785,2049,10918,2049,10888,10,1,19780,1793,19791,3,10,1,19789,2049,66,10,1,19771,2049, - 8491,10,19747,19822,168,19695,2818131571306626127,100,105,115,112,108,97,121,45,105,102,45,108,101, - 102,116,0,2,2049,1977,2049,5519,1793,19834,2049,10918,2049,10888,10,1,19829,1793,19840,3, - 10,1,19838,2049,66,10,19747,19873,168,19695,2947807019553410009,100,58,119,111,114,100,115,45,98, - 101,103,105,110,110,105,110,103,45,119,105,116,104,0,2049,1977,2049,5573,1793,19884, - 2049,190,2049,19822,10,1,19879,2049,8491,10,0 }; + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19436,19589, + 168,0,6953711201841,107,110,111,119,110,63,0,2,1,19449,2049,9099,10,19577,19606,168,0, + 210716136861,105,110,100,101,120,0,1,19449,4,2049,9775,1,19449,4,2049,9245,10,19595,19629, + 168,0,6953974036516,114,101,99,111,114,100,0,2049,4500,2,1,19449,2049,3864,3841,19449,1, + 19449,17,16,10,1793,19696,2049,16499,2049,19589,1793,19654,2049,19606,10,1,19651,1793,19661,2049, + 19629,10,1,19658,2049,66,1793,19674,1,192,1,2,17,8,10,1,19667,2049,2229,2049, + 1576,2049,186,16,2049,1576,2049,190,3841,11239,8,2049,1576,2049,188,16,10,1,19645,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,19387,19736,168,19698,229461403550098,100,58,119,111,114,100,115,0,1793,19745,2049, + 190,2049,10918,2049,10888,10,1,19738,2049,8491,10,19723,19768,168,19698,-3502157631813457253,100,58,119,111, + 114,100,115,45,119,105,116,104,0,2049,1977,2049,5573,1793,19799,2049,190,2,2049,1977, + 2049,5286,1793,19788,2049,10918,2049,10888,10,1,19783,1793,19794,3,10,1,19792,2049,66,10, + 1,19774,2049,8491,10,19750,19825,168,19698,2818131571306626127,100,105,115,112,108,97,121,45,105,102, + 45,108,101,102,116,0,2,2049,1977,2049,5519,1793,19837,2049,10918,2049,10888,10,1,19832, + 1793,19843,3,10,1,19841,2049,66,10,19750,19876,168,19698,2947807019553410009,100,58,119,111,114,100, + 115,45,98,101,103,105,110,110,105,110,103,45,119,105,116,104,0,2049,1977,2049, + 5573,1793,19887,2049,190,2049,19825,10,1,19882,2049,8491,10,0 };