retro.forth: faster skipping over strings in definitions

FossilOrigin-Name: 7931fd29b127c86ec37925e847f4d05b4e04d46ff7ccfcb51841beff41b33bae
This commit is contained in:
crc 2019-12-20 21:56:02 +00:00
parent a2bc939b25
commit d7517ff5cb
3 changed files with 342 additions and 348 deletions

View file

@ -780,7 +780,7 @@ pointer to skip to the code following the stored string.
~~~ ~~~
:s:skip (-) :s:skip (-)
pop [ fetch-next n:-zero? ] while n:dec push ; pop [ \duliadsw `1 \feline.. `0 ] while n:dec push ;
:s:keep (s-s) :s:keep (s-s)
compiling? [ &s:skip compile:call ] if compiling? [ &s:skip compile:call ] if
@ -1544,12 +1544,12 @@ I can implement `s:replace-all` and `s:tokenize-on-string`.
~~~ ~~~
{{ {{
'Replacement d:create #128 allot :replacement STRINGS #2048 - ;
:extract &Replacement s:copy ; :extract replacement s:copy ;
:tokenize s:tokenize-on-string s:empty ; :tokenize s:tokenize-on-string s:empty ;
:combine &Replacement s:append s:append ; :combine replacement s:append s:append ;
:merge swap [ combine ] a:for-each nip ; :merge swap [ combine ] a:for-each nip ;
:find-end dup s:length &Replacement s:length - over + ; :find-end dup s:length replacement s:length - over + ;
:clean find-end #0 swap store ; :clean find-end #0 swap store ;
---reveal--- ---reveal---
:s:replace-all (sss-s) :s:replace-all (sss-s)

BIN
ngaImage

Binary file not shown.

View file

@ -2,8 +2,8 @@
#ifndef CELL #ifndef CELL
#define CELL int32_t #define CELL int32_t
#endif #endif
CELL ngaImageCells = 15125; CELL ngaImageCells = 15003;
CELL ngaImage[] = { 1793,14538,15082,15124,202001,0,10,1,10,2,10,3,10,4,10,5,10,6,10, CELL ngaImage[] = { 1793,14416,14960,15002,202001,0,10,1,10,2,10,3,10,4,10,5,10,6,10,
7,10,8,10,9,10,10,11,10,12,10,13,10,14,10,15,10,16,10,17, 7,10,8,10,9,10,10,11,10,12,10,13,10,14,10,15,10,16,10,17,
10,18,10,19,10,20,10,21,10,22,10,23,10,24,10,25,10,68223234,1,2575, 10,18,10,19,10,20,10,21,10,22,10,23,10,24,10,25,10,68223234,1,2575,
85000450,1,656912,139,138,268505089,63,62,135205121,63,10,101384453,0,9,10,2049,56,25,459011,74, 85000450,1,656912,139,138,268505089,63,62,135205121,63,10,101384453,0,9,10,2049,56,25,459011,74,
@ -11,7 +11,7 @@ CELL ngaImage[] = { 1793,14538,15082,15124,202001,0,10,1,10,2,10,3,10,4,10,5,10,
84,524545,88,64,167838467,-1,134287105,3,59,659457,3,459023,105,2049,56,25,2049,105,1793,112, 84,524545,88,64,167838467,-1,134287105,3,59,659457,3,459023,105,2049,56,25,2049,105,1793,112,
2049,112,117506307,0,105,0,524545,25,110,168820993,0,124,1642241,124,134283523,7,110,1793,105,7, 2049,112,117506307,0,105,0,524545,25,110,168820993,0,124,1642241,124,134283523,7,110,1793,105,7,
524545,2049,105,1793,105,16846593,124,139,138,1793,64,16846593,124,110,138,1793,64,7,10,659713, 524545,2049,105,1793,105,16846593,124,139,138,1793,64,16846593,124,110,138,1793,64,7,10,659713,
1,659713,2,659713,3,1793,9628,2,524559,105,2049,105,2049,105,2049,119,168820998,2,13631,1025, 1,659713,2,659713,3,1793,9506,2,524559,105,2049,105,2049,105,2049,119,168820998,2,13509,1025,
167841793,177,5,17826049,0,177,2,15,25,524546,162,134287105,178,93,2305,179,459023,187,134287361,178, 167841793,177,5,17826049,0,177,2,15,25,524546,162,134287105,178,93,2305,179,459023,187,134287361,178,
182,659201,177,2049,56,25,84152833,48,286458116,10,459014,202,184618754,45,25,16974851,-1,168886532,1,134284289, 182,659201,177,2049,56,25,84152833,48,286458116,10,459014,202,184618754,45,25,16974851,-1,168886532,1,134284289,
1,211,134284289,0,202,660227,32,0,0,112,114,101,102,105,120,58,105,0,285278479,228, 1,211,134284289,0,202,660227,32,0,0,112,114,101,102,105,120,58,105,0,285278479,228,
@ -161,7 +161,7 @@ CELL ngaImage[] = { 1793,14538,15082,15124,202001,0,10,1,10,2,10,3,10,4,10,5,10,
2049,2106,10,1,3097,2049,2106,4,16,10,3078,3121,144,118,58,117,112,100,97,116, 2049,2106,10,1,3097,2049,2106,4,16,10,3078,3121,144,118,58,117,112,100,97,116,
101,0,4,1793,3128,15,4,8,10,1,3124,2049,2116,16,10,3109,3142,144,99,111, 101,0,4,1793,3128,15,4,8,10,1,3124,2049,2116,16,10,3109,3142,144,99,111,
112,121,0,1793,3151,285278725,1,33951492,268767489,1,6,10,1,3144,2049,2281,3,3,10,3134, 112,121,0,1793,3151,285278725,1,33951492,268767489,1,6,10,1,3144,2049,2281,3,3,10,3134,
3171,144,83,99,111,112,101,76,105,115,116,0,14988,15040,10,3158,3180,144,123,123, 3171,144,83,99,111,112,101,76,105,115,116,0,14866,14918,10,3158,3180,144,123,123,
0,2049,1570,2,1,3171,2049,59,16,10,3174,3205,144,45,45,45,114,101,118,101, 0,2049,1570,2,1,3171,2049,59,16,10,3174,3205,144,45,45,45,114,101,118,101,
97,108,45,45,45,0,2049,1570,1,3171,2049,2893,16,10,3189,3219,144,125,125,0, 97,108,45,45,45,0,2049,1570,1,3171,2049,2893,16,10,3189,3219,144,125,125,0,
1,3171,2049,56,4,15,11,1793,3233,3841,3171,4097,2,10,1,3228,1793,3263,3841,3171, 1,3171,2049,56,4,15,11,1793,3233,3841,3171,4097,2,10,1,3228,1793,3263,3841,3171,
@ -181,12 +181,12 @@ CELL ngaImage[] = { 1793,14538,15082,15124,202001,0,10,1,10,2,10,3,10,4,10,5,10,
109,112,83,116,114,105,110,103,115,0,32,3494,3527,131,84,101,109,112,83,116, 109,112,83,116,114,105,110,103,115,0,32,3494,3527,131,84,101,109,112,83,116,
114,105,110,103,77,97,120,0,512,3510,3539,144,83,84,82,73,78,71,83,0, 114,105,110,103,77,97,120,0,512,3510,3539,144,83,84,82,73,78,71,83,0,
2049,1543,3841,3509,3841,3527,19,18,10,3528,3559,131,67,117,114,114,101,110,116,0, 2049,1543,3841,3509,3841,3527,19,18,10,3528,3559,131,67,117,114,114,101,110,116,0,
22,10,3548,3574,144,115,58,112,111,105,110,116,101,114,0,3841,3559,3841,3527,19, 20,10,3548,3574,144,115,58,112,111,105,110,116,101,114,0,3841,3559,3841,3527,19,
2049,3539,17,10,3561,3593,144,115,58,110,101,120,116,0,1,3559,2049,2994,3841,3559, 2049,3539,17,10,3561,3593,144,115,58,110,101,120,116,0,1,3559,2049,2994,3841,3559,
3841,3509,11,1793,3609,1,0,4097,3559,10,1,3604,9,10,3528,3623,144,115,58,116, 3841,3509,11,1793,3609,1,0,4097,3559,10,1,3604,9,10,3528,3623,144,115,58,116,
101,109,112,0,2,2049,79,2049,2893,2049,3574,4,2049,3142,2049,3574,2049,3593,10,3613, 101,109,112,0,2,2049,79,2049,2893,2049,3574,4,2049,3142,2049,3574,2049,3593,10,3613,
3649,144,115,58,101,109,112,116,121,0,2049,3574,2049,3593,1,0,67502597,16,10,3638, 3649,144,115,58,101,109,112,116,121,0,2049,3574,2049,3593,1,0,67502597,16,10,3638,
3668,144,115,58,115,107,105,112,0,6,1793,3676,2049,56,2049,2583,10,1,3671,2049, 3668,144,115,58,115,107,105,112,0,6,1793,3676,68223234,1,786703,0,10,1,3671,2049,
2233,2049,2906,5,10,3658,3694,144,115,58,107,101,101,112,0,2049,1818,1793,3703,1, 2233,2049,2906,5,10,3658,3694,144,115,58,107,101,101,112,0,2049,1818,1793,3703,1,
3668,2049,1777,10,1,3698,9,2049,1877,1,119,2049,2106,2049,131,10,3684,3727,156,112, 3668,2049,1777,10,1,3698,9,2049,1877,1,119,2049,2106,2049,131,10,3684,3727,156,112,
114,101,102,105,120,58,39,0,2049,1818,1,3694,1,3623,2049,64,10,3715,3746,144, 114,101,102,105,120,58,39,0,2049,1818,1,3694,1,3623,2049,64,10,3715,3746,144,
@ -423,340 +423,334 @@ CELL ngaImage[] = { 1793,14538,15082,15124,202001,0,10,1,10,2,10,3,10,4,10,5,10,
101,45,111,110,45,115,116,114,105,110,103,0,1,0,4097,8273,1793,8365,2,1, 101,45,111,110,45,115,116,114,105,110,103,0,1,0,4097,8273,1793,8365,2,1,
7985,2049,4563,2049,3874,10,1,8357,1793,8374,2049,79,4097,8128,10,1,8369,2049,2128,1793, 7985,2049,4563,2049,3874,10,1,8357,1793,8374,2049,79,4097,8128,10,1,8369,2049,2128,1793,
8391,1,7985,2049,6204,2049,8282,2049,8303,2049,8322,10,1,8380,2049,2256,1,8139,3841,8273, 8391,1,7985,2049,6204,2049,8282,2049,8303,2049,8322,10,1,8380,2049,2256,1,8139,3841,8273,
2049,2906,4097,8139,10,8327,8419,131,82,101,112,108,97,99,101,109,101,110,116,0, 2049,2906,4097,8139,10,8327,8419,144,114,101,112,108,97,99,101,109,101,110,116,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 2049,3539,1,2048,18,10,8404,8436,144,101,120,116,114,97,99,116,0,2049,8419,2049,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 4563,10,8425,8453,144,116,111,107,101,110,105,122,101,0,2049,8351,2049,3649,10,8441,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 8469,144,99,111,109,98,105,110,101,0,2049,8419,2049,3874,2049,3874,10,8458,8485,144,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 109,101,114,103,101,0,4,1793,8491,2049,8469,10,1,8488,2049,7002,772,10,8476,8509,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 144,102,105,110,100,45,101,110,100,0,2,2049,79,2049,8419,2049,79,18,67502597,17,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 10,8497,8529,144,99,108,101,97,110,0,2049,8509,1,0,4,16,10,8327,8553,144,
0,0,0,0,0,0,0,0,8404,8558,144,101,120,116,114,97,99,116,0,1, 115,58,114,101,112,108,97,99,101,45,97,108,108,0,1,3,1793,8568,2049,8436,
8419,2049,4563,10,8547,8575,144,116,111,107,101,110,105,122,101,0,2049,8351,2049,3649, 2049,8453,2049,8485,2049,8529,2049,3623,10,1,8557,2049,3092,10,8536,8589,144,99,117,114,
10,8563,8591,144,99,111,109,98,105,110,101,0,1,8419,2049,3874,2049,3874,10,8580, 114,101,110,116,45,108,105,110,101,0,2049,3539,1,1025,18,10,8573,8611,144,99,
8607,144,109,101,114,103,101,0,4,1793,8613,2049,8591,10,1,8610,2049,7002,772,10, 111,117,110,116,45,116,111,107,101,110,115,0,1793,8617,1,32,11,10,1,8613,
8598,8631,144,102,105,110,100,45,101,110,100,0,2,2049,79,1,8419,2049,79,18, 2049,4316,2049,79,10,8595,8638,144,110,101,120,116,45,116,111,107,101,110,0,1,
67502597,17,10,8619,8651,144,99,108,101,97,110,0,2049,8631,1,0,4,16,10,8327, 32,2049,6169,10,8624,8661,144,112,114,111,99,101,115,115,45,116,111,107,101,110,
8675,144,115,58,114,101,112,108,97,99,101,45,97,108,108,0,1,3,1793,8690, 115,0,1793,8687,2049,8638,4,1793,8680,2,2049,79,2049,2583,1,363,1,11,2049,64,
2049,8558,2049,8575,2049,8607,2049,8651,2049,3623,10,1,8679,2049,3092,10,8658,8711,144,99, 10,1,8668,2049,2106,2049,2893,10,1,8663,2049,2281,2049,363,10,8536,8708,144,115,58,
117,114,114,101,110,116,45,108,105,110,101,0,2049,3539,1,1025,18,10,8695,8733, 101,118,97,108,117,97,116,101,0,2049,8589,2049,4563,2049,8589,2,2049,8611,2049,8661,
144,99,111,117,110,116,45,116,111,107,101,110,115,0,1793,8739,1,32,11,10, 10,8694,8728,131,70,108,97,103,0,0,8720,8740,144,99,111,109,112,97,114,101,
1,8735,2049,4316,2049,79,10,8717,8760,144,110,101,120,116,45,116,111,107,101,110, 0,67440386,184946434,10,8729,8753,144,108,101,110,103,116,104,0,659202,10,8743,8763,144,110,
0,1,32,2049,6169,10,8746,8783,144,112,114,111,99,101,115,115,45,116,111,107, 101,120,116,0,17043713,1,1,2577,10,8755,8781,144,110,111,116,45,101,113,117,97,
101,110,115,0,1793,8809,2049,8760,4,1793,8802,2,2049,79,2049,2583,1,363,1,11, 108,0,50529030,2561,0,10,8768,8793,144,108,111,111,112,0,524549,8763,2049,8740,18157313,8728,
2049,64,10,1,8790,2049,2106,2049,2893,10,1,8785,2049,2281,2049,363,10,8658,8830,144, 8728,16,420610310,1,1,8793,7,10,8694,8816,144,97,58,101,113,63,0,1048833,-1,8728,
115,58,101,118,97,108,117,97,116,101,0,2049,8711,2049,4563,2049,8711,2,2049,8733, 2049,8740,151066369,-1,8781,2049,8753,2049,8793,251724547,8728,10,8807,8841,144,97,58,45,101,113,
2049,8783,10,8816,8850,131,70,108,97,103,0,0,8842,8862,144,99,111,109,112,97, 63,0,2049,8816,2049,2720,10,8831,8864,144,97,58,98,101,103,105,110,115,45,119,
114,101,0,67440386,184946434,10,8851,8875,144,108,101,110,103,116,104,0,659202,10,8865,8885, 105,116,104,63,0,1,3,1793,8880,2,2049,6900,1,13,2049,2106,2049,7813,2049,8816,
144,110,101,120,116,0,17043713,1,1,2577,10,8877,8903,144,110,111,116,45,101,113, 10,1,8868,2049,3092,10,8846,8901,144,97,58,101,110,100,115,45,119,105,116,104,
117,97,108,0,50529030,2561,0,10,8890,8915,144,108,111,111,112,0,524549,8885,2049,8862, 63,0,1,3,1793,8917,2,2049,6900,1,13,2049,2106,2049,7858,2049,8816,10,1,8905,
18157313,8850,8850,16,420610310,1,1,8915,7,10,8816,8938,144,97,58,101,113,63,0,1048833, 2049,3092,10,8885,8928,131,76,80,0,0,8922,8938,131,73,110,100,101,120,0,0,
-1,8850,2049,8862,151066369,-1,8903,2049,8875,2049,8915,251724547,8850,10,8929,8963,144,97,58,45, 10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
101,113,63,0,2049,8938,2049,2720,10,8953,8986,144,97,58,98,101,103,105,110,115, 0,0,0,0,0,0,0,0,0,0,0,8929,8978,144,110,101,120,116,0,3841,
45,119,105,116,104,63,0,1,3,1793,9002,2,2049,6900,1,13,2049,2106,2049,7813, 8928,1,8938,17,2049,2994,10,8970,8994,144,112,114,101,112,0,1,8928,2049,2994,1,
2049,8938,10,1,8990,2049,3092,10,8968,9023,144,97,58,101,110,100,115,45,119,105, 0,3841,8928,1,8938,17,16,10,8986,9015,144,100,111,110,101,0,1,8928,2049,3009,
116,104,63,0,1,3,1793,9039,2,2049,6900,1,13,2049,2106,2049,7858,2049,8938,10, 10,8885,9025,144,73,0,3841,8928,1,8938,17,15,10,9020,9037,144,74,0,3841,8928,
1,9027,2049,3092,10,9007,9050,131,76,80,0,0,9044,9060,131,73,110,100,101,120, 1,8938,17,2049,2906,15,10,9032,9051,144,75,0,3841,8928,1,8938,17,1,2,18,
0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 15,10,9046,9082,144,116,105,109,101,115,60,119,105,116,104,45,105,110,100,101,
0,0,0,0,0,0,0,0,0,0,0,0,0,9051,9100,144,110,101,120,116, 120,62,0,2049,8994,4,1793,9098,25,33886721,1,2053,1542,2049,8978,1,9087,7,10,1,
0,3841,9050,1,9060,17,2049,2994,10,9092,9116,144,112,114,101,112,0,1,9050,2049, 9087,8,3,2049,9015,10,9061,9113,156,104,111,111,107,0,2049,3668,108,105,106,117,
2994,1,0,3841,9050,1,9060,17,16,10,9108,9137,144,100,111,110,101,0,1,9050, 46,46,46,46,0,1,9115,2049,408,2049,1877,2049,2893,2049,105,10,9105,9147,144,115,
2049,3009,10,9007,9147,144,73,0,3841,9050,1,9060,17,15,10,9142,9159,144,74,0, 101,116,45,104,111,111,107,0,2049,2893,16,10,9135,9161,144,117,110,104,111,111,
3841,9050,1,9060,17,2049,2906,15,10,9154,9173,144,75,0,3841,9050,1,9060,17,1, 107,0,2049,2893,2,2049,2893,4,16,10,9151,9185,144,105,111,58,101,110,117,109,
2,18,15,10,9168,9204,144,116,105,109,101,115,60,119,105,116,104,45,105,110, 101,114,97,116,101,0,27,10,9169,9199,144,105,111,58,113,117,101,114,121,0,
100,101,120,62,0,2049,9116,4,1793,9220,25,33886721,1,2053,1542,2049,9100,1,9209,7, 28,10,9187,9214,144,105,111,58,105,110,118,111,107,101,0,29,10,9201,9224,131,
10,1,9209,8,3,2049,9137,10,9183,9235,156,104,111,111,107,0,2049,3668,108,105, 83,108,111,116,0,9,9201,9240,144,105,111,58,115,99,97,110,45,102,111,114,
106,117,46,46,46,46,0,1,9237,2049,408,2049,1877,2049,2893,2049,105,10,9227,9269, 0,1,-1,4097,9224,2049,9185,1793,9266,2049,9025,2049,9199,772,67502597,11,1793,9262,2049,9025,
144,115,101,116,45,104,111,111,107,0,2049,2893,16,10,9257,9283,144,117,110,104, 4097,9224,10,1,9257,9,10,1,9248,2049,9082,3,3841,9224,10,9225,9283,144,99,58,
111,111,107,0,2049,2893,2,2049,2893,4,16,10,9273,9307,144,105,111,58,101,110, 112,117,116,0,1793,9285,1,0,2049,9214,10,9274,9296,144,110,108,0,1,10,2049,
117,109,101,114,97,116,101,0,27,10,9291,9321,144,105,111,58,113,117,101,114, 9283,10,9290,9307,144,115,112,0,1,32,2049,9283,10,9301,9319,144,116,97,98,0,
121,0,28,10,9309,9336,144,105,111,58,105,110,118,111,107,101,0,29,10,9323, 1,9,2049,9283,10,9312,9333,144,115,58,112,117,116,0,1,9283,2049,3892,10,9324,
9346,131,83,108,111,116,0,9,9323,9362,144,105,111,58,115,99,97,110,45,102, 9347,144,110,58,112,117,116,0,2049,5985,2049,9333,10,9338,9361,144,114,101,115,101,
111,114,0,1,-1,4097,9346,2049,9307,1793,9388,2049,9147,2049,9321,772,67502597,11,1793,9384, 116,0,2049,1556,25,771,1,9361,7,10,9352,9383,144,100,117,109,112,45,115,116,
2049,9147,4097,9346,10,1,9379,9,10,1,9370,2049,9204,3,3841,9346,10,9347,9405,144, 97,99,107,0,2049,1556,25,3,5,2049,9383,6,2,2049,9347,2049,9307,10,9369,9405,
99,58,112,117,116,0,1793,9407,1,0,2049,9336,10,9396,9418,144,110,108,0,1, 144,70,82,69,69,0,2049,3539,1,1025,18,2049,1877,18,10,9397,9424,144,102,105,
10,2049,9405,10,9412,9429,144,115,112,0,1,32,2049,9405,10,9423,9441,144,116,97, 101,108,100,115,0,3841,2,2049,105,2049,105,2049,105,10,9414,9450,144,105,110,118,
98,0,1,9,2049,9405,10,9434,9455,144,115,58,112,117,116,0,1,9405,2049,3892, 97,108,105,100,45,110,97,109,101,63,0,2,1,32,2049,4018,10,9433,9467,144,
10,9446,9469,144,110,58,112,117,116,0,2049,5985,2049,9455,10,9460,9483,144,114,101, 114,101,119,114,105,116,101,0,1793,9481,1,32,1793,9476,1,95,10,1,9473,2049,
115,101,116,0,2049,1556,25,771,1,9483,7,10,9474,9505,144,100,117,109,112,45, 2306,10,1,9469,2049,4358,10,9456,9495,144,101,110,116,114,121,0,2049,1877,1,21,
115,116,97,99,107,0,2049,1556,25,3,5,2049,9505,6,2,2049,9469,2049,9429,10, 2049,2106,4097,2,10,1793,9523,1793,9518,2049,9424,2049,9450,1,9467,9,2049,119,10,1,
9491,9527,144,70,82,69,69,0,2049,3539,1,1025,18,2049,1877,18,10,9519,9546,144, 9508,2049,9495,10,1,9506,9397,9534,131,70,105,108,101,115,0,0,9525,9547,144,105,
102,105,101,108,100,115,0,3841,2,2049,105,2049,105,2049,105,10,9536,9572,144,105, 100,101,110,116,105,102,121,0,3841,9534,2049,2567,1793,9614,1,4,2049,9240,2,2049,
110,118,97,108,105,100,45,110,97,109,101,63,0,2,1,32,2049,4018,10,9555, 2602,1793,9602,3,2049,3668,73,79,32,68,69,86,73,67,69,32,84,89,80,69,
9589,144,114,101,119,114,105,116,101,0,1793,9603,1,32,1793,9598,1,95,10,1, 32,48,48,48,52,32,78,79,84,32,70,79,85,78,68,0,1,9565,2049,9333,
9595,2049,2306,10,1,9591,2049,4358,10,9578,9617,144,101,110,116,114,121,0,2049,1877, 2049,9296,10,1,9562,1793,9609,4097,9534,10,1,9606,2049,64,10,1,9553,9,10,9397,
1,21,2049,2106,4097,2,10,1793,9645,1793,9640,2049,9546,2049,9572,1,9589,9,2049,119, 9639,144,105,111,58,102,105,108,101,45,111,112,101,114,97,116,105,111,110,0,
10,1,9630,2049,9617,10,1,9628,9519,9656,131,70,105,108,101,115,0,0,9647,9669, 2049,9547,3841,9534,2049,9214,10,9618,0,131,102,105,108,101,58,82,0,9646,1,131,
144,105,100,101,110,116,105,102,121,0,3841,9656,2049,2567,1793,9736,1,4,2049,9362, 102,105,108,101,58,87,0,9656,2,131,102,105,108,101,58,65,0,9666,3,131,
2,2049,2602,1793,9724,3,2049,3668,73,79,32,68,69,86,73,67,69,32,84,89, 102,105,108,101,58,82,43,0,9676,9700,144,102,105,108,101,58,111,112,101,110,
80,69,32,48,48,48,52,32,78,79,84,32,70,79,85,78,68,0,1,9687, 0,1,0,2049,9639,10,9687,9719,144,102,105,108,101,58,99,108,111,115,101,0,
2049,9455,2049,9418,10,1,9684,1793,9731,4097,9656,10,1,9728,2049,64,10,1,9675,9, 1,1,2049,9639,10,9705,9737,144,102,105,108,101,58,114,101,97,100,0,1,2,
10,9519,9761,144,105,111,58,102,105,108,101,45,111,112,101,114,97,116,105,111, 2049,9639,10,9724,9756,144,102,105,108,101,58,119,114,105,116,101,0,1,3,2049,
110,0,2049,9669,3841,9656,2049,9336,10,9740,0,131,102,105,108,101,58,82,0,9768, 9639,10,9742,9774,144,102,105,108,101,58,116,101,108,108,0,1,4,2049,9639,10,
1,131,102,105,108,101,58,87,0,9778,2,131,102,105,108,101,58,65,0,9788, 9761,9792,144,102,105,108,101,58,115,101,101,107,0,1,5,2049,9639,10,9779,9810,
3,131,102,105,108,101,58,82,43,0,9798,9822,144,102,105,108,101,58,111,112, 144,102,105,108,101,58,115,105,122,101,0,1,6,2049,9639,10,9797,9830,144,102,
101,110,0,1,0,2049,9761,10,9809,9841,144,102,105,108,101,58,99,108,111,115, 105,108,101,58,100,101,108,101,116,101,0,1,7,2049,9639,10,9815,9849,144,102,
101,0,1,1,2049,9761,10,9827,9859,144,102,105,108,101,58,114,101,97,100,0, 105,108,101,58,102,108,117,115,104,0,1,8,2049,9639,10,9835,9870,144,102,105,
1,2,2049,9761,10,9846,9878,144,102,105,108,101,58,119,114,105,116,101,0,1, 108,101,58,101,120,105,115,116,115,63,0,1,0,2049,9700,2,2049,2583,1793,9884,
3,2049,9761,10,9864,9896,144,102,105,108,101,58,116,101,108,108,0,1,4,2049, 2049,9719,2049,2443,10,1,9879,1793,9892,3,2049,2455,10,1,9888,2049,64,10,9854,9923,
9761,10,9883,9914,144,102,105,108,101,58,115,101,101,107,0,1,5,2049,9761,10, 144,102,105,108,101,58,111,112,101,110,60,102,111,114,45,114,101,97,100,105,
9901,9932,144,102,105,108,101,58,115,105,122,101,0,1,6,2049,9761,10,9919,9952, 110,103,62,0,1,0,2049,9700,2,2049,9810,4,10,9897,9957,144,102,105,108,101,
144,102,105,108,101,58,100,101,108,101,116,101,0,1,7,2049,9761,10,9937,9971, 58,111,112,101,110,60,102,111,114,45,97,112,112,101,110,100,62,0,1,2,
144,102,105,108,101,58,102,108,117,115,104,0,1,8,2049,9761,10,9957,9992,144, 2049,9700,2,2049,9810,4,10,9932,9992,144,102,105,108,101,58,111,112,101,110,60,
102,105,108,101,58,101,120,105,115,116,115,63,0,1,0,2049,9822,2,2049,2583, 102,111,114,45,119,114,105,116,105,110,103,62,0,1,1,2049,9700,10,9966,10004,
1793,10006,2049,9841,2049,2443,10,1,10001,1793,10014,3,2049,2455,10,1,10010,2049,64,10, 131,70,73,68,0,0,9997,10013,131,83,105,122,101,0,0,10005,10024,131,65,99,
9976,10045,144,102,105,108,101,58,111,112,101,110,60,102,111,114,45,114,101,97, 116,105,111,110,0,0,10014,10035,131,66,117,102,102,101,114,0,0,10025,10045,144,
100,105,110,103,62,0,1,0,2049,9822,2,2049,9932,4,10,10019,10079,144,102,105, 45,101,111,102,63,0,3841,10004,2049,9774,3841,10013,13,10,10036,10065,144,112,114,101,
108,101,58,111,112,101,110,60,102,111,114,45,97,112,112,101,110,100,62,0, 115,101,114,118,101,0,1,10004,1793,10076,1,10013,1,21,2049,3092,10,1,10069,2049,
1,2,2049,9822,2,2049,9932,4,10,10054,10114,144,102,105,108,101,58,111,112,101, 3092,10,9966,10099,144,102,105,108,101,58,114,101,97,100,45,108,105,110,101,0,
110,60,102,111,114,45,119,114,105,116,105,110,103,62,0,1,1,2049,9822,10, 4097,10004,1793,10156,2049,1877,2,4097,10035,2049,3450,1793,10148,3841,10004,2049,9737,2,2049,3358,
10088,10126,131,70,73,68,0,0,10119,10135,131,83,105,122,101,0,0,10127,10146,131, 1793,10125,1,13,11,10,1,10121,1793,10133,1,10,11,10,1,10129,1793,10141,1,0,
65,99,116,105,111,110,0,0,10136,10157,131,66,117,102,102,101,114,0,0,10147, 11,10,1,10137,2049,2165,22,22,10,1,10112,2049,2256,2049,3382,3,10,1,10103,2049,
10167,144,45,101,111,102,63,0,3841,10126,2049,9896,3841,10135,13,10,10158,10187,144,112, 3474,3841,10035,10,10081,10185,144,102,105,108,101,58,102,111,114,45,101,97,99,104,
114,101,115,101,114,118,101,0,1,10126,1793,10198,1,10135,1,21,2049,3092,10,1, 45,108,105,110,101,0,1793,10216,4097,10024,2049,9923,4097,10004,4097,10013,1793,10207,3841,10004,
10191,2049,3092,10,10088,10221,144,102,105,108,101,58,114,101,97,100,45,108,105,110, 2049,10099,3841,10024,8,2049,10045,10,1,10197,2049,2233,3841,10004,2049,9719,10,1,10187,2049,
101,0,4097,10126,1793,10278,2049,1877,2,4097,10157,2049,3450,1793,10270,3841,10126,2049,9859,2, 10065,10,10163,10228,131,70,73,68,0,0,10221,10237,131,83,105,122,101,0,0,10163,
2049,3358,1793,10247,1,13,11,10,1,10243,1793,10255,1,10,11,10,1,10251,1793,10263, 10252,144,102,105,108,101,58,115,108,117,114,112,0,1793,10282,2049,9923,4097,10228,4097,
1,0,11,10,1,10259,2049,2165,22,22,10,1,10234,2049,2256,2049,3382,3,10,1, 10237,2049,3450,3841,10237,1793,10273,3841,10228,2049,9737,2049,3358,10,1,10266,2049,2281,3841,10228,
10225,2049,3474,3841,10157,10,10203,10307,144,102,105,108,101,58,102,111,114,45,101,97, 2049,9719,10,1,10254,2049,3474,10,10238,10300,144,102,105,108,101,58,115,112,101,119,
99,104,45,108,105,110,101,0,1793,10338,4097,10146,2049,10045,4097,10126,4097,10135,1793,10329, 0,2049,9992,4,1793,10309,67502597,2049,9756,10,1,10305,2049,3892,2049,9719,10,10287,10323,131,
3841,10126,2049,10221,3841,10146,8,2049,10167,10,1,10319,2049,2233,3841,10126,2049,9841,10,1, 70,80,85,0,0,10316,10336,144,105,100,101,110,116,105,102,121,0,3841,10323,2049,
10309,2049,10187,10,10285,10350,131,70,73,68,0,0,10343,10359,131,83,105,122,101,0, 2567,1793,10403,1,2,2049,9240,2,2049,2602,1793,10391,3,2049,3668,73,79,32,68,69,
0,10285,10374,144,102,105,108,101,58,115,108,117,114,112,0,1793,10404,2049,10045,4097, 86,73,67,69,32,84,89,80,69,32,48,48,48,50,32,78,79,84,32,70,
10350,4097,10359,2049,3450,3841,10359,1793,10395,3841,10350,2049,9859,2049,3358,10,1,10388,2049,2281, 79,85,78,68,0,1,10354,2049,9333,2049,9296,10,1,10351,1793,10398,4097,10323,10,1,
3841,10350,2049,9841,10,1,10376,2049,3474,10,10360,10422,144,102,105,108,101,58,115,112, 10395,2049,64,10,1,10342,9,10,10287,10429,144,105,111,58,102,108,111,97,116,45,
101,119,0,2049,10114,4,1793,10431,67502597,2049,9878,10,1,10427,2049,3892,2049,9841,10,10409, 111,112,101,114,97,116,105,111,110,0,2049,10336,3841,10323,2049,9214,10,10407,10450,144,
10445,131,70,80,85,0,0,10438,10458,144,105,100,101,110,116,105,102,121,0,3841, 110,58,116,111,45,102,108,111,97,116,0,1,0,2049,10429,10,10436,10469,144,115,
10445,2049,2567,1793,10525,1,2,2049,9362,2,2049,2602,1793,10513,3,2049,3668,73,79,32, 58,116,111,45,102,108,111,97,116,0,1,1,2049,10429,10,10455,10489,144,102,58,
68,69,86,73,67,69,32,84,89,80,69,32,48,48,48,50,32,78,79,84, 116,111,45,110,117,109,98,101,114,0,1,2,2049,10429,10,10474,10509,144,102,58,
32,70,79,85,78,68,0,1,10476,2049,9455,2049,9418,10,1,10473,1793,10520,4097,10445, 116,111,45,115,116,114,105,110,103,0,2049,3649,2,1,3,2049,10429,10,10494,10524,
10,1,10517,2049,64,10,1,10464,9,10,10409,10551,144,105,111,58,102,108,111,97, 144,102,58,43,0,1,4,2049,10429,10,10517,10536,144,102,58,45,0,1,5,2049,
116,45,111,112,101,114,97,116,105,111,110,0,2049,10458,3841,10445,2049,9336,10,10529, 10429,10,10529,10548,144,102,58,42,0,1,6,2049,10429,10,10541,10560,144,102,58,47,
10572,144,110,58,116,111,45,102,108,111,97,116,0,1,0,2049,10551,10,10558,10591, 0,1,7,2049,10429,10,10553,10576,144,102,58,102,108,111,111,114,0,1,8,2049,
144,115,58,116,111,45,102,108,111,97,116,0,1,1,2049,10551,10,10577,10611,144, 10429,10,10565,10594,144,102,58,99,101,105,108,105,110,103,0,1,9,2049,10429,10,
102,58,116,111,45,110,117,109,98,101,114,0,1,2,2049,10551,10,10596,10631,144, 10581,10609,144,102,58,115,113,114,116,0,1,10,2049,10429,10,10599,10623,144,102,58,
102,58,116,111,45,115,116,114,105,110,103,0,2049,3649,2,1,3,2049,10551,10, 101,113,63,0,1,11,2049,10429,10,10614,10638,144,102,58,45,101,113,63,0,1,
10616,10646,144,102,58,43,0,1,4,2049,10551,10,10639,10658,144,102,58,45,0,1, 12,2049,10429,10,10628,10652,144,102,58,108,116,63,0,1,13,2049,10429,10,10643,10666,
5,2049,10551,10,10651,10670,144,102,58,42,0,1,6,2049,10551,10,10663,10682,144,102, 144,102,58,103,116,63,0,1,14,2049,10429,10,10657,10682,144,102,58,100,101,112,
58,47,0,1,7,2049,10551,10,10675,10698,144,102,58,102,108,111,111,114,0,1, 116,104,0,1,15,2049,10429,10,10671,10696,144,102,58,100,117,112,0,1,16,2049,
8,2049,10551,10,10687,10716,144,102,58,99,101,105,108,105,110,103,0,1,9,2049, 10429,10,10687,10711,144,102,58,100,114,111,112,0,1,17,2049,10429,10,10701,10726,144,
10551,10,10703,10731,144,102,58,115,113,114,116,0,1,10,2049,10551,10,10721,10745,144, 102,58,115,119,97,112,0,1,18,2049,10429,10,10716,10740,144,102,58,108,111,103,
102,58,101,113,63,0,1,11,2049,10551,10,10736,10760,144,102,58,45,101,113,63, 0,1,19,2049,10429,10,10731,10756,144,102,58,112,111,119,101,114,0,1,20,2049,
0,1,12,2049,10551,10,10750,10774,144,102,58,108,116,63,0,1,13,2049,10551,10, 10429,10,10745,10770,144,102,58,115,105,110,0,1,21,2049,10429,10,10761,10784,144,102,
10765,10788,144,102,58,103,116,63,0,1,14,2049,10551,10,10779,10804,144,102,58,100, 58,99,111,115,0,1,22,2049,10429,10,10775,10798,144,102,58,116,97,110,0,1,
101,112,116,104,0,1,15,2049,10551,10,10793,10818,144,102,58,100,117,112,0,1, 23,2049,10429,10,10789,10813,144,102,58,97,115,105,110,0,1,24,2049,10429,10,10803,
16,2049,10551,10,10809,10833,144,102,58,100,114,111,112,0,1,17,2049,10551,10,10823, 10828,144,102,58,97,99,111,115,0,1,25,2049,10429,10,10818,10843,144,102,58,97,
10848,144,102,58,115,119,97,112,0,1,18,2049,10551,10,10838,10862,144,102,58,108, 116,97,110,0,1,26,2049,10429,10,10833,10858,144,102,58,112,117,115,104,0,1,
111,103,0,1,19,2049,10551,10,10853,10878,144,102,58,112,111,119,101,114,0,1, 27,2049,10429,10,10848,10872,144,102,58,112,111,112,0,1,28,2049,10429,10,10863,10889,
20,2049,10551,10,10867,10892,144,102,58,115,105,110,0,1,21,2049,10551,10,10883,10906, 144,102,58,97,100,101,112,116,104,0,1,29,2049,10429,10,10877,10906,144,102,58,
144,102,58,99,111,115,0,1,22,2049,10551,10,10897,10920,144,102,58,116,97,110, 115,113,117,97,114,101,0,2049,10696,2049,10548,10,10894,10921,144,102,58,111,118,101,
0,1,23,2049,10551,10,10911,10935,144,102,58,97,115,105,110,0,1,24,2049,10551, 114,0,2049,10858,2049,10696,2049,10872,2049,10726,10,10911,10940,144,102,58,116,117,99,107,
10,10925,10950,144,102,58,97,99,111,115,0,1,25,2049,10551,10,10940,10965,144,102, 0,2049,10696,2049,10858,2049,10726,2049,10872,10,10930,10958,144,102,58,110,105,112,0,2049,
58,97,116,97,110,0,1,26,2049,10551,10,10955,10980,144,102,58,112,117,115,104, 10726,2049,10711,10,10949,10978,144,102,58,100,114,111,112,45,112,97,105,114,0,2049,
0,1,27,2049,10551,10,10970,10994,144,102,58,112,111,112,0,1,28,2049,10551,10, 10711,2049,10711,10,10963,10997,144,102,58,100,117,112,45,112,97,105,114,0,2049,10921,
10985,11011,144,102,58,97,100,101,112,116,104,0,1,29,2049,10551,10,10999,11028,144, 2049,10921,10,10983,11011,144,102,58,114,111,116,0,2049,10858,2049,10726,2049,10872,2049,10726,
102,58,115,113,117,97,114,101,0,2049,10818,2049,10670,10,11016,11043,144,102,58,111, 10,11002,11035,144,102,58,112,111,115,105,116,105,118,101,63,0,1,0,2049,10450,
118,101,114,0,2049,10980,2049,10818,2049,10994,2049,10848,10,11033,11062,144,102,58,116,117, 2049,10666,10,11020,11057,144,102,58,110,101,103,97,116,105,118,101,63,0,1,0,
99,107,0,2049,10818,2049,10980,2049,10848,2049,10994,10,11052,11080,144,102,58,110,105,112, 2049,10450,2049,10652,10,11042,11076,144,102,58,110,101,103,97,116,101,0,1,-1,2049,
0,2049,10848,2049,10833,10,11071,11100,144,102,58,100,114,111,112,45,112,97,105,114, 10450,2049,10548,10,11064,11092,144,102,58,97,98,115,0,2049,10696,2049,11057,1,11076,9,
0,2049,10833,2049,10833,10,11085,11119,144,102,58,100,117,112,45,112,97,105,114,0, 10,11083,11112,156,112,114,101,102,105,120,58,46,0,2049,1818,1,3694,1,3623,2049,
2049,11043,2049,11043,10,11105,11133,144,102,58,114,111,116,0,2049,10980,2049,10848,2049,10994, 64,1,10469,2049,144,10,11100,11134,144,102,58,112,117,116,0,2049,10509,2049,9333,10,
2049,10848,10,11124,11157,144,102,58,112,111,115,105,116,105,118,101,63,0,1,0, 11125,11147,144,102,58,80,73,0,2049,3668,51,46,49,52,49,53,57,50,0,1,
2049,10572,2049,10788,10,11142,11179,144,102,58,110,101,103,97,116,105,118,101,63,0, 11149,2049,10469,10,11139,11170,144,102,58,69,0,2049,3668,50,46,55,49,56,50,56,
1,0,2049,10572,2049,10774,10,11164,11198,144,102,58,110,101,103,97,116,101,0,1, 49,0,1,11172,2049,10469,10,11163,11195,144,102,58,78,65,78,0,2049,3668,48,0,
-1,2049,10572,2049,10670,10,11186,11214,144,102,58,97,98,115,0,2049,10818,2049,11179,1, 1,11197,2049,10469,2049,3668,48,0,1,11205,2049,10469,2049,10560,10,11186,11223,144,102,58,
11198,9,10,11205,11234,156,112,114,101,102,105,120,58,46,0,2049,1818,1,3694,1, 73,78,70,0,2049,3668,49,46,48,0,1,11225,2049,10469,2049,3668,48,0,1,11235,
3623,2049,64,1,10591,2049,144,10,11222,11256,144,102,58,112,117,116,0,2049,10631,2049, 2049,10469,2049,10560,10,11214,11254,144,102,58,45,73,78,70,0,2049,3668,45,49,46,
9455,10,11247,11269,144,102,58,80,73,0,2049,3668,51,46,49,52,49,53,57,50, 48,0,1,11256,2049,10469,2049,3668,48,0,1,11267,2049,10469,2049,10560,10,11244,11286,144,
0,1,11271,2049,10591,10,11261,11292,144,102,58,69,0,2049,3668,50,46,55,49,56, 102,58,110,97,110,63,0,2049,10696,2049,10638,10,11276,11301,144,102,58,105,110,102,
50,56,49,0,1,11294,2049,10591,10,11285,11317,144,102,58,78,65,78,0,2049,3668, 63,0,2049,11223,2049,10623,10,11291,11317,144,102,58,45,105,110,102,63,0,2049,11254,
48,0,1,11319,2049,10591,2049,3668,48,0,1,11327,2049,10591,2049,10682,10,11308,11345,144, 2049,10623,10,11306,11333,144,102,58,114,111,117,110,100,0,2049,10696,2049,11057,1793,11354,
102,58,73,78,70,0,2049,3668,49,46,48,0,1,11347,2049,10591,2049,3668,48,0, 2049,3668,48,46,53,0,1,11341,2049,10469,2049,10536,2049,10594,10,1,11339,1793,11373,2049,
1,11357,2049,10591,2049,10682,10,11336,11376,144,102,58,45,73,78,70,0,2049,3668,45, 3668,48,46,53,0,1,11360,2049,10469,2049,10524,2049,10576,10,1,11358,2049,64,10,11322,
49,46,48,0,1,11378,2049,10591,2049,3668,48,0,1,11389,2049,10591,2049,10682,10,11366, 11387,144,102,58,109,105,110,0,2049,10997,2049,10652,1,10711,1,10958,2049,64,10,11378,
11408,144,102,58,110,97,110,63,0,2049,10818,2049,10760,10,11398,11423,144,102,58,105, 11407,144,102,58,109,97,120,0,2049,10997,2049,10666,1,10711,1,10958,2049,64,10,11398,
110,102,63,0,2049,11345,2049,10745,10,11413,11439,144,102,58,45,105,110,102,63,0, 11429,144,102,58,108,105,109,105,116,0,2049,10726,2049,10858,2049,11387,2049,10872,2049,11407,
2049,11376,2049,10745,10,11428,11455,144,102,58,114,111,117,110,100,0,2049,10818,2049,11179, 10,11418,11454,144,102,58,98,101,116,119,101,101,110,63,0,2049,11011,2049,10696,2049,
1793,11476,2049,3668,48,46,53,0,1,11463,2049,10591,2049,10658,2049,10716,10,1,11461,1793, 10858,2049,11011,2049,11011,2049,11429,2049,10872,2049,10623,10,11440,11480,144,102,58,105,110,99,
11495,2049,3668,48,46,53,0,1,11482,2049,10591,2049,10646,2049,10698,10,1,11480,2049,64, 0,2049,3668,49,0,1,11482,2049,10469,2049,10524,10,11471,11500,144,102,58,100,101,99,
10,11444,11509,144,102,58,109,105,110,0,2049,11119,2049,10774,1,10833,1,11080,2049,64, 0,2049,3668,49,0,1,11502,2049,10469,2049,10536,10,11491,11521,144,102,58,99,97,115,
10,11500,11529,144,102,58,109,97,120,0,2049,11119,2049,10788,1,10833,1,11080,2049,64, 101,0,2049,10921,2049,10623,1793,11533,2049,10711,8,1,-1,10,1,11527,1793,11541,3,1,
10,11520,11551,144,102,58,108,105,109,105,116,0,2049,10848,2049,10980,2049,11509,2049,10994, 0,10,1,11537,2049,64,25,6,771,10,11511,11559,144,102,58,115,105,103,110,0,
2049,11529,10,11540,11576,144,102,58,98,101,116,119,101,101,110,63,0,2049,11133,2049, 2049,10696,2049,3668,48,0,1,11563,2049,10469,2049,10623,1793,11578,1,0,2049,10711,10,1,
10818,2049,10980,2049,11133,2049,11133,2049,11551,2049,10994,2049,10745,10,11562,11602,144,102,58,105, 11573,2049,2501,2049,3668,48,0,1,11584,2049,10469,2049,10666,1793,11597,1,1,10,1,11594,
110,99,0,2049,3668,49,0,1,11604,2049,10591,2049,10646,10,11593,11622,144,102,58,100, 1793,11604,1,-1,10,1,11601,2049,64,10,11549,2147483645,131,101,58,77,65,88,0,11609,
101,99,0,2049,3668,49,0,1,11624,2049,10591,2049,10658,10,11613,11643,144,102,58,99, -2147483645,131,101,58,77,73,78,0,11618,-2147483647,131,101,58,78,65,78,0,11627,2147483646,131,
97,115,101,0,2049,11043,2049,10745,1793,11655,2049,10833,8,1,-1,10,1,11649,1793,11663, 101,58,73,78,70,0,11636,-2147483646,131,101,58,45,73,78,70,0,11645,11663,144,101,
3,1,0,10,1,11659,2049,64,25,6,771,10,11633,11681,144,102,58,115,105,103, 58,110,63,0,1,-2147483645,2049,2893,1,2147483645,2049,2906,2049,2924,10,11655,11684,144,101,58,
110,0,2049,10818,2049,3668,48,0,1,11685,2049,10591,2049,10745,1793,11700,1,0,2049,10833, 109,97,120,63,0,1,2147483645,11,10,11674,11698,144,101,58,109,105,110,63,0,1,
10,1,11695,2049,2501,2049,3668,48,0,1,11706,2049,10591,2049,10788,1793,11719,1,1,10, -2147483645,11,10,11688,11713,144,101,58,122,101,114,111,63,0,2049,2567,10,11702,11726,144,
1,11716,1793,11726,1,-1,10,1,11723,2049,64,10,11671,2147483645,131,101,58,77,65,88, 101,58,110,97,110,63,0,1,-2147483647,11,10,11716,11740,144,101,58,105,110,102,63,
0,11731,-2147483645,131,101,58,77,73,78,0,11740,-2147483647,131,101,58,78,65,78,0,11749, 0,1,2147483646,11,10,11730,11755,144,101,58,45,105,110,102,63,0,1,-2147483646,11,10,
2147483646,131,101,58,73,78,70,0,11758,-2147483646,131,101,58,45,73,78,70,0,11767,11785, 11744,11769,144,101,58,99,108,105,112,0,1,-2147483645,1,2147483645,2049,2876,10,11759,11784,144,
144,101,58,110,63,0,1,-2147483645,2049,2893,1,2147483645,2049,2906,2049,2924,10,11777,11806,144, 102,58,69,49,0,1793,11786,2049,3668,49,46,101,53,0,1,11788,2049,10469,10,11776,
101,58,109,97,120,63,0,1,2147483645,11,10,11796,11820,144,101,58,109,105,110,63, 11810,144,102,58,45,115,104,105,102,116,0,2049,11784,2049,10548,10,11798,11827,144,102,
0,1,-2147483645,11,10,11810,11835,144,101,58,122,101,114,111,63,0,2049,2567,10,11824, 58,43,115,104,105,102,116,0,2049,11784,2049,10560,10,11815,11849,144,102,58,115,105,
11848,144,101,58,110,97,110,63,0,1,-2147483647,11,10,11838,11862,144,101,58,105,110, 103,110,101,100,45,115,113,114,116,0,2049,10696,2049,11559,2049,11092,2049,10609,2049,10450,
102,63,0,1,2147483646,11,10,11852,11877,144,101,58,45,105,110,102,63,0,1,-2147483646, 2049,10548,10,11832,11875,144,102,58,43,101,110,99,111,100,101,0,2049,11849,2049,11810,
11,10,11866,11891,144,101,58,99,108,105,112,0,1,-2147483645,1,2147483645,2049,2876,10,11881, 10,11862,11893,144,102,58,45,101,110,99,111,100,101,0,2049,10696,2049,11559,2049,11827,
11906,144,102,58,69,49,0,1793,11908,2049,3668,49,46,101,53,0,1,11910,2049,10591, 2049,10696,2049,10548,2049,10450,2049,10548,10,11880,11927,144,102,58,115,105,103,110,101,100,
10,11898,11932,144,102,58,45,115,104,105,102,116,0,2049,11906,2049,10670,10,11920,11949, 45,115,113,117,97,114,101,0,2049,10696,2049,11559,2049,10696,2049,10548,2049,10450,2049,10548,
144,102,58,43,115,104,105,102,116,0,2049,11906,2049,10682,10,11937,11971,144,102,58, 10,11908,11950,144,102,58,116,111,45,101,0,2049,10696,2049,11286,1793,11961,2049,10711,1,
115,105,103,110,101,100,45,115,113,114,116,0,2049,10818,2049,11681,2049,11214,2049,10731, -2147483647,10,1,11956,2049,2501,2049,10696,2049,11301,1793,11976,2049,10711,1,2147483646,10,1,11971,2049,
2049,10572,2049,10670,10,11954,11997,144,102,58,43,101,110,99,111,100,101,0,2049,11971, 2501,2049,10696,2049,11317,1793,11991,2049,10711,1,-2147483646,10,1,11986,2049,2501,2049,11875,2049,11333,
2049,11932,10,11984,12015,144,102,58,45,101,110,99,111,100,101,0,2049,10818,2049,11681, 2049,10489,2049,11769,1,-2147483645,1793,12010,2049,10711,10,1,12007,2049,2306,1,2147483645,1793,12021,2049,
2049,11949,2049,10818,2049,10670,2049,10572,2049,10670,10,12002,12049,144,102,58,115,105,103,110, 10711,10,1,12018,2049,2306,10,11940,12036,144,101,58,116,111,45,102,0,1,-2147483647,1793,
101,100,45,115,113,117,97,114,101,0,2049,10818,2049,11681,2049,10818,2049,10670,2049,10572, 12043,2049,11195,10,1,12040,2049,2306,1,2147483646,1793,12054,2049,11223,10,1,12051,2049,2306,1,
2049,10670,10,12030,12072,144,102,58,116,111,45,101,0,2049,10818,2049,11408,1793,12083,2049, -2147483646,1793,12065,2049,11254,10,1,12062,2049,2306,2049,10450,2049,11893,10,12026,12085,144,102,58,
10833,1,-2147483647,10,1,12078,2049,2501,2049,10818,2049,11423,1793,12098,2049,10833,1,2147483646,10,1, 115,116,111,114,101,0,1793,12090,2049,11950,10,1,12087,2049,2106,16,10,12074,12107,144,
12093,2049,2501,2049,10818,2049,11439,1793,12113,2049,10833,1,-2147483646,10,1,12108,2049,2501,2049,11997, 102,58,102,101,116,99,104,0,15,2049,12036,10,12096,12127,144,102,58,100,117,109,
2049,11455,2049,10611,2049,11891,1,-2147483645,1793,12132,2049,10833,10,1,12129,2049,2306,1,2147483645,1793, 112,45,115,116,97,99,107,0,2049,10682,2,1,10858,2049,2281,1793,12145,2049,10872,2049,
12143,2049,10833,10,1,12140,2049,2306,10,12062,12158,144,101,58,116,111,45,102,0,1, 10696,2049,11134,2049,9307,10,1,12136,2049,2281,10,12111,12167,144,102,58,100,117,109,112,
-2147483647,1793,12165,2049,11317,10,1,12162,2049,2306,1,2147483646,1793,12176,2049,11345,10,1,12173,2049, 45,97,115,116,97,99,107,0,2049,10889,2,1,10872,2049,2281,1793,12185,2049,10696,2049,
2306,1,-2147483646,1793,12187,2049,11376,10,1,12184,2049,2306,2049,10572,2049,12015,10,12148,12207,144, 11134,2049,9307,2049,10858,10,1,12176,2049,2281,10,12150,12199,144,101,58,112,117,116,0,
102,58,115,116,111,114,101,0,1793,12212,2049,12072,10,1,12209,2049,2106,16,10,12196, 1,2147483645,1793,12216,2049,3668,101,58,77,65,88,0,1,12205,2049,9333,10,1,12203,2049,
12229,144,102,58,102,101,116,99,104,0,15,2049,12158,10,12218,12249,144,102,58,100, 2306,1,-2147483645,1793,12237,2049,3668,101,58,77,73,78,0,1,12226,2049,9333,10,1,12224,
117,109,112,45,115,116,97,99,107,0,2049,10804,2,1,10980,2049,2281,1793,12267,2049, 2049,2306,1,0,1793,12256,2049,3668,101,58,48,0,1,12247,2049,9333,10,1,12245,2049,
10994,2049,10818,2049,11256,2049,9429,10,1,12258,2049,2281,10,12233,12289,144,102,58,100,117, 2306,1,-2147483647,1793,12277,2049,3668,101,58,78,65,78,0,1,12266,2049,9333,10,1,12264,
109,112,45,97,115,116,97,99,107,0,2049,11011,2,1,10994,2049,2281,1793,12307,2049, 2049,2306,1,2147483646,1793,12298,2049,3668,101,58,73,78,70,0,1,12287,2049,9333,10,1,
10818,2049,11256,2049,9429,2049,10980,10,1,12298,2049,2281,10,12272,12321,144,101,58,112,117, 12285,2049,2306,1,-2147483646,1793,12320,2049,3668,101,58,45,73,78,70,0,1,12308,2049,9333,
116,0,1,2147483645,1793,12338,2049,3668,101,58,77,65,88,0,1,12327,2049,9455,10,1, 10,1,12306,2049,2306,2049,12036,2049,11134,10,12190,12347,131,105,111,58,85,110,105,120,
12325,2049,2306,1,-2147483645,1793,12359,2049,3668,101,58,77,73,78,0,1,12348,2049,9455,10, 83,121,115,99,97,108,108,0,0,12329,12360,144,105,100,101,110,116,105,102,121,
1,12346,2049,2306,1,0,1793,12378,2049,3668,101,58,48,0,1,12369,2049,9455,10,1, 0,3841,12347,2049,2567,1793,12427,1,8,2049,9240,2,2049,2602,1793,12415,3,2049,3668,73,
12367,2049,2306,1,-2147483647,1793,12399,2049,3668,101,58,78,65,78,0,1,12388,2049,9455,10, 79,32,68,69,86,73,67,69,32,84,89,80,69,32,48,48,48,56,32,78,
1,12386,2049,2306,1,2147483646,1793,12420,2049,3668,101,58,73,78,70,0,1,12409,2049,9455, 79,84,32,70,79,85,78,68,0,1,12378,2049,9333,2049,9296,10,1,12375,1793,12422,
10,1,12407,2049,2306,1,-2147483646,1793,12442,2049,3668,101,58,45,73,78,70,0,1,12430, 4097,12347,10,1,12419,2049,64,10,1,12366,9,10,12190,12450,144,105,111,58,117,110,
2049,9455,10,1,12428,2049,2306,2049,12158,2049,11256,10,12312,12469,131,105,111,58,85,110, 105,120,45,115,121,115,99,97,108,108,0,2049,12360,3841,12347,2049,9214,10,12431,12472,
105,120,83,121,115,99,97,108,108,0,0,12451,12482,144,105,100,101,110,116,105, 144,117,110,105,120,58,115,121,115,116,101,109,0,1,0,2049,12450,10,12457,12490,
102,121,0,3841,12469,2049,2567,1793,12549,1,8,2049,9362,2,2049,2602,1793,12537,3,2049, 144,117,110,105,120,58,102,111,114,107,0,1,1,2049,12450,10,12477,12509,144,117,
3668,73,79,32,68,69,86,73,67,69,32,84,89,80,69,32,48,48,48,56, 110,105,120,58,101,120,101,99,48,0,1,2,2049,12450,10,12495,12528,144,117,110,
32,78,79,84,32,70,79,85,78,68,0,1,12500,2049,9455,2049,9418,10,1,12497, 105,120,58,101,120,101,99,49,0,1,3,2049,12450,10,12514,12547,144,117,110,105,
1793,12544,4097,12469,10,1,12541,2049,64,10,1,12488,9,10,12312,12572,144,105,111,58, 120,58,101,120,101,99,50,0,1,4,2049,12450,10,12533,12566,144,117,110,105,120,
117,110,105,120,45,115,121,115,99,97,108,108,0,2049,12482,3841,12469,2049,9336,10, 58,101,120,101,99,51,0,1,5,2049,12450,10,12552,12584,144,117,110,105,120,58,
12553,12594,144,117,110,105,120,58,115,121,115,116,101,109,0,1,0,2049,12572,10, 101,120,105,116,0,1,6,2049,12450,10,12571,12604,144,117,110,105,120,58,103,101,
12579,12612,144,117,110,105,120,58,102,111,114,107,0,1,1,2049,12572,10,12599,12631, 116,112,105,100,0,1,7,2049,12450,10,12589,12622,144,117,110,105,120,58,119,97,
144,117,110,105,120,58,101,120,101,99,48,0,1,2,2049,12572,10,12617,12650,144, 105,116,0,1,8,2049,12450,10,12609,12640,144,117,110,105,120,58,107,105,108,108,
117,110,105,120,58,101,120,101,99,49,0,1,3,2049,12572,10,12636,12669,144,117, 0,1,9,2049,12450,10,12627,12659,144,117,110,105,120,58,112,111,112,101,110,0,
110,105,120,58,101,120,101,99,50,0,1,4,2049,12572,10,12655,12688,144,117,110, 1,10,2049,12450,10,12645,12679,144,117,110,105,120,58,112,99,108,111,115,101,0,
105,120,58,101,120,101,99,51,0,1,5,2049,12572,10,12674,12706,144,117,110,105, 1,11,2049,12450,10,12664,12698,144,117,110,105,120,58,99,104,100,105,114,0,1,
120,58,101,120,105,116,0,1,6,2049,12572,10,12693,12726,144,117,110,105,120,58, 13,2049,12450,10,12684,12718,144,117,110,105,120,58,103,101,116,101,110,118,0,1,
103,101,116,112,105,100,0,1,7,2049,12572,10,12711,12744,144,117,110,105,120,58, 14,2049,12450,10,12703,12738,144,117,110,105,120,58,112,117,116,101,110,118,0,1,
119,97,105,116,0,1,8,2049,12572,10,12731,12762,144,117,110,105,120,58,107,105, 15,2049,12450,10,12723,12757,144,117,110,105,120,58,115,108,101,101,112,0,1,16,
108,108,0,1,9,2049,12572,10,12749,12781,144,117,110,105,120,58,112,111,112,101, 2049,12450,10,12743,12778,144,117,110,105,120,58,103,101,116,45,99,119,100,0,2049,
110,0,1,10,2049,12572,10,12767,12801,144,117,110,105,120,58,112,99,108,111,115, 3668,112,119,100,0,1,12780,1,0,2049,12659,2,2049,10099,2049,5925,4,2049,12679,2049,
101,0,1,11,2049,12572,10,12786,12820,144,117,110,105,120,58,99,104,100,105,114, 3668,47,0,1,12800,2049,3874,10,12762,12834,144,117,110,105,120,58,99,111,117,110,
0,1,13,2049,12572,10,12806,12840,144,117,110,105,120,58,103,101,116,101,110,118, 116,45,102,105,108,101,115,45,105,110,45,99,119,100,0,2049,3668,108,115,32,
0,1,14,2049,12572,10,12825,12860,144,117,110,105,120,58,112,117,116,101,110,118, 45,49,32,124,32,119,99,32,45,108,0,1,12836,1,0,2049,12659,2,2049,10099,
0,1,15,2049,12572,10,12845,12879,144,117,110,105,120,58,115,108,101,101,112,0, 2049,5925,2049,218,4,2049,12679,10,12807,12889,144,117,110,105,120,58,102,111,114,45,
1,16,2049,12572,10,12865,12900,144,117,110,105,120,58,103,101,116,45,99,119,100, 101,97,99,104,45,102,105,108,101,0,2049,3668,108,115,32,45,49,32,45,112,
0,2049,3668,112,119,100,0,1,12902,1,0,2049,12781,2,2049,10221,2049,5925,4,2049, 0,1,12891,1,0,2049,12659,2049,12834,1793,12924,1793,12919,2049,10099,2049,3623,67502597,8,10,
12801,2049,3668,47,0,1,12922,2049,3874,10,12884,12956,144,117,110,105,120,58,99,111, 1,12912,2049,2116,10,1,12910,2049,2281,2049,12679,3,10,12867,12941,144,115,116,97,114,
117,110,116,45,102,105,108,101,115,45,105,110,45,99,119,100,0,2049,3668,108, 116,0,4,2049,3450,1,0,2049,12659,10,12932,12957,144,114,101,97,100,0,2,2049,
115,32,45,49,32,124,32,119,99,32,45,108,0,1,12958,1,0,2049,12781,2, 9737,2,2049,3358,2049,2567,10,12949,12976,144,102,105,110,105,115,104,0,2049,12679,2049,
2049,10221,2049,5925,2049,218,4,2049,12801,10,12929,13011,144,117,110,105,120,58,102,111, 3430,10,12867,13000,144,117,110,105,120,58,115,108,117,114,112,45,112,105,112,101,
114,45,101,97,99,104,45,102,105,108,101,0,2049,3668,108,115,32,45,49,32, 0,1793,13016,2049,12941,1793,13009,2049,12957,10,1,13006,2049,2256,2049,12976,10,1,13002,2049,
45,112,0,1,13013,1,0,2049,12781,2049,12956,1793,13046,1793,13041,2049,10221,2049,3623,67502597, 3474,10,12981,13027,131,105,111,0,0,13021,13040,144,105,100,101,110,116,105,102,121,
8,10,1,13034,2049,2116,10,1,13032,2049,2281,2049,12801,3,10,12989,13063,144,115,116, 0,3841,13027,2049,2567,1793,13107,1,10,2049,9240,2,2049,2602,1793,13095,3,2049,3668,73,
97,114,116,0,4,2049,3450,1,0,2049,12781,10,13054,13079,144,114,101,97,100,0, 79,32,68,69,86,73,67,69,32,84,89,80,69,32,48,48,49,48,32,78,
2,2049,9859,2,2049,3358,2049,2567,10,13071,13098,144,102,105,110,105,115,104,0,2049, 79,84,32,70,79,85,78,68,0,1,13058,2049,9333,2049,9296,10,1,13055,1793,13102,
12801,2049,3430,10,12989,13122,144,117,110,105,120,58,115,108,117,114,112,45,112,105, 4097,13027,10,1,13099,2049,64,10,1,13046,9,10,12981,13131,144,105,111,58,114,110,
112,101,0,1793,13138,2049,13063,1793,13131,2049,13079,10,1,13128,2049,2256,2049,13098,10,1, 103,45,111,112,101,114,97,116,105,111,110,0,2049,13040,3841,13027,2049,9214,10,13111,
13124,2049,3474,10,13103,13149,131,105,111,0,0,13143,13162,144,105,100,101,110,116,105, 13150,144,110,58,114,97,110,100,111,109,0,2049,13131,10,13138,13164,131,83,111,99,
102,121,0,3841,13149,2049,2567,1793,13229,1,10,2049,9362,2,2049,2602,1793,13217,3,2049, 107,101,116,115,0,0,13153,13177,144,105,100,101,110,116,105,102,121,0,3841,13164,
3668,73,79,32,68,69,86,73,67,69,32,84,89,80,69,32,48,48,49,48, 2049,2567,1793,13244,1,7,2049,9240,2,2049,2602,1793,13232,3,2049,3668,73,79,32,68,
32,78,79,84,32,70,79,85,78,68,0,1,13180,2049,9455,2049,9418,10,1,13177, 69,86,73,67,69,32,84,89,80,69,32,48,48,48,52,32,78,79,84,32,
1793,13224,4097,13149,10,1,13221,2049,64,10,1,13168,9,10,13103,13253,144,105,111,58, 70,79,85,78,68,0,1,13195,2049,9333,2049,9296,10,1,13192,1793,13239,4097,13164,10,
114,110,103,45,111,112,101,114,97,116,105,111,110,0,2049,13162,3841,13149,2049,9336, 1,13236,2049,64,10,1,13183,9,10,13138,13271,144,105,111,58,115,111,99,107,101,
10,13233,13272,144,110,58,114,97,110,100,111,109,0,2049,13253,10,13260,13286,131,83, 116,45,111,112,101,114,97,116,105,111,110,0,2049,13177,3841,13164,2049,9214,10,13248,
111,99,107,101,116,115,0,0,13275,13299,144,105,100,101,110,116,105,102,121,0, 13302,144,115,111,99,107,101,116,58,103,101,116,104,111,115,116,98,121,110,97,
3841,13286,2049,2567,1793,13366,1,7,2049,9362,2,2049,2602,1793,13354,3,2049,3668,73,79, 109,101,0,1,0,2049,13271,10,13278,13324,144,115,111,99,107,101,116,58,99,114,
32,68,69,86,73,67,69,32,84,89,80,69,32,48,48,48,52,32,78,79, 101,97,116,101,0,1,1,2049,13271,10,13307,13344,144,115,111,99,107,101,116,58,
84,32,70,79,85,78,68,0,1,13317,2049,9455,2049,9418,10,1,13314,1793,13361,4097, 98,105,110,100,0,1,2,2049,13271,10,13329,13366,144,115,111,99,107,101,116,58,
13286,10,1,13358,2049,64,10,1,13305,9,10,13260,13393,144,105,111,58,115,111,99, 108,105,115,116,101,110,0,1,3,2049,13271,10,13349,13388,144,115,111,99,107,101,
107,101,116,45,111,112,101,114,97,116,105,111,110,0,2049,13299,3841,13286,2049,9336, 116,58,97,99,99,101,112,116,0,1,4,2049,13271,10,13371,13411,144,115,111,99,
10,13370,13424,144,115,111,99,107,101,116,58,103,101,116,104,111,115,116,98,121, 107,101,116,58,99,111,110,110,101,99,116,0,1,5,2049,13271,10,13393,13431,144,
110,97,109,101,0,1,0,2049,13393,10,13400,13446,144,115,111,99,107,101,116,58, 115,111,99,107,101,116,58,115,101,110,100,0,1,6,2049,13271,10,13416,13451,144,
99,114,101,97,116,101,0,1,1,2049,13393,10,13429,13466,144,115,111,99,107,101, 115,111,99,107,101,116,58,114,101,99,118,0,1,8,2049,13271,10,13436,13472,144,
116,58,98,105,110,100,0,1,2,2049,13393,10,13451,13488,144,115,111,99,107,101, 115,111,99,107,101,116,58,99,108,111,115,101,0,1,10,2049,13271,10,13456,13497,
116,58,108,105,115,116,101,110,0,1,3,2049,13393,10,13471,13510,144,115,111,99, 144,115,111,99,107,101,116,58,99,111,110,102,105,103,117,114,101,0,1,11,
107,101,116,58,97,99,99,101,112,116,0,1,4,2049,13393,10,13493,13533,144,115, 2049,13271,10,13477,1024,131,84,73,66,0,13502,13523,144,105,109,97,103,101,58,115,
111,99,107,101,116,58,99,111,110,110,101,99,116,0,1,5,2049,13393,10,13515, 97,118,101,0,1,1000,2049,9240,2049,9214,10,13509,13542,131,75,101,121,98,111,97,
13553,144,115,111,99,107,101,116,58,115,101,110,100,0,1,6,2049,13393,10,13538, 114,100,0,0,13530,13555,144,105,100,101,110,116,105,102,121,0,3841,13542,2049,2567,
13573,144,115,111,99,107,101,116,58,114,101,99,118,0,1,8,2049,13393,10,13558, 1793,13622,1,1,2049,9240,2,2049,2602,1793,13610,3,2049,3668,73,79,32,68,69,86,
13594,144,115,111,99,107,101,116,58,99,108,111,115,101,0,1,10,2049,13393,10, 73,67,69,32,84,89,80,69,32,48,48,48,49,32,78,79,84,32,70,79,
13578,13619,144,115,111,99,107,101,116,58,99,111,110,102,105,103,117,114,101,0, 85,78,68,0,1,13573,2049,9333,2049,9296,10,1,13570,1793,13617,4097,13542,10,1,13614,
1,11,2049,13393,10,13599,1024,131,84,73,66,0,13624,13645,144,105,109,97,103,101, 2049,64,10,1,13561,9,10,13509,13635,144,99,58,103,101,116,0,2049,13555,3841,13542,
58,115,97,118,101,0,1,1000,2049,9362,2049,9336,10,13631,13664,131,75,101,121,98, 2049,9214,10,13626,13652,144,103,97,116,104,101,114,0,2,1793,13659,1,8,11,10,
111,97,114,100,0,0,13652,13677,144,105,100,101,110,116,105,102,121,0,3841,13664, 1,13655,1793,13667,1,127,11,10,1,13663,2049,2128,22,1,11,1,3358,2049,64,10,
2049,2567,1793,13744,1,1,2049,9362,2,2049,2602,1793,13732,3,2049,3668,73,79,32,68, 13642,13688,144,99,121,99,108,101,0,2049,13635,2049,2096,4,8,2049,2720,25,3,2049,
69,86,73,67,69,32,84,89,80,69,32,48,48,48,49,32,78,79,84,32, 13652,1,13688,7,10,13626,13719,144,112,97,114,115,101,45,117,110,116,105,108,0,
70,79,85,78,68,0,1,13695,2049,9455,2049,9418,10,1,13692,1793,13739,4097,13664,10, 1793,13731,2049,3649,2049,3450,2049,13688,771,2049,3324,10,1,13721,2049,3474,10,13704,13745,144,
1,13736,2049,64,10,1,13683,9,10,13631,13757,144,99,58,103,101,116,0,2049,13677, 115,58,103,101,116,0,1793,13767,1793,13753,1,10,11,10,1,13749,1793,13761,1,13,
3841,13664,2049,9336,10,13748,13774,144,103,97,116,104,101,114,0,2,1793,13781,1,8, 11,10,1,13757,2049,2128,22,10,1,13747,2049,13719,10,13736,13786,144,115,58,103,101,
11,10,1,13777,1793,13789,1,127,11,10,1,13785,2049,2128,22,1,11,1,3358,2049, 116,45,119,111,114,100,0,1,5517,2049,13719,10,13772,13804,131,83,99,114,105,112,
64,10,13764,13810,144,99,121,99,108,101,0,2049,13757,2049,2096,4,8,2049,2720,25, 116,105,110,103,0,7,13791,13817,144,105,100,101,110,116,105,102,121,0,3841,13804,
3,2049,13774,1,13810,7,10,13748,13841,144,112,97,114,115,101,45,117,110,116,105, 2049,2567,1793,13884,1,9,2049,9240,2,2049,2602,1793,13872,3,2049,3668,73,79,32,68,
108,0,1793,13853,2049,3649,2049,3450,2049,13810,771,2049,3324,10,1,13843,2049,3474,10,13826, 69,86,73,67,69,32,84,89,80,69,32,48,48,48,57,32,78,79,84,32,
13867,144,115,58,103,101,116,0,1793,13889,1793,13875,1,10,11,10,1,13871,1793,13883, 70,79,85,78,68,0,1,13835,2049,9333,2049,9296,10,1,13832,1793,13879,4097,13804,10,
1,13,11,10,1,13879,2049,2128,22,10,1,13869,2049,13841,10,13858,13908,144,115,58, 1,13876,2049,64,10,1,13823,9,10,13772,13900,144,115,121,115,58,97,114,103,99,
103,101,116,45,119,111,114,100,0,1,5517,2049,13841,10,13894,13926,131,83,99,114, 0,2049,13817,1,0,3841,13804,2049,9214,10,13888,13921,144,115,121,115,58,97,114,103,
105,112,116,105,110,103,0,7,13913,13939,144,105,100,101,110,116,105,102,121,0, 118,0,2049,3649,4,2049,13817,1,1,3841,13804,2049,9214,10,13909,13944,144,105,110,99,
3841,13926,2049,2567,1793,14006,1,9,2049,9362,2,2049,2602,1793,13994,3,2049,3668,73,79, 108,117,100,101,0,2049,13817,1,2,3841,13804,2049,9214,10,13933,13965,144,115,121,115,
32,68,69,86,73,67,69,32,84,89,80,69,32,48,48,48,57,32,78,79, 58,110,97,109,101,0,2049,3649,2049,13817,1,3,3841,13804,2049,9214,10,13953,13985,144,
84,32,70,79,85,78,68,0,1,13957,2049,9455,2049,9418,10,1,13954,1793,14001,4097, 99,108,101,97,114,0,1,27,2049,9283,2049,3668,91,50,74,0,1,13991,2049,9333,
13926,10,1,13998,2049,64,10,1,13945,9,10,13894,14022,144,115,121,115,58,97,114, 1,27,2049,9283,2049,3668,91,48,59,48,72,0,1,14005,2049,9333,10,13976,14026,131,
103,99,0,2049,13939,1,0,3841,13926,2049,9336,10,14010,14043,144,115,121,115,58,97, 78,111,69,99,104,111,0,0,14016,14034,144,98,121,101,0,1,0,2049,12584,10,
114,103,118,0,2049,3649,4,2049,13939,1,1,3841,13926,2049,9336,10,14031,14066,144,105, 14027,14050,144,118,101,114,115,105,111,110,0,3841,4,1,100,20,10,14039,14065,144,
110,99,108,117,100,101,0,2049,13939,1,2,3841,13926,2049,9336,10,14055,14087,144,115, 100,111,110,101,63,0,1793,14071,1,13,11,10,1,14067,1793,14079,1,10,11,10,
121,115,58,110,97,109,101,0,2049,3649,2049,13939,1,3,3841,13926,2049,9336,10,14075, 1,14075,1793,14087,1,32,11,10,1,14083,2049,2165,22,22,10,14056,14104,144,118,97,
14107,144,99,108,101,97,114,0,1,27,2049,9405,2049,3668,91,50,74,0,1,14113, 108,105,100,63,0,2,2049,79,2049,2649,10,14094,14123,144,99,104,101,99,107,45,
2049,9455,1,27,2049,9405,2049,3668,91,48,59,48,72,0,1,14127,2049,9455,10,14098, 101,111,102,0,2,1793,14130,1,-1,11,10,1,14126,1793,14138,1,4,11,10,1,
14148,131,78,111,69,99,104,111,0,0,14138,14156,144,98,121,101,0,1,0,2049, 14134,2049,2128,22,1,14034,9,10,14110,14153,144,98,115,0,2049,3382,2049,3382,771,10,
12706,10,14149,14172,144,118,101,114,115,105,111,110,0,3841,4,1,100,20,10,14161, 14147,14171,144,99,104,101,99,107,45,98,115,0,2,1793,14178,1,8,11,10,1,
14187,144,100,111,110,101,63,0,1793,14193,1,13,11,10,1,14189,1793,14201,1,10, 14174,1793,14186,1,127,11,10,1,14182,2049,2128,22,1,14153,9,10,14159,14204,144,99,
11,10,1,14197,1793,14209,1,32,11,10,1,14205,2049,2165,22,22,10,14178,14226,144, 104,101,99,107,0,2049,14123,2049,14171,10,14195,14222,144,99,104,97,114,97,99,116,
118,97,108,105,100,63,0,2,2049,79,2049,2649,10,14216,14245,144,99,104,101,99, 101,114,0,2049,13635,2,2049,3358,10,14209,14238,144,98,117,102,102,101,114,0,1793,
107,45,101,111,102,0,2,1793,14252,1,-1,11,10,1,14248,1793,14260,1,4,11, 14248,1,1024,2049,3450,8,2049,3324,10,1,14240,2049,3474,10,14228,14267,144,114,101,97,
10,1,14256,2049,2128,22,1,14156,9,10,14232,14275,144,98,115,0,2049,3382,2049,3382, 100,45,116,111,107,101,110,0,1793,14283,1793,14278,2049,14222,2049,14204,2049,14065,10,1,
771,10,14269,14293,144,99,104,101,99,107,45,98,115,0,2,1793,14300,1,8,11, 14271,2049,2256,10,1,14269,2049,14238,2049,3746,10,14253,14299,144,105,110,112,117,116,0,
10,1,14296,1793,14308,1,127,11,10,1,14304,2049,2128,22,1,14275,9,10,14281,14326, 2049,14267,2049,14104,10,14290,14315,144,112,114,111,99,101,115,115,0,1,363,1,11,
144,99,104,101,99,107,0,2049,14245,2049,14293,10,14317,14344,144,99,104,97,114,97, 2049,64,10,14027,14332,144,98,97,110,110,101,114,0,2049,14050,2049,3668,82,69,84,
99,116,101,114,0,2049,13757,2,2049,3358,10,14331,14360,144,98,117,102,102,101,114, 82,79,32,49,50,32,40,37,110,46,37,110,41,92,110,0,1,14336,2049,6576,
0,1793,14370,1,1024,2049,3450,8,2049,3324,10,1,14362,2049,3474,10,14350,14389,144,114, 2049,9333,2049,1543,2049,1877,18,2049,1877,2049,1543,2049,3668,37,110,32,77,97,120,44,
101,97,100,45,116,111,107,101,110,0,1793,14405,1793,14400,2049,14344,2049,14326,2049,14187, 32,37,110,32,85,115,101,100,44,32,37,110,32,70,114,101,101,92,110,0,
10,1,14393,2049,2256,10,1,14391,2049,14360,2049,3746,10,14375,14421,144,105,110,112,117, 1,14372,2049,6576,2049,9333,10,14322,14416,144,108,105,115,116,101,110,0,3841,14026,1793,
116,0,2049,14389,2049,14226,10,14412,14437,144,112,114,111,99,101,115,115,0,1,363, 14423,2049,14332,10,1,14420,2049,70,2049,14299,2049,14315,1,14427,7,10,14406,14444,131,67,
1,11,2049,64,10,14149,14454,144,98,97,110,110,101,114,0,2049,14172,2049,3668,82, 108,111,99,107,0,0,14435,14457,144,105,100,101,110,116,105,102,121,0,3841,14444,
69,84,82,79,32,49,50,32,40,37,110,46,37,110,41,92,110,0,1,14458, 2049,2567,1793,14524,1,5,2049,9240,2,2049,2602,1793,14512,3,2049,3668,73,79,32,68,
2049,6576,2049,9455,2049,1543,2049,1877,18,2049,1877,2049,1543,2049,3668,37,110,32,77,97, 69,86,73,67,69,32,84,89,80,69,32,48,48,48,53,32,78,79,84,32,
120,44,32,37,110,32,85,115,101,100,44,32,37,110,32,70,114,101,101,92, 70,79,85,78,68,0,1,14475,2049,9333,2049,9296,10,1,14472,1793,14519,4097,14444,10,
110,0,1,14494,2049,6576,2049,9455,10,14444,14538,144,108,105,115,116,101,110,0,3841, 1,14516,2049,64,10,1,14463,9,10,14406,14550,144,105,111,58,99,108,111,99,107,
14148,1793,14545,2049,14454,10,1,14542,2049,70,2049,14421,2049,14437,1,14549,7,10,14528,14566, 45,111,112,101,114,97,116,105,111,110,0,2049,14457,3841,14444,2049,9214,10,14528,14576,
131,67,108,111,99,107,0,0,14557,14579,144,105,100,101,110,116,105,102,121,0, 144,99,108,111,99,107,58,116,105,109,101,115,116,97,109,112,0,1,0,2049,
3841,14566,2049,2567,1793,14646,1,5,2049,9362,2,2049,2602,1793,14634,3,2049,3668,73,79, 14550,10,14557,14594,144,99,108,111,99,107,58,100,97,121,0,1,1,2049,14550,10,
32,68,69,86,73,67,69,32,84,89,80,69,32,48,48,48,53,32,78,79, 14581,14614,144,99,108,111,99,107,58,109,111,110,116,104,0,1,2,2049,14550,10,
84,32,70,79,85,78,68,0,1,14597,2049,9455,2049,9418,10,1,14594,1793,14641,4097, 14599,14633,144,99,108,111,99,107,58,121,101,97,114,0,1,3,2049,14550,10,14619,
14566,10,1,14638,2049,64,10,1,14585,9,10,14528,14672,144,105,111,58,99,108,111, 14652,144,99,108,111,99,107,58,104,111,117,114,0,1,4,2049,14550,10,14638,14673,
99,107,45,111,112,101,114,97,116,105,111,110,0,2049,14579,3841,14566,2049,9336,10, 144,99,108,111,99,107,58,109,105,110,117,116,101,0,1,5,2049,14550,10,14657,
14650,14698,144,99,108,111,99,107,58,116,105,109,101,115,116,97,109,112,0,1, 14694,144,99,108,111,99,107,58,115,101,99,111,110,100,0,1,6,2049,14550,10,
0,2049,14672,10,14679,14716,144,99,108,111,99,107,58,100,97,121,0,1,1,2049, 14678,14716,144,99,108,111,99,107,58,117,116,99,58,100,97,121,0,1,7,2049,
14672,10,14703,14736,144,99,108,111,99,107,58,109,111,110,116,104,0,1,2,2049, 14550,10,14699,14740,144,99,108,111,99,107,58,117,116,99,58,109,111,110,116,104,
14672,10,14721,14755,144,99,108,111,99,107,58,121,101,97,114,0,1,3,2049,14672, 0,1,8,2049,14550,10,14721,14763,144,99,108,111,99,107,58,117,116,99,58,121,
10,14741,14774,144,99,108,111,99,107,58,104,111,117,114,0,1,4,2049,14672,10, 101,97,114,0,1,9,2049,14550,10,14745,14786,144,99,108,111,99,107,58,117,116,
14760,14795,144,99,108,111,99,107,58,109,105,110,117,116,101,0,1,5,2049,14672, 99,58,104,111,117,114,0,1,10,2049,14550,10,14768,14811,144,99,108,111,99,107,
10,14779,14816,144,99,108,111,99,107,58,115,101,99,111,110,100,0,1,6,2049, 58,117,116,99,58,109,105,110,117,116,101,0,1,11,2049,14550,10,14791,14836,144,
14672,10,14800,14838,144,99,108,111,99,107,58,117,116,99,58,100,97,121,0,1, 99,108,111,99,107,58,117,116,99,58,115,101,99,111,110,100,0,1,12,2049,
7,2049,14672,10,14821,14862,144,99,108,111,99,107,58,117,116,99,58,109,111,110, 14550,10,14816,14852,144,100,58,119,111,114,100,115,0,1793,14861,2049,162,2049,9333,2049,
116,104,0,1,8,2049,14672,10,14843,14885,144,99,108,111,99,107,58,117,116,99, 9307,10,1,14854,2049,6808,10,14841,14882,144,100,58,119,111,114,100,115,45,119,105,
58,121,101,97,114,0,1,9,2049,14672,10,14867,14908,144,99,108,111,99,107,58, 116,104,0,2049,1877,2049,4563,1793,14913,2049,162,2,2049,1877,2049,4187,1793,14902,2049,9333,
117,116,99,58,104,111,117,114,0,1,10,2049,14672,10,14890,14933,144,99,108,111, 2049,9307,10,1,14897,1793,14908,3,10,1,14906,2049,64,10,1,14888,2049,6808,10,14866,
99,107,58,117,116,99,58,109,105,110,117,116,101,0,1,11,2049,14672,10,14913, 14937,144,100,105,115,112,108,97,121,45,105,102,45,108,101,102,116,0,2,2049,
14958,144,99,108,111,99,107,58,117,116,99,58,115,101,99,111,110,100,0,1, 1877,2049,4487,1793,14949,2049,9333,2049,9307,10,1,14944,1793,14955,3,10,1,14953,2049,64,
12,2049,14672,10,14938,14974,144,100,58,119,111,114,100,115,0,1793,14983,2049,162,2049, 10,14866,14986,144,100,58,119,111,114,100,115,45,98,101,103,105,110,110,105,110,
9455,2049,9429,10,1,14976,2049,6808,10,14963,15004,144,100,58,119,111,114,100,115,45, 103,45,119,105,116,104,0,2049,1877,2049,4563,1793,14997,2049,162,2049,14937,10,1,14992,
119,105,116,104,0,2049,1877,2049,4563,1793,15035,2049,162,2,2049,1877,2049,4187,1793,15024, 2049,6808,10,0 };
2049,9455,2049,9429,10,1,15019,1793,15030,3,10,1,15028,2049,64,10,1,15010,2049,6808,
10,14988,15059,144,100,105,115,112,108,97,121,45,105,102,45,108,101,102,116,0,
2,2049,1877,2049,4487,1793,15071,2049,9455,2049,9429,10,1,15066,1793,15077,3,10,1,15075,
2049,64,10,14988,15108,144,100,58,119,111,114,100,115,45,98,101,103,105,110,110,
105,110,103,45,119,105,116,104,0,2049,1877,2049,4563,1793,15119,2049,162,2049,15059,10,
1,15114,2049,6808,10,0 };