From 5761eaff14c84e53b00ea5948bdd13e620b9c79c Mon Sep 17 00:00:00 2001 From: crc <> Date: Thu, 15 Sep 2022 10:55:54 +0000 Subject: [PATCH] begin working on adding actual block storage device FossilOrigin-Name: 3b0ba44bac95ae57bee881409871055ae71b21bb42ce5322bf8c37c186397f97 --- Makefile | 1 + vm/nga-c-native-x86/image.c | 780 ++++++++++++++++++------------------ vm/nga-c/retro.c | 35 ++ 3 files changed, 426 insertions(+), 390 deletions(-) diff --git a/Makefile b/Makefile index ae136d6..99ac747 100644 --- a/Makefile +++ b/Makefile @@ -50,6 +50,7 @@ ENABLED += -DENABLE_MULTICORE ENABLED += -DENABLE_FFI ENABLED += -DENABLE_UNSIGNED ENABLED += -DENABLE_MALLOC +ENABLED += -DENABLE_BLOCKS DEVICES ?= DEVICES += interface/floatingpoint.retro diff --git a/vm/nga-c-native-x86/image.c b/vm/nga-c-native-x86/image.c index 220401b..a1a9a3e 100644 --- a/vm/nga-c-native-x86/image.c +++ b/vm/nga-c-native-x86/image.c @@ -11,7 +11,7 @@ #endif #endif CELL ngaImageCells = 15862; -CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,10,2,10,3,10, +CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,11116,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,3250,3259,268505089,65,64,285281281,0,65,2063,10,101384453,0,9,10,68485378, @@ -36,43 +36,43 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 11948,10302,13340,9700,13455,12753,10500,10670,12654,13320,11960,13908,10088,10605,11865,11025,0,2049,236,987393, 1,1793,130,524546,493,2049,491,2049,491,17891588,2,493,8,17045505,-24,-16,17043736,-8,1118488,1793, 130,17043202,1,169021201,2049,58,25,33883396,101450758,6404,459011,483,34668804,2,2049,480,524545,425,483,302056196, - 425,659969,1,114,101,116,114,111,46,109,117,114,105,0,0,15,174,502,0,100, - 117,112,0,513,17,174,502,0,100,114,111,112,0,522,19,174,502,0,115,119, - 97,112,0,532,27,174,502,0,99,97,108,108,0,542,29,174,502,0,101,113, - 63,0,552,31,174,502,0,45,101,113,63,0,561,33,174,502,0,108,116,63, - 0,571,35,174,502,0,103,116,63,0,580,37,174,502,0,102,101,116,99,104, - 0,589,39,174,502,0,115,116,111,114,101,0,600,41,174,502,0,43,0,611, - 43,174,502,0,45,0,618,45,174,502,0,42,0,625,47,174,502,0,47,109, - 111,100,0,632,49,174,502,0,97,110,100,0,642,51,174,502,0,111,114,0, - 651,53,174,502,0,120,111,114,0,659,55,174,502,0,115,104,105,102,116,0, - 668,381,180,502,0,112,117,115,104,0,679,384,180,502,0,112,111,112,0,689, - 378,180,502,0,48,59,0,698,58,168,502,0,102,101,116,99,104,45,110,101, - 120,116,0,706,61,168,502,0,115,116,111,114,101,45,110,101,120,116,0,722, - 264,168,502,0,115,58,116,111,45,110,117,109,98,101,114,0,738,118,168,502, - 0,115,58,101,113,63,0,755,104,168,502,0,115,58,108,101,110,103,116,104, - 0,766,66,168,502,0,99,104,111,111,115,101,0,780,76,174,502,0,105,102, - 0,792,74,168,502,0,45,105,102,0,800,303,180,502,0,115,105,103,105,108, - 58,40,0,809,149,156,502,0,67,111,109,112,105,108,101,114,0,822,3,156, - 502,0,72,101,97,112,0,836,130,168,502,0,44,0,846,144,168,502,0,115, - 44,0,853,150,180,502,0,59,0,861,337,180,502,0,91,0,868,353,180,502, - 0,93,0,875,2,156,502,0,68,105,99,116,105,111,110,97,114,121,0,882, - 181,168,502,0,100,58,108,105,110,107,0,898,182,168,502,0,100,58,120,116, - 0,910,184,168,502,0,100,58,99,108,97,115,115,0,920,190,168,502,0,100, - 58,110,97,109,101,0,933,168,168,502,0,99,108,97,115,115,58,119,111,114, - 100,0,945,180,168,502,0,99,108,97,115,115,58,109,97,99,114,111,0,961, - 156,168,502,0,99,108,97,115,115,58,100,97,116,97,0,978,192,168,502,0, - 100,58,97,100,100,45,104,101,97,100,101,114,0,994,304,180,502,0,115,105, - 103,105,108,58,35,0,1012,310,180,502,0,115,105,103,105,108,58,58,0,1025, - 329,180,502,0,115,105,103,105,108,58,38,0,1038,308,180,502,0,115,105,103, - 105,108,58,36,0,1051,368,180,502,0,114,101,112,101,97,116,0,1064,370,180, - 502,0,97,103,97,105,110,0,1076,415,168,502,0,105,110,116,101,114,112,114, - 101,116,0,1087,236,168,502,0,100,58,108,111,111,107,117,112,0,1102,174,168, - 502,0,99,108,97,115,115,58,112,114,105,109,105,116,105,118,101,0,1116,4, - 156,502,0,86,101,114,115,105,111,110,0,1137,462,168,502,0,105,0,1150,130, - 168,502,0,100,0,1157,456,168,502,0,114,0,1164,241,156,502,0,66,97,115, - 101,0,1171,92,168,502,0,112,97,99,107,0,1181,78,168,502,0,117,110,112, - 97,99,107,0,1191,186,168,502,0,100,58,115,111,117,114,99,101,0,1203,188, - 168,502,0,100,58,104,97,115,104,0,1217,387,168,502,0,101,114,114,58,110, + 425,659969,1,114,101,116,114,111,46,109,117,114,105,0,0,15,174,502,193489870,100, + 117,112,0,513,17,174,502,6385162522,100,114,111,112,0,522,19,174,502,6385706560,115,119, + 97,112,0,532,27,174,502,6385107969,99,97,108,108,0,542,29,174,502,193490778,101,113, + 63,0,552,31,174,502,6383171847,45,101,113,63,0,561,33,174,502,193498500,108,116,63, + 0,571,35,174,502,193493055,103,116,63,0,580,37,174,502,210712273007,102,101,116,99,104, + 0,589,39,174,502,210728224082,115,116,111,114,101,0,600,41,174,502,177616,43,0,611, + 43,174,502,177618,45,0,618,45,174,502,177615,42,0,625,47,174,502,6383252404,47,109, + 111,100,0,632,49,174,502,193486360,97,110,100,0,642,51,174,502,5863686,111,114,0, + 651,53,174,502,193511454,120,111,114,0,659,55,174,502,210727785923,115,104,105,102,116,0, + 668,381,180,502,6385597157,112,117,115,104,0,679,384,180,502,193502740,112,111,112,0,689, + 378,180,502,5861552,48,59,0,698,58,168,502,8246307614109670331,102,101,116,99,104,45,110,101, + 120,116,0,706,61,168,502,8246931865698567806,115,116,111,114,101,45,110,101,120,116,0,722, + 264,168,502,-4555094569267928757,115,58,116,111,45,110,117,109,98,101,114,0,738,118,168,502, + 210726128775,115,58,101,113,63,0,755,104,168,502,7572865151309012,115,58,108,101,110,103,116,104, + 0,766,66,168,502,6953390994662,99,104,111,111,115,101,0,780,76,174,502,5863476,105,102, + 0,792,74,168,502,193429569,45,105,102,0,800,303,180,502,229482595734751,115,105,103,105,108, + 58,40,0,809,149,156,502,7570887965854272,67,111,109,112,105,108,101,114,0,822,3,156, + 502,6384141667,72,101,97,112,0,836,130,168,502,177617,44,0,846,144,168,502,5863748,115, + 44,0,853,150,180,502,177632,59,0,861,337,180,502,177664,91,0,868,353,180,502, + 177666,93,0,875,2,156,502,8244734546833303387,68,105,99,116,105,111,110,97,114,121,0,882, + 181,168,502,6953375463185,100,58,108,105,110,107,0,898,182,168,502,6385101839,100,58,120,116, + 0,910,184,168,502,229461379705849,100,58,99,108,97,115,115,0,920,190,168,502,6953375526308,100, + 58,110,97,109,101,0,933,168,168,502,8246177435876103505,99,108,97,115,115,58,119,111,114, + 100,0,945,180,168,502,-4577305721744236665,99,108,97,115,115,58,109,97,99,114,111,0,961, + 156,168,502,8246177435875405519,99,108,97,115,115,58,100,97,116,97,0,978,192,168,502,-3503194823018915134, + 100,58,97,100,100,45,104,101,97,100,101,114,0,994,304,180,502,229482595734746,115,105, + 103,105,108,58,35,0,1012,310,180,502,229482595734769,115,105,103,105,108,58,58,0,1025, + 329,180,502,229482595734749,115,105,103,105,108,58,38,0,1038,308,180,502,229482595734747,115,105,103, + 105,108,58,36,0,1051,368,180,502,6953974492262,114,101,112,101,97,116,0,1064,370,180, + 502,210706394789,97,103,97,105,110,0,1076,415,168,502,249892712402858498,105,110,116,101,114,112,114, + 101,116,0,1087,236,168,502,7572225886563901,100,58,108,111,111,107,117,112,0,1102,174,168, + 502,399738814153734542,99,108,97,115,115,58,112,114,105,109,105,116,105,118,101,0,1116,4, + 156,502,229445000025131,86,101,114,115,105,111,110,0,1137,462,168,502,177678,105,0,1150,130, + 168,502,177673,100,0,1157,456,168,502,177687,114,0,1164,241,156,502,6383922272,66,97,115, + 101,0,1171,92,168,502,6385574852,112,97,99,107,0,1181,78,168,502,6954102567431,117,110,112, + 97,99,107,0,1191,186,168,502,7572226160734292,100,58,115,111,117,114,99,101,0,1203,188, + 168,502,6953375310887,100,58,104,97,115,104,0,1217,387,168,502,-3366153855364863819,101,114,114,58,110, 111,116,102,111,117,110,100,0,125,125,0,45,104,111,111,107,0,111,117,110, 100,0,100,0,72,0,83,0,45,45,45,45,0,70,79,85,78,68,0,125, 126,0,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89, @@ -88,91 +88,91 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1229,1545,168, - 0,0,69,79,77,0,1,-3,15,10,1536,1560,168,0,0,100,101,112,116,104, - 0,1,-1,15,10,1549,1576,168,0,0,100,58,108,97,115,116,0,1,2,15, - 10,1564,1595,168,0,0,100,58,108,97,115,116,46,120,116,0,2049,1576,2049,182, - 15,10,1580,1619,168,0,0,100,58,108,97,115,116,46,99,108,97,115,115,0, - 2049,1576,2049,184,15,10,1601,1642,168,0,0,100,58,108,97,115,116,46,110,97, - 109,101,0,2049,1576,2049,190,10,1625,1660,168,0,0,114,101,99,108,97,115,115, - 0,2049,1576,2049,184,16,10,1647,1681,168,0,0,105,109,109,101,100,105,97,116, - 101,0,1,180,2049,1660,10,1666,1696,168,0,0,100,97,116,97,0,1,156,2049, - 1660,10,1686,1716,168,0,0,112,114,105,109,105,116,105,118,101,0,1,174,2049, - 1660,10,1701,1731,180,0,0,104,111,111,107,0,1,1793,2049,130,1,3,15,1, - 1,17,2049,130,10,1721,1758,168,0,0,115,101,116,45,104,111,111,107,0,1, - 1,17,16,10,1744,1775,168,0,0,117,110,104,111,111,107,0,1,1,17,2, - 1,1,17,4,16,10,1763,1792,180,0,0,40,0,10,1785,1800,180,0,0,41, - 0,10,1793,1818,168,0,0,99,111,109,112,105,108,101,58,108,105,116,0,1, - 1,2049,130,2049,130,10,1801,1843,168,0,0,99,111,109,112,105,108,101,58,106, - 117,109,112,0,1,1793,2049,130,2049,130,10,1825,1868,168,0,0,99,111,109,112, + 0,193454822,69,79,77,0,1,-3,15,10,1536,1560,168,0,210709897370,100,101,112,116,104, + 0,1,-1,15,10,1549,1576,168,0,6953375454647,100,58,108,97,115,116,0,1,2,15, + 10,1564,1595,168,0,249883453713703409,100,58,108,97,115,116,46,120,116,0,2049,1576,2049,182, + 15,10,1580,1619,168,0,-3502687787217310053,100,58,108,97,115,116,46,99,108,97,115,115,0, + 2049,1576,2049,184,15,10,1601,1642,168,0,-4578080011420638202,100,58,108,97,115,116,46,110,97, + 109,101,0,2049,1576,2049,190,10,1625,1660,168,0,229481143079314,114,101,99,108,97,115,115, + 0,2049,1576,2049,184,16,10,1647,1681,168,0,249892660727267252,105,109,109,101,100,105,97,116, + 101,0,1,180,2049,1660,10,1666,1696,168,0,6385144159,100,97,116,97,0,1,156,2049, + 1660,10,1686,1716,168,0,249902713833354782,112,114,105,109,105,116,105,118,101,0,1,174,2049, + 1660,10,1701,1731,180,0,6385302998,104,111,111,107,0,1,1793,2049,130,1,3,15,1, + 1,17,2049,130,10,1721,1758,168,0,7572920930896175,115,101,116,45,104,111,111,107,0,1, + 1,17,16,10,1744,1775,168,0,6954102295577,117,110,104,111,111,107,0,1,1,17,2, + 1,1,17,4,16,10,1763,1792,180,0,177613,40,0,10,1785,1800,180,0,177614,41, + 0,10,1793,1818,168,0,-4577149749211730287,99,111,109,112,105,108,101,58,108,105,116,0,1, + 1,2049,130,2049,130,10,1801,1843,168,0,-3471989134310745468,99,111,109,112,105,108,101,58,106, + 117,109,112,0,1,1793,2049,130,2049,130,10,1825,1868,168,0,-3471989134311018844,99,111,109,112, 105,108,101,58,99,97,108,108,0,1,2049,2049,130,2049,130,10,1850,1892,168,0, - 0,99,111,109,112,105,108,101,58,114,101,116,0,1,10,2049,130,10,1875,1913, - 168,0,0,99,111,109,112,105,108,105,110,103,63,0,1,149,15,10,1897,1930, - 180,0,0,115,105,103,105,108,58,96,0,2049,264,2049,130,10,1917,1948,180,0, - 0,115,105,103,105,108,58,92,0,2049,462,10,1935,1964,180,0,0,115,105,103, - 105,108,58,94,0,2049,456,10,1951,1977,168,0,0,104,101,114,101,0,1,3, - 15,10,1967,1994,180,0,0,115,105,103,105,108,58,64,0,2049,236,2049,182,15, + -4577149749211723885,99,111,109,112,105,108,101,58,114,101,116,0,1,10,2049,130,10,1875,1913, + 168,0,8246182162316307558,99,111,109,112,105,108,105,110,103,63,0,1,149,15,10,1897,1930, + 180,0,229482595734807,115,105,103,105,108,58,96,0,2049,264,2049,130,10,1917,1948,180,0, + 229482595734803,115,105,103,105,108,58,92,0,2049,462,10,1935,1964,180,0,229482595734805,115,105,103, + 105,108,58,94,0,2049,456,10,1951,1977,168,0,6385292201,104,101,114,101,0,1,3, + 15,10,1967,1994,180,0,229482595734775,115,105,103,105,108,58,64,0,2049,236,2049,182,15, 2049,1913,1793,2010,1,3841,2049,130,2049,130,10,1,2003,1793,2016,15,10,1,2014,2049, - 66,10,1981,2034,180,0,0,115,105,103,105,108,58,33,0,2049,236,2049,182,15, + 66,10,1981,2034,180,0,229482595734744,115,105,103,105,108,58,33,0,2049,236,2049,182,15, 2049,1913,1793,2050,1,4097,2049,130,2049,130,10,1,2043,1793,2056,16,10,1,2054,2049, - 66,10,2021,2075,168,0,0,100,58,99,114,101,97,116,101,0,1793,2077,1,156, - 1,0,2049,192,2049,1977,2049,1576,2049,182,16,10,2061,2102,168,0,0,118,97,114, - 45,110,0,2049,2075,2049,130,10,2091,2116,168,0,0,118,97,114,0,134284289,0,2102, - 10,2107,2131,168,0,0,99,111,110,115,116,0,2049,2075,2049,1576,2049,182,16,10, - 2120,2149,174,0,0,116,117,99,107,0,100926722,10,2139,2161,174,0,0,111,118,101, - 114,0,67502597,10,2151,2172,174,0,0,110,105,112,0,772,10,2163,2189,174,0,0, - 100,114,111,112,45,112,97,105,114,0,771,10,2174,2201,174,0,0,63,100,117, - 112,0,6402,10,2191,2217,168,0,0,100,117,112,45,112,97,105,114,0,67502597,67502597, - 10,2203,2229,168,0,0,100,105,112,0,525572,6,10,2220,2241,168,0,0,115,105, - 112,0,67502597,1,27,2049,2229,10,2232,2255,168,0,0,98,105,0,1,2241,2049,2229, - 8,10,2247,2270,168,0,0,98,105,42,0,1,2229,2049,2229,8,10,2261,2285,168, - 0,0,98,105,64,0,2,2049,2270,10,2276,2298,168,0,0,116,114,105,0,1793, - 2307,1,2241,2049,2229,2049,2241,10,1,2300,2049,2229,8,10,2289,2323,168,0,0,116, + 66,10,2021,2075,168,0,7572225537532823,100,58,99,114,101,97,116,101,0,1793,2077,1,156, + 1,0,2049,192,2049,1977,2049,1576,2049,182,16,10,2061,2102,168,0,210731100041,118,97,114, + 45,110,0,2049,2075,2049,130,10,2091,2116,168,0,193508814,118,97,114,0,134284289,0,2102, + 10,2107,2131,168,0,210709068620,99,111,110,115,116,0,2049,2075,2049,1576,2049,182,16,10, + 2120,2149,174,0,6385740380,116,117,99,107,0,100926722,10,2139,2161,174,0,6385561857,111,118,101, + 114,0,67502597,10,2151,2172,174,0,193500364,110,105,112,0,772,10,2163,2189,174,0,249885844724841747, + 100,114,111,112,45,112,97,105,114,0,771,10,2174,2201,174,0,6383817805,63,100,117, + 112,0,6402,10,2191,2217,168,0,7572302161469511,100,117,112,45,112,97,105,114,0,67502597,67502597, + 10,2203,2229,168,0,193489474,100,105,112,0,525572,6,10,2220,2241,168,0,193505809,115,105, + 112,0,67502597,1,27,2049,2229,10,2232,2255,168,0,5863248,98,105,0,1,2241,2049,2229, + 8,10,2247,2270,168,0,193487226,98,105,42,0,1,2229,2049,2229,8,10,2261,2285,168, + 0,193487248,98,105,64,0,2,2049,2270,10,2276,2298,168,0,193507188,116,114,105,0,1793, + 2307,1,2241,2049,2229,2049,2241,10,1,2300,2049,2229,8,10,2289,2323,168,0,6385737246,116, 114,105,42,0,1793,2340,1793,2333,4,1,2229,2049,2229,10,1,2327,2049,2229,2049,2229, - 10,1,2325,2049,2229,8,10,2313,2356,168,0,0,116,114,105,64,0,2,2,2049, - 2323,10,2346,2372,168,0,0,119,104,105,108,101,0,1793,2381,525570,1639430,3,1,2374, - 7,10,1,2374,8,3,10,2361,2397,168,0,0,117,110,116,105,108,0,1793,2408, - 525570,385942534,-1,25,3,1,2399,7,10,1,2399,8,3,10,2386,2426,168,0,0,102, + 10,1,2325,2049,2229,8,10,2313,2356,168,0,6385737268,116,114,105,64,0,2,2,2049, + 2323,10,2346,2372,168,0,210732529790,119,104,105,108,101,0,1793,2381,525570,1639430,3,1,2374, + 7,10,1,2374,8,3,10,2361,2397,168,0,210730385457,117,110,116,105,108,0,1793,2408, + 525570,385942534,-1,25,3,1,2399,7,10,1,2399,8,3,10,2386,2426,168,0,229466054377278,102, 111,114,101,118,101,114,0,1793,2430,8,10,1,2428,2049,2241,1,2426,7,10,2413, - 2449,168,0,0,116,105,109,101,115,0,1793,2461,4,25,33886721,1,2053,1542,1,2452, - 7,10,1,2451,8,3,10,2438,2479,180,0,0,115,105,103,105,108,58,124,0, + 2449,168,0,210729012103,116,105,109,101,115,0,1793,2461,4,25,33886721,1,2053,1542,1,2452, + 7,10,1,2451,8,3,10,2438,2479,180,0,229482595734835,115,105,103,105,108,58,124,0, 2049,236,1793,2487,2049,182,15,10,1,2483,1793,2495,2049,184,15,10,1,2491,2049,2255, 2049,1913,1793,2510,1,156,2049,2229,2049,1868,10,1,2503,1,27,2049,66,10,2466,2527, - 168,0,0,84,82,85,69,0,1,-1,10,2517,2541,168,0,0,70,65,76,83, - 69,0,1,0,10,2530,2554,168,0,0,99,97,115,101,0,1793,2559,67502597,11,10, + 168,0,6384551781,84,82,85,69,0,1,-1,10,2517,2541,168,0,210672985680,70,65,76,83, + 69,0,1,0,10,2530,2554,168,0,6385108193,99,97,115,101,0,1793,2559,67502597,11,10, 1,2556,2049,2229,4,1793,2571,772,8,2049,2527,10,1,2566,1793,2579,3,2049,2541,10, - 1,2575,2049,66,25,6,3,3,10,2544,2600,168,0,0,115,58,99,97,115,101, + 1,2575,2049,66,25,6,3,3,10,2544,2600,168,0,6953962162094,115,58,99,97,115,101, 0,1793,2606,67502597,2049,118,10,1,2602,2049,2229,4,1793,2618,772,8,2049,2527,10,1, 2613,1793,2626,3,2049,2541,10,1,2622,2049,66,25,6,3,3,10,2588,2644,168,0, - 0,110,111,116,0,1,-1,23,10,2635,2659,168,0,0,108,116,101,113,63,0, - 2049,2217,101516555,22,10,2648,2675,168,0,0,103,116,101,113,63,0,4,2049,2659,10, - 2664,2690,168,0,0,110,58,77,65,88,0,1,-5,15,10,2679,2705,168,0,0, - 110,58,77,73,78,0,1,-4,15,10,2694,2722,168,0,0,110,58,122,101,114, - 111,63,0,1,0,11,10,2709,2740,168,0,0,110,58,45,122,101,114,111,63, - 0,1,0,12,10,2726,2761,168,0,0,110,58,110,101,103,97,116,105,118,101, - 63,0,1,0,13,10,2744,2782,168,0,0,110,58,112,111,115,105,116,105,118, - 101,63,0,1,-1,14,10,2765,2812,168,0,0,110,58,115,116,114,105,99,116, + 193500566,110,111,116,0,1,-1,23,10,2635,2659,168,0,210719911674,108,116,101,113,63,0, + 2049,2217,101516555,22,10,2648,2675,168,0,210713982069,103,116,101,113,63,0,4,2049,2659,10, + 2664,2690,168,0,210720171475,110,58,77,65,88,0,1,-5,15,10,2679,2705,168,0,210720171729, + 110,58,77,73,78,0,1,-4,15,10,2694,2722,168,0,229474321428492,110,58,122,101,114, + 111,63,0,1,0,11,10,2709,2740,168,0,7572649618157049,110,58,45,122,101,114,111,63, + 0,1,0,12,10,2726,2761,168,0,-4562761254435316065,110,58,110,101,103,97,116,105,118,101, + 63,0,1,0,13,10,2744,2782,168,0,-4562757999622951041,110,58,112,111,115,105,116,105,118, + 101,63,0,1,-1,14,10,2765,2812,168,0,-1420858746182909718,110,58,115,116,114,105,99,116, 108,121,45,112,111,115,105,116,105,118,101,63,0,1,0,14,10,2786,2829,168, - 0,0,110,58,101,118,101,110,63,0,1,2,20,3,2049,2722,10,2816,2848,168, - 0,0,110,58,111,100,100,63,0,2049,2829,2049,2644,10,2836,2862,168,0,0,105, - 102,59,0,67502597,1,76,2049,2229,25,6,771,10,2853,2881,168,0,0,45,105,102, - 59,0,67502597,1,74,2049,2229,2049,2644,25,6,771,10,2871,2901,174,0,0,114,111, - 116,0,67503109,10,2892,2910,174,0,0,47,0,197652,10,2903,2921,174,0,0,109,111, - 100,0,788,10,2912,2934,168,0,0,110,58,112,111,119,0,1,1,4,1793,2942, - 67502597,19,10,1,2939,2049,2449,772,10,2923,2962,168,0,0,110,58,110,101,103,97, - 116,101,0,1,-1,19,10,2948,2980,168,0,0,110,58,115,113,117,97,114,101, - 0,4866,10,2966,2994,168,0,0,110,58,115,113,114,116,0,1,1,1793,3012,2049, + 0,229474297120890,110,58,101,118,101,110,63,0,1,2,20,3,2049,2722,10,2816,2848,168, + 0,6953766919107,110,58,111,100,100,63,0,2049,2829,2049,2644,10,2836,2862,168,0,193494767,105, + 102,59,0,67502597,1,76,2049,2229,25,6,771,10,2853,2881,168,0,6383175836,45,105,102, + 59,0,67502597,1,74,2049,2229,2049,2644,25,6,771,10,2871,2901,174,0,193504922,114,111, + 116,0,67503109,10,2892,2910,174,0,177620,47,0,197652,10,2903,2921,174,0,193499461,109,111, + 100,0,788,10,2912,2934,168,0,210720211139,110,58,112,111,119,0,1,1,4,1793,2942, + 67502597,19,10,1,2939,2049,2449,772,10,2923,2962,168,0,7572652137106817,110,58,110,101,103,97, + 116,101,0,1,-1,19,10,2948,2980,168,0,7572652347517886,110,58,115,113,117,97,114,101, + 0,4866,10,2966,2994,168,0,6953767077527,110,58,115,113,114,116,0,1,1,1793,3012,2049, 2217,197652,67502597,18,1,2,197652,25,17,1,2998,7,10,1,2998,8,772,10,2982,3028, - 168,0,0,110,58,109,105,110,0,2049,2217,13,1793,3035,3,10,1,3033,1793,3041, - 772,10,1,3039,2049,66,10,3017,3057,168,0,0,110,58,109,97,120,0,2049,2217, + 168,0,210720207665,110,58,109,105,110,0,2049,2217,13,1793,3035,3,10,1,3033,1793,3041, + 772,10,1,3039,2049,66,10,3017,3057,168,0,210720207411,110,58,109,97,120,0,2049,2217, 14,1793,3064,3,10,1,3062,1793,3070,772,10,1,3068,2049,66,10,3046,3086,168,0, - 0,110,58,97,98,115,0,2,2049,2761,1,2962,9,10,3075,3106,168,0,0,110, - 58,108,105,109,105,116,0,4,5,2049,3028,6,2049,3057,10,3093,3125,168,0,0, - 110,58,105,110,99,0,659713,1,10,3114,3139,168,0,0,110,58,100,101,99,0, - 659969,1,10,3128,3158,168,0,0,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,0,0,83,99, - 111,112,101,76,105,115,116,0,15483,15588,10,3172,3198,168,0,0,123,123,0,2049, - 1576,2,1,3187,2049,61,16,10,3190,3225,168,0,0,45,45,45,114,101,118,101, - 97,108,45,45,45,0,2049,1576,1,3187,2049,3125,16,10,3207,3241,168,0,0,125, + 210720194371,110,58,97,98,115,0,2,2049,2761,1,2962,9,10,3075,3106,168,0,229474304963756,110, + 58,108,105,109,105,116,0,4,5,2049,3028,6,2049,3057,10,3093,3125,168,0,210720203463, + 110,58,105,110,99,0,659713,1,10,3114,3139,168,0,210720197721,110,58,100,101,99,0, + 659969,1,10,3128,3158,168,0,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,0,249861296566813883,83,99, + 111,112,101,76,105,115,116,0,15483,15588,10,3172,3198,168,0,5864091,123,123,0,2049, + 1576,2,1,3187,2049,61,16,10,3190,3225,168,0,-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,0,5864159,125, 125,0,1,3187,2049,58,4,15,11,1793,3255,3841,3187,4097,2,10,1,3250,1793,3281, 3841,3187,1793,3276,1,2,983567,1,3187,2049,3125,1641487,3,1,3265,7,10,1,3263,8, 16,10,1,3259,2049,66,10,3233,3296,168,0,0,66,121,116,101,0,10,3286,3312, @@ -183,78 +183,78 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 1,1793,3400,1793,3395,1793,3390,3,3841,3296,10,1,3386,2049,2229,10,1,3384,2049,2229, 10,1,3382,2049,2554,1,2,1793,3419,1793,3414,3,3841,3296,10,1,3410,2049,2229,10, 1,3408,2049,2554,1,3,1793,3431,3,3841,3296,10,1,3427,2049,2554,3,10,3233,3460, - 168,0,0,98,58,116,111,45,98,121,116,101,45,97,100,100,114,101,115,115, - 0,1,4,19,10,3437,3477,168,0,0,98,58,102,101,116,99,104,0,1,4, - 20,4,1,4,20,67503109,17,15,4,2049,3312,10,3464,3504,168,0,0,98,58,115, + 168,0,-6972911891006832072,98,58,116,111,45,98,121,116,101,45,97,100,100,114,101,115,115, + 0,1,4,19,10,3437,3477,168,0,229458800096267,98,58,102,101,116,99,104,0,1,4, + 20,4,1,4,20,67503109,17,15,4,2049,3312,10,3464,3504,168,0,229458816047342,98,58,115, 116,111,114,101,0,4,4097,3296,1,4,20,4,1793,3518,2,15,2049,78,10,1, - 3513,2049,2229,2049,3345,2049,92,4,16,10,3491,3542,168,0,0,104,58,102,101,116, + 3513,2049,2229,2049,3345,2049,92,4,16,10,3491,3542,168,0,229466548904081,104,58,102,101,116, 99,104,0,1793,3547,2049,3477,10,1,3544,1793,3559,2049,3125,2049,3477,1,-8,24,10, - 1,3551,2049,2255,22,10,3529,3578,168,0,0,104,58,115,116,111,114,101,0,2049, + 1,3551,2049,2255,22,10,3529,3578,168,0,229466564855156,104,58,115,116,111,114,101,0,2049, 2217,1793,3586,1,255,21,10,1,3582,2049,2229,2049,3504,2049,3125,1793,3603,1,8,24, - 1,255,21,10,1,3596,2049,2229,2049,3504,10,3565,3623,168,0,0,119,58,102,101, - 116,99,104,0,1,4,197652,15,10,3610,3641,168,0,0,119,58,115,116,111,114, - 101,0,1,4,197652,16,10,3628,3664,168,0,0,119,58,102,101,116,99,104,45, - 110,101,120,116,0,2,1,4,17,4,2049,3623,10,3646,3690,168,0,0,104,58, + 1,255,21,10,1,3596,2049,2229,2049,3504,10,3565,3623,168,0,229485920923616,119,58,102,101, + 116,99,104,0,1,4,197652,15,10,3610,3641,168,0,229485936874691,119,58,115,116,111,114, + 101,0,1,4,197652,16,10,3628,3664,168,0,-2542660583859062324,119,58,102,101,116,99,104,45, + 110,101,120,116,0,2,1,4,17,4,2049,3623,10,3646,3690,168,0,-3300792181564964579,104,58, 102,101,116,99,104,45,110,101,120,116,0,2,1,2,17,4,2049,3542,10,3672, - 3716,168,0,0,98,58,102,101,116,99,104,45,110,101,120,116,0,2,1,1, - 17,4,2049,3477,10,3698,3742,168,0,0,119,58,115,116,111,114,101,45,110,101, - 120,116,0,2,1,4,17,1,3641,2049,2229,10,3724,3769,168,0,0,104,58,115, + 3716,168,0,-3604044820647325481,98,58,102,101,116,99,104,45,110,101,120,116,0,2,1,1, + 17,4,2049,3477,10,3698,3742,168,0,-2542036332270164849,119,58,115,116,111,114,101,45,110,101, + 120,116,0,2,1,4,17,1,3641,2049,2229,10,3724,3769,168,0,-3300167929976067104,104,58,115, 116,111,114,101,45,110,101,120,116,0,2,1,2,17,1,3578,2049,2229,10,3751, - 3796,168,0,0,98,58,115,116,111,114,101,45,110,101,120,116,0,2,1,1, - 17,1,3504,2049,2229,10,3778,3819,168,0,0,118,58,105,110,99,45,98,121,0, - 1793,3823,4367,10,1,3821,2049,2241,16,10,3805,3843,168,0,0,118,58,100,101,99, - 45,98,121,0,1793,3847,1180687,10,1,3845,2049,2241,16,10,3829,3864,168,0,0,118, - 58,105,110,99,0,1,1,4,2049,3819,10,3853,3881,168,0,0,118,58,100,101, - 99,0,1,1,4,2049,3843,10,3870,3900,168,0,0,118,58,108,105,109,105,116, - 0,251790597,1542,2049,3106,4100,10,3887,3916,168,0,0,118,58,111,110,0,2049,2527,4100, - 10,3906,3931,168,0,0,118,58,111,102,102,0,2049,2541,4100,10,3920,3946,168,0, - 0,97,108,108,111,116,0,1,3,2049,3819,10,3935,3967,168,0,0,118,58,112, + 3796,168,0,-3603420569058428006,98,58,115,116,111,114,101,45,110,101,120,116,0,2,1,1, + 17,1,3504,2049,2229,10,3778,3819,168,0,7572992899446007,118,58,105,110,99,45,98,121,0, + 1793,3823,4367,10,1,3821,2049,2241,16,10,3805,3843,168,0,7572992693095753,118,58,100,101,99, + 45,98,121,0,1793,3847,1180687,10,1,3845,2049,2241,16,10,3829,3864,168,0,210729690831,118, + 58,105,110,99,0,1,1,4,2049,3819,10,3853,3881,168,0,210729685089,118,58,100,101, + 99,0,1,1,4,2049,3843,10,3870,3900,168,0,229484636707508,118,58,108,105,109,105,116, + 0,251790597,1542,2049,3106,4100,10,3887,3916,168,0,6385748402,118,58,111,110,0,2049,2527,4100, + 10,3906,3931,168,0,210729697104,118,58,111,102,102,0,2049,2541,4100,10,3920,3946,168,0, + 210706586657,97,108,108,111,116,0,1,3,2049,3819,10,3935,3967,168,0,8246989571153063777,118,58,112, 114,101,115,101,114,118,101,0,983556,1793,3975,1,27,2049,2229,10,1,3970,2049,2229, - 4100,10,3951,3995,168,0,0,118,58,117,112,100,97,116,101,0,4,1793,4002,15, - 4,8,10,1,3998,2049,2241,16,10,3981,4018,168,0,0,99,111,112,121,0,1793, + 4100,10,3951,3995,168,0,7572993371535704,118,58,117,112,100,97,116,101,0,4,1793,4002,15, + 4,8,10,1,3998,2049,2241,16,10,3981,4018,168,0,6385123360,99,111,112,121,0,1793, 4027,285278725,1,33951492,268767489,1,6,10,1,4020,2049,2449,771,10,4008,4044,156,0,0,115, 116,97,114,116,0,0,10,4033,4055,156,0,0,101,110,100,0,0,10,4046,4072, 168,0,0,116,101,114,109,105,110,97,116,101,0,1,0,3841,4055,16,10,4008, - 4096,168,0,0,98,117,102,102,101,114,58,115,116,97,114,116,0,3841,4044,10, - 4078,4115,168,0,0,98,117,102,102,101,114,58,101,110,100,0,3841,4055,10,4099, - 4134,168,0,0,98,117,102,102,101,114,58,97,100,100,0,3841,4055,16,1,4055, - 2049,3864,2049,4072,10,4118,4160,168,0,0,98,117,102,102,101,114,58,103,101,116, - 0,1,4055,2049,3881,3841,4055,15,2049,4072,10,4144,4188,168,0,0,98,117,102,102, + 4096,168,0,-3513680875729732409,98,117,102,102,101,114,58,115,116,97,114,116,0,3841,4044,10, + 4078,4115,168,0,8246143877888709904,98,117,102,102,101,114,58,101,110,100,0,3841,4055,10,4099, + 4134,168,0,8246143877888705218,98,117,102,102,101,114,58,97,100,100,0,3841,4055,16,1,4055, + 2049,3864,2049,4072,10,4118,4160,168,0,8246143877888711801,98,117,102,102,101,114,58,103,101,116, + 0,1,4055,2049,3881,3841,4055,15,2049,4072,10,4144,4188,168,0,-3513680875746570456,98,117,102,102, 101,114,58,101,109,112,116,121,0,3841,4044,4097,4055,2049,4072,10,4170,4212,168,0, - 0,98,117,102,102,101,114,58,115,105,122,101,0,3841,4055,3841,4044,18,10,4195, - 4234,168,0,0,98,117,102,102,101,114,58,115,101,116,0,4097,4044,2049,4188,10, - 4218,4260,168,0,0,98,117,102,102,101,114,58,112,114,101,115,101,114,118,101, + -4578413135315348908,98,117,102,102,101,114,58,115,105,122,101,0,3841,4055,3841,4044,18,10,4195, + 4234,168,0,8246143877888724869,98,117,102,102,101,114,58,115,101,116,0,4097,4044,2049,4188,10, + 4218,4260,168,0,-3186446687793719003,98,117,102,102,101,114,58,112,114,101,115,101,114,118,101, 0,3841,4044,3841,4055,1793,4273,1,27,2049,2229,4097,4044,10,1,4266,2049,2229,4097,4055, - 10,4239,4297,156,0,0,84,101,109,112,83,116,114,105,110,103,115,0,32,4280, - 4317,156,0,0,84,101,109,112,83,116,114,105,110,103,77,97,120,0,512,4298, - 4331,168,0,0,83,84,82,73,78,71,83,0,2049,1545,3841,4297,3841,4317,19,18, + 10,4239,4297,156,0,-4600587576916820603,84,101,109,112,83,116,114,105,110,103,115,0,32,4280, + 4317,156,0,7474516786580364824,84,101,109,112,83,116,114,105,110,103,77,97,120,0,512,4298, + 4331,168,0,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,11,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,0,0,115,58,116, + 11,1793,4407,1,0,4097,4353,10,1,4402,9,10,4318,4423,168,0,6953962777192,115,58,116, 101,109,112,0,2,2049,104,2049,3125,2049,4370,4,2049,4018,2049,4370,2049,4391,10,4411, - 4451,168,0,0,115,58,101,109,112,116,121,0,2049,4370,2049,4391,1,0,67502597,16, - 10,4438,4472,168,0,0,115,58,115,107,105,112,0,6,1793,4480,68223234,1,786703,0, - 10,1,4475,2049,2372,2049,3139,5,10,4460,4500,168,0,0,115,58,107,101,101,112, + 4451,168,0,229480754149537,115,58,101,109,112,116,121,0,2049,4370,2049,4391,1,0,67502597,16, + 10,4438,4472,168,0,6953962747657,115,58,115,107,105,112,0,6,1793,4480,68223234,1,786703,0, + 10,1,4475,2049,2372,2049,3139,5,10,4460,4500,168,0,6953962453495,115,58,107,101,101,112, 0,2049,1913,1793,4509,1,4472,2049,1868,10,1,4504,9,2049,1977,1,144,2049,2229,2049, - 156,10,4488,4534,180,0,0,115,105,103,105,108,58,39,0,2049,1913,1,4500,1, - 4423,2049,66,10,4521,4556,168,0,0,115,58,102,101,116,99,104,0,17,15,10, - 4543,4572,168,0,0,115,58,115,116,111,114,101,0,17,16,10,4559,4587,168,0, - 0,115,58,99,104,111,112,0,2049,4423,2,2049,104,67502597,17,2049,3139,1,0,4, - 16,10,4575,4616,168,0,0,115,58,114,101,118,101,114,115,101,0,1793,4658,2, + 156,10,4488,4534,180,0,229482595734750,115,105,103,105,108,58,39,0,2049,1913,1,4500,1, + 4423,2049,66,10,4521,4556,168,0,229480755051740,115,58,102,101,116,99,104,0,17,15,10, + 4543,4572,168,0,229480771002815,115,58,115,116,111,114,101,0,17,16,10,4559,4587,168,0, + 6953962169596,115,58,99,104,111,112,0,2049,4423,2,2049,104,67502597,17,2049,3139,1,0,4, + 16,10,4575,4616,168,0,249904557751418990,115,58,114,101,118,101,114,115,101,0,1793,4658,2, 2049,4423,2049,4234,1,104,1793,4634,2,2049,104,17,2049,3139,10,1,4627,2049,2255,4, 1793,4648,2,15,2049,4134,2049,3139,10,1,4641,2049,2449,3,2049,4096,2049,4423,10,1, - 4618,2049,4260,10,4601,4678,168,0,0,115,58,112,114,101,112,101,110,100,0,2049, + 4618,2049,4260,10,4601,4678,168,0,249904555657463488,115,58,112,114,101,112,101,110,100,0,2049, 4423,1793,4702,2,2049,104,17,1793,4694,2,2049,104,2049,3125,10,1,4688,2049,2229,4, - 2049,4018,10,1,4682,2049,2241,10,4663,4721,168,0,0,115,58,97,112,112,101,110, - 100,0,4,2049,4678,10,4707,4741,168,0,0,115,58,102,111,114,45,101,97,99, + 2049,4018,10,1,4682,2049,2241,10,4663,4721,168,0,7572864733934314,115,58,97,112,112,101,110, + 100,0,4,2049,4678,10,4707,4741,168,0,8246849907066750743,115,58,102,111,114,45,101,97,99, 104,0,1793,4756,67502597,6415,3,67502597,67502597,251987205,2054,101777670,1,1,4743,7,10,1,4743,8, - 771,10,4725,4779,168,0,0,115,58,105,110,100,101,120,47,99,104,97,114,0, + 771,10,4725,4779,168,0,-2744677796467205929,115,58,105,110,100,101,120,47,99,104,97,114,0, 1793,4793,1793,4788,1,-1,1,0,10,1,4783,2049,2229,10,1,4781,2049,2229,4,1793, 4829,67502597,11,1793,4821,1793,4816,1793,4810,3,10,1,4808,2049,2229,2,10,1,4806,2049, 2229,10,1,4804,9,1,3125,2049,2229,10,1,4800,2049,4741,771,10,4761,4857,168,0, - 0,115,58,99,111,110,116,97,105,110,115,47,99,104,97,114,63,0,2049,4779, - 1,-1,12,10,4835,4875,168,0,0,115,58,104,97,115,104,0,1,5381,4,1793, + -2157201767973730595,115,58,99,111,110,116,97,105,110,115,47,99,104,97,114,63,0,2049,4779, + 1,-1,12,10,4835,4875,168,0,6953962341782,115,58,104,97,115,104,0,1,5381,4,1793, 4883,286458116,33,10,1,4880,2049,4741,10,4863,4897,156,0,0,83,116,114,0,0,4888, 4911,168,0,0,101,120,116,114,97,99,116,0,2049,2217,3841,4897,4,2049,4018,3841, 4897,67502597,17,1,0,4,16,10,4898,4938,168,0,0,99,104,101,99,107,0,1, @@ -263,7 +263,7 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 5002,4,1793,4988,67502597,2049,2722,21,10,1,4983,2049,2229,4,1793,4998,772,2,10,1, 4995,9,10,1,4980,2049,2229,10,1,4978,2049,2229,10,4960,5023,168,0,0,115,101, 116,117,112,0,2049,4451,4097,4897,1,0,67503109,67503109,1,104,1,4875,2049,2255,1793,5043, - 67502597,2049,104,10,1,5039,2049,2229,4,10,4863,5069,168,0,0,115,58,105,110,100, + 67502597,2049,104,10,1,5039,2049,2229,4,10,4863,5069,168,0,-581580411198892688,115,58,105,110,100, 101,120,47,115,116,114,105,110,103,0,67502597,1793,5088,2049,5023,1793,5081,2049,4938,2049, 4974,10,1,5076,2049,2449,771,3,10,1,5072,2049,2229,18,1,2,18,1,-1,2049, 3057,10,5049,5110,156,0,0,83,114,99,0,0,5101,5120,156,0,0,84,97,114, @@ -274,112 +274,112 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 17,3841,5130,3841,5120,2049,104,2049,4018,10,5182,5222,168,0,0,99,111,109,112,97, 114,101,0,3841,5130,3841,5120,2049,118,3841,5146,22,4097,5146,3841,5146,1793,5242,3841,5138, 4097,5155,10,1,5237,2049,74,10,5209,5257,168,0,0,110,101,120,116,0,1,5138, - 2049,3864,10,5049,5286,168,0,0,115,58,99,111,110,116,97,105,110,115,47,115, + 2049,3864,10,5049,5286,168,0,-6456227941126558634,115,58,99,111,110,116,97,105,110,115,47,115, 116,114,105,110,103,63,0,4097,5120,4097,5110,2049,4451,4097,5130,1,0,4097,5138,1, 0,4097,5146,3841,5110,2049,104,1793,5317,2049,5195,2049,5171,2049,5222,2049,5257,10,1,5308, - 2049,2449,3841,5146,10,5262,5338,168,0,0,115,58,102,105,108,116,101,114,0,1793, + 2049,2449,3841,5146,10,5262,5338,168,0,7572864921182136,115,58,102,105,108,116,101,114,0,1793, 5366,2049,4451,2049,4234,4,1793,5358,2049,2217,4,8,1,4134,1,17,2049,66,10,1, - 5347,2049,4741,3,2049,4096,10,1,5340,2049,4260,10,5324,5382,168,0,0,115,58,109, + 5347,2049,4741,3,2049,4096,10,1,5340,2049,4260,10,5324,5382,168,0,210726137008,115,58,109, 97,112,0,1793,5404,2049,4451,2049,4234,4,1793,5396,67502597,8,2049,4134,10,1,5391,2049, - 4741,3,2049,4096,10,1,5384,2049,4260,10,5371,5423,168,0,0,115,58,115,117,98, + 4741,3,2049,4096,10,1,5384,2049,4260,10,5371,5423,168,0,7572865443813333,115,58,115,117,98, 115,116,114,0,1793,5429,17,2049,4451,10,1,5425,2049,2229,1793,5441,67502597,1,4018,2049, 2229,10,1,5435,2049,2241,67502597,1793,5454,17,1,0,4,16,10,1,5448,2049,2229,10, - 5409,5472,168,0,0,115,58,114,105,103,104,116,0,67502597,2049,104,67502597,18,4,2049, - 5423,10,5459,5493,168,0,0,115,58,108,101,102,116,0,1,0,4,2049,5423,10, - 5481,5519,168,0,0,115,58,98,101,103,105,110,115,45,119,105,116,104,63,0, - 2,2049,104,1,19,2049,2229,2049,5493,2049,118,10,5499,5549,168,0,0,115,58,101, + 5409,5472,168,0,229480769412560,115,58,114,105,103,104,116,0,67502597,2049,104,67502597,18,4,2049, + 5423,10,5459,5493,168,0,6953962489469,115,58,108,101,102,116,0,1,0,4,2049,5423,10, + 5481,5519,168,0,-949014848675520942,115,58,98,101,103,105,110,115,45,119,105,116,104,63,0, + 2,2049,104,1,19,2049,2229,2049,5493,2049,118,10,5499,5549,168,0,-2744863427173801468,115,58,101, 110,100,115,45,119,105,116,104,63,0,2,2049,104,1,19,2049,2229,2049,5472,2049, - 118,10,5531,5573,168,0,0,115,58,99,111,112,121,0,67502597,2049,104,2049,3125,2049, - 4018,10,5561,5595,168,0,0,115,58,68,73,71,73,84,83,0,2049,4472,48,49, + 118,10,5531,5573,168,0,6953962177261,115,58,99,111,112,121,0,67502597,2049,104,2049,3125,2049, + 4018,10,5561,5595,168,0,7572863551252214,115,58,68,73,71,73,84,83,0,2049,4472,48,49, 50,51,52,53,54,55,56,57,65,66,67,68,69,70,0,1,5597,10,5581,5640, - 168,0,0,115,58,65,83,67,73,73,45,76,79,87,69,82,67,65,83,69, + 168,0,-3174032931242973971,115,58,65,83,67,73,73,45,76,79,87,69,82,67,65,83,69, 0,2049,4472,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113, - 114,115,116,117,118,119,120,121,122,0,1,5642,10,5617,5695,168,0,0,115,58, + 114,115,116,117,118,119,120,121,122,0,1,5642,10,5617,5695,168,0,-3174020239987242608,115,58, 65,83,67,73,73,45,85,80,80,69,82,67,65,83,69,0,2049,4472,65,66, 67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86, - 87,88,89,90,0,1,5697,10,5672,5748,168,0,0,115,58,65,83,67,73,73, + 87,88,89,90,0,1,5697,10,5672,5748,168,0,4909441458232360267,115,58,65,83,67,73,73, 45,76,69,84,84,69,82,83,0,2049,4472,97,98,99,100,101,102,103,104,105, 106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67, 68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87, - 88,89,90,0,1,5750,10,5727,5825,168,0,0,115,58,80,85,78,67,84,85, + 88,89,90,0,1,5750,10,5727,5825,168,0,1619870888324870636,115,58,80,85,78,67,84,85, 65,84,73,79,78,0,2049,4472,95,33,34,35,36,37,38,39,40,41,42,43, 44,45,46,47,58,59,60,61,62,63,64,91,92,93,94,96,123,124,125,126, - 0,1,5827,1,95,67502597,16,10,5806,5885,156,0,0,115,58,87,72,73,84,69, - 83,80,65,67,69,0,32,9,10,13,0,5867,5897,180,0,0,39,0,1,4451, - 2049,168,10,5890,5909,180,0,0,36,0,1,0,2049,156,10,5902,0,156,0,0, - 65,83,67,73,73,58,78,85,76,0,5914,27,156,0,0,65,83,67,73,73, - 58,69,83,67,0,5929,8,156,0,0,65,83,67,73,73,58,66,83,0,5944, - 9,156,0,0,65,83,67,73,73,58,72,84,0,5958,10,156,0,0,65,83, - 67,73,73,58,76,70,0,5972,11,156,0,0,65,83,67,73,73,58,86,84, - 0,5986,12,156,0,0,65,83,67,73,73,58,70,70,0,6000,13,156,0,0, - 65,83,67,73,73,58,67,82,0,6014,32,156,0,0,65,83,67,73,73,58, - 83,80,65,67,69,0,6028,127,156,0,0,65,83,67,73,73,58,68,69,76, - 0,6045,1,156,0,0,65,83,67,73,73,58,83,79,72,0,6060,2,156,0, - 0,65,83,67,73,73,58,83,84,88,0,6075,3,156,0,0,65,83,67,73, - 73,58,69,84,88,0,6090,4,156,0,0,65,83,67,73,73,58,69,79,84, - 0,6105,5,156,0,0,65,83,67,73,73,58,69,78,81,0,6120,6,156,0, - 0,65,83,67,73,73,58,65,67,75,0,6135,7,156,0,0,65,83,67,73, - 73,58,66,69,76,0,6150,14,156,0,0,65,83,67,73,73,58,83,79,0, - 6165,15,156,0,0,65,83,67,73,73,58,83,73,0,6179,16,156,0,0,65, - 83,67,73,73,58,68,76,69,0,6193,17,156,0,0,65,83,67,73,73,58, - 68,67,49,0,6208,18,156,0,0,65,83,67,73,73,58,68,67,50,0,6223, - 19,156,0,0,65,83,67,73,73,58,68,67,51,0,6238,20,156,0,0,65, - 83,67,73,73,58,68,67,52,0,6253,21,156,0,0,65,83,67,73,73,58, - 78,65,75,0,6268,22,156,0,0,65,83,67,73,73,58,83,89,78,0,6283, - 23,156,0,0,65,83,67,73,73,58,69,84,66,0,6298,24,156,0,0,65, - 83,67,73,73,58,67,65,78,0,6313,25,156,0,0,65,83,67,73,73,58, - 69,77,0,6328,26,156,0,0,65,83,67,73,73,58,83,85,66,0,6342,28, - 156,0,0,65,83,67,73,73,58,70,83,0,6357,29,156,0,0,65,83,67, - 73,73,58,71,83,0,6371,30,156,0,0,65,83,67,73,73,58,82,83,0, - 6385,31,156,0,0,65,83,67,73,73,58,85,83,0,6399,6431,168,0,0,99, + 0,1,5827,1,95,67502597,16,10,5806,5885,156,0,-2745567821320788289,115,58,87,72,73,84,69, + 83,80,65,67,69,0,32,9,10,13,0,5867,5897,180,0,177612,39,0,1,4451, + 2049,168,10,5890,5909,180,0,177609,36,0,1,0,2049,156,10,5902,0,156,0,249835240931843863, + 65,83,67,73,73,58,78,85,76,0,5914,27,156,0,249835240931833987,65,83,67,73,73, + 58,69,83,67,0,5929,8,156,0,7570764876722141,65,83,67,73,73,58,66,83,0,5944, + 9,156,0,7570764876722340,65,83,67,73,73,58,72,84,0,5958,10,156,0,7570764876722458,65,83, + 67,73,73,58,76,70,0,5972,11,156,0,7570764876722802,65,83,67,73,73,58,86,84, + 0,5986,12,156,0,7570764876722260,65,83,67,73,73,58,70,70,0,6000,13,156,0,7570764876722173, + 65,83,67,73,73,58,67,82,0,6014,32,156,0,-4630583730859567212,65,83,67,73,73,58, + 83,80,65,67,69,0,6028,127,156,0,249835240931832445,65,83,67,73,73,58,68,69,76, + 0,6045,1,156,0,249835240931849106,65,83,67,73,73,58,83,79,72,0,6060,2,156,0, + 249835240931849287,65,83,67,73,73,58,83,84,88,0,6075,3,156,0,249835240931834041,65,83,67,73, + 73,58,69,84,88,0,6090,4,156,0,249835240931833872,65,83,67,73,73,58,69,79,84, + 0,6105,5,156,0,249835240931833836,65,83,67,73,73,58,69,78,81,0,6120,6,156,0, + 249835240931829111,65,83,67,73,73,58,65,67,75,0,6135,7,156,0,249835240931830267,65,83,67,73, + 73,58,66,69,76,0,6150,14,156,0,7570764876722698,65,83,67,73,73,58,83,79,0, + 6165,15,156,0,7570764876722692,65,83,67,73,73,58,83,73,0,6179,16,156,0,249835240931832669,65, + 83,67,73,73,58,68,76,69,0,6193,17,156,0,249835240931832352,65,83,67,73,73,58, + 68,67,49,0,6208,18,156,0,249835240931832353,65,83,67,73,73,58,68,67,50,0,6223, + 19,156,0,249835240931832354,65,83,67,73,73,58,68,67,51,0,6238,20,156,0,249835240931832355,65, + 83,67,73,73,58,68,67,52,0,6253,21,156,0,249835240931843202,65,83,67,73,73,58, + 78,65,75,0,6268,22,156,0,249835240931849442,65,83,67,73,73,58,83,89,78,0,6283, + 23,156,0,249835240931834019,65,83,67,73,73,58,69,84,66,0,6298,24,156,0,249835240931831226,65, + 83,67,73,73,58,67,65,78,0,6313,25,156,0,7570764876722234,65,83,67,73,73,58, + 69,77,0,6328,26,156,0,249835240931849298,65,83,67,73,73,58,83,85,66,0,6342,28, + 156,0,7570764876722273,65,83,67,73,73,58,70,83,0,6357,29,156,0,7570764876722306,65,83,67, + 73,73,58,71,83,0,6371,30,156,0,7570764876722669,65,83,67,73,73,58,82,83,0, + 6385,31,156,0,7570764876722768,65,83,67,73,73,58,85,83,0,6399,6431,168,0,-3553210050247798618,99, 58,108,111,119,101,114,99,97,115,101,63,0,1,97,1,122,2049,3158,10,6413, - 6456,168,0,0,99,58,117,112,112,101,114,99,97,115,101,63,0,1,65,1, - 90,2049,3158,10,6438,6478,168,0,0,99,58,108,101,116,116,101,114,63,0,1, - 6431,1,6456,2049,2255,22,10,6463,6500,168,0,0,99,58,100,105,103,105,116,63, - 0,1,48,1,57,2049,3158,10,6486,6523,168,0,0,99,58,118,105,115,105,98, - 108,101,63,0,1,32,1,126,2049,3158,10,6507,6544,168,0,0,99,58,118,111, + 6456,168,0,-3552791238808663639,99,58,117,112,112,101,114,99,97,115,101,63,0,1,65,1, + 90,2049,3158,10,6438,6478,168,0,249882047462872305,99,58,108,101,116,116,101,114,63,0,1, + 6431,1,6456,2049,2255,22,10,6463,6500,168,0,7572182947632498,99,58,100,105,103,105,116,63, + 0,1,48,1,57,2049,3158,10,6486,6523,168,0,8246107997572794159,99,58,118,105,115,105,98, + 108,101,63,0,1,32,1,126,2049,3158,10,6507,6544,168,0,7572183659755470,99,58,118,111, 119,101,108,63,0,2049,4472,97,101,105,111,117,65,69,73,79,85,0,1,6546, - 4,2049,4857,10,6530,6581,168,0,0,99,58,99,111,110,115,111,110,97,110,116, + 4,2049,4857,10,6530,6581,168,0,-3553628119197217420,99,58,99,111,110,115,111,110,97,110,116, 63,0,2,2049,6478,1793,6591,2049,6544,2049,2644,10,1,6586,1793,6599,3,2049,2541,10, - 1,6595,2049,66,10,6563,6623,168,0,0,99,58,119,104,105,116,101,115,112,97, - 99,101,63,0,1,5885,4,2049,4857,10,6604,6648,168,0,0,99,58,45,108,111, - 119,101,114,99,97,115,101,63,0,2049,6431,2049,2644,10,6629,6672,168,0,0,99, + 1,6595,2049,66,10,6563,6623,168,0,-6558963794062736370,99,58,119,104,105,116,101,115,112,97, + 99,101,63,0,1,5885,4,2049,4857,10,6604,6648,168,0,-6672106426782194349,99,58,45,108,111, + 119,101,114,99,97,115,101,63,0,2049,6431,2049,2644,10,6629,6672,168,0,-6671687615343059370,99, 58,45,117,112,112,101,114,99,97,115,101,63,0,2049,6456,2049,2644,10,6653,6692, - 168,0,0,99,58,45,100,105,103,105,116,63,0,2049,6500,2049,2644,10,6677,6717, - 168,0,0,99,58,45,119,104,105,116,101,115,112,97,99,101,63,0,2049,6623, - 2049,2644,10,6697,6739,168,0,0,99,58,45,118,105,115,105,98,108,101,63,0, - 2049,6523,2049,2644,10,6722,6759,168,0,0,99,58,45,118,111,119,101,108,63,0, - 2049,6544,2049,2644,10,6744,6783,168,0,0,99,58,45,99,111,110,115,111,110,97, - 110,116,63,0,2049,6581,2049,2644,10,6764,6804,168,0,0,99,58,116,111,45,117, - 112,112,101,114,0,2,2049,6431,25,3,1,32,18,10,6788,6829,168,0,0,99, + 168,0,249881966047746975,99,58,45,100,105,103,105,116,63,0,2049,6500,2049,2644,10,6677,6717, + 168,0,1197920222559514203,99,58,45,119,104,105,116,101,115,112,97,99,101,63,0,2049,6623, + 2049,2644,10,6697,6739,168,0,-4579699312045814628,99,58,45,118,105,115,105,98,108,101,63,0, + 2049,6523,2049,2644,10,6722,6759,168,0,249881966759869947,99,58,45,118,111,119,101,108,63,0, + 2049,6544,2049,2644,10,6744,6783,168,0,-6672524495731613151,99,58,45,99,111,110,115,111,110,97, + 110,116,63,0,2049,6581,2049,2644,10,6764,6804,168,0,8246107917359977086,99,58,116,111,45,117, + 112,112,101,114,0,2,2049,6431,25,3,1,32,18,10,6788,6829,168,0,8246107917349275483,99, 58,116,111,45,108,111,119,101,114,0,2,2049,6456,25,3,1,32,17,10,6813, - 6855,168,0,0,99,58,116,111,45,115,116,114,105,110,103,0,2049,4472,46,0, - 1,6857,2049,4423,1,39,2049,2241,10,6838,6887,168,0,0,99,58,116,111,103,103, + 6855,168,0,-4579599832837481303,99,58,116,111,45,115,116,114,105,110,103,0,2049,4472,46,0, + 1,6857,2049,4423,1,39,2049,2241,10,6838,6887,168,0,-6563237009071717459,99,58,116,111,103,103, 108,101,45,99,97,115,101,0,2,2049,6431,1,6804,1,6829,2049,66,10,6868,6914, - 168,0,0,99,58,116,111,45,110,117,109,98,101,114,0,2,2049,6500,1793,6923, + 168,0,-4579599833032159941,99,58,116,111,45,110,117,109,98,101,114,0,2,2049,6500,1793,6923, 1,48,18,10,1,6919,1793,6931,3,1,0,10,1,6927,2049,66,10,6897,6952,168, - 0,0,115,58,116,111,45,117,112,112,101,114,0,1,6804,2049,5382,10,6936,6973, - 168,0,0,115,58,116,111,45,108,111,119,101,114,0,1,6829,2049,5382,10,6957, - 6995,168,0,0,115,58,116,114,105,109,45,108,101,102,116,0,2049,4423,1793,7009, + 0,8246850501110408334,115,58,116,111,45,117,112,112,101,114,0,1,6804,2049,5382,10,6936,6973, + 168,0,8246850501099706731,115,58,116,111,45,108,111,119,101,114,0,1,6829,2049,5382,10,6957, + 6995,168,0,-4555094364049076026,115,58,116,114,105,109,45,108,101,102,116,0,2049,4423,1793,7009, 2049,58,1,6623,1,2740,2049,2255,21,10,1,6999,2049,2372,2049,3139,10,6978,7034,168, - 0,0,115,58,116,114,105,109,45,114,105,103,104,116,0,2049,4423,2049,4616,2049, - 6995,2049,4616,10,7016,7055,168,0,0,115,58,116,114,105,109,0,2049,7034,2049,6995, - 10,7043,7084,156,0,0,82,101,119,114,105,116,101,85,110,100,101,114,115,99, + 0,-2744161423935835847,115,58,116,114,105,109,45,114,105,103,104,116,0,2049,4423,2049,4616,2049, + 6995,2049,4616,10,7016,7055,168,0,6953962791214,115,58,116,114,105,109,0,2049,7034,2049,6995, + 10,7043,7084,156,0,-429402327855008236,82,101,119,114,105,116,101,85,110,100,101,114,115,99, 111,114,101,115,0,-1,7060,7094,168,0,0,115,117,98,0,1,95,1793,7101,1, 32,10,1,7098,2049,2554,10,7085,7119,168,0,0,114,101,119,114,105,116,101,0, 3841,7084,1793,7128,1,7094,2049,5382,10,1,7123,9,10,7106,7144,168,0,0,104,97, - 110,100,108,101,0,1,4534,8,10,7060,7161,180,0,0,115,105,103,105,108,58, - 39,0,2049,7119,2049,7144,10,7148,7184,168,0,0,115,58,115,112,108,105,116,47, + 110,100,108,101,0,1,4534,8,10,7060,7161,180,0,229482595734750,115,105,103,105,108,58, + 39,0,2049,7119,2049,7144,10,7148,7184,168,0,-2744210522849075797,115,58,115,112,108,105,116,47, 99,104,97,114,0,2049,2217,2049,4779,772,2049,2217,2049,5493,1,41,2049,2229,10,7166, - 7218,168,0,0,115,58,115,112,108,105,116,47,115,116,114,105,110,103,0,2049, - 2217,2049,5069,2049,3125,772,2049,2217,2049,5493,1,41,2049,2229,10,7198,7249,168,0,0, + 7218,168,0,-72719441055178940,115,58,115,112,108,105,116,47,115,116,114,105,110,103,0,2049, + 2217,2049,5069,2049,3125,772,2049,2217,2049,5493,1,41,2049,2229,10,7198,7249,168,0,249904557744535982, 115,58,114,101,112,108,97,99,101,0,67502597,2049,104,2049,1977,16,1793,7265,2049,7218, 4,2049,1977,15,17,10,1,7257,2049,2229,2049,4678,2049,4721,10,7234,7288,156,0,0, 83,112,108,105,116,45,79,110,0,0,7274,7301,168,0,0,109,97,116,99,104, 63,0,3841,7288,11,10,7289,7320,168,0,0,116,101,114,109,105,110,97,116,101, 0,1,0,67502597,2049,3139,16,10,7305,7337,168,0,0,115,116,101,112,0,1,3125, 2049,2229,2049,7301,1793,7351,2,2049,130,2049,7320,10,1,7345,9,10,7234,7371,168,0, - 0,115,58,116,111,107,101,110,105,122,101,0,4097,7288,2049,4500,2049,1977,1,0, + 8246850503517749147,115,58,116,111,107,101,110,105,122,101,0,4097,7288,2049,4500,2049,1977,1,0, 2049,130,1793,7393,2,2049,130,2,1,7337,2049,4741,3,10,1,7383,2049,2229,2049,1977, 67502597,18,2049,3139,67502597,16,10,7355,7418,156,0,0,78,101,101,100,108,101,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -399,7 +399,7 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 0,0,84,80,0,0,7696,7715,168,0,0,115,97,118,101,0,2049,4500,3841,7704, 1,7568,17,2049,3125,16,1,7704,2049,3864,10,7705,7740,168,0,0,110,101,120,116, 0,1793,7746,3841,7555,17,10,1,7742,2049,2241,10,7730,7762,168,0,0,100,111,110, - 101,63,0,2049,104,2049,2722,10,7355,7793,168,0,0,115,58,116,111,107,101,110, + 101,63,0,2049,104,2049,2722,10,7355,7793,168,0,9213749861880762729,115,58,116,111,107,101,110, 105,122,101,45,111,110,45,115,116,114,105,110,103,0,1,0,4097,7704,1793,7807, 2,1,7418,2049,5573,2049,4721,10,1,7799,1793,7816,2049,104,4097,7555,10,1,7811,2049, 2255,1793,7833,1,7418,2049,7218,2049,7715,2049,7740,2049,7762,10,1,7822,2049,2397,1,7568, @@ -411,7 +411,7 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 110,0,2049,2761,1793,7950,1,45,2049,4134,10,1,7945,9,10,7925,7968,168,0,0, 110,45,62,100,105,103,105,116,0,2049,5595,17,15,10,7954,7986,168,0,0,99, 111,110,118,101,114,116,0,1793,8000,3841,241,20,4,2049,7968,2049,4134,2,2049,2722, - 10,1,7988,2049,2397,3,10,7767,8023,168,0,0,110,58,116,111,45,115,116,114, + 10,1,7988,2049,2397,3,10,7767,8023,168,0,-4562752463999572364,110,58,116,111,45,115,116,114, 105,110,103,0,1793,8037,1,7859,2049,4234,2,2049,3086,2049,7986,2049,7941,10,1,8025, 2049,4260,1,7859,2049,4616,10,8006,8056,168,0,0,99,104,97,114,0,1,32,1793, 8065,1,95,2049,4134,10,1,8060,2049,2554,1,114,1793,8078,1,13,2049,4134,10,1, @@ -422,75 +422,75 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 1,115,1793,8169,4,1,4134,2049,4741,10,1,8163,2049,2554,1,110,1793,8185,4,2049, 8023,1,4134,2049,4741,10,1,8177,2049,2554,3,10,8137,8203,168,0,0,104,97,110, 100,108,101,0,1,92,1793,8212,2049,58,2049,8056,10,1,8207,2049,2554,1,37,1793, - 8225,2049,58,2049,8147,10,1,8220,2049,2554,2049,4134,10,8006,8246,168,0,0,115,58, + 8225,2049,58,2049,8147,10,1,8220,2049,2554,2049,4134,10,8006,8246,168,0,7572864928505531,115,58, 102,111,114,109,97,116,0,1793,8275,2049,4451,1793,8270,2049,4234,1793,8265,2049,58,25, 2049,8203,1,8256,7,10,1,8256,8,3,10,1,8252,2049,2241,10,1,8248,2049,4260, - 10,8232,8293,168,0,0,115,58,99,111,110,115,116,0,1,4500,2049,2229,2049,2131, + 10,8232,8293,168,0,229480751847353,115,58,99,111,110,115,116,0,1,4500,2049,2229,2049,2131, 10,8280,8312,156,0,0,86,97,108,117,101,115,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,8300,8350,168,0,0,102,114,111,109,0,2049,104,2,1793,8368,1793,8361,1,8312, 4113,10,1,8357,2049,2241,2049,3139,10,1,8355,2049,2449,3,10,8340,8382,168,0,0, 116,111,0,2,2049,104,1793,8398,2049,58,1,97,18,2049,3125,1,8312,266001,10,1, - 8387,2049,2449,3,10,8280,8417,168,0,0,114,101,111,114,100,101,114,0,1,8350, - 2049,2229,2049,8382,10,8404,8435,168,0,0,99,117,114,114,121,0,2049,1977,1793,8445, - 4,2049,1818,2049,1843,10,1,8439,2049,2229,10,8424,8460,168,0,0,100,111,101,115, + 8387,2049,2449,3,10,8280,8417,168,0,229481157528792,114,101,111,114,100,101,114,0,1,8350, + 2049,2229,2049,8382,10,8404,8435,168,0,210709288570,99,117,114,114,121,0,2049,1977,1793,8445, + 4,2049,1818,2049,1843,10,1,8439,2049,2229,10,8424,8460,168,0,6385158928,100,111,101,115, 0,2049,1595,4,2049,8435,2049,1576,2049,182,16,1,168,2049,1660,10,8450,8491,168,0, - 0,100,58,102,111,114,45,101,97,99,104,0,1,2,1793,8517,6415,2049,2217,1793, + 8246153734800721448,100,58,102,111,114,45,101,97,99,104,0,1,2,1793,8517,6415,2049,2217,1793, 8509,1793,8504,2052,10,1,8502,2049,2229,10,1,8500,2049,2229,1,8495,7,10,1,8495, - 8,3,10,8475,8539,168,0,0,100,58,108,111,111,107,117,112,45,120,116,0, + 8,3,10,8475,8539,168,0,-4578079420196310922,100,58,108,111,111,107,117,112,45,120,116,0, 1,0,4,1793,8564,2049,2217,2049,182,2831,1793,8557,4,1,2172,2049,2229,10,1,8551, - 1,17,2049,66,10,1,8544,2049,8491,3,10,8522,8584,168,0,0,97,58,108,101, - 110,103,116,104,0,15,10,8570,8609,168,0,0,97,58,99,111,117,110,116,101, + 1,17,2049,66,10,1,8544,2049,8491,3,10,8522,8584,168,0,7572098019335426,97,58,108,101, + 110,103,116,104,0,15,10,8570,8609,168,0,9069136730318539537,97,58,99,111,117,110,116,101, 100,45,114,101,115,117,108,116,115,0,8,2049,1977,1793,8622,2,2049,130,1,130, - 2049,2449,10,1,8614,2049,2229,10,8586,8646,168,0,0,97,58,102,114,111,109,45, + 2049,2449,10,1,8614,2049,2229,10,8586,8646,168,0,8526436589641133048,97,58,102,114,111,109,45, 115,116,114,105,110,103,0,2049,1977,1793,8660,2,2049,104,2049,130,1,130,2049,4741, - 10,1,8650,2049,2229,10,8627,8681,168,0,0,97,58,102,111,114,45,101,97,99, + 10,1,8650,2049,2229,10,8627,8681,168,0,8246014500347515589,97,58,102,111,114,45,101,97,99, 104,0,4,2049,58,1,19,2049,2229,1793,8697,5,2049,58,84018692,525572,1542,10,1,8690, - 2049,2449,771,10,8665,8714,168,0,0,97,58,100,117,112,0,2049,1977,1793,8727,2, - 15,2049,130,1,130,2049,8681,10,1,8718,2049,2229,10,8703,8744,168,0,0,97,58, + 2049,2449,771,10,8665,8714,168,0,210704781289,97,58,100,117,112,0,2049,1977,1793,8727,2, + 15,2049,130,1,130,2049,8681,10,1,8718,2049,2229,10,8703,8744,168,0,6953257740187,97,58, 99,111,112,121,0,1,3,1793,8760,4097,3,2,2049,8584,2049,130,1,130,2049,8681, - 10,1,8748,2049,3967,10,8732,8782,168,0,0,97,58,116,111,45,115,116,114,105, + 10,1,8748,2049,3967,10,8732,8782,168,0,-4582662990808010201,97,58,116,111,45,115,116,114,105, 110,103,0,1,3,1793,8795,2049,8714,1,0,2049,130,2049,3125,10,1,8786,2049,3967, - 2049,4423,10,8765,8816,168,0,0,97,58,97,112,112,101,110,100,0,2049,2217,1, + 2049,4423,10,8765,8816,168,0,7572097601960728,97,58,97,112,112,101,110,100,0,2049,2217,1, 37,2049,2285,17,2049,1977,1793,8841,2049,130,1793,8836,1,130,2049,8681,10,1,8831,2049, - 2285,10,1,8827,2049,2229,10,8802,8861,168,0,0,97,58,112,114,101,112,101,110, - 100,0,4,2049,8816,10,8846,8877,168,0,0,97,58,99,104,111,112,0,2049,8714, - 1,-1,2049,3946,2,2049,3881,10,8865,8901,168,0,0,97,58,102,105,108,116,101, + 2285,10,1,8827,2049,2229,10,8802,8861,168,0,249879240302335150,97,58,112,114,101,112,101,110, + 100,0,4,2049,8816,10,8846,8877,168,0,6953257732522,97,58,99,104,111,112,0,2049,8714, + 1,-1,2049,3946,2,2049,3881,10,8865,8901,168,0,7572097789208550,97,58,102,105,108,116,101, 114,0,1793,8916,67502597,1,27,2049,2229,4,1,130,1,17,2049,66,10,1,8903,2049, 8435,2049,1977,1793,8931,67502597,15,2049,130,2049,8681,10,1,8924,2049,2229,2049,1977,67502597,18, - 2049,3139,67502597,16,10,8887,8961,168,0,0,97,58,99,111,110,116,97,105,110,115, + 2049,3139,67502597,16,10,8887,8961,168,0,-4582686815792817282,97,58,99,111,110,116,97,105,110,115, 63,0,1,0,4,1793,8973,4,5,67502597,11,6,22,10,1,8966,2049,8681,772,10, - 8944,9003,168,0,0,97,58,99,111,110,116,97,105,110,115,47,115,116,114,105, + 8944,9003,168,0,-3160266450763725308,97,58,99,111,110,116,97,105,110,115,47,115,116,114,105, 110,103,63,0,1,0,4,1793,9016,4,5,67502597,2049,118,6,22,10,1,9008,2049, - 8681,772,10,8979,9033,168,0,0,97,58,109,97,112,0,1793,9039,8,2049,130,10, + 8681,772,10,8979,9033,168,0,210704790430,97,58,109,97,112,0,1793,9039,8,2049,130,10, 1,9035,2049,8435,2049,1977,1793,9054,67502597,15,2049,130,2049,8681,10,1,9047,2049,2229,10, - 9022,9074,168,0,0,97,58,114,101,118,101,114,115,101,0,2049,1977,1793,9108,2049, + 9022,9074,168,0,249879242396290652,97,58,114,101,118,101,114,115,101,0,2049,1977,1793,9108,2049, 58,1793,9086,17,2049,3139,10,1,9082,2049,2241,2,2049,130,1793,9102,2,15,2049,130, - 2049,3139,10,1,9095,2049,2449,3,10,1,9078,2049,2229,10,9059,9123,168,0,0,97, - 58,116,104,0,17,2049,3125,10,9113,9140,168,0,0,97,58,102,101,116,99,104, - 0,2049,9123,15,10,9127,9157,168,0,0,97,58,115,116,111,114,101,0,2049,9123, - 16,10,9144,9175,168,0,0,97,58,114,101,100,117,99,101,0,1,19,2049,2229, - 2049,8681,10,9161,9195,168,0,0,97,58,105,110,100,101,120,0,5,5,1,-1, + 2049,3139,10,1,9095,2049,2449,3,10,1,9078,2049,2229,10,9059,9123,168,0,6384993884,97, + 58,116,104,0,17,2049,3125,10,9113,9140,168,0,229457508628298,97,58,102,101,116,99,104, + 0,2049,9123,15,10,9127,9157,168,0,229457524579373,97,58,115,116,111,114,101,0,2049,9123, + 16,10,9144,9175,168,0,7572098253803096,97,58,114,101,100,117,99,101,0,1,19,2049,2229, + 2049,8681,10,9161,9195,168,0,229457512492152,97,58,105,110,100,101,120,0,5,5,1,-1, 1,0,6,6,4,1793,9243,67502597,11,1793,9230,1793,9225,67502597,1,-1,11,1793,9221,772, 2,10,1,9218,9,10,1,9212,2049,2229,10,1,9210,9,1793,9238,2049,3125,10,1, 9235,2049,2229,10,1,9206,2049,8681,771,10,9182,9263,168,0,0,105,100,101,110,116, 105,102,121,0,1,-1,4,1,0,1793,9294,2049,2527,11,1793,9288,67502597,1,-1,11, 1793,9284,772,2,10,1,9281,9,10,1,9275,9,2049,3125,10,1,9270,2049,9175,3, - 10,9182,9320,168,0,0,97,58,105,110,100,101,120,47,115,116,114,105,110,103, + 10,9182,9320,168,0,4816227687043827742,97,58,105,110,100,101,120,47,115,116,114,105,110,103, 0,1,3,1793,9333,1,118,2049,8435,2049,9033,2049,9263,10,1,9324,2049,3967,10,9300, - 9350,168,0,0,97,58,109,97,107,101,0,2049,8609,2,2,1,3,1793,9361,2049, - 9074,10,1,9358,2049,3967,4,2049,8744,10,9338,9376,180,0,0,123,0,1,337,2049, - 180,1,1560,2049,168,1,337,2049,180,10,9369,9396,180,0,0,125,0,1,353,2049, + 9350,168,0,6953258084126,97,58,109,97,107,101,0,2049,8609,2,2,1,3,1793,9361,2049, + 9074,10,1,9358,2049,3967,4,2049,8744,10,9338,9376,180,0,177696,123,0,1,337,2049, + 180,1,1560,2049,168,1,337,2049,180,10,9369,9396,180,0,177698,125,0,1,353,2049, 180,1,2229,2049,168,1,1560,2049,168,1,19,2049,174,1,43,2049,174,1,3139,2049, 168,1,353,2049,180,1,9350,2049,168,10,9389,9442,168,0,0,98,111,117,110,100, 115,63,0,67502597,2049,8584,67502597,13,10,9429,9458,168,0,0,99,111,112,121,0,2049, 58,2049,130,10,9448,9475,168,0,0,116,111,45,101,110,100,0,2,2049,8584,17, - 2049,3125,10,9389,9494,168,0,0,97,58,108,101,102,116,0,2049,9442,1793,9502,771, + 2049,3125,10,9389,9494,168,0,6953258052395,97,58,108,101,102,116,0,2049,9442,1793,9502,771, 1,-1,10,1,9498,2049,2862,2049,1977,67502597,2049,130,1793,9523,1,3125,2049,2229,1,9458, - 2049,2449,3,10,1,9513,2049,2229,10,9482,9541,168,0,0,97,58,114,105,103,104, + 2049,2449,3,10,1,9513,2049,2229,10,9482,9541,168,0,229457522989118,97,58,114,105,103,104, 116,0,2049,9442,1793,9549,771,1,-1,10,1,9545,2049,2862,2049,1977,67502597,2049,130,1793, 9572,4,2049,9475,67502597,18,4,1,9458,2049,2449,3,10,1,9560,2049,2229,10,9528,9591, - 168,0,0,97,58,109,105,100,100,108,101,0,1,2161,2049,2229,4,67502597,2049,9442, + 168,0,7572098062851599,97,58,109,105,100,100,108,101,0,1,2161,2049,2229,4,67502597,2049,9442, 1793,9606,771,3,1,-1,10,1,9601,2049,2862,771,2049,2217,4,18,2049,3125,2049,1977, 67502597,2049,130,1793,9641,772,1793,9631,17,2049,3125,10,1,9627,2049,2229,1,9458,2049,2449, 3,10,1,9624,2049,2229,10,9577,9656,156,0,0,70,108,97,103,0,0,9646,9670, @@ -498,11 +498,11 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 101,110,103,116,104,0,659202,10,9673,9697,168,0,0,110,101,120,116,0,17043713,1, 1,2577,10,9687,9717,168,0,0,110,111,116,45,101,113,117,97,108,0,50529030,2561, 0,10,9702,9731,168,0,0,108,111,111,112,0,524549,9697,2049,9670,18157313,9656,9656,16, - 420610310,1,1,9731,7,10,9577,9756,168,0,0,97,58,101,113,63,0,1048833,-1,9656, - 2049,9670,151066369,-1,9717,2049,9685,2049,9731,251724547,9656,10,9745,9783,168,0,0,97,58,45, - 101,113,63,0,2049,9756,2049,2644,10,9771,9808,168,0,0,97,58,98,101,103,105, + 420610310,1,1,9731,7,10,9577,9756,168,0,210704782197,97,58,101,113,63,0,1048833,-1,9656, + 2049,9670,151066369,-1,9717,2049,9685,2049,9731,251724547,9656,10,9745,9783,168,0,6953255788674,97,58,45, + 101,113,63,0,2049,9756,2049,2644,10,9771,9808,168,0,4448793249567199488,97,58,98,101,103,105, 110,115,45,119,105,116,104,63,0,1,3,1793,9824,2,2049,8584,1,19,2049,2229, - 2049,9494,2049,9756,10,1,9812,2049,3967,10,9788,9847,168,0,0,97,58,101,110,100, + 2049,9494,2049,9756,10,1,9812,2049,3967,10,9788,9847,168,0,-3654621344420884174,97,58,101,110,100, 115,45,119,105,116,104,63,0,1,3,1793,9863,2,2049,8584,1,19,2049,2229,2049, 9541,2049,9756,10,1,9851,2049,3967,10,9829,9884,156,0,0,83,117,98,115,116,105, 116,117,116,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -515,7 +515,7 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 116,114,97,99,116,0,1,9884,2049,5573,10,10012,10043,168,0,0,99,111,109,98, 105,110,101,0,1,9884,2049,4721,2049,4721,10,10030,10064,168,0,0,102,105,110,100, 45,101,110,100,0,2,2049,104,1,9884,2049,104,18,67502597,17,10,10050,10086,168,0, - 0,99,108,101,97,110,0,2049,10064,1,0,4,16,10,9829,10112,168,0,0,115, + 0,99,108,101,97,110,0,2049,10064,1,0,4,16,10,9829,10112,168,0,1672736740201773236,115, 58,114,101,112,108,97,99,101,45,97,108,108,0,1,3,1793,10135,2049,10025,2049, 7793,2049,4451,4,1793,10128,2049,10043,10,1,10125,2049,8681,2049,10086,10,1,10116,2049,3967, 10,10093,10158,168,0,0,99,117,114,114,101,110,116,45,108,105,110,101,0,2049, @@ -523,110 +523,110 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 110,115,0,1793,10188,1,32,11,10,1,10184,2049,5338,2049,104,10,10164,10215,168,0, 0,112,114,111,99,101,115,115,45,116,111,107,101,110,115,0,1793,10243,1,32, 2049,7184,4,1793,10236,2,2049,104,2049,2740,1,415,1,17,2049,66,10,1,10224,2049, - 2229,2049,3125,10,1,10217,2049,2449,2049,415,10,10093,10266,168,0,0,115,58,101,118, + 2229,2049,3125,10,1,10217,2049,2449,2049,415,10,10093,10266,168,0,8246849872898570441,115,58,101,118, 97,108,117,97,116,101,0,2049,10158,2049,5573,2049,10158,2,2049,10182,2049,10215,10,10250, 10286,156,0,0,76,80,0,0,10278,10298,156,0,0,73,110,100,101,120,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,10287,10340,168,0,0,110,101,120,116, 0,3841,10286,1,10298,17,2049,3864,10,10330,10358,168,0,0,112,114,101,112,0,1, 10286,2049,3864,1,0,3841,10286,1,10298,17,16,10,10348,10381,168,0,0,100,111,110, - 101,0,1,10286,2049,3881,10,10250,10393,168,0,0,73,0,3841,10286,1,10298,17,15, - 10,10386,10407,168,0,0,74,0,3841,10286,1,10298,17,2049,3139,15,10,10400,10423,168, - 0,0,75,0,3841,10286,1,10298,17,1,2,18,15,10,10416,10452,168,0,0,105, + 101,0,1,10286,2049,3881,10,10250,10393,168,0,177646,73,0,3841,10286,1,10298,17,15, + 10,10386,10407,168,0,177647,74,0,3841,10286,1,10298,17,2049,3139,15,10,10400,10423,168, + 0,177648,75,0,3841,10286,1,10298,17,1,2,18,15,10,10416,10452,168,0,6047344052022463093,105, 110,100,101,120,101,100,45,116,105,109,101,115,0,2049,10358,4,1793,10468,25,33886721, 1,2053,1542,2049,10340,1,10457,7,10,1,10457,8,3,2049,10381,10,10433,10488,168,0, - 0,100,101,99,105,109,97,108,0,1,10,4097,241,10,10475,10505,168,0,0,98, - 105,110,97,114,121,0,1,2,4097,241,10,10493,10521,168,0,0,111,99,116,97, - 108,0,1,8,4097,241,10,10510,10535,168,0,0,104,101,120,0,1,16,4097,241, - 10,10526,10551,168,0,0,118,97,114,45,115,0,1,4500,2049,2229,2049,2102,10,10540, - 10576,168,0,0,116,97,105,108,45,114,101,99,117,114,115,101,0,1,1793,2049, - 1977,1,3,18,16,10,10558,10603,168,0,0,105,111,58,101,110,117,109,101,114, - 97,116,101,0,27,10,10585,10619,168,0,0,105,111,58,113,117,101,114,121,0, - 28,10,10605,10636,168,0,0,105,111,58,105,110,118,111,107,101,0,29,10,10621, - 10655,168,0,0,105,111,58,115,99,97,110,45,102,111,114,0,1,-1,4,2049, + 229463062432404,100,101,99,105,109,97,108,0,1,10,4097,241,10,10475,10505,168,0,6953352993994,98, + 105,110,97,114,121,0,1,2,4097,241,10,10493,10521,168,0,210722874360,111,99,116,97, + 108,0,1,8,4097,241,10,10510,10535,168,0,193493706,104,101,120,0,1,16,4097,241, + 10,10526,10551,168,0,210731100046,118,97,114,45,115,0,1,4500,2049,2229,2049,2102,10,10540, + 10576,168,0,-2634409250251928459,116,97,105,108,45,114,101,99,117,114,115,101,0,1,1793,2049, + 1977,1,3,18,16,10,10558,10603,168,0,-3171118726347914531,105,111,58,101,110,117,109,101,114, + 97,116,101,0,27,10,10585,10619,168,0,7572505472392333,105,111,58,113,117,101,114,121,0, + 28,10,10605,10636,168,0,249892680268169699,105,111,58,105,110,118,111,107,101,0,29,10,10621, + 10655,168,0,-4568031882453442320,105,111,58,115,99,97,110,45,102,111,114,0,1,-1,4,2049, 10603,1793,10686,2049,10393,2049,10619,772,67502597,11,1793,10682,1793,10677,3,2049,10393,10,1,10673, - 2049,2229,10,1,10671,9,10,1,10662,2049,10452,3,10,10638,10703,168,0,0,99,58, - 112,117,116,0,1793,10705,1,0,2049,10636,10,10692,10718,168,0,0,110,108,0,1, - 10,2049,10703,10,10710,10731,168,0,0,115,112,0,1,32,2049,10703,10,10723,10745,168, - 0,0,116,97,98,0,1,9,2049,10703,10,10736,10761,168,0,0,115,58,112,117, - 116,0,1,10703,2049,4741,10,10750,10777,168,0,0,110,58,112,117,116,0,2049,8023, - 2049,10761,10,10766,10793,168,0,0,114,101,115,101,116,0,2049,1560,25,771,1,10793, - 7,10,10782,10817,168,0,0,100,117,109,112,45,115,116,97,99,107,0,2049,1560, - 25,134284547,10817,134283782,10777,2049,10731,10,10801,10837,168,0,0,70,82,69,69,0,2049,4331, + 2049,2229,10,1,10671,9,10,1,10662,2049,10452,3,10,10638,10703,168,0,210707166203,99,58, + 112,117,116,0,1793,10705,1,0,2049,10636,10,10692,10718,168,0,5863647,110,108,0,1, + 10,2049,10703,10,10710,10731,168,0,5863816,115,112,0,1,32,2049,10703,10,10723,10745,168, + 0,193506620,116,97,98,0,1,9,2049,10703,10,10736,10761,168,0,210726140939,115,58,112,117, + 116,0,1,10703,2049,4741,10,10750,10777,168,0,210720211334,110,58,112,117,116,0,2049,8023, + 2049,10761,10,10766,10793,168,0,210726503048,114,101,115,101,116,0,2049,1560,25,771,1,10793, + 7,10,10782,10817,168,0,8246237009912977886,100,117,109,112,45,115,116,97,99,107,0,2049,1560, + 25,134284547,10817,134283782,10777,2049,10731,10,10801,10837,168,0,6384048135,70,82,69,69,0,2049,4331, 1,1025,18,2049,1977,18,10,10827,10856,168,0,0,101,111,108,63,0,1793,10862,1, 13,11,10,1,10858,1793,10870,1,10,11,10,1,10866,1793,10878,1,32,11,10,1, 10874,2049,2298,22,22,10,10846,10897,168,0,0,118,97,108,105,100,63,0,2,2049, 104,2049,2740,10,10885,10912,168,0,0,98,115,63,0,2,1793,10919,1,8,11,10, 1,10915,1793,10927,1,127,11,10,1,10923,2049,2255,22,10,10903,10947,168,0,0,99, 104,101,99,107,45,98,115,0,2049,10912,1793,10970,2049,4212,1,2,2049,2675,1793,10963, - 2049,4160,3,10,1,10959,9,2049,4160,3,10,1,10951,9,10,10827,10985,168,0,0, - 99,58,103,101,116,0,1793,10987,1,1,2049,10655,2049,10636,10,10974,11010,168,0,0, + 2049,4160,3,10,1,10959,9,2049,4160,3,10,1,10951,9,10,10827,10985,168,0,210707155874, + 99,58,103,101,116,0,1793,10987,1,1,2049,10655,2049,10636,10,10974,11010,168,0,8246849936849447419, 115,58,103,101,116,45,119,111,114,100,0,1793,11038,1,7,15,2049,4234,1793,11029, 2049,10985,2,2049,4134,2049,10947,2049,10856,10,1,11019,2049,2397,2049,4096,2049,4587,10,1, - 11012,2049,4260,10,10994,11052,168,0,0,98,121,101,0,26,10,11043,11066,168,0,0, + 11012,2049,4260,10,10994,11052,168,0,193487813,98,121,101,0,26,10,11043,11066,168,0,6953744547860, 108,105,115,116,101,110,0,2049,11010,2049,10897,1,415,1,17,2049,66,1,11066,7, - 10,11054,11101,156,0,0,100,58,72,97,115,104,45,70,117,110,99,116,105,111, - 110,0,4875,11080,11116,168,0,0,100,58,114,101,104,97,115,104,0,1793,11134,1793, + 10,11054,11101,156,0,-213800119713087686,100,58,72,97,115,104,45,70,117,110,99,116,105,111, + 110,0,4875,11080,11116,168,0,7572226109254526,100,58,114,101,104,97,115,104,0,1793,11134,1793, 11126,2049,190,3841,11101,8,10,1,11120,2049,2241,2049,188,16,10,1,11118,2049,8491,10, - 11102,12,156,0,0,66,85,73,76,68,0,11139,11162,156,0,0,105,111,58,88, - 56,54,0,0,11150,11177,168,0,0,105,100,101,110,116,105,102,121,0,3841,11162, + 11102,12,156,0,210668957237,66,85,73,76,68,0,11139,11162,156,0,6953632176765,105,111,58,88, + 56,54,0,0,11150,11177,168,0,7572492945476833,105,100,101,110,116,105,102,121,0,3841,11162, 2049,2722,1793,11244,1,2000,2049,10655,2,2049,2761,1793,11232,3,2049,4472,73,79,32,68, 69,86,73,67,69,32,84,89,80,69,32,50,48,48,48,32,78,79,84,32, 70,79,85,78,68,0,1,11195,2049,10761,2049,10718,10,1,11192,1793,11239,4097,11162,10, - 1,11236,2049,66,10,1,11183,9,10,11139,11260,168,0,0,105,111,58,120,56,54, - 0,2049,11177,3841,11162,2049,10636,10,11248,11284,168,0,0,112,105,111,58,105,110,45, - 98,121,116,101,0,1,0,2049,11260,10,11267,11307,168,0,0,112,105,111,58,111, - 117,116,45,98,121,116,101,0,1,1,2049,11260,10,11289,11329,168,0,0,112,105, - 111,58,105,110,45,119,111,114,100,0,1,6,2049,11260,10,11312,11352,168,0,0, + 1,11236,2049,66,10,1,11183,9,10,11139,11260,168,0,6953632211613,105,111,58,120,56,54, + 0,2049,11177,3841,11162,2049,10636,10,11248,11284,168,0,-4557517179875077249,112,105,111,58,105,110,45, + 98,121,116,101,0,1,0,2049,11260,10,11267,11307,168,0,-2824114078735264064,112,105,111,58,111, + 117,116,45,98,121,116,101,0,1,1,2049,11260,10,11289,11329,168,0,-4557517179874333529,112,105, + 111,58,105,110,45,119,111,114,100,0,1,6,2049,11260,10,11312,11352,168,0,-2824114078734520344, 112,105,111,58,111,117,116,45,119,111,114,100,0,1,7,2049,11260,10,11334,11372, - 168,0,0,114,97,109,58,115,116,111,114,101,0,1,2,2049,11260,10,11357,11392, - 168,0,0,114,97,109,58,102,101,116,99,104,0,1,3,2049,11260,10,11377,11417, - 168,0,0,114,97,109,58,115,116,111,114,101,45,98,121,116,101,0,1,4, - 2049,11260,10,11397,11442,168,0,0,114,97,109,58,102,101,116,99,104,45,98,121, - 116,101,0,1,5,2049,11260,10,11422,11456,168,0,0,104,101,120,0,2,15,1, + 168,0,249904805318893100,114,97,109,58,115,116,111,114,101,0,1,2,2049,11260,10,11357,11392, + 168,0,249904805302942025,114,97,109,58,102,101,116,99,104,0,1,3,2049,11260,10,11377,11417, + 168,0,-8897744105644361843,114,97,109,58,115,116,111,114,101,45,98,121,116,101,0,1,4, + 2049,11260,10,11397,11442,168,0,-8898368357233259318,114,97,109,58,102,101,116,99,104,45,98,121, + 116,101,0,1,5,2049,11260,10,11422,11456,168,0,193493706,104,101,120,0,2,15,1, 45,11,1793,11468,2049,3125,1,-1,10,1,11463,1793,11475,1,0,10,1,11472,2049,66, 4,1,0,4,1793,11514,2049,4472,48,49,50,51,52,53,54,55,56,57,65,66, 67,68,69,70,0,1,11487,4,2049,4779,17,1,16,19,10,1,11485,2049,4741,1, - 16,197652,4,25,19,10,11422,11538,180,0,0,115,105,103,105,108,58,48,0,2, + 16,197652,4,25,19,10,11422,11538,180,0,229482595734759,115,105,103,105,108,58,48,0,2, 2049,3139,2049,236,2049,2740,1793,11571,2049,3139,2049,236,1793,11557,2049,182,15,10,1,11553, 1793,11565,2049,184,15,10,1,11561,2049,2255,8,10,1,11547,2049,2862,2049,3125,2049,11456, - 2049,156,10,11525,112,156,0,0,67,77,79,83,58,65,68,68,82,69,83,83, - 0,11582,113,156,0,0,67,77,79,83,58,68,65,84,65,0,11600,11630,168,0, - 0,114,116,99,58,113,117,101,114,121,0,1,112,2049,11307,1,113,2049,11284,10, - 11615,11655,168,0,0,114,116,99,58,115,101,99,111,110,100,0,1,0,2049,11630, - 10,11639,11676,168,0,0,114,116,99,58,109,105,110,117,116,101,0,1,2,2049, - 11630,10,11660,11695,168,0,0,114,116,99,58,104,111,117,114,0,1,4,2049,11630, - 10,11681,11713,168,0,0,114,116,99,58,100,97,121,0,1,7,2049,11630,10,11700, - 11733,168,0,0,114,116,99,58,109,111,110,116,104,0,1,8,2049,11630,10,11718, - 11752,168,0,0,114,116,99,58,121,101,97,114,0,1,9,2049,11630,10,11738,11767, - 168,0,0,116,105,109,101,0,2049,11695,2049,10777,1,58,2049,10703,2049,11676,2049,10777, - 2049,10718,10,11757,1016,156,0,0,115,101,114,105,97,108,58,67,79,77,49,0, - 11782,760,156,0,0,115,101,114,105,97,108,58,67,79,77,50,0,11799,1000,156, - 0,0,115,101,114,105,97,108,58,67,79,77,51,0,11816,744,156,0,0,115, - 101,114,105,97,108,58,67,79,77,52,0,11833,11867,156,0,0,115,101,114,105, - 97,108,58,80,111,114,116,0,1016,11850,11890,168,0,0,115,101,114,105,97,108, + 2049,156,10,11525,112,156,0,-5142845418511449449,67,77,79,83,58,65,68,68,82,69,83,83, + 0,11582,113,156,0,249837813909948395,67,77,79,83,58,68,65,84,65,0,11600,11630,168,0, + 249905602152283198,114,116,99,58,113,117,101,114,121,0,1,112,2049,11307,1,113,2049,11284,10, + 11615,11655,168,0,8246884871084566180,114,116,99,58,115,101,99,111,110,100,0,1,0,2049,11630, + 10,11639,11676,168,0,8246884870854899546,114,116,99,58,109,105,110,117,116,101,0,1,2,2049, + 11630,10,11660,11695,168,0,7572897034588230,114,116,99,58,104,111,117,114,0,1,4,2049,11630, + 10,11681,11713,168,0,229481728316038,114,116,99,58,100,97,121,0,1,7,2049,11630,10,11700, + 11733,168,0,249905602147333742,114,116,99,58,109,111,110,116,104,0,1,8,2049,11630,10,11718, + 11752,168,0,7572897035187609,114,116,99,58,121,101,97,114,0,1,9,2049,11630,10,11738,11767, + 168,0,6385727636,116,105,109,101,0,2049,11695,2049,10777,1,58,2049,10703,2049,11676,2049,10777, + 2049,10718,10,11757,1016,156,0,-4553101876959975761,115,101,114,105,97,108,58,67,79,77,49,0, + 11782,760,156,0,-4553101876959975760,115,101,114,105,97,108,58,67,79,77,50,0,11799,1000,156, + 0,-4553101876959975759,115,101,114,105,97,108,58,67,79,77,51,0,11816,744,156,0,-4553101876959975758,115, + 101,114,105,97,108,58,67,79,77,52,0,11833,11867,156,0,-4553101876959472444,115,101,114,105, + 97,108,58,80,111,114,116,0,1016,11850,11890,168,0,-139157390882345915,115,101,114,105,97,108, 58,114,101,99,101,105,118,101,100,63,0,3841,11867,1,5,17,2049,11284,1,1, - 21,2049,2740,10,11868,11922,168,0,0,115,101,114,105,97,108,58,101,109,112,116, + 21,2049,2740,10,11868,11922,168,0,3846211819823296781,115,101,114,105,97,108,58,101,109,112,116, 121,63,0,3841,11867,1,5,17,2049,11284,1,32,21,2049,2740,10,11903,11952,168,0, - 0,115,101,114,105,97,108,58,114,101,97,100,0,2049,11890,1793,11961,3841,11867,2049, - 11284,10,1,11956,2049,2862,2049,11952,10,11935,11986,168,0,0,115,101,114,105,97,108, + -4553101876958262053,115,101,114,105,97,108,58,114,101,97,100,0,2049,11890,1793,11961,3841,11867,2049, + 11284,10,1,11956,2049,2862,2049,11952,10,11935,11986,168,0,-2678409349939828694,115,101,114,105,97,108, 58,119,114,105,116,101,0,2049,11922,1793,11995,3841,11867,2049,11307,10,1,11990,2049,2862, - 2049,11986,10,11968,12019,168,0,0,115,101,114,105,97,108,58,115,101,110,100,0, - 1793,12024,2049,11986,10,1,12021,2049,4741,10,12002,12046,168,0,0,115,101,114,105,97, + 2049,11986,10,11968,12019,168,0,-4553101876958225687,115,101,114,105,97,108,58,115,101,110,100,0, + 1793,12024,2049,11986,10,1,12021,2049,4741,10,12002,12046,168,0,-4553101876958575405,115,101,114,105,97, 108,58,105,110,105,116,0,1,0,3841,11867,1,1,17,2049,11307,1,128,3841,11867, 1,3,17,2049,11307,1,3,3841,11867,2049,11307,1,0,3841,11867,1,1,17,2049,11307, 1,3,3841,11867,1,3,17,2049,11307,1,199,3841,11867,1,2,17,2049,11307,1,11, - 3841,11867,1,4,17,2049,11307,10,12029,753664,156,0,0,86,71,65,45,66,65,83, - 69,0,12107,80,156,0,0,67,79,76,85,77,78,83,0,12121,25,156,0,0, - 82,79,87,83,0,12134,980,156,0,0,86,71,65,45,67,85,82,83,79,82, - 0,12144,981,156,0,0,86,71,65,45,68,65,84,65,0,12160,12187,156,0,0, - 118,103,97,58,82,111,119,0,0,12174,12204,156,0,0,118,103,97,58,67,111, - 108,117,109,110,0,0,12188,12228,168,0,0,118,103,97,58,117,112,100,97,116, + 3841,11867,1,4,17,2049,11307,10,12029,753664,156,0,7571644254689067,86,71,65,45,66,65,83, + 69,0,12107,80,156,0,229419554980358,67,79,76,85,77,78,83,0,12121,25,156,0,6384476720, + 82,79,87,83,0,12134,980,156,0,8245520593419229774,86,71,65,45,67,85,82,83,79,82, + 0,12144,981,156,0,7571644254760970,86,71,65,45,68,65,84,65,0,12160,12187,156,0,229486383036821, + 118,103,97,58,82,111,119,0,0,12174,12204,156,0,8247052146606941195,118,103,97,58,67,111, + 108,117,109,110,0,0,12188,12228,168,0,7915120356213829387,118,103,97,58,117,112,100,97,116, 101,45,99,117,114,115,111,114,0,3841,12187,1,80,19,3841,12204,17,2,1,15, 1,980,2049,11307,1,255,21,1,981,2049,11307,1,14,1,980,2049,11307,1,8,24, - 1,255,21,1,981,2049,11307,10,12205,12288,168,0,0,118,103,97,58,109,111,118, + 1,255,21,1,981,2049,11307,10,12205,12288,168,0,-4544699995778778497,118,103,97,58,109,111,118, 101,45,99,117,114,115,111,114,0,4097,12204,4097,12187,2049,12228,10,12267,12312,156,0, - 0,118,103,97,58,68,105,115,112,108,97,121,0,0,0,0,0,0,0,0, + -4548440266549438829,118,103,97,58,68,105,115,112,108,97,121,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, @@ -726,80 +726,80 @@ CELL ngaImage[] = { 1793,15773,15761,15861,202301,415,387,1247,1535,0,0,0,10,1,1 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,12295,14335,168,0,0,115, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,12295,14335,168,0,1615364752787303748,115, 116,97,114,116,105,110,103,45,97,100,100,114,101,115,115,0,1,753664,1,80, - 1,2,19,17,10,14313,14360,168,0,0,99,104,97,114,97,99,116,101,114,115, - 0,1,25,2049,3139,1,80,19,10,14344,14383,168,0,0,115,97,118,101,45,98, - 121,116,101,0,2,2049,11442,2049,4134,1,2,17,10,14368,14402,168,0,0,115,97, - 118,101,0,1793,14407,2049,14383,10,1,14404,2049,2449,3,10,14392,14430,168,0,0,97, + 1,2,19,17,10,14313,14360,168,0,8246171808294229573,99,104,97,114,97,99,116,101,114,115, + 0,1,25,2049,3139,1,80,19,10,14344,14383,168,0,249906224949894581,115,97,118,101,45,98, + 121,116,101,0,2,2049,11442,2049,4134,1,2,17,10,14368,14402,168,0,6385683284,115,97, + 118,101,0,1793,14407,2049,14383,10,1,14404,2049,2449,3,10,14392,14430,168,0,-4580356412150489450,97, 108,108,45,98,117,116,45,116,111,112,0,1793,14443,1,12312,2049,4234,2049,14335,2049, - 14360,2049,14402,10,1,14432,2049,4260,10,14413,14461,168,0,0,109,111,118,101,45,117, + 14360,2049,14402,10,1,14432,2049,4260,10,14413,14461,168,0,229475099317774,109,111,118,101,45,117, 112,0,1,753664,1,12312,1793,14474,67502597,2049,11417,1,2,17,10,1,14467,2049,4741,3, - 10,14448,14495,168,0,0,108,97,115,116,45,108,105,110,101,0,1,753664,1,25, - 2049,3139,1,80,19,1,2,19,17,10,14480,14520,168,0,0,101,114,97,115,101, - 0,1,32,67502597,2049,11417,1,2,17,10,14509,14550,168,0,0,101,114,97,115,101, + 10,14448,14495,168,0,249896376802535630,108,97,115,116,45,108,105,110,101,0,1,753664,1,25, + 2049,3139,1,80,19,1,2,19,17,10,14480,14520,168,0,210711534101,101,114,97,115,101, + 0,1,32,67502597,2049,11417,1,2,17,10,14509,14550,168,0,-2766801297229342389,101,114,97,115,101, 45,108,97,115,116,45,108,105,110,101,0,2049,14495,1,80,1793,14559,2049,14520,10, - 1,14556,2049,2449,3,10,14529,14577,168,0,0,115,99,114,111,108,108,0,2049,14430, - 2049,14461,2049,14550,10,14565,14598,168,0,0,112,111,115,105,116,105,111,110,0,1, - 25,2049,3139,1,0,2049,12288,10,14584,14620,168,0,0,115,99,114,111,108,108,63, - 0,3841,12187,1,25,11,10,12267,14640,168,0,0,118,103,97,58,119,114,97,112, + 1,14556,2049,2449,3,10,14529,14577,168,0,6954011338932,115,99,114,111,108,108,0,2049,14430, + 2049,14461,2049,14550,10,14565,14598,168,0,7572806022691514,112,111,115,105,116,105,111,110,0,1, + 25,2049,3139,1,0,2049,12288,10,14584,14620,168,0,229482374184819,115,99,114,111,108,108,63, + 0,3841,12187,1,25,11,10,12267,14640,168,0,7573050641547415,118,103,97,58,119,114,97,112, 0,2049,14620,1793,14649,2049,14577,2049,14598,10,1,14644,9,2049,12228,10,14626,14669,168,0, - 0,112,111,115,105,116,105,111,110,0,3841,12187,1,80,19,1,2,19,3841,12204, - 1,2,19,17,1,753664,17,10,14655,14697,168,0,0,110,101,120,116,0,1,12204, + 7572806022691514,112,111,115,105,116,105,111,110,0,3841,12187,1,80,19,1,2,19,3841,12204, + 1,2,19,17,1,753664,17,10,14655,14697,168,0,6385508036,110,101,120,116,0,1,12204, 2049,3864,3841,12204,1,80,14,1793,14717,1,12187,2049,3864,1,0,4097,12204,10,1,14708, - 9,2049,14640,10,14626,14738,168,0,0,118,103,97,58,99,58,112,117,116,0,1, + 9,2049,14640,10,14626,14738,168,0,249910671145350419,118,103,97,58,99,58,112,117,116,0,1, 10,1793,14753,1,0,4097,12204,1,12187,2049,3864,2049,14640,10,1,14742,2049,2554,1,13, 1793,14772,1,0,4097,12204,1,12187,2049,3864,2049,14640,10,1,14761,2049,2554,1,8,1793, 14795,1,12204,2049,3881,1,32,2049,14738,1,12204,2049,3881,2049,12228,10,1,14780,2049,2554, - 2049,14669,2049,11417,2049,14697,10,14723,14817,168,0,0,99,108,101,97,114,0,1,0, + 2049,14669,2049,11417,2049,14697,10,14723,14817,168,0,210708950412,99,108,101,97,114,0,1,0, 1,0,2049,12288,1,753664,1,80,1,25,19,1793,14841,1,32,67502597,2049,11417,1,2, - 17,10,1,14832,2049,2449,3,1,0,1,0,2049,12288,10,14806,14873,168,0,0,118, + 17,10,1,14832,2049,2449,3,1,0,1,0,2049,12288,10,14806,14873,168,0,-696898011016677713,118, 103,97,58,105,110,105,116,105,97,108,105,122,101,0,1,1793,1,10703,1,2, - 17,16,1,14738,1,10703,1,3,17,16,10,14853,14905,156,0,0,97,116,97,58, - 68,101,108,97,121,0,10000,14890,32,156,0,0,97,116,97,58,82,69,65,68, - 0,14906,48,156,0,0,97,116,97,58,87,82,73,84,69,0,14920,231,156,0, - 0,97,116,97,58,70,76,85,83,72,45,67,65,67,72,69,0,14935,496,156, - 0,0,97,116,97,58,80,82,73,77,65,82,89,0,14956,496,156,0,0,97, - 116,97,58,68,65,84,65,0,14973,497,156,0,0,97,116,97,58,69,82,82, - 79,82,0,14987,497,156,0,0,97,116,97,58,70,69,65,84,85,82,69,83, - 0,15002,498,156,0,0,97,116,97,58,83,69,67,84,79,82,45,67,79,85, - 78,84,0,15020,499,156,0,0,97,116,97,58,83,69,67,84,79,82,45,78, - 85,77,66,69,82,0,15042,500,156,0,0,97,116,97,58,67,89,76,73,78, - 68,69,82,45,76,79,87,0,15065,501,156,0,0,97,116,97,58,67,89,76, - 73,78,68,69,82,45,72,73,71,72,0,15087,502,156,0,0,97,116,97,58, - 68,82,73,86,69,0,15110,502,156,0,0,97,116,97,58,72,69,65,68,0, - 15125,503,156,0,0,97,116,97,58,83,84,65,84,85,83,0,15139,503,156,0, - 0,97,116,97,58,67,79,77,77,65,78,68,0,15155,1014,156,0,0,97,116, + 17,16,1,14738,1,10703,1,3,17,16,10,14853,14905,156,0,249881690568902788,97,116,97,58, + 68,101,108,97,121,0,10000,14890,32,156,0,7572172441948721,97,116,97,58,82,69,65,68, + 0,14906,48,156,0,249881690590713888,97,116,97,58,87,82,73,84,69,0,14920,231,156,0, + -3603093112381618504,97,116,97,58,70,76,85,83,72,45,67,65,67,72,69,0,14935,496,156, + 0,-4580000061396379111,97,116,97,58,80,82,73,77,65,82,89,0,14956,496,156,0,7572172441441871,97, + 116,97,58,68,65,84,65,0,14973,497,156,0,249881690569376959,97,116,97,58,69,82,82, + 79,82,0,14987,497,156,0,-3566049879681674636,97,116,97,58,70,69,65,84,85,82,69,83, + 0,15002,498,156,0,-7576115589609865701,97,116,97,58,83,69,67,84,79,82,45,67,79,85, + 78,84,0,15020,499,156,0,8242602575245458363,97,116,97,58,83,69,67,84,79,82,45,78, + 85,77,66,69,82,0,15042,500,156,0,-8353755541002576786,97,116,97,58,67,89,76,73,78, + 68,69,82,45,76,79,87,0,15065,501,156,0,1027228252558089564,97,116,97,58,67,89,76, + 73,78,68,69,82,45,72,73,71,72,0,15087,502,156,0,249881690568181455,97,116,97,58, + 68,82,73,86,69,0,15110,502,156,0,7572172441589351,97,116,97,58,72,69,65,68,0, + 15125,503,156,0,8246095789339101689,97,116,97,58,83,84,65,84,85,83,0,15139,503,156,0, + -4580000078298125356,97,116,97,58,67,79,77,77,65,78,68,0,15155,1014,156,0,-267938161503124064,97,116, 97,58,80,82,73,77,65,82,89,45,68,67,82,45,65,83,0,15172,15215,168, - 0,0,97,116,97,58,99,108,101,97,114,45,98,115,121,0,1793,15227,1,503, - 2049,11284,1,128,21,2049,2722,10,1,15217,2049,2397,10,15196,15252,168,0,0,97,116, + 0,-6999139092234046409,97,116,97,58,99,108,101,97,114,45,98,115,121,0,1793,15227,1,503, + 2049,11284,1,128,21,2049,2722,10,1,15217,2049,2397,10,15196,15252,168,0,8836816225616637118,97,116, 97,58,115,101,116,45,115,101,99,116,111,114,0,1,224,1,502,2049,11307,1, 0,1,497,2049,11307,1,1,1,498,2049,11307,2,1,499,2049,11307,2,1,8,24, - 1,500,2049,11307,1,16,24,1,501,2049,11307,10,15232,15301,168,0,0,109,97,115, - 107,0,1,255,21,10,15291,15316,168,0,0,100,101,108,97,121,0,3841,14905,1793, - 15321,10,1,15320,2049,2449,10,15305,15345,168,0,0,97,116,97,58,114,101,97,100, - 45,119,111,114,100,0,1,496,2049,11329,10,15326,15366,168,0,0,115,116,111,114, + 1,500,2049,11307,1,16,24,1,501,2049,11307,10,15232,15301,168,0,6385467569,109,97,115, + 107,0,1,255,21,10,15291,15316,168,0,210709892404,100,101,108,97,121,0,3841,14905,1793, + 15321,10,1,15320,2049,2449,10,15305,15345,168,0,-6999118299561494438,97,116,97,58,114,101,97,100, + 45,119,111,114,100,0,1,496,2049,11329,10,15326,15366,168,0,8246931865698901915,115,116,111,114, 101,45,119,111,114,100,0,1793,15375,2049,15301,67502597,16,2049,3125,10,1,15368,2049,2241, - 1,8,24,67502597,16,2049,3125,10,15350,15401,168,0,0,97,116,97,58,114,101,97, + 1,8,24,67502597,16,2049,3125,10,15350,15401,168,0,7572172443134641,97,116,97,58,114,101,97, 100,0,2049,15252,1,32,1,503,2049,11307,2049,15316,1,256,1793,15420,2049,15345,2049,15366, - 10,1,15415,2049,2449,3,10,15387,15446,168,0,0,97,116,97,58,119,114,105,116, - 101,45,119,111,114,100,0,1,496,2049,11352,10,15426,15467,168,0,0,102,101,116, + 10,1,15415,2049,2449,3,10,15387,15446,168,0,8837019777144041417,97,116,97,58,119,114,105,116, + 101,45,119,111,114,100,0,1,496,2049,11352,10,15426,15467,168,0,8246307614110004440,102,101,116, 99,104,45,119,111,114,100,0,2049,58,1793,15477,2049,58,1,-8,24,10,1,15471, - 2049,2229,17,10,15451,15498,168,0,0,97,116,97,58,119,114,105,116,101,0,2049, + 2049,2229,17,10,15451,15498,168,0,249881690629849280,97,116,97,58,119,114,105,116,101,0,2049, 15252,1,48,1,503,2049,11307,2049,15316,1,256,1793,15517,2049,15467,2049,15446,10,1,15512, - 2049,2449,3,1,231,1,503,2049,11307,2049,15215,10,15483,15541,168,0,0,101,111,108, + 2049,2449,3,1,231,1,503,2049,11307,2049,15215,10,15483,15541,168,0,6385195044,101,111,108, 63,0,1793,15547,1,13,11,10,1,15543,1793,15555,1,10,11,10,1,15551,1793,15563, - 1,32,11,10,1,15559,2049,2298,22,22,10,15531,15582,168,0,0,118,97,108,105, - 100,63,0,2,2049,104,2049,2740,10,15570,15602,168,0,0,99,104,101,99,107,45, + 1,32,11,10,1,15559,2049,2298,22,22,10,15531,15582,168,0,6954126150804,118,97,108,105, + 100,63,0,2,2049,104,2049,2740,10,15570,15602,168,0,7572242387256805,99,104,101,99,107,45, 98,115,0,2,1793,15609,1,8,11,10,1,15605,1793,15617,1,127,11,10,1,15613, - 2049,2255,22,1793,15630,2049,4160,2049,4160,771,10,1,15624,9,10,15483,15645,168,0,0, - 99,58,103,101,116,0,1793,15647,7425,1,2,2049,10703,10,15634,15669,168,0,0,115, + 2049,2255,22,1793,15630,2049,4160,2049,4160,771,10,1,15624,9,10,15483,15645,168,0,210707155874, + 99,58,103,101,116,0,1793,15647,7425,1,2,2049,10703,10,15634,15669,168,0,8246849936849447419,115, 58,103,101,116,45,119,111,114,100,0,1793,15696,1,1025,2049,4234,1793,15687,2049,15645, 2,2049,4134,2049,15602,2049,15541,10,1,15677,2049,2397,2049,4096,2049,4587,10,1,15671,2049, - 4260,10,15653,15712,168,0,0,115,58,103,101,116,0,1793,15756,1,1025,2049,4234,1793, + 4260,10,15653,15712,168,0,210726130610,115,58,103,101,116,0,1793,15756,1,1025,2049,4234,1793, 15747,2049,15645,2,2049,4134,2049,15602,1793,15733,1,13,11,10,1,15729,1793,15741,1,10, 11,10,1,15737,2049,2255,22,10,1,15720,2049,2397,2049,4096,2049,4587,10,1,15714,2049, - 4260,10,15701,15773,168,0,0,108,105,115,116,101,110,0,2049,14873,2049,14817,2049,4472, + 4260,10,15701,15773,168,0,6953744547860,108,105,115,116,101,110,0,2049,14873,2049,14817,2049,4472, 82,69,84,82,79,47,78,97,116,105,118,101,0,1,15779,2049,10761,2049,10731,3841, 4,1,100,20,2049,10777,1,46,2049,10703,2049,10777,2049,10718,2049,15669,2049,15582,1,415, 1,17,2049,66,1,15813,7,10,1793,15859,1,63,2049,10703,2049,10731,2049,4472,119,111, diff --git a/vm/nga-c/retro.c b/vm/nga-c/retro.c index c67eb20..485eece 100644 --- a/vm/nga-c/retro.c +++ b/vm/nga-c/retro.c @@ -136,6 +136,10 @@ struct NgaState { CELL fsp, afsp; #endif +#ifdef ENABLE_BLOCKS + char BlockFile[1025]; +#endif + /* Scripting */ char **sys_argv; int sys_argc; @@ -192,6 +196,10 @@ void io_malloc(NgaState *); void query_malloc(NgaState *); #endif #endif +#ifdef ENABLE_BLOCKS +void io_blocks(NgaState *); void query_blocks(NgaState *); +#endif + void io_image(NgaState *); void query_image(NgaState *); void load_embedded_image(NgaState *); @@ -309,6 +317,33 @@ void io_malloc(NgaState *vm) { #endif #endif +/* Block Storage -------------------------------------------- */ +#ifdef ENABLE_BLOCKS +void io_blocks(NgaState *vm) { + CELL op = stack_pop(vm); + CELL buffer = stack_pop(vm); + CELL block = stack_pop(vm); + + if (op == 0) { + int fp = open(vm->BlockFile, O_RDONLY, 0666); + lseek(fp, 4096 * block, SEEK_SET); + read(fp, vm->memory + buffer, 4096); + close(fp); + } + + if (op == 1) { + int fp = open(vm->BlockFile, O_WRONLY, 0666); + lseek(fp, 4096 * block, SEEK_SET); + write(fp, vm->memory + buffer, 4096); + close(fp); + } + +} + +void query_blocks(NgaState *) { +} +#endif + /* Multi Core Support ------------------------------------------------ */ #ifdef ENABLE_MULTICORE void init_core(NgaState *vm, CELL x) {