From d4e94f508613cab464c8fd4e9637c3055136bd94 Mon Sep 17 00:00:00 2001 From: John Reiser Date: Fri, 17 Nov 2023 15:10:31 -0800 Subject: [PATCH] Fix varying page size on arm64 https://github.com/upx/upx/issues/734 modified: stub/src/amd64-linux.elf-fold.S modified: stub/src/amd64-linux.elf-main.c modified: stub/src/arm64-linux.elf-entry.S modified: stub/src/arm64-linux.elf-fold.S modified: ../misc/testsuite/upx_testsuite_1-expected_sha256sums.sh ... plus associated stub/*.h etc --- .../upx_testsuite_1-expected_sha256sums.sh | 42 +- src/stub/amd64-linux.elf-fold.h | 349 +++---- src/stub/arm64-linux.elf-entry.h | 935 +++++++++--------- src/stub/arm64-linux.elf-fold.h | 349 +++---- src/stub/src/amd64-linux.elf-fold.S | 4 + src/stub/src/amd64-linux.elf-main.c | 5 +- src/stub/src/arm64-linux.elf-entry.S | 19 +- src/stub/src/arm64-linux.elf-fold.S | 63 +- src/stub/tmp/amd64-linux.elf-fold.map | 73 +- src/stub/tmp/arm64-linux.elf-entry.bin.dump | 28 +- src/stub/tmp/arm64-linux.elf-fold.map | 63 +- 11 files changed, 971 insertions(+), 959 deletions(-) diff --git a/misc/testsuite/upx_testsuite_1-expected_sha256sums.sh b/misc/testsuite/upx_testsuite_1-expected_sha256sums.sh index b7ff5e6e..2a9d3a23 100644 --- a/misc/testsuite/upx_testsuite_1-expected_sha256sums.sh +++ b/misc/testsuite/upx_testsuite_1-expected_sha256sums.sh @@ -46,12 +46,12 @@ b8c35fa2956da17ca505956e9f5017bb5f3a746322647e24ccb8ff28059cafa4 *powerpc-linux. a0950546dc17fca9437219431d8ddb0249ce5b08e899e0c799a87ac982adee70 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t110_compress_ucl_nrv2b_3_no_filter="\ -f5f003838e056bb54b91f5d9c920ab03a8151b03af52c1695124b9debc652cf7 *amd64-linux.elf/upx-3.91 -0a876f33bd25740428d2cd3fb30f3b7c93244b7b9155e9193cd0c191dcfb115b *amd64-linux.elf/upx-3.95 +888d810a13867bbc95d82123f5768987837916fd2338a522825a0b3b05a9e0b1 *amd64-linux.elf/upx-3.91 +e9758349710ee1980f9205c96f8cc2b48baf37fbfcabf203813a8ed1063f9543 *amd64-linux.elf/upx-3.95 1bd70a3cd3b34e635a3c947cacd46c4d66bf07e0fd350cc6d1f3cf60483f75b9 *amd64-win64.pe/upx-3.95.exe ff5ce3bfae584c64e140c3a948b8dbb644c7d9a4cb6f9dbd2b2f60a82a10b648 *arm-linux.elf/upx-3.95 39c50022b8c5401c61c72834a921f2dc1ea9192bfe1474b14ae4565dfab37753 *arm-wince.pe/upx-3.91.exe -f69a44073314f2e6aee3f3659bd4103dd01220409e8d03f0bcf6f3d96ccc1a04 *arm64-linux.elf/upx-3.95 +78a925a6dbbf3fabd96fb918e740be4cf6ce531acd7a43a135a95d0209ddd60d *arm64-linux.elf/upx-3.95 498d988f6d693e5391464abf6b9f2680a9526af32a1ea0ebfe3617cc8cbeb59e *armeb-linux.elf/upx-3.91 3bc2653839f2d7af9fe0ce47f9500058b23fbd1227cdcc2216a17d3e9bc95511 *armeb-linux.elf/upx-3.95 4af922bc967bf31ac7fbdc31a6957ca68ae29c8fee0666d1ebb837190dd74951 *i386-dos32.djgpp2.coff/upx-3.91.exe @@ -69,12 +69,12 @@ ed149318036745223bec419a0bacd7b623d8f2b31599f073b2a627e21677d29b *powerpc-linux. 90a3eaa130efde41a5ca41273038cbafaa311f9b8541dec35f03e76337924747 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t120_compress_ucl_nrv2d_3_no_filter="\ -235afd23b0f2510858ba9fa12206d7b5644023e49c64360276212ce779ea5be0 *amd64-linux.elf/upx-3.91 -d5121045a801c776605d58e3491f2ae4d279f4fb4dadfa928006538a3b610b2d *amd64-linux.elf/upx-3.95 +81ca0d197880a1d8fa5df65fab87e61b978a5460ee3aa6c63b63d391df3da267 *amd64-linux.elf/upx-3.91 +d64c59cb82e55e5ea7e4b0999d9abdd7b454332c50da560f3103a391ab4c63c6 *amd64-linux.elf/upx-3.95 0314c6974f29d180e46e41a1004d46a3993fe96f03de7f78d45ad89ad3b2177e *amd64-win64.pe/upx-3.95.exe 1a02d22e25c9bd5be155ef91fbded024e1ae81c4e137e66225c4b9cfba507e02 *arm-linux.elf/upx-3.95 b820cc3f17e200a8d1f6d27976361c3eb82c28169bb61bfee833b3ff789bb185 *arm-wince.pe/upx-3.91.exe -4ff02f6d2118a886743a86ef8fdedcdad0e6ae62be58048eda1e834383c243cb *arm64-linux.elf/upx-3.95 +87ba364a2672eeaecdfb9f64d2995c48ce4ba6a77f5da1ce4fbbb2237c598fb0 *arm64-linux.elf/upx-3.95 65b90c588af166d0cbcbfce1d6353c037121c4caa5e141f2436a11f31d3c949f *armeb-linux.elf/upx-3.91 1fe2d49a9249c0cb1cb9703cb64751ef687a6d6ff4cf2f833532a3bbbb08de08 *armeb-linux.elf/upx-3.95 bfd11228a09dbc7c1f2e2e1c5ec7cbf0b6d3c7c6c11d4bb62d031a447e2f1399 *i386-dos32.djgpp2.coff/upx-3.91.exe @@ -92,12 +92,12 @@ d40c96ef6d349d288dc26780efab2782cc1de5021b7065b879e86156baa385b3 *mipsel-linux.e 18385c20adbd165a223cc35011810ceb2d8c9442e522c3f381bb3ffb8503d818 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t130_compress_ucl_nrv2e_3_no_filter="\ -5a65f4077ac1b87b324597314d6655ba13231bfbda081d0568bb82f6dbcdb938 *amd64-linux.elf/upx-3.91 -3dea24871fa9f16dee6c85fac6daf03d4e5a5664ea085d0dc6b1516470309601 *amd64-linux.elf/upx-3.95 +66ffdd4f4dd24c3920992119ce1e2eb4c70320e2ca12a900c277909ec11146fb *amd64-linux.elf/upx-3.91 +701d216c278818475ab3366bf8f0f8ce54effe97143df243b52fe5c684a45618 *amd64-linux.elf/upx-3.95 97bb5953405f3413d9ff9bdc272caf2858697168b3e85dab54213da356b5ea0f *amd64-win64.pe/upx-3.95.exe c5e074540cae1d676f038f8e17e67856262e0990bdb961fdd9437e45c15e0dbd *arm-linux.elf/upx-3.95 53aa5cfc382c11fb0165fd70d3b86e958cd272d4f907af9d78c42bf55bf77911 *arm-wince.pe/upx-3.91.exe -6861b012937538d928dee8c39a7daad4620b8bfe7f5b8a8f44d0f1109fc46bc6 *arm64-linux.elf/upx-3.95 +ffe5b753e5259130ca8de6a5f6533ae7f7d49bbed60f9186eadc4232e819c08c *arm64-linux.elf/upx-3.95 b8f83b92e4e97c0d191f761726e1b5e85e1b806646f67f50c9a020579c3f7f23 *armeb-linux.elf/upx-3.91 aedab9a8684807f9ca209f6b4fa2997d22b9f733ad7179d90be36e3b7e117dfc *armeb-linux.elf/upx-3.95 c20263256b2819824804ab12f1ef0497165fc056b64dbeec65979e4f5da5f2c4 *i386-dos32.djgpp2.coff/upx-3.91.exe @@ -115,12 +115,12 @@ c4be58a8defb8cab351755b3db461c773de568bee98aae831cf5d0ec815b8a99 *mipsel-linux.e a8d55c2109e4e9fc98528b8799275b0eef9a307d39997141d0f5e271942ba947 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t140_compress_lzma_2_no_filter="\ -d9a9595ab365a5a46b65097fa58194fd7df151648065473c33fedbbda284f731 *amd64-linux.elf/upx-3.91 -a08d84fe590ca161379af677d7f8ad0ccae7392a72b1760964e6e79c419f1451 *amd64-linux.elf/upx-3.95 +82f2e06bc34df93fd56365cd314e97b9e73da6ffe7361bd05fea7929a1e2ddc5 *amd64-linux.elf/upx-3.91 +8c7397921c255abb883420b3be274ee7318faa98f8260e290396457f88a1f7b1 *amd64-linux.elf/upx-3.95 b8815f95e92d6853a04a86069e9054115be2d9aa657fa2c8912d0f37e56c894f *amd64-win64.pe/upx-3.95.exe abd068bb3cbebb573461e70146a18cd6ddb691a2bf589a0a2e735d87a3205ca5 *arm-linux.elf/upx-3.95 245970c83aaae44f58e9131bfdb444a52e85f1c55dbe6f81ac182608bd9b5949 *arm-wince.pe/upx-3.91.exe -439f6f75a26f4fa4b80d24b6e4b147cbc4ac8dd7e32f462947f8ed067a1ff2b8 *arm64-linux.elf/upx-3.95 +76a3e86a15793b1258d6b7365e0a88989e7bb47b3de866229ba6b55738575584 *arm64-linux.elf/upx-3.95 62d4a79948ac7d4e010978102678805df9516b627315ffe9741886b318f525f0 *armeb-linux.elf/upx-3.91 0d266dcf92ab036baeb66a611d2302b7993416e4cebe2bd91b599c2fe46d3449 *armeb-linux.elf/upx-3.95 6e392e442af3de591fadef2b5d1dd454398e4e9cd04ee5bb391623c1a6fd2dbf *i386-dos32.djgpp2.coff/upx-3.91.exe @@ -138,12 +138,12 @@ be11a38759b965dc96f7205ba1ffa905001290d2a845219f324cdd86a0df1bd2 *powerpc-linux. 739a8db29e6df5873771849d011893020081380173af50e6f62f51ea78b2b594 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t150_compress_ucl_2_all_filters="\ -1f28c1defc75ae9991f259a03eca317aa069e4e395738f27d8075ba384033f84 *amd64-linux.elf/upx-3.91 -c9d8d9f0ec38c1a4aedf70aad573dc609762a38855efbc8c194aa4329abe7dbd *amd64-linux.elf/upx-3.95 +580355d8929bb55c13c29197b5e54f7f7c41a278ead10d3710fdd802b1e6bd87 *amd64-linux.elf/upx-3.91 +f346b56b3ddded1429e5598d3b0d9290b69d1d95a006a3fe9a12d387e622ac02 *amd64-linux.elf/upx-3.95 434732efb16b89114162a1787a28c128e2c11edb9835411f2b707cac5cd475ae *amd64-win64.pe/upx-3.95.exe d0e5525b61791c58515d40aa073ff005b4f50e9f96072cb92ac7e57edaf00639 *arm-linux.elf/upx-3.95 6d641a40ed8563e8505fb1b5a3efa76319e4524858916a61efe606654c7001c4 *arm-wince.pe/upx-3.91.exe -e2aabc3d0d78eed41cc8acbfe5f11ca3643eadba0ead8149a333d683c96a42b1 *arm64-linux.elf/upx-3.95 +c33a948a19bb8e3bbf3976d3c6fe4c2201d216b516a2f951c31aecfdc6d83f1d *arm64-linux.elf/upx-3.95 2b067cc3c42c7cea9d8ad39c04dc8b71e7dc720e41a26db4887433c5f6cef2ca *armeb-linux.elf/upx-3.91 ffe919f62e0e79b0f64331a37f94ff487097a3f8fbdc417db9849d1e43a93a34 *armeb-linux.elf/upx-3.95 f05a9c921b3a728a2baaf896fb95993a1ffd7c2cc3be26497c874a3ba023ec19 *i386-dos32.djgpp2.coff/upx-3.91.exe @@ -161,12 +161,12 @@ e706d651f311f7150959eecdacbf29398f8b2146b89052e5aa50527901d11112 *powerpc-linux. 37df112c6c276cd1a916887f6755ba986d98118fd2426b632d2462ef7d805345 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t160_compress_all_methods_1_no_filter="\ -5489c6487b28d8653681b71255b12fd7cbb041bb72211ad28caf5c217f3b9642 *amd64-linux.elf/upx-3.91 -f08229f317e2075e7c67d7cd7a71d61a16b3223c30848b3b13e788297654e77c *amd64-linux.elf/upx-3.95 +e9a365024a859d0c9678ca010e9a84b7bfedc599797d34fb6dc59a3bd38b0ce9 *amd64-linux.elf/upx-3.91 +44341b08d41a82d94fefb7fa773b52a116a41ae0e18052581003592e543db444 *amd64-linux.elf/upx-3.95 f38ff7edc916c1a3e82020035667de858c89d52c98d960dad0e21b4da444ed6c *amd64-win64.pe/upx-3.95.exe d1b445bbe87207a29f113471d395a3441d0d6f4efa8dd7d68ee2b8b5266fb838 *arm-linux.elf/upx-3.95 20d7b538bb030ba3a1a29eb998ef6b2fcaabbe84d46d5fde71853d2224c2d1ec *arm-wince.pe/upx-3.91.exe -a3abbcd73252c71cc32ae289c60c90fefd03f3d99c1e4e59d1fc6e85428297f5 *arm64-linux.elf/upx-3.95 +98d966af8bbc274e0afb4a5eeeadaff89970ed9df43c87b714375c1bf2ed0948 *arm64-linux.elf/upx-3.95 7b84ae933ea82892f9e9a5d4ee268c7aaa77a48290c89e64e794a472c034fb49 *armeb-linux.elf/upx-3.91 a10db43eaf25abeafa0bfc5c633b09b35f60a1f6470797674b9312c9cfdce1eb *armeb-linux.elf/upx-3.95 d7a93b38803d59f0540fca4d02516dda9a21cbbf989e9213f4bb8b6d639d630b *i386-dos32.djgpp2.coff/upx-3.91.exe @@ -184,12 +184,12 @@ a28ab3f302f093effc7d4ac71dbadc315eb38245bf9de7a1af24108d89ed1f7b *powerpc-linux. fe9fc46b39f6bba0ff118346f697f91fa9b3cae12194e488b5064fe7bb1e38e7 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t170_compress_all_methods_no_lzma_5_no_filter="\ -875751e96a24bf1796bc08ef9b3beda4df36c029037fe5a550164be19db99e69 *amd64-linux.elf/upx-3.91 -75f185bb0471c27dd511a874a0b760419e5c5fae1f19f462691de61ae3aad576 *amd64-linux.elf/upx-3.95 +e53bd5d25ad817c80b6f7e0c5cd3e4781d4a96c8de007e73f09ee51447530207 *amd64-linux.elf/upx-3.91 +9655b5c71bccf78820f8697c70d55962e2b37eb5a203708454a3fce0327fc1ff *amd64-linux.elf/upx-3.95 5fccb0f5044baaa74d176efb25eefa3b5810dc737ed0f9d38084d275f7ebe7b8 *amd64-win64.pe/upx-3.95.exe c2fe085c289ad4a06e4db9d53b7c7c1537307f21c87bcc20ea13f1352de806b5 *arm-linux.elf/upx-3.95 6c1ac767d302306509639ddb549253fe826f5e57677c29b0a431d98beababd3f *arm-wince.pe/upx-3.91.exe -878f6213f840a98a6aac08293b402df9637568361cd04804706527ca363f6672 *arm64-linux.elf/upx-3.95 +d9e4878aab48d576121ef662366aefc00616f1ed873046dbfe70310dc8a0e443 *arm64-linux.elf/upx-3.95 7790f133d6b2d220b060c36e17ec961b1e1db27ce602a5399f202514aefa18fa *armeb-linux.elf/upx-3.91 faa7808665335846301b2b665fa9117b5ef94908f196583d62fa617f21620b93 *armeb-linux.elf/upx-3.95 9f5602f4d26213fdbfef6b35bcf0ed00b34f7ff2891b7e8e3e3047761c1f9e5c *i386-dos32.djgpp2.coff/upx-3.91.exe diff --git a/src/stub/amd64-linux.elf-fold.h b/src/stub/amd64-linux.elf-fold.h index 9f2b74ae..86876e72 100644 --- a/src/stub/amd64-linux.elf-fold.h +++ b/src/stub/amd64-linux.elf-fold.h @@ -1,5 +1,5 @@ /* amd64-linux.elf-fold.h - created from amd64-linux.elf-fold.bin, 3277 (0xccd) bytes + created from amd64-linux.elf-fold.bin, 3281 (0xcd1) bytes This file is part of the UPX executable compressor. @@ -32,20 +32,20 @@ /* clang-format off */ -#define STUB_AMD64_LINUX_ELF_FOLD_SIZE 3277 -#define STUB_AMD64_LINUX_ELF_FOLD_ADLER32 0xc4532f57 -#define STUB_AMD64_LINUX_ELF_FOLD_CRC32 0x7738b350 +#define STUB_AMD64_LINUX_ELF_FOLD_SIZE 3281 +#define STUB_AMD64_LINUX_ELF_FOLD_ADLER32 0x4d0b30b2 +#define STUB_AMD64_LINUX_ELF_FOLD_CRC32 0x1e37e8f7 -unsigned char stub_amd64_linux_elf_fold[3277] = { +unsigned char stub_amd64_linux_elf_fold[3281] = { /* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0010 */ 2, 0, 62, 0, 1, 0, 0, 0,188, 0, 16, 0, 0, 0, 0, 0, /* 0x0020 */ 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0030 */ 0, 0, 0, 0, 64, 0, 56, 0, 2, 0, 0, 0, 0, 0, 0, 0, /* 0x0040 */ 1, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0050 */ 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, -/* 0x0060 */ 205, 12, 0, 0, 0, 0, 0, 0,205, 12, 0, 0, 0, 0, 0, 0, +/* 0x0060 */ 209, 12, 0, 0, 0, 0, 0, 0,209, 12, 0, 0, 0, 0, 0, 0, /* 0x0070 */ 0, 0, 16, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, -/* 0x0080 */ 205, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +/* 0x0080 */ 209, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0090 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x00a0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, /* 0x00b0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,232, 74, 0, 0, @@ -66,7 +66,7 @@ unsigned char stub_amd64_linux_elf_fold[3277] = { /* 0x01a0 */ 239, 8, 73,141,119,248, 72,193,233, 3,243, 72,165, 72,141,103, /* 0x01b0 */ 8,252, 75,141, 12, 38,139, 67,252,131,224, 1, 72, 1,193, 65, /* 0x01c0 */ 89, 94, 95, 88, 72,129,236, 0, 8, 0, 0, 72,137,226, 80, 73, -/* 0x01d0 */ 137,197, 73,137,232,232, 76, 6, 0, 0, 72,129,196, 8, 8, 0, +/* 0x01d0 */ 137,197, 73,137,232,232, 80, 6, 0, 0, 72,129,196, 8, 8, 0, /* 0x01e0 */ 0, 72,137, 68, 36, 32, 91, 73,139,181,160, 0, 0, 0, 76,137, /* 0x01f0 */ 239,232, 97, 0, 0, 0, 76,137,239,232,101, 0, 0, 0,133,219, /* 0x0200 */ 120, 31, 77, 41,201, 65,137,216,106, 2, 89,106, 1, 90,190, 0, @@ -76,170 +76,171 @@ unsigned char stub_amd64_linux_elf_fold[3277] = { /* 0x0240 */ 195,185,255, 15, 0, 0, 33,249, 72, 41,207, 72, 1,206,233, 20, /* 0x0250 */ 0, 0, 0,176, 60,235, 2,176, 12,235, 2,176, 3,235, 2,176, /* 0x0260 */ 2,235, 2,176, 11,235, 2,176, 10,235, 2,176, 1,235, 2,176, -/* 0x0270 */ 0,235,188, 0, 81, 72, 57, 23, 76,139, 71, 8, 72,141, 74,255, -/* 0x0280 */ 115, 10,191,127, 0, 0, 0,232,199,255,255,255, 72,131,249,255, -/* 0x0290 */ 116, 17, 65, 15,182, 0, 72,255,201, 73,255,192,136, 6, 72,255, -/* 0x02a0 */ 198,235,233, 72, 1, 87, 8, 72, 41, 23, 88,195, 65, 85, 73,137, -/* 0x02b0 */ 213, 65, 84, 73,137,204, 85, 72,137,253, 83, 72,137,243, 72,131, -/* 0x02c0 */ 236, 40, 72,131, 62, 0, 15,132,230, 0, 0, 0, 72,141,116, 36, -/* 0x02d0 */ 16,186, 12, 0, 0, 0, 72,137,239,232,150,255,255,255,139, 68, -/* 0x02e0 */ 36, 16,139,116, 36, 20,133,192,117, 21,129,254, 85, 80, 88, 33, -/* 0x02f0 */ 117, 17, 72,131,125, 0, 0, 15,132,181, 0, 0, 0,235, 4,133, -/* 0x0300 */ 246,117, 10,191,127, 0, 0, 0,232, 70,255,255,255, 57,198,119, -/* 0x0310 */ 242,137,194, 72, 59, 19,119,235, 57,198, 72,139, 67, 8,115,108, -/* 0x0320 */ 72,137, 84, 36, 8, 72,139,125, 8, 72,141, 76, 36, 8, 68,139, -/* 0x0330 */ 68, 36, 24, 72,137,194, 65,255,213,133,192,117,198,139, 68, 36, -/* 0x0340 */ 16, 72,139,116, 36, 8, 72, 57,198,117,184, 15,182, 76, 36, 25, -/* 0x0350 */ 132,201, 15,149,194, 49,192, 77,133,228, 15,149,192,133,194,116, -/* 0x0360 */ 29, 72,129,254, 0, 2, 0, 0,119, 5, 72, 57, 51,117, 15, 15, -/* 0x0370 */ 182, 84, 36, 26, 15,182,201, 72,139,123, 8, 65,255,212,139, 68, -/* 0x0380 */ 36, 20, 72, 1, 69, 8, 72, 41, 69, 0,235, 13,137,242, 72,137, -/* 0x0390 */ 239, 72,137,198,232,219,254,255,255,139, 84, 36, 16, 72,139, 3, -/* 0x03a0 */ 72, 1, 83, 8, 72, 41,208, 72,133,192, 72,137, 3,233, 20,255, -/* 0x03b0 */ 255,255, 72,131,196, 40, 91, 93, 65, 92, 65, 93,195, 72,133,255, -/* 0x03c0 */ 73,137,209,116, 54, 64,246,199, 1,117, 48, 72,139, 15, 65,137, -/* 0x03d0 */ 240, 76, 57,193,116, 18, 72,131,249, 1, 15,148,194, 49,192,133, -/* 0x03e0 */ 246, 15,149,192,133,194,116, 8, 76,137, 7, 76,137, 79, 8,195, -/* 0x03f0 */ 72,133,201,116, 6, 72,131,199, 16,235,208,195, 65, 87, 73,137, -/* 0x0400 */ 255, 65, 86, 65, 85, 65, 84, 73,137,252, 85, 83, 72,131,236,104, -/* 0x0410 */ 76, 3,103, 32, 72,133,246, 72,139,132, 36,160, 0, 0, 0,137, -/* 0x0420 */ 84, 36, 60, 72,137,116, 36, 64, 72,137, 76, 36, 48, 76,137, 68, -/* 0x0430 */ 36, 40, 76,137, 76, 36, 32, 72,139, 56, 65, 15,183, 87, 16,116, -/* 0x0440 */ 76, 72,139, 71, 32, 72, 1,248, 72, 43,120, 72,102,131,250, 2, -/* 0x0450 */ 117, 4, 72,139,120, 16, 72,139,112, 40, 69, 49,201, 65,131,200, -/* 0x0460 */ 255, 49,210,185, 50, 0, 0, 0, 72,141, 4, 62, 72,137, 68, 36, -/* 0x0470 */ 72,232,180,253,255,255,102, 65,131,127, 16, 2, 73,137,198, 15, -/* 0x0480 */ 133,172, 0, 0, 0, 69, 49,246,233,164, 0, 0, 0,102,131,250, -/* 0x0490 */ 3, 65, 15,183, 87, 56,185, 16, 0, 0, 0,184, 0, 0, 0, 0, -/* 0x04a0 */ 73,137,248, 76,137,230, 15, 68,200, 72,131,205,255, 49,219, 49, -/* 0x04b0 */ 255,131,193, 34,255,202,120, 33,131, 62, 1,117, 22, 72,139, 70, -/* 0x04c0 */ 16, 72, 57,232, 72, 15, 66,232, 72, 3, 70, 40, 72, 57,195, 72, -/* 0x04d0 */ 15, 66,216, 72,131,198, 56,235,219, 72,129,229, 0,240,255,255, -/* 0x04e0 */ 72, 41,235, 72,129,195,255, 15, 0, 0, 72,129,227, 0,240,255, -/* 0x04f0 */ 255,246,193, 16,116, 5, 72,137,239,235, 19, 72,133,237,117, 14, -/* 0x0500 */ 137,200, 76,137,199,131,200, 16, 77,133,192, 15, 69,200, 69, 49, -/* 0x0510 */ 201, 65,131,200,255, 49,210, 72,137,222,232, 11,253,255,255, 72, -/* 0x0520 */ 137,199, 72,141, 4, 3, 73,137,254, 72,137, 68, 36, 72, 73, 41, -/* 0x0530 */ 238,102, 65,131,127, 56, 0,199, 68, 36, 28, 0, 0, 0, 0, 15, -/* 0x0540 */ 132,192, 2, 0, 0, 72,131,124, 36, 64, 0,116, 35, 65,131, 60, -/* 0x0550 */ 36, 6,117, 28, 73,139, 84, 36, 16, 72,139,124, 36, 48,190, 3, -/* 0x0560 */ 0, 0, 0, 76, 1,242,232, 82,254,255,255,233,126, 2, 0, 0, -/* 0x0570 */ 65,131, 60, 36, 1, 15,133,115, 2, 0, 0, 73,131,124, 36, 40, -/* 0x0580 */ 0, 15,132,103, 2, 0, 0, 65,139, 76, 36, 4,199, 68, 36, 24, -/* 0x0590 */ 64, 98, 81,115,131,225, 7,193,225, 2,211,108, 36, 24,131,100, -/* 0x05a0 */ 36, 24, 7, 72,131,124, 36, 64, 0,116, 75, 73,131,124, 36, 8, -/* 0x05b0 */ 0,117, 67, 73,139, 84, 36, 16, 72,139,124, 36, 48,190, 3, 0, -/* 0x05c0 */ 0, 0, 76, 1,242, 73, 3, 87, 32,232,239,253,255,255, 73, 15, -/* 0x05d0 */ 183, 87, 56, 72,139,124, 36, 48,190, 5, 0, 0, 0,232,219,253, -/* 0x05e0 */ 255,255, 73, 15,183, 87, 54, 72,139,124, 36, 48,190, 4, 0, 0, -/* 0x05f0 */ 0,232,199,253,255,255, 73,139,124, 36, 16, 73,139, 68, 36, 40, -/* 0x0600 */ 185, 50, 0, 0, 0, 73,139,116, 36, 32, 76, 1,247, 72, 1,248, -/* 0x0610 */ 72,137,250, 72,137,253,129,226,255, 15, 0, 0, 72,137, 68, 36, -/* 0x0620 */ 8, 72,137,240, 72, 1,208, 72, 41,213, 72,137,116, 36, 80, 72, -/* 0x0630 */ 137, 68, 36, 16,139, 68, 36, 24, 76,141, 44, 55,139,116, 36, 24, -/* 0x0640 */ 72,137,124, 36, 88,131,200, 2, 72,131,124, 36, 64, 0, 15, 69, -/* 0x0650 */ 240,137,240,131,224,251, 72,131,124, 36, 64, 0, 15, 69,240, 73, -/* 0x0660 */ 139, 68, 36, 8, 72, 41,208,131,202,255, 72,131,124, 36, 64, 0, -/* 0x0670 */ 117, 6,139, 84, 36, 60,177, 18, 65,137,208,137,242, 72,139,116, -/* 0x0680 */ 36, 16, 73,137,193, 72,137,239,232,157,251,255,255, 72, 57,197, -/* 0x0690 */ 15,133, 32, 1, 0, 0, 72,131,124, 36, 64, 0,116, 25, 72,139, -/* 0x06a0 */ 76, 36, 32, 72,139, 84, 36, 40, 72,141,116, 36, 80, 72,139,124, -/* 0x06b0 */ 36, 64,232,245,251,255,255,246, 68, 36, 24, 2,116, 22, 68,137, -/* 0x06c0 */ 233, 76,137,239, 49,192,247,217,252,129,225,255, 15, 0, 0,243, -/* 0x06d0 */ 170, 73,137,253, 72,131,124, 36, 64, 0, 15,132,224, 0, 0, 0, -/* 0x06e0 */ 199, 68, 36, 4, 0, 0, 0, 0, 72,184,255,255,255,255, 1, 0, -/* 0x06f0 */ 0, 0, 73, 35, 4, 36, 72,186, 1, 0, 0, 0, 1, 0, 0, 0, -/* 0x0700 */ 72, 57,208, 15,133,152, 0, 0, 0, 73,139, 84, 36, 40, 73,139, -/* 0x0710 */ 76, 36, 16, 73, 59, 84, 36, 32, 72,141, 4, 10, 74,141, 28, 48, -/* 0x0720 */ 117, 14,137,216,247,216, 37,255, 15, 0, 0,131,248, 3,119, 58, -/* 0x0730 */ 73,131,124, 36, 8, 0, 74,141, 92, 49, 12,116, 45, 69, 49,201, -/* 0x0740 */ 65,131,200,255, 49,255,185, 34, 0, 0, 0,186, 3, 0, 0, 0, -/* 0x0750 */ 190, 0, 16, 0, 0,199, 68, 36, 4, 1, 0, 0, 0,232,200,250, -/* 0x0760 */ 255,255, 72,133,192, 72,137,195,116, 55,131,124, 36, 4, 0,199, -/* 0x0770 */ 3, 15, 5, 90,195,116, 18,186, 5, 0, 0, 0,190, 4, 0, 0, -/* 0x0780 */ 0, 72,137,223,232,184,250,255,255, 72,133,219,116, 19, 72,139, -/* 0x0790 */ 124, 36, 48, 72,137,218, 49,246, 72,131,231,254,232, 28,252,255, -/* 0x07a0 */ 255,139, 84, 36, 24, 72,139,116, 36, 16, 72,137,239,232,143,250, -/* 0x07b0 */ 255,255,133,192,116, 10,191,127, 0, 0, 0,232,147,250,255,255, -/* 0x07c0 */ 76, 59,108, 36, 8,115, 39, 76, 41,108, 36, 8,139, 84, 36, 24, -/* 0x07d0 */ 69, 49,201, 72,139,116, 36, 8, 65,131,200,255,185, 50, 0, 0, -/* 0x07e0 */ 0, 76,137,239,232, 65,250,255,255, 73, 57,197,117,200,255, 68, -/* 0x07f0 */ 36, 28, 65, 15,183, 71, 56, 73,131,196, 56, 57, 68, 36, 28, 15, -/* 0x0800 */ 140, 64,253,255,255, 72,139,132, 36,160, 0, 0, 0, 76,137, 48, -/* 0x0810 */ 77, 3,119, 24, 72,131,196,104, 91, 93, 65, 92, 65, 93, 76,137, -/* 0x0820 */ 240, 65, 94, 65, 95,195, 65, 87, 65, 86, 73,137,206, 49,201, 65, -/* 0x0830 */ 85, 65, 84, 77,137,204, 85, 72,137,213, 76,141,109, 64, 83, 76, -/* 0x0840 */ 137,195, 72,131,236, 72,139, 7, 72,137,124, 36, 24, 72,137,124, -/* 0x0850 */ 36, 40, 76,141,188, 36,128, 0, 0, 0, 72,137,116, 36, 32, 72, -/* 0x0860 */ 141,116, 36, 48, 72,137, 84, 36, 56, 76,137,194, 72,137, 68, 36, -/* 0x0870 */ 48,139, 71, 4, 72,141,124, 36, 16, 72,131,192, 12, 72,137, 68, -/* 0x0880 */ 36, 16,232, 37,250,255,255, 65, 83, 77,137,225, 49,210, 73,137, -/* 0x0890 */ 216, 76,137,241, 72,137,239, 72,141,116, 36, 40, 65, 87,232, 89, -/* 0x08a0 */ 251,255,255,190, 9, 0, 0, 0, 72,137,194, 76,137,247, 73,137, -/* 0x08b0 */ 196,232, 7,251,255,255, 65, 89, 65, 90,102,131,125, 56, 0,199, -/* 0x08c0 */ 68, 36, 12, 0, 0, 0, 0, 15,132,143, 0, 0, 0, 65,131,125, -/* 0x08d0 */ 0, 3,117,114, 73,139, 63, 73, 3,125, 16, 49,210, 49,246,232, -/* 0x08e0 */ 123,249,255,255,133,192,137,195,120, 23,186, 0, 4, 0, 0, 72, -/* 0x08f0 */ 137,238,137,199,232,118,249,255,255, 72, 61, 0, 4, 0, 0,116, -/* 0x0900 */ 10,191,127, 0, 0, 0,232, 72,249,255,255, 73,199, 7, 0, 0, -/* 0x0910 */ 0, 0, 65, 80, 69, 49,201, 69, 49,192, 49,201, 65, 87,137,218, -/* 0x0920 */ 49,246, 72,137,239,232,210,250,255,255, 73,139, 23,190, 7, 0, -/* 0x0930 */ 0, 0, 76,137,247, 73,137,196,232,128,250,255,255,137,223,232, -/* 0x0940 */ 23,249,255,255, 94, 95,255, 68, 36, 12, 15,183, 69, 56, 73,131, -/* 0x0950 */ 197, 56, 57, 68, 36, 12, 15,130,113,255,255,255, 72,131,196, 72, -/* 0x0960 */ 76,137,224, 91, 93, 65, 92, 65, 93, 65, 94, 65, 95,195, 0, 0, -/* 0x0970 */ 85, 72,137,229, 83, 82, 86, 87,232,101, 0, 0, 0, 91, 95, 94, -/* 0x0980 */ 80, 15,182, 75, 9,133,201,116, 11, 15,182, 83, 10,139, 54,232, -/* 0x0990 */ 4, 0, 0, 0, 88, 91, 93,195,131,249, 73,117, 68, 83, 87, 72, -/* 0x09a0 */ 141, 76, 55,253, 94, 86, 91,235, 47, 72, 57,206,115, 50, 86, 94, -/* 0x09b0 */ 172, 60,128,114, 10, 60,143,119, 6,128,126,254, 15,116, 6, 44, -/* 0x09c0 */ 232, 60, 1,119,228, 72, 57,206,115, 22, 86,173, 40,208,117,223, -/* 0x09d0 */ 95, 15,200, 41,248, 1,216,171, 72, 57,206,115, 3,172,235,223, -/* 0x09e0 */ 91,195, 82, 15,182, 87, 8, 87, 86, 95, 94,139, 70, 4, 72,131, -/* 0x09f0 */ 198, 12, 72, 1,240, 80, 87, 49,219, 49,201, 72,131,205,255,235, -/* 0x0a00 */ 78,139, 30, 72,131,238,252, 17,219,138, 22,243,195, 1,219,116, -/* 0x0a10 */ 240,243,195, 72,141, 4, 47,131,249, 5,138, 16,118, 32,131,253, -/* 0x0a20 */ 252,119, 27,131,233, 4,139, 16, 72,131,192, 4,131,233, 4,137, -/* 0x0a30 */ 23, 72,141,127, 4,115,239,131,193, 4,138, 16,116, 15, 72,255, -/* 0x0a40 */ 192,136, 23,255,201,138, 16, 72,141,127, 1,117,241,243,195,252, -/* 0x0a50 */ 128,250, 8, 15,133,218, 0, 0, 0,235, 8, 72,255,198,136, 23, -/* 0x0a60 */ 72,255,199,138, 22, 1,219,117, 10,139, 30, 72,131,238,252, 17, -/* 0x0a70 */ 219,138, 22,114,230,141, 65, 1,235, 18,255,200, 1,219,117, 10, -/* 0x0a80 */ 139, 30, 72,131,238,252, 17,219,138, 22, 17,192, 1,219,117, 10, -/* 0x0a90 */ 139, 30, 72,131,238,252, 17,219,138, 22, 17,192, 1,219,117, 10, -/* 0x0aa0 */ 139, 30, 72,131,238,252, 17,219,138, 22,115,206,131,232, 3,114, -/* 0x0ab0 */ 29,193,224, 8, 15,182,210, 9,208, 72,255,198,131,240,255, 15, -/* 0x0ac0 */ 132, 59,245,239,255,209,248, 72, 99,232,114, 67,235, 14, 1,219, -/* 0x0ad0 */ 117, 8,139, 30, 72,131,238,252, 17,219,114, 51,255,193, 1,219, -/* 0x0ae0 */ 117, 8,139, 30, 72,131,238,252, 17,219,114, 35, 1,219,117, 10, -/* 0x0af0 */ 139, 30, 72,131,238,252, 17,219,138, 22, 17,201, 1,219,117, 8, -/* 0x0b00 */ 139, 30, 72,131,238,252, 17,219,115,226,131,193, 2,235, 16, 1, -/* 0x0b10 */ 219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17,201, 72, -/* 0x0b20 */ 129,253, 0,251,255,255,131,209, 2,232,229,254,255,255,233, 48, -/* 0x0b30 */ 255,255,255, 87, 94,128,250, 5, 15,133,204, 0, 0, 0,235, 8, -/* 0x0b40 */ 72,255,198,136, 23, 72,255,199,138, 22, 1,219,117, 10,139, 30, -/* 0x0b50 */ 72,131,238,252, 17,219,138, 22,114,230,141, 65, 1,235, 18,255, -/* 0x0b60 */ 200, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17, -/* 0x0b70 */ 192, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17, -/* 0x0b80 */ 192, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22,115, -/* 0x0b90 */ 206,131,232, 3,114, 27,193,224, 8, 15,182,210, 9,208, 72,255, -/* 0x0ba0 */ 198,131,240,255, 15,132, 86,244,239,255,209,248, 72, 99,232,235, -/* 0x0bb0 */ 14, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17, -/* 0x0bc0 */ 201, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17, -/* 0x0bd0 */ 201,117, 35,255,193, 1,219,117, 10,139, 30, 72,131,238,252, 17, -/* 0x0be0 */ 219,138, 22, 17,201, 1,219,117, 8,139, 30, 72,131,238,252, 17, -/* 0x0bf0 */ 219,115,226,131,193, 2, 72,129,253, 0,251,255,255,131,209, 1, -/* 0x0c00 */ 232, 14,254,255,255,233, 62,255,255,255, 87, 94,128,250, 2, 15, -/* 0x0c10 */ 133,182, 0, 0, 0,235, 8, 72,255,198,136, 23, 72,255,199,138, -/* 0x0c20 */ 22, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22,114, -/* 0x0c30 */ 230,141, 65, 1, 1,219,117, 10,139, 30, 72,131,238,252, 17,219, -/* 0x0c40 */ 138, 22, 17,192, 1,219,117, 10,139, 30, 72,131,238,252, 17,219, -/* 0x0c50 */ 138, 22,115,224,131,232, 3,114, 23,193,224, 8, 15,182,210, 9, -/* 0x0c60 */ 208, 72,255,198,131,240,255, 15,132,147,243,239,255, 72, 99,232, -/* 0x0c70 */ 141, 65, 1, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, -/* 0x0c80 */ 22, 17,201, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, -/* 0x0c90 */ 22, 17,201,117, 35,137,193,131,192, 2, 1,219,117, 10,139, 30, -/* 0x0ca0 */ 72,131,238,252, 17,219,138, 22, 17,201, 1,219,117, 8,139, 30, -/* 0x0cb0 */ 72,131,238,252, 17,219,115,226, 72,129,253, 0,243,255,255, 17, -/* 0x0cc0 */ 193,232, 77,253,255,255,233, 84,255,255,255, 87, 94 +/* 0x0270 */ 0,235,188,204,195, 0, 0, 0, 81, 72, 57, 23, 76,139, 71, 8, +/* 0x0280 */ 72,141, 74,255,115, 10,191,127, 0, 0, 0,232,195,255,255,255, +/* 0x0290 */ 72,131,249,255,116, 17, 65, 15,182, 0, 72,255,201, 73,255,192, +/* 0x02a0 */ 136, 6, 72,255,198,235,233, 72, 1, 87, 8, 72, 41, 23, 88,195, +/* 0x02b0 */ 65, 85, 73,137,213, 65, 84, 73,137,204, 85, 72,137,253, 83, 72, +/* 0x02c0 */ 137,243, 72,131,236, 40, 72,131, 62, 0, 15,132,230, 0, 0, 0, +/* 0x02d0 */ 72,141,116, 36, 16,186, 12, 0, 0, 0, 72,137,239,232,150,255, +/* 0x02e0 */ 255,255,139, 68, 36, 16,139,116, 36, 20,133,192,117, 21,129,254, +/* 0x02f0 */ 85, 80, 88, 33,117, 17, 72,131,125, 0, 0, 15,132,181, 0, 0, +/* 0x0300 */ 0,235, 4,133,246,117, 10,191,127, 0, 0, 0,232, 66,255,255, +/* 0x0310 */ 255, 57,198,119,242,137,194, 72, 59, 19,119,235, 57,198, 72,139, +/* 0x0320 */ 67, 8,115,108, 72,137, 84, 36, 8, 72,139,125, 8, 72,141, 76, +/* 0x0330 */ 36, 8, 68,139, 68, 36, 24, 72,137,194, 65,255,213,133,192,117, +/* 0x0340 */ 198,139, 68, 36, 16, 72,139,116, 36, 8, 72, 57,198,117,184, 15, +/* 0x0350 */ 182, 76, 36, 25,132,201, 15,149,194, 49,192, 77,133,228, 15,149, +/* 0x0360 */ 192,133,194,116, 29, 72,129,254, 0, 2, 0, 0,119, 5, 72, 57, +/* 0x0370 */ 51,117, 15, 15,182, 84, 36, 26, 15,182,201, 72,139,123, 8, 65, +/* 0x0380 */ 255,212,139, 68, 36, 20, 72, 1, 69, 8, 72, 41, 69, 0,235, 13, +/* 0x0390 */ 137,242, 72,137,239, 72,137,198,232,219,254,255,255,139, 84, 36, +/* 0x03a0 */ 16, 72,139, 3, 72, 1, 83, 8, 72, 41,208, 72,133,192, 72,137, +/* 0x03b0 */ 3,233, 20,255,255,255, 72,131,196, 40, 91, 93, 65, 92, 65, 93, +/* 0x03c0 */ 195, 72,133,255, 73,137,209,116, 54, 64,246,199, 1,117, 48, 72, +/* 0x03d0 */ 139, 15, 65,137,240, 76, 57,193,116, 18, 72,131,249, 1, 15,148, +/* 0x03e0 */ 194, 49,192,133,246, 15,149,192,133,194,116, 8, 76,137, 7, 76, +/* 0x03f0 */ 137, 79, 8,195, 72,133,201,116, 6, 72,131,199, 16,235,208,195, +/* 0x0400 */ 65, 87, 73,137,255, 65, 86, 65, 85, 65, 84, 73,137,252, 85, 83, +/* 0x0410 */ 72,131,236,104, 76, 3,103, 32, 72,133,246, 72,139,132, 36,160, +/* 0x0420 */ 0, 0, 0,137, 84, 36, 60, 72,137,116, 36, 64, 72,137, 76, 36, +/* 0x0430 */ 48, 76,137, 68, 36, 40, 76,137, 76, 36, 32, 72,139, 56, 65, 15, +/* 0x0440 */ 183, 87, 16,116, 76, 72,139, 71, 32, 72, 1,248, 72, 43,120, 72, +/* 0x0450 */ 102,131,250, 2,117, 4, 72,139,120, 16, 72,139,112, 40, 69, 49, +/* 0x0460 */ 201, 65,131,200,255, 49,210,185, 50, 0, 0, 0, 72,141, 4, 62, +/* 0x0470 */ 72,137, 68, 36, 72,232,176,253,255,255,102, 65,131,127, 16, 2, +/* 0x0480 */ 73,137,198, 15,133,172, 0, 0, 0, 69, 49,246,233,164, 0, 0, +/* 0x0490 */ 0,102,131,250, 3, 65, 15,183, 87, 56,185, 16, 0, 0, 0,184, +/* 0x04a0 */ 0, 0, 0, 0, 73,137,248, 76,137,230, 15, 68,200, 72,131,205, +/* 0x04b0 */ 255, 49,219, 49,255,131,193, 34,255,202,120, 33,131, 62, 1,117, +/* 0x04c0 */ 22, 72,139, 70, 16, 72, 57,232, 72, 15, 66,232, 72, 3, 70, 40, +/* 0x04d0 */ 72, 57,195, 72, 15, 66,216, 72,131,198, 56,235,219, 72,129,229, +/* 0x04e0 */ 0,240,255,255, 72, 41,235, 72,129,195,255, 15, 0, 0, 72,129, +/* 0x04f0 */ 227, 0,240,255,255,246,193, 16,116, 5, 72,137,239,235, 19, 72, +/* 0x0500 */ 133,237,117, 14,137,200, 76,137,199,131,200, 16, 77,133,192, 15, +/* 0x0510 */ 69,200, 69, 49,201, 65,131,200,255, 49,210, 72,137,222,232, 7, +/* 0x0520 */ 253,255,255, 72,137,199, 72,141, 4, 3, 73,137,254, 72,137, 68, +/* 0x0530 */ 36, 72, 73, 41,238,102, 65,131,127, 56, 0,199, 68, 36, 28, 0, +/* 0x0540 */ 0, 0, 0, 15,132,192, 2, 0, 0, 72,131,124, 36, 64, 0,116, +/* 0x0550 */ 35, 65,131, 60, 36, 6,117, 28, 73,139, 84, 36, 16, 72,139,124, +/* 0x0560 */ 36, 48,190, 3, 0, 0, 0, 76, 1,242,232, 82,254,255,255,233, +/* 0x0570 */ 126, 2, 0, 0, 65,131, 60, 36, 1, 15,133,115, 2, 0, 0, 73, +/* 0x0580 */ 131,124, 36, 40, 0, 15,132,103, 2, 0, 0, 65,139, 76, 36, 4, +/* 0x0590 */ 199, 68, 36, 24, 64, 98, 81,115,131,225, 7,193,225, 2,211,108, +/* 0x05a0 */ 36, 24,131,100, 36, 24, 7, 72,131,124, 36, 64, 0,116, 75, 73, +/* 0x05b0 */ 131,124, 36, 8, 0,117, 67, 73,139, 84, 36, 16, 72,139,124, 36, +/* 0x05c0 */ 48,190, 3, 0, 0, 0, 76, 1,242, 73, 3, 87, 32,232,239,253, +/* 0x05d0 */ 255,255, 73, 15,183, 87, 56, 72,139,124, 36, 48,190, 5, 0, 0, +/* 0x05e0 */ 0,232,219,253,255,255, 73, 15,183, 87, 54, 72,139,124, 36, 48, +/* 0x05f0 */ 190, 4, 0, 0, 0,232,199,253,255,255, 73,139,124, 36, 16, 73, +/* 0x0600 */ 139, 68, 36, 40,185, 50, 0, 0, 0, 73,139,116, 36, 32, 76, 1, +/* 0x0610 */ 247, 72, 1,248, 72,137,250, 72,137,253,129,226,255, 15, 0, 0, +/* 0x0620 */ 72,137, 68, 36, 8, 72,137,240, 72, 1,208, 72, 41,213, 72,137, +/* 0x0630 */ 116, 36, 80, 72,137, 68, 36, 16,139, 68, 36, 24, 76,141, 44, 55, +/* 0x0640 */ 139,116, 36, 24, 72,137,124, 36, 88,131,200, 2, 72,131,124, 36, +/* 0x0650 */ 64, 0, 15, 69,240,137,240,131,224,251, 72,131,124, 36, 64, 0, +/* 0x0660 */ 15, 69,240, 73,139, 68, 36, 8, 72, 41,208,131,202,255, 72,131, +/* 0x0670 */ 124, 36, 64, 0,117, 6,139, 84, 36, 60,177, 18, 65,137,208,137, +/* 0x0680 */ 242, 72,139,116, 36, 16, 73,137,193, 72,137,239,232,153,251,255, +/* 0x0690 */ 255, 72, 57,197, 15,133, 32, 1, 0, 0, 72,131,124, 36, 64, 0, +/* 0x06a0 */ 116, 25, 72,139, 76, 36, 32, 72,139, 84, 36, 40, 72,141,116, 36, +/* 0x06b0 */ 80, 72,139,124, 36, 64,232,245,251,255,255,246, 68, 36, 24, 2, +/* 0x06c0 */ 116, 22, 68,137,233, 76,137,239, 49,192,247,217,252,129,225,255, +/* 0x06d0 */ 15, 0, 0,243,170, 73,137,253, 72,131,124, 36, 64, 0, 15,132, +/* 0x06e0 */ 224, 0, 0, 0,199, 68, 36, 4, 0, 0, 0, 0, 72,184,255,255, +/* 0x06f0 */ 255,255, 1, 0, 0, 0, 73, 35, 4, 36, 72,186, 1, 0, 0, 0, +/* 0x0700 */ 1, 0, 0, 0, 72, 57,208, 15,133,152, 0, 0, 0, 73,139, 84, +/* 0x0710 */ 36, 40, 73,139, 76, 36, 16, 73, 59, 84, 36, 32, 72,141, 4, 10, +/* 0x0720 */ 74,141, 28, 48,117, 14,137,216,247,216, 37,255, 15, 0, 0,131, +/* 0x0730 */ 248, 3,119, 58, 73,131,124, 36, 8, 0, 74,141, 92, 49, 12,116, +/* 0x0740 */ 45, 69, 49,201, 65,131,200,255, 49,255,185, 34, 0, 0, 0,186, +/* 0x0750 */ 3, 0, 0, 0,190, 0, 16, 0, 0,199, 68, 36, 4, 1, 0, 0, +/* 0x0760 */ 0,232,196,250,255,255, 72,133,192, 72,137,195,116, 55,131,124, +/* 0x0770 */ 36, 4, 0,199, 3, 15, 5, 90,195,116, 18,186, 5, 0, 0, 0, +/* 0x0780 */ 190, 4, 0, 0, 0, 72,137,223,232,180,250,255,255, 72,133,219, +/* 0x0790 */ 116, 19, 72,139,124, 36, 48, 72,137,218, 49,246, 72,131,231,254, +/* 0x07a0 */ 232, 28,252,255,255,139, 84, 36, 24, 72,139,116, 36, 16, 72,137, +/* 0x07b0 */ 239,232,139,250,255,255,133,192,116, 10,191,127, 0, 0, 0,232, +/* 0x07c0 */ 143,250,255,255, 76, 59,108, 36, 8,115, 39, 76, 41,108, 36, 8, +/* 0x07d0 */ 139, 84, 36, 24, 69, 49,201, 72,139,116, 36, 8, 65,131,200,255, +/* 0x07e0 */ 185, 50, 0, 0, 0, 76,137,239,232, 61,250,255,255, 73, 57,197, +/* 0x07f0 */ 117,200,255, 68, 36, 28, 65, 15,183, 71, 56, 73,131,196, 56, 57, +/* 0x0800 */ 68, 36, 28, 15,140, 64,253,255,255, 72,139,132, 36,160, 0, 0, +/* 0x0810 */ 0, 76,137, 48, 77, 3,119, 24, 72,131,196,104, 91, 93, 65, 92, +/* 0x0820 */ 65, 93, 76,137,240, 65, 94, 65, 95,195, 65, 87, 65, 86, 73,137, +/* 0x0830 */ 206, 49,201, 65, 85, 65, 84, 77,137,204, 85, 72,137,213, 76,141, +/* 0x0840 */ 109, 64, 83, 76,137,195, 72,131,236, 72,139, 7, 72,137,124, 36, +/* 0x0850 */ 24, 72,137,124, 36, 40, 76,141,188, 36,128, 0, 0, 0, 72,137, +/* 0x0860 */ 116, 36, 32, 72,141,116, 36, 48, 72,137, 84, 36, 56, 76,137,194, +/* 0x0870 */ 72,137, 68, 36, 48,139, 71, 4, 72,141,124, 36, 16, 72,131,192, +/* 0x0880 */ 12, 72,137, 68, 36, 16,232, 37,250,255,255, 65, 83, 77,137,225, +/* 0x0890 */ 49,210, 73,137,216, 76,137,241, 72,137,239, 72,141,116, 36, 40, +/* 0x08a0 */ 65, 87,232, 89,251,255,255,190, 9, 0, 0, 0, 72,137,194, 76, +/* 0x08b0 */ 137,247, 73,137,196,232, 7,251,255,255, 65, 89, 65, 90,102,131, +/* 0x08c0 */ 125, 56, 0,199, 68, 36, 12, 0, 0, 0, 0, 15,132,143, 0, 0, +/* 0x08d0 */ 0, 65,131,125, 0, 3,117,114, 73,139, 63, 73, 3,125, 16, 49, +/* 0x08e0 */ 210, 49,246,232,119,249,255,255,133,192,137,195,120, 23,186, 0, +/* 0x08f0 */ 4, 0, 0, 72,137,238,137,199,232,114,249,255,255, 72, 61, 0, +/* 0x0900 */ 4, 0, 0,116, 10,191,127, 0, 0, 0,232, 68,249,255,255, 73, +/* 0x0910 */ 199, 7, 0, 0, 0, 0, 65, 80, 69, 49,201, 69, 49,192, 49,201, +/* 0x0920 */ 65, 87,137,218, 49,246, 72,137,239,232,210,250,255,255, 73,139, +/* 0x0930 */ 23,190, 7, 0, 0, 0, 76,137,247, 73,137,196,232,128,250,255, +/* 0x0940 */ 255,137,223,232, 19,249,255,255, 94, 95,255, 68, 36, 12, 15,183, +/* 0x0950 */ 69, 56, 73,131,197, 56, 57, 68, 36, 12, 15,130,113,255,255,255, +/* 0x0960 */ 72,131,196, 72, 76,137,224, 91, 93, 65, 92, 65, 93, 65, 94, 65, +/* 0x0970 */ 95,195, 0, 0, 85, 72,137,229, 83, 82, 86, 87,232,101, 0, 0, +/* 0x0980 */ 0, 91, 95, 94, 80, 15,182, 75, 9,133,201,116, 11, 15,182, 83, +/* 0x0990 */ 10,139, 54,232, 4, 0, 0, 0, 88, 91, 93,195,131,249, 73,117, +/* 0x09a0 */ 68, 83, 87, 72,141, 76, 55,253, 94, 86, 91,235, 47, 72, 57,206, +/* 0x09b0 */ 115, 50, 86, 94,172, 60,128,114, 10, 60,143,119, 6,128,126,254, +/* 0x09c0 */ 15,116, 6, 44,232, 60, 1,119,228, 72, 57,206,115, 22, 86,173, +/* 0x09d0 */ 40,208,117,223, 95, 15,200, 41,248, 1,216,171, 72, 57,206,115, +/* 0x09e0 */ 3,172,235,223, 91,195, 82, 15,182, 87, 8, 87, 86, 95, 94,139, +/* 0x09f0 */ 70, 4, 72,131,198, 12, 72, 1,240, 80, 87, 49,219, 49,201, 72, +/* 0x0a00 */ 131,205,255,235, 78,139, 30, 72,131,238,252, 17,219,138, 22,243, +/* 0x0a10 */ 195, 1,219,116,240,243,195, 72,141, 4, 47,131,249, 5,138, 16, +/* 0x0a20 */ 118, 32,131,253,252,119, 27,131,233, 4,139, 16, 72,131,192, 4, +/* 0x0a30 */ 131,233, 4,137, 23, 72,141,127, 4,115,239,131,193, 4,138, 16, +/* 0x0a40 */ 116, 15, 72,255,192,136, 23,255,201,138, 16, 72,141,127, 1,117, +/* 0x0a50 */ 241,243,195,252,128,250, 8, 15,133,218, 0, 0, 0,235, 8, 72, +/* 0x0a60 */ 255,198,136, 23, 72,255,199,138, 22, 1,219,117, 10,139, 30, 72, +/* 0x0a70 */ 131,238,252, 17,219,138, 22,114,230,141, 65, 1,235, 18,255,200, +/* 0x0a80 */ 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17,192, +/* 0x0a90 */ 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17,192, +/* 0x0aa0 */ 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22,115,206, +/* 0x0ab0 */ 131,232, 3,114, 29,193,224, 8, 15,182,210, 9,208, 72,255,198, +/* 0x0ac0 */ 131,240,255, 15,132, 55,245,239,255,209,248, 72, 99,232,114, 67, +/* 0x0ad0 */ 235, 14, 1,219,117, 8,139, 30, 72,131,238,252, 17,219,114, 51, +/* 0x0ae0 */ 255,193, 1,219,117, 8,139, 30, 72,131,238,252, 17,219,114, 35, +/* 0x0af0 */ 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17,201, +/* 0x0b00 */ 1,219,117, 8,139, 30, 72,131,238,252, 17,219,115,226,131,193, +/* 0x0b10 */ 2,235, 16, 1,219,117, 10,139, 30, 72,131,238,252, 17,219,138, +/* 0x0b20 */ 22, 17,201, 72,129,253, 0,251,255,255,131,209, 2,232,229,254, +/* 0x0b30 */ 255,255,233, 48,255,255,255, 87, 94,128,250, 5, 15,133,204, 0, +/* 0x0b40 */ 0, 0,235, 8, 72,255,198,136, 23, 72,255,199,138, 22, 1,219, +/* 0x0b50 */ 117, 10,139, 30, 72,131,238,252, 17,219,138, 22,114,230,141, 65, +/* 0x0b60 */ 1,235, 18,255,200, 1,219,117, 10,139, 30, 72,131,238,252, 17, +/* 0x0b70 */ 219,138, 22, 17,192, 1,219,117, 10,139, 30, 72,131,238,252, 17, +/* 0x0b80 */ 219,138, 22, 17,192, 1,219,117, 10,139, 30, 72,131,238,252, 17, +/* 0x0b90 */ 219,138, 22,115,206,131,232, 3,114, 27,193,224, 8, 15,182,210, +/* 0x0ba0 */ 9,208, 72,255,198,131,240,255, 15,132, 82,244,239,255,209,248, +/* 0x0bb0 */ 72, 99,232,235, 14, 1,219,117, 10,139, 30, 72,131,238,252, 17, +/* 0x0bc0 */ 219,138, 22, 17,201, 1,219,117, 10,139, 30, 72,131,238,252, 17, +/* 0x0bd0 */ 219,138, 22, 17,201,117, 35,255,193, 1,219,117, 10,139, 30, 72, +/* 0x0be0 */ 131,238,252, 17,219,138, 22, 17,201, 1,219,117, 8,139, 30, 72, +/* 0x0bf0 */ 131,238,252, 17,219,115,226,131,193, 2, 72,129,253, 0,251,255, +/* 0x0c00 */ 255,131,209, 1,232, 14,254,255,255,233, 62,255,255,255, 87, 94, +/* 0x0c10 */ 128,250, 2, 15,133,182, 0, 0, 0,235, 8, 72,255,198,136, 23, +/* 0x0c20 */ 72,255,199,138, 22, 1,219,117, 10,139, 30, 72,131,238,252, 17, +/* 0x0c30 */ 219,138, 22,114,230,141, 65, 1, 1,219,117, 10,139, 30, 72,131, +/* 0x0c40 */ 238,252, 17,219,138, 22, 17,192, 1,219,117, 10,139, 30, 72,131, +/* 0x0c50 */ 238,252, 17,219,138, 22,115,224,131,232, 3,114, 23,193,224, 8, +/* 0x0c60 */ 15,182,210, 9,208, 72,255,198,131,240,255, 15,132,143,243,239, +/* 0x0c70 */ 255, 72, 99,232,141, 65, 1, 1,219,117, 10,139, 30, 72,131,238, +/* 0x0c80 */ 252, 17,219,138, 22, 17,201, 1,219,117, 10,139, 30, 72,131,238, +/* 0x0c90 */ 252, 17,219,138, 22, 17,201,117, 35,137,193,131,192, 2, 1,219, +/* 0x0ca0 */ 117, 10,139, 30, 72,131,238,252, 17,219,138, 22, 17,201, 1,219, +/* 0x0cb0 */ 117, 8,139, 30, 72,131,238,252, 17,219,115,226, 72,129,253, 0, +/* 0x0cc0 */ 243,255,255, 17,193,232, 77,253,255,255,233, 84,255,255,255, 87, +/* 0x0cd0 */ 94 }; diff --git a/src/stub/arm64-linux.elf-entry.h b/src/stub/arm64-linux.elf-entry.h index 2cab3400..599684e1 100644 --- a/src/stub/arm64-linux.elf-entry.h +++ b/src/stub/arm64-linux.elf-entry.h @@ -1,5 +1,5 @@ /* arm64-linux.elf-entry.h - created from arm64-linux.elf-entry.bin, 7449 (0x1d19) bytes + created from arm64-linux.elf-entry.bin, 7432 (0x1d08) bytes This file is part of the UPX executable compressor. @@ -32,475 +32,474 @@ /* clang-format off */ -#define STUB_ARM64_LINUX_ELF_ENTRY_SIZE 7449 -#define STUB_ARM64_LINUX_ELF_ENTRY_ADLER32 0xd6137745 -#define STUB_ARM64_LINUX_ELF_ENTRY_CRC32 0x136b882d +#define STUB_ARM64_LINUX_ELF_ENTRY_SIZE 7432 +#define STUB_ARM64_LINUX_ELF_ENTRY_ADLER32 0x0f8c71b6 +#define STUB_ARM64_LINUX_ELF_ENTRY_CRC32 0x75d49525 -unsigned char stub_arm64_linux_elf_entry[7449] = { +unsigned char stub_arm64_linux_elf_entry[7432] = { /* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0010 */ 1, 0,183, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 72, 24, 0, 0, 0, 0, 0, 0, +/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 56, 24, 0, 0, 0, 0, 0, 0, /* 0x0030 */ 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, -/* 0x0040 */ 0, 0, 0, 0, 0, 0, 0,148,254, 15, 31,248,226, 15,191,169, -/* 0x0050 */ 7, 64, 33,139, 5, 0,128, 18, 4, 0,176, 82, 45, 0, 0, 20, -/* 0x0060 */ 227, 19,193,168, 0, 0, 7,203, 66, 0, 3,203,130, 0, 0,185, -/* 0x0070 */ 229, 3, 0,170,224, 3, 3,170, 97, 0, 2,139, 35, 0, 59,213, -/* 0x0080 */ 99, 1,224, 55, 98, 76, 80,211,100, 0,128,146,132, 32,194,154, -/* 0x0090 */ 2, 0, 4,138, 95, 0, 1,235,162, 0, 0, 84, 34,123, 11,213, -/* 0x00a0 */ 66, 0, 4,203, 63, 0, 2,235,168,255,255, 84,159, 59, 3,213, -/* 0x00b0 */ 99, 1,232, 55, 99, 12, 64,146, 98, 0,128,146, 66, 32,195,154, -/* 0x00c0 */ 0, 0, 2,138, 63, 0, 0,235,169, 0, 0, 84, 32,117, 11,213, -/* 0x00d0 */ 0, 0, 2,203, 63, 0, 0,235,168,255,255, 84,159, 59, 3,213, -/* 0x00e0 */ 223, 63, 3,213,224, 3, 5,170,254, 7, 65,248,192, 3, 95,214, -/* 0x00f0 */ 132, 0, 4, 43, 68, 0, 0, 52,192, 3, 95,214, 4, 68, 64,184, -/* 0x0100 */ 132, 0, 4, 58,192, 3, 95,214, 3, 20, 64, 56, 67, 20, 0, 56, -/* 0x0110 */ 248,255,255,151,162,255,255, 84, 33, 0,128, 82, 4, 0, 0, 20, -/* 0x0120 */ 33, 4, 0, 81,243,255,255,151, 33, 0, 1, 26,241,255,255,151, -/* 0x0130 */ 33, 0, 1, 26,239,255,255,151, 67,255,255, 84, 35, 12, 0,113, -/* 0x0140 */ 1, 0,128, 82, 35, 1, 0, 84, 5, 20, 64, 56,165, 32, 3, 42, -/* 0x0150 */ 229, 3, 37, 42,101,248,255, 52,191, 0, 0,114,165,124, 1, 19, -/* 0x0160 */ 161, 1, 0, 84, 3, 0, 0, 20,226,255,255,151, 66, 1, 0, 84, -/* 0x0170 */ 33, 0,128, 82,223,255,255,151,226, 0, 0, 84,221,255,255,151, -/* 0x0180 */ 33, 0, 1, 26,219,255,255,151,163,255,255, 84, 33, 16, 0, 17, -/* 0x0190 */ 4, 0, 0, 20,215,255,255,151, 33, 0, 1, 26, 33, 8, 0, 17, -/* 0x01a0 */ 191, 0, 20, 49, 33, 36,129, 26, 67, 64, 33,139, 99,240, 95, 56, -/* 0x01b0 */ 67,200,101, 56, 67, 20, 0, 56, 33, 4, 0,113,161,255,255, 84, -/* 0x01c0 */ 212,255,255, 23,226, 15,190,169,254, 11, 0,249, 7, 64, 33,139, -/* 0x01d0 */ 5, 0,128, 18, 4, 0,176, 82, 45, 0, 0, 20,227, 19,193,168, -/* 0x01e0 */ 0, 0, 7,203, 66, 0, 3,203,130, 0, 0,185,229, 3, 0,170, -/* 0x01f0 */ 224, 3, 3,170, 97, 0, 2,139, 35, 0, 59,213, 99, 1,224, 55, -/* 0x0200 */ 98, 76, 80,211,100, 0,128,146,132, 32,194,154, 2, 0, 4,138, -/* 0x0210 */ 95, 0, 1,235,162, 0, 0, 84, 34,123, 11,213, 66, 0, 4,203, -/* 0x0220 */ 63, 0, 2,235,168,255,255, 84,159, 59, 3,213, 99, 1,232, 55, -/* 0x0230 */ 99, 12, 64,146, 98, 0,128,146, 66, 32,195,154, 0, 0, 2,138, -/* 0x0240 */ 63, 0, 0,235,169, 0, 0, 84, 32,117, 11,213, 0, 0, 2,203, -/* 0x0250 */ 63, 0, 0,235,168,255,255, 84,159, 59, 3,213,223, 63, 3,213, -/* 0x0260 */ 224, 3, 5,170,254, 7, 65,248,192, 3, 95,214,132, 0, 4, 43, -/* 0x0270 */ 68, 0, 0, 52,192, 3, 95,214, 4, 68, 64,184,132, 0, 4, 58, -/* 0x0280 */ 192, 3, 95,214, 3, 20, 64, 56, 67, 20, 0, 56,248,255,255,151, -/* 0x0290 */ 162,255,255, 84, 33, 0,128, 82, 4, 0, 0, 20, 33, 4, 0, 81, -/* 0x02a0 */ 243,255,255,151, 33, 0, 1, 58,241,255,255,151, 33, 0, 1, 58, -/* 0x02b0 */ 239,255,255,151, 67,255,255, 84, 35, 12, 0,113, 1, 0,128, 82, -/* 0x02c0 */ 35, 1, 0, 84, 5, 20, 64, 56,165, 32, 3, 42,229, 3, 37, 42, -/* 0x02d0 */ 101,248,255, 52,163, 0, 1, 83,165,124, 1, 83, 99, 0, 3, 43, -/* 0x02e0 */ 2, 0, 0, 20,226,255,255,151, 33, 0, 1, 58,224,255,255,151, -/* 0x02f0 */ 33, 0, 1, 58,225, 0, 0, 84, 33, 0,128, 82,220,255,255,151, -/* 0x0300 */ 33, 0, 1, 58,218,255,255,151,163,255,255, 84, 33, 8, 0, 17, -/* 0x0310 */ 33, 4, 0, 17,191, 0, 20, 49, 33, 52,129, 26, 67, 0, 64, 57, -/* 0x0320 */ 67,200,101, 56, 67, 20, 0, 56, 33, 4, 0,113,161,255,255, 84, -/* 0x0330 */ 215,255,255, 23, 1, 64, 33,139,225, 11,190,169,227,123, 1,169, -/* 0x0340 */ 5, 0,128, 18, 4, 0,176, 82, 52, 0, 0, 20,228,123, 65,169, -/* 0x0350 */ 225, 15,194,168, 0, 0, 1,203, 66, 0, 3,203,130, 0, 0,185, -/* 0x0360 */ 229, 3, 0,170,224, 3, 3,170, 97, 0, 2,139, 35, 0, 59,213, -/* 0x0370 */ 99, 1,224, 55, 98, 76, 80,211,100, 0,128,146,132, 32,194,154, -/* 0x0380 */ 2, 0, 4,138, 95, 0, 1,235,162, 0, 0, 84, 34,123, 11,213, -/* 0x0390 */ 66, 0, 4,203, 63, 0, 2,235,168,255,255, 84,159, 59, 3,213, -/* 0x03a0 */ 99, 1,232, 55, 99, 12, 64,146, 98, 0,128,146, 66, 32,195,154, -/* 0x03b0 */ 0, 0, 2,138, 63, 0, 0,235,169, 0, 0, 84, 32,117, 11,213, -/* 0x03c0 */ 0, 0, 2,203, 63, 0, 0,235,168,255,255, 84,159, 59, 3,213, -/* 0x03d0 */ 223, 63, 3,213,224, 3, 5,170,192, 3, 95,214,132, 0, 4, 43, -/* 0x03e0 */ 68, 0, 0, 52,192, 3, 95,214, 4, 68, 64,184,132, 0, 4, 58, -/* 0x03f0 */ 192, 3, 95,214, 33, 0,128, 82,240, 3, 30,170,248,255,255,151, -/* 0x0400 */ 33, 0, 1, 58,246,255,255,151,163,255,255, 84, 0, 2, 31,214, -/* 0x0410 */ 3, 20, 64, 56, 67, 20, 0, 56,241,255,255,151,162,255,255, 84, -/* 0x0420 */ 245,255,255,151, 35, 12, 0,113, 1, 0,128, 82,163, 0, 0, 84, -/* 0x0430 */ 5, 20, 64, 56,165, 32, 3, 42,229, 3, 37, 42,133,248,255, 52, -/* 0x0440 */ 231,255,255,151, 33, 0, 1, 58,229,255,255,151, 33, 0, 1, 58, -/* 0x0450 */ 97, 0, 0, 84,232,255,255,151, 33, 8, 0, 17,191, 0, 52, 49, -/* 0x0460 */ 33, 36,129, 26, 67,200,101, 56, 33, 4, 0,113, 67, 20, 0, 56, -/* 0x0470 */ 162,255,255, 84,233,255,255, 23,159, 56, 0,113, 1, 0, 0, 84, -/* 0x0480 */ 226, 15,190,169,253,123, 1,169,253, 3, 0,145, 8, 0, 64, 57, -/* 0x0490 */ 7,192,128, 82, 8,125, 3, 83,231, 32,200, 26,231,192, 57, 17, -/* 0x04a0 */ 232, 3, 0,145,255, 67, 39,203,228, 3, 0,145,159,124,129,168, -/* 0x04b0 */ 159, 0, 8,235,195,255,255, 84,255,127,191,169,230, 3, 3,170, -/* 0x04c0 */ 197, 0, 64,185,228, 3, 2,170,227, 35, 0,145, 34, 8, 0, 81, -/* 0x04d0 */ 225, 3, 0,170,224, 3, 0,145, 39, 20, 64, 56,231, 8, 0, 18, -/* 0x04e0 */ 7, 8, 0, 57, 39, 20, 64, 56,232,124, 4, 83, 8, 4, 0, 57, -/* 0x04f0 */ 231, 12, 0, 18, 7, 0, 0, 57, 35, 0, 0,148,191, 3, 0,145, -/* 0x0500 */ 229, 3, 0,170,253,123, 65,169,224, 7,194,168, 33, 0, 64,249, -/* 0x0510 */ 33, 0, 0,139, 35, 0, 59,213, 99, 1,224, 55, 98, 76, 80,211, -/* 0x0520 */ 100, 0,128,146,132, 32,194,154, 2, 0, 4,138, 95, 0, 1,235, -/* 0x0530 */ 162, 0, 0, 84, 34,123, 11,213, 66, 0, 4,203, 63, 0, 2,235, -/* 0x0540 */ 168,255,255, 84,159, 59, 3,213, 99, 1,232, 55, 99, 12, 64,146, -/* 0x0550 */ 98, 0,128,146, 66, 32,195,154, 0, 0, 2,138, 63, 0, 0,235, -/* 0x0560 */ 169, 0, 0, 84, 32,117, 11,213, 0, 0, 2,203, 63, 0, 0,235, -/* 0x0570 */ 168,255,255, 84,159, 59, 3,213,223, 63, 3,213,224, 3, 5,170, -/* 0x0580 */ 192, 3, 95,214,255, 67, 1,209, 39, 0,128, 82, 17, 16, 0,145, -/* 0x0590 */ 9,128,128, 82,243, 83, 0,169,245, 91, 1,169,247, 99, 2,169, -/* 0x05a0 */ 249,107, 3,169,251,115, 4,169, 20, 8, 64, 57, 19, 4, 64, 57, -/* 0x05b0 */ 22, 0, 64, 57,244, 32,212, 26,127, 0, 0,185,243, 32,211, 26, -/* 0x05c0 */ 223, 0, 0,185, 7, 0,128,210,148, 6, 0, 81, 8, 4, 64, 57, -/* 0x05d0 */ 10, 1, 22, 11,104, 6, 0, 81, 18, 1, 39, 30, 8, 96,128, 82, -/* 0x05e0 */ 8, 33,202, 26, 8,217, 28, 49,160, 0, 0, 84, 41,122, 39,120, -/* 0x05f0 */ 231, 4, 0,145, 31, 1, 7,107,168,255,255, 84, 34, 64, 34,139, -/* 0x0600 */ 63, 0, 2,235, 64, 16, 0, 84,235, 3, 1,170, 40, 4, 0,145, -/* 0x0610 */ 103, 85, 64, 56, 31, 1, 2,235,160, 15, 0, 84, 9, 21, 64, 56, -/* 0x0620 */ 31, 1, 11,235, 39, 33, 7, 42, 97,255,255, 84,229, 69, 0, 52, -/* 0x0630 */ 8, 1,128, 82, 53, 0,128, 82, 18, 0,128, 82, 9, 0,128, 18, -/* 0x0640 */ 20, 1, 39, 30,104, 0,128, 82,177, 2, 39, 30,247, 3, 21, 42, -/* 0x0650 */ 7, 1, 39, 30, 8, 86,128,210,165, 2, 39, 30,252, 3, 21, 42, -/* 0x0660 */ 3, 1,103,158,104, 1,128, 82,234, 3, 18, 42,240, 3, 18, 42, -/* 0x0670 */ 0, 1, 39, 30, 8,176, 41,145, 14,224,191, 18, 15, 0,129, 82, -/* 0x0680 */ 1, 1,103,158, 40, 1,128, 82, 2, 1, 39, 30,136, 2, 38, 30, -/* 0x0690 */ 8, 1, 22, 75, 16, 1, 39, 30, 72,110, 28, 83, 63, 1, 14,107, -/* 0x06a0 */ 25, 2, 20, 10, 13,125, 64,147,173,193, 57,139,173,249,127,211, -/* 0x06b0 */ 232, 0, 0, 84,127, 1, 2,235,160, 10, 0, 84,104, 1, 64, 57, -/* 0x06c0 */ 41, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, 59,106,109,120, -/* 0x06d0 */ 40,125, 11, 83, 8,125, 27, 27,255, 0, 8,107,130, 10, 0, 84, -/* 0x06e0 */ 73, 2, 38, 30, 19, 62, 1, 14, 95, 26, 0,113, 12, 2, 9, 10, -/* 0x06f0 */ 73, 41,211, 26,140, 33,214, 26,234, 1, 27, 75, 41, 1, 12, 11, -/* 0x0700 */ 106, 23,138, 11, 42,106, 45,120, 41, 5, 9, 11, 41, 93,120,211, -/* 0x0710 */ 41,217, 28,145, 58, 6, 9,139,109, 31, 0, 84, 10, 2, 28, 75, -/* 0x0720 */ 41, 0,128, 82,153,104,106, 56, 7, 0, 0, 20, 91,107, 42,120, -/* 0x0730 */ 41,121, 31, 83,232, 3, 13, 42, 83, 57, 0, 53, 63,253, 3,113, -/* 0x0740 */ 236, 3, 0, 84, 57,123, 31, 83, 31, 1, 14,107, 51, 3, 24, 18, -/* 0x0750 */ 56,121, 31, 83,106,126, 64,147, 74, 1, 4,145, 74,193, 41,139, -/* 0x0760 */ 74,249,127,211,232, 0, 0, 84,127, 1, 2,235, 8, 93, 24, 83, -/* 0x0770 */ 224, 4, 0, 84,108, 1, 64, 57,107, 5, 0,145,135, 33, 7, 42, -/* 0x0780 */ 76,107,106,120, 13,125, 11, 83,251, 1, 12, 75,173,125, 12, 27, -/* 0x0790 */ 155, 21,155, 11,140, 21, 76, 75,255, 0, 13,107, 8, 1, 13, 75, -/* 0x07a0 */ 99,252,255, 84, 76,107, 42,120, 9, 7, 0, 17,231, 0, 13, 75, -/* 0x07b0 */ 115,252,255, 53, 63,253, 3,113, 77, 27, 0, 84, 42, 29, 0, 83, -/* 0x07c0 */ 233, 3, 8, 42,138, 72, 48, 56, 16, 6, 0, 17, 95, 38, 0,113, -/* 0x07d0 */ 236, 49, 0, 84, 82, 14, 0, 81,191, 0, 16,107,232,245,255, 84, -/* 0x07e0 */ 0,224,191, 18, 63, 1, 0,107,136, 0, 0, 84,127, 1, 2,235, -/* 0x07f0 */ 224, 0, 0, 84,107, 5, 0,145, 97, 1, 1,203, 97, 0, 0,185, -/* 0x0800 */ 208, 0, 0,185, 0, 0,128, 82, 2, 0, 0, 20, 32, 0,128, 82, -/* 0x0810 */ 243, 83, 64,169,245, 91, 65,169,247, 99, 66,169,249,107, 67,169, -/* 0x0820 */ 251,115, 68,169,255, 67, 1,145,192, 3, 95,214, 58, 1, 8, 75, -/* 0x0830 */ 74,126, 64,147,105, 23, 91, 75, 95, 3, 14,107, 41,106, 45,120, -/* 0x0840 */ 76, 1, 3,145,231, 0, 8, 75,140,249,127,211,232, 0, 0, 84, -/* 0x0850 */ 127, 1, 2,235,192,253,255, 84,104, 1, 64, 57, 90, 95, 24, 83, -/* 0x0860 */ 107, 5, 0,145, 7, 33, 7, 42, 40,106,108,120, 74,127, 11, 83, -/* 0x0870 */ 74,125, 8, 27,255, 0, 10,107,130, 25, 0, 84,237, 0, 38, 30, -/* 0x0880 */ 233, 1, 8, 75, 95, 30, 0,113, 53, 2, 38, 30, 8, 21,137, 11, -/* 0x0890 */ 241, 2, 39, 30, 40,106, 44,120,242,179,141, 26, 12,160, 25,145, -/* 0x08a0 */ 247, 3, 28, 42, 95, 1, 14,107,232, 0, 0, 84,127, 1, 2,235, -/* 0x08b0 */ 224,250,255, 84,104, 1, 64, 57, 74, 93, 24, 83,107, 5, 0,145, -/* 0x08c0 */ 7, 33, 7, 42,141, 1, 64,121, 73,125, 11, 83, 41,125, 13, 27, -/* 0x08d0 */ 255, 0, 9,107, 98, 31, 0, 84, 40,115, 29, 83,115, 0,128, 82, -/* 0x08e0 */ 234, 1, 13, 75, 8,125, 64,147, 8, 9, 0,145,173, 21,138, 11, -/* 0x08f0 */ 228, 3, 39, 30,141, 1, 0,121,102, 2, 39, 30,153, 5, 8,139, -/* 0x0900 */ 218, 0, 38, 30, 44, 0,128, 82, 6, 0, 0, 20, 13, 3, 0,121, -/* 0x0910 */ 90, 7, 0,113,140,121, 31, 83,233, 3, 8, 42, 32, 3, 0, 84, -/* 0x0920 */ 63, 1, 14,107,147,121, 31, 83, 56,199, 44,139,232, 0, 0, 84, -/* 0x0930 */ 127, 1, 2,235, 41, 93, 24, 83,160,246,255, 84,104, 1, 64, 57, -/* 0x0940 */ 107, 5, 0,145, 7, 33, 7, 42, 8, 3, 64,121, 42,125, 11, 83, -/* 0x0950 */ 237, 1, 8, 75, 27, 21, 72, 75, 13, 21,141, 11, 72,125, 8, 27, -/* 0x0960 */ 255, 0, 8,107, 41, 1, 8, 75, 35,253,255, 84, 27, 3, 0,121, -/* 0x0970 */ 90, 7, 0,113,231, 0, 8, 75,108, 6, 0, 17, 33,253,255, 84, -/* 0x0980 */ 166, 68,166, 46,138, 0, 38, 30, 95, 14, 0,113,200, 0, 38, 30, -/* 0x0990 */ 72, 1, 8, 75, 8, 1, 12, 11, 6, 1, 39, 30,236, 22, 0, 84, -/* 0x09a0 */ 234, 0, 38, 30, 31, 13, 0,113,220, 0,128, 82, 10,209,138, 26, -/* 0x09b0 */ 40, 0,128, 82, 74,101, 26, 83, 74,125, 64,147, 74,193, 6,145, -/* 0x09c0 */ 91,249,127,211, 6, 0, 0, 20, 44,106, 57,120,156, 7, 0,113, -/* 0x09d0 */ 8,121, 31, 83,233, 3, 10, 42, 32, 3, 0, 84, 63, 1, 14,107, -/* 0x09e0 */ 19,121, 31, 83,121,199, 40,139,232, 0, 0, 84,127, 1, 2,235, -/* 0x09f0 */ 41, 93, 24, 83,192,240,255, 84,106, 1, 64, 57,107, 5, 0,145, -/* 0x0a00 */ 71, 33, 7, 42, 42,106,121,120, 45,125, 11, 83,236, 1, 10, 75, -/* 0x0a10 */ 90, 21, 74, 75, 76, 21,140, 11,170,125, 10, 27,255, 0, 10,107, -/* 0x0a20 */ 41, 1, 10, 75, 35,253,255, 84, 58,106, 57,120,156, 7, 0,113, -/* 0x0a30 */ 231, 0, 10, 75,104, 6, 0, 17, 33,253,255, 84, 10, 1, 1, 81, -/* 0x0a40 */ 95, 13, 0,113, 45, 17, 0, 84, 95, 53, 0,113, 72, 1, 0, 18, -/* 0x0a50 */ 77,125, 1, 19, 12, 1, 31, 50,140, 32, 0, 84,104, 0,102,158, -/* 0x0a60 */ 187, 5, 0, 81,152, 33,219, 26, 8,193, 42,203, 8, 65, 56,139, -/* 0x0a70 */ 40, 6, 8,139, 8, 9, 0,209, 19, 1,103,158, 40, 0,128, 82, -/* 0x0a80 */ 252, 3, 8, 42, 7, 0, 0, 20, 83, 3, 0,121, 8,121, 31, 83, -/* 0x0a90 */ 233, 3, 10, 42,123, 7, 0,113,156,123, 31, 83,128, 14, 0, 84, -/* 0x0aa0 */ 106, 2,102,158, 63, 1, 14,107, 25,121, 31, 83, 90,197, 40,139, -/* 0x0ab0 */ 232, 0, 0, 84,127, 1, 2,235, 41, 93, 24, 83,128,234,255, 84, -/* 0x0ac0 */ 106, 1, 64, 57,107, 5, 0,145, 71, 33, 7, 42, 74, 3, 64,121, -/* 0x0ad0 */ 45,125, 11, 83,243, 1, 10, 75, 76, 21, 74, 75, 83, 21,147, 11, -/* 0x0ae0 */ 170,125, 10, 27,255, 0, 10,107, 41, 1, 10, 75,227,252,255, 84, -/* 0x0af0 */ 76, 3, 0,121, 24, 3, 28, 42,231, 0, 10, 75, 40, 7, 0, 17, -/* 0x0b00 */ 229,255,255, 23, 41, 0,128, 82, 6, 0, 0, 20, 41,121, 31, 83, -/* 0x0b10 */ 74,107, 56,120, 63,253, 3,113,232, 3, 12, 42, 44, 3, 0, 84, -/* 0x0b20 */ 31, 1, 14,107, 51,121, 31, 83, 56,125,127,147,232, 0, 0, 84, -/* 0x0b30 */ 127, 1, 2,235, 8, 93, 24, 83,160,230,255, 84,106, 1, 64, 57, -/* 0x0b40 */ 107, 5, 0,145, 71, 33, 7, 42, 74,107,120,120, 12,125, 11, 83, -/* 0x0b50 */ 237, 1, 10, 75,140,125, 10, 27, 89, 21, 74, 75, 74, 21,141, 11, -/* 0x0b60 */ 255, 0, 12,107, 8, 1, 12, 75, 35,253,255, 84,105, 6, 0, 17, -/* 0x0b70 */ 89,107, 56,120, 63,253, 3,113,231, 0, 12, 75, 45,253,255, 84, -/* 0x0b80 */ 42, 29, 0, 83, 95, 14, 0,113,138, 72, 48, 56,233, 3, 8, 42, -/* 0x0b90 */ 16, 6, 0, 17,204,225,255, 84,191, 0, 16,107, 18, 0,128, 82, -/* 0x0ba0 */ 200,215,255, 84, 15,255,255, 23, 73, 3, 10, 75, 8, 21, 72, 75, -/* 0x0bb0 */ 63, 1, 14,107, 40,106, 44,120,231, 0, 10, 75,154, 97, 0,145, -/* 0x0bc0 */ 232, 0, 0, 84,127, 1, 2,235, 32,226,255, 84,104, 1, 64, 57, -/* 0x0bd0 */ 41, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, 40,106,122,120, -/* 0x0be0 */ 42,125, 11, 83, 74,125, 8, 27,255, 0, 10,107, 66, 10, 0, 84, -/* 0x0bf0 */ 233, 1, 8, 75, 95, 1, 14,107,173,129, 7,145, 8, 21,137, 11, -/* 0x0c00 */ 40,106, 58,120,232, 0, 0, 84,127, 1, 2,235, 0,224,255, 84, -/* 0x0c10 */ 104, 1, 64, 57, 74, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, -/* 0x0c20 */ 40,106,109,120, 73,125, 11, 83, 41,125, 8, 27,255, 0, 9,107, -/* 0x0c30 */ 226, 16, 0, 84,234, 1, 8, 75, 8, 21,138, 11, 40,106, 45,120, -/* 0x0c40 */ 112,222,255, 52, 74, 0, 38, 30, 8, 2, 28, 75, 12, 0, 38, 30, -/* 0x0c50 */ 95, 30, 0,113, 82,177,140, 26,138,104,104, 56,138, 72, 48, 56, -/* 0x0c60 */ 16, 6, 0, 17,221,254,255, 23,248, 3, 10, 42, 28, 7, 0, 49, -/* 0x0c70 */ 128,219,255, 84, 82, 30, 0, 17,200, 0, 38, 30,159, 3, 16,107, -/* 0x0c80 */ 12, 9, 0, 17, 72,220,255, 84,232, 3, 16, 42, 2, 0, 0, 20, -/* 0x0c90 */ 76,218,255, 52, 10, 2, 28, 75, 16, 6, 0, 17, 31, 2, 5,107, -/* 0x0ca0 */ 140, 5, 0, 81,138,104,106, 56,138, 72, 40, 56,232, 3, 16, 42, -/* 0x0cb0 */ 3,255,255, 84,191, 0, 16,107, 8,207,255, 84,201,254,255, 23, -/* 0x0cc0 */ 74, 1, 9, 75,173, 21, 77, 75, 95, 1, 14,107,141, 1, 0,121, -/* 0x0cd0 */ 231, 0, 9, 75,232, 0, 0, 84,127, 1, 2,235,128,217,255, 84, -/* 0x0ce0 */ 104, 1, 64, 57, 74, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, -/* 0x0cf0 */ 141, 5, 64,121, 73,125, 11, 83, 41,125, 13, 27,255, 0, 9,107, -/* 0x0d00 */ 34, 7, 0, 84, 40,115, 29, 83, 19, 1,128, 82,234, 1, 13, 75, -/* 0x0d10 */ 8,125, 64,147,100, 2, 39, 30, 8, 9, 2,145,115, 0,128, 82, -/* 0x0d20 */ 173, 21,138, 11,153, 5, 8,139,141, 5, 0,121,102, 2, 39, 30, -/* 0x0d30 */ 244,254,255, 23, 41, 1, 10, 75, 8, 21, 72, 75, 63, 1, 14,107, -/* 0x0d40 */ 40,106, 58,120,231, 0, 10, 75,154,193, 0,145,232, 0, 0, 84, -/* 0x0d50 */ 127, 1, 2,235,192,213,255, 84,104, 1, 64, 57, 41, 93, 24, 83, -/* 0x0d60 */ 107, 5, 0,145, 7, 33, 7, 42, 45,106,122,120, 40,125, 11, 83, -/* 0x0d70 */ 10,125, 13, 27,255, 0, 10,107, 35, 5, 0, 84, 41, 1, 10, 75, -/* 0x0d80 */ 173, 21, 77, 75, 63, 1, 14,107, 45,106, 58,120,231, 0, 10, 75, -/* 0x0d90 */ 140, 33, 1,145,232, 0, 0, 84,127, 1, 2,235,128,211,255, 84, -/* 0x0da0 */ 104, 1, 64, 57, 41, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, -/* 0x0db0 */ 45,106,108,120, 40,125, 11, 83, 10,125, 13, 27,255, 0, 10,107, -/* 0x0dc0 */ 2, 8, 0, 84,232, 1, 13, 75,233, 3, 28, 42, 60, 2, 38, 30, -/* 0x0dd0 */ 173, 21,136, 11, 45,106, 44,120,241, 2, 39, 30,247, 3, 9, 42, -/* 0x0de0 */ 21, 0, 0, 20, 8, 2,128, 82,231, 0, 9, 75,173, 21, 77, 75, -/* 0x0df0 */ 153, 17, 8,145, 4, 1, 39, 30, 8, 1,128, 82,141, 5, 0,121, -/* 0x0e00 */ 73, 1, 9, 75, 6, 1, 39, 30,190,254,255, 23,191, 0, 16,107, -/* 0x0e10 */ 82, 26, 0, 81, 40,196,255, 84,114,254,255, 23,232, 1, 13, 75, -/* 0x0e20 */ 233, 3, 28, 42,252, 3, 23, 42,247, 3, 9, 42,173, 21,136, 11, -/* 0x0e30 */ 45,106, 58,120,136, 2, 38, 30, 95, 30, 0,113, 9, 0, 38, 30, -/* 0x0e40 */ 44, 0,102,158, 18,177,137, 26,151,254,255, 23, 8, 21, 72, 75, -/* 0x0e50 */ 74, 1, 9, 75,231, 0, 9, 75, 40,106, 45,120,246,255,255, 23, -/* 0x0e60 */ 232, 3, 13, 42, 84,254,255, 23,170, 21, 0, 81, 63, 1, 14,107, -/* 0x0e70 */ 140,121, 31, 83,232, 0, 0, 84,127, 1, 2,235, 41, 93, 24, 83, -/* 0x0e80 */ 96,204,255, 84,104, 1, 64, 57,107, 5, 0,145, 7, 33, 7, 42, -/* 0x0e90 */ 41,125, 1, 83,255, 0, 9,107, 99, 0, 0, 84,231, 0, 9, 75, -/* 0x0ea0 */ 140, 1, 0, 50, 74, 5, 0,113, 33,254,255, 84, 8, 32, 25,145, -/* 0x0eb0 */ 152,109, 28, 83,155, 0,128, 82, 19, 1,103,158,240,254,255, 23, -/* 0x0ec0 */ 232, 3, 28, 42,231, 0, 10, 75,173, 21, 77, 75,252, 3, 21, 42, -/* 0x0ed0 */ 45,106, 44,120, 42, 1, 10, 75, 53, 2, 38, 30,241, 2, 39, 30, -/* 0x0ee0 */ 247, 3, 8, 42,212,255,255, 23,240, 3, 5, 42,227, 19,189,169, -/* 0x0ef0 */ 229, 27, 1,169,254, 19, 0,249,232, 3, 1,170, 45, 64, 34,139, -/* 0x0f00 */ 233, 3, 4,170,142, 64, 37,139, 11, 16, 0,145, 6, 0, 64, 57, -/* 0x0f10 */ 5, 4, 64, 57, 4, 8, 64, 57,174, 0, 6, 11, 7, 0,128, 18, -/* 0x0f20 */ 229, 32,197, 26,229, 3, 37, 42,228, 32,196, 26,228, 3, 36, 42, -/* 0x0f30 */ 35, 0,128, 82, 34, 0,128, 82, 33, 0,128, 82, 32, 0,128, 82, -/* 0x0f40 */ 6, 0,128, 82,230, 31, 0,185, 2, 96,128, 82,192,230,128, 82, -/* 0x0f50 */ 66, 32,206, 26, 66, 0, 0, 11, 0,128,128,210,225, 3, 11,170, -/* 0x0f60 */ 0, 64, 0,170, 0,128, 0,170, 32,132, 0,248, 66, 16, 0,113, -/* 0x0f70 */ 204,255,255, 84, 0, 21, 0,145,232, 0, 0,148, 31, 0, 8,235, -/* 0x0f80 */ 193,255,255, 84,227, 67, 66,248,226, 19, 64,185, 36, 1, 3,203, -/* 0x0f90 */ 128, 0, 2, 10,224, 47, 0,185, 0, 16, 6, 11, 97, 1, 0,145, -/* 0x0fa0 */ 226, 0, 0,148,161, 5, 0, 84,227, 23, 64,185,226, 27, 64,185, -/* 0x0fb0 */ 99, 0, 4, 10,224,115, 64, 57, 99, 32,194, 26,226, 3, 2, 75, -/* 0x0fc0 */ 66, 32, 0, 17, 2, 36,194, 26, 99, 0, 2, 11,106,177, 57,145, -/* 0x0fd0 */ 99, 4, 3, 11,227, 3, 3, 42, 32, 0,128, 82, 74, 37, 3,139, -/* 0x0fe0 */ 223, 28, 0,113, 35, 2, 0, 84,227,125, 64,147,227, 3, 3,203, -/* 0x0ff0 */ 37,105, 99, 56,165,120, 31, 83, 65, 1, 8,145,164, 0, 24, 18, -/* 0x1000 */ 227, 3, 4, 42, 33, 4, 3,139,202, 0, 0,148, 3, 0, 0, 18, -/* 0x1010 */ 130,124, 8, 83,127, 0, 2,107,193, 0, 0, 84, 31, 0, 4,113, -/* 0x1020 */ 163,254,255, 84, 5, 0, 0, 20,225, 3, 10,170,193, 0, 0,148, -/* 0x1030 */ 31, 0, 4,113,163,255,255, 84, 98, 0,128, 82,195, 0,128, 82, -/* 0x1040 */ 223, 40, 0,113, 67, 48,131, 26,223, 16, 0,113,195, 48,131, 26, -/* 0x1050 */ 198, 0, 3, 75, 34, 0, 0, 20, 97, 1, 6,145,178, 0, 0,148, -/* 0x1060 */ 129, 1, 0, 84,227, 11, 64,185,226, 7, 64,185,227, 15, 0,185, -/* 0x1070 */ 226, 11, 0,185,239, 7, 0,185, 3, 0,128, 82,223, 28, 0,113, -/* 0x1080 */ 102, 0,128, 82,102, 48,134, 26,106,145, 25,145, 42, 0, 0, 20, -/* 0x1090 */ 97, 97, 6,145,164, 0, 0,148, 97, 2, 0, 84,227, 47, 64,185, -/* 0x10a0 */ 97,129, 7,145, 96, 16, 6, 11,160, 0, 0,148,161, 3, 0, 84, -/* 0x10b0 */ 35, 1,128, 82,223, 28, 0,113,102, 1,128, 82,102, 48,134, 26, -/* 0x10c0 */ 227, 67, 66,248, 36, 1, 3,203,159, 0, 15,107,131, 17, 0, 84, -/* 0x10d0 */ 227,125, 64,147,227, 3, 3,203, 32,105, 99, 56, 32, 21, 0, 56, -/* 0x10e0 */ 121, 0, 0, 20, 97,193, 6,145,143, 0, 0,148,228, 7, 64,185, -/* 0x10f0 */ 64, 1, 0, 84, 97, 33, 7,145,139, 0, 0,148,228, 11, 64,185, -/* 0x1100 */ 128, 0, 0, 84,227, 11, 64,185,228, 15, 64,185,227, 15, 0,185, -/* 0x1110 */ 227, 7, 64,185,227, 11, 0,185,239, 7, 0,185,239, 3, 4, 42, -/* 0x1120 */ 3, 1,128, 82,223, 28, 0,113,102, 1,128, 82,102, 48,134, 26, -/* 0x1130 */ 106,161, 41,145, 65, 1, 0,145,125, 0, 0,148, 1, 1, 0, 84, -/* 0x1140 */ 227, 47, 64,185, 69, 17, 0,145,227, 3, 3, 42, 2, 0,128, 82, -/* 0x1150 */ 165, 16, 3,139, 4, 1,128, 82, 14, 0, 0, 20, 65, 9, 0,145, -/* 0x1160 */ 115, 0, 0,148, 1, 1, 0, 84,227, 47, 64,185, 69, 17, 4,145, -/* 0x1170 */ 227, 3, 3, 42, 2, 1,128, 82,165, 16, 3,139, 4, 1,128, 82, -/* 0x1180 */ 4, 0, 0, 20, 69, 17, 8,145, 2, 2,128, 82, 4, 32,128, 82, -/* 0x1190 */ 226, 55, 0,185, 32, 0,128, 82,225, 3, 5,170,101, 0, 0,148, -/* 0x11a0 */ 3, 0, 4,107,163,255,255, 84,229, 55, 64,185,165, 0, 3, 11, -/* 0x11b0 */ 229, 55, 0,185,223, 16, 0,113,194, 6, 0, 84,198, 28, 0, 17, -/* 0x11c0 */ 99, 0,128, 82,191, 16, 0,113,101, 32,133, 26,227, 3, 5, 42, -/* 0x11d0 */ 101, 29, 3,139,165,128, 13,145, 32, 0,128, 82, 4, 8,128, 82, -/* 0x11e0 */ 225, 3, 5,170, 83, 0, 0,148, 3, 0, 4,107,163,255,255, 84, -/* 0x11f0 */ 227, 47, 0,185,127, 16, 0,113, 99, 4, 0, 84,100,124, 1, 83, -/* 0x1200 */ 132, 4, 0, 81,111, 0, 0, 18,239, 1, 31, 50,127, 56, 0,113, -/* 0x1210 */ 226, 0, 0, 84,239, 33,196, 26,106,121, 21,145,227, 1, 3, 75, -/* 0x1220 */ 227, 3, 3, 42, 74, 5, 3,139, 12, 0, 0, 20,132, 16, 0, 81, -/* 0x1230 */ 53, 0, 0,148,231,124, 1, 83,131, 1, 7,107,108, 32,140, 26, -/* 0x1240 */ 239, 1, 15, 26,132, 4, 0,113, 65,255,255, 84,106, 17, 25,145, -/* 0x1250 */ 239,109, 28, 83,132, 0,128, 82, 37, 0,128, 82, 32, 0,128, 82, -/* 0x1260 */ 225, 3, 10,170, 51, 0, 0,148, 31, 0, 0,114, 64, 0, 0, 84, -/* 0x1270 */ 239, 1, 5, 42,165,120, 31, 83,132, 4, 0,113, 33,255,255, 84, -/* 0x1280 */ 2, 0, 0, 20,239, 47, 64,185,239, 5, 0, 49,229, 55, 64,185, -/* 0x1290 */ 227, 67, 66,248,165, 8, 0, 17, 35, 1, 3,203,255, 1, 3,107, -/* 0x12a0 */ 232, 2, 0, 84,227,125, 64,147,227, 3, 3,203, 32,105, 99, 56, -/* 0x12b0 */ 32, 21, 0, 56, 63, 1, 14,235,194, 0, 0, 84,165, 4, 0,113, -/* 0x12c0 */ 97,255,255, 84,224,115, 0, 57, 63, 1, 14,235,195,229,255, 84, -/* 0x12d0 */ 13, 0, 0,148, 0, 0,128, 82,226, 19, 64,249, 3, 1, 2,203, -/* 0x12e0 */ 226, 31, 64,249, 67, 0, 0,185,226, 67, 66,248, 35, 1, 2,203, -/* 0x12f0 */ 226, 55, 64,249, 67, 0, 0,185,255,243, 0,145, 32, 0,128, 82, -/* 0x1300 */ 246,255,255, 23,227,124, 24, 83,195, 0, 0, 53, 31, 1, 13,235, -/* 0x1310 */ 231, 92, 24, 83, 66,255,255, 84, 3, 21, 64, 56,108, 32, 12, 42, -/* 0x1320 */ 192, 3, 95,214,224, 3, 6, 42, 33, 68, 32,139, 0, 0,128, 82, -/* 0x1330 */ 33, 68, 32,139,227,124, 24, 83,241, 3, 30,170, 94, 0, 0, 16, -/* 0x1340 */ 99,254,255, 52, 35, 0, 64,121,226,124, 11, 83, 98,124, 2, 27, -/* 0x1350 */ 159, 1, 2,107, 2, 1, 0, 84,231, 3, 2, 42, 2, 0,129, 82, -/* 0x1360 */ 66, 0, 3, 75, 0, 0, 0, 58, 99, 20, 66, 11, 35, 0, 0,121, -/* 0x1370 */ 32, 2, 95,214,140, 1, 2, 75,231, 0, 2, 75, 99, 20, 67, 75, -/* 0x1380 */ 0, 0, 0, 58, 35, 0, 0,121, 32, 2, 95,214,194, 3,128, 82, -/* 0x1390 */ 225, 0, 0, 16, 64, 0,128, 82, 8, 8,128, 82, 1, 0, 0,212, -/* 0x13a0 */ 224, 15,128, 82,168, 11,128, 82, 1, 0, 0,212, 80, 82, 79, 84, -/* 0x13b0 */ 95, 69, 88, 69, 67,124, 80, 82, 79, 84, 95, 87, 82, 73, 84, 69, -/* 0x13c0 */ 32,102, 97,105,108,101,100, 46, 10, 0, 0, 0, 5, 0,128,210, -/* 0x13d0 */ 98, 0,128, 82,200, 27,128, 82, 1, 0, 0,212,192, 3, 95,214, -/* 0x13e0 */ 244, 3, 30,170, 0, 67, 95,184, 25, 51, 0,209, 57, 3, 0,203, -/* 0x13f0 */ 129, 6, 64,185, 4, 0,128, 18, 67, 4,128, 82, 0, 0,128,210, -/* 0x1400 */ 243,255,255,151,224, 7,191,169,250,111,191,169,251, 3, 0,170, -/* 0x1410 */ 226, 3, 0,170,225, 15, 31,248,227, 3, 0,145,128, 66, 0,145, -/* 0x1420 */ 129, 10, 64,185,132, 50, 64, 57, 0, 3, 63,214,232, 7, 65,248, -/* 0x1430 */ 96, 67, 64,248, 65, 3,192,218, 33, 16,192,218, 33, 4, 0,145, -/* 0x1440 */ 33,212,118,211, 0, 0, 1,170, 96, 67, 0,248,162, 0,128, 82, -/* 0x1450 */ 225, 27, 64,185,224, 3, 27,170, 72, 28,128, 82, 1, 0, 0,212, -/* 0x1460 */ 128, 2, 64,185, 29, 67, 95,184, 60, 3, 0,139, 96, 67, 0,145, -/* 0x1470 */ 0, 0, 31,214, 47,112,114,111, 99, 47,115,101,108,102, 47,101, -/* 0x1480 */ 120,101, 0, 0, 1,132, 64,248,225,255,255,181,192, 3, 95,214, -/* 0x1490 */ 248, 3, 30,170,224, 3, 0,145,251,255,255,151,250,255,255,151, -/* 0x14a0 */ 246, 3, 0,170, 1,136,192,168, 63, 24, 0,113, 96, 0, 0, 84, -/* 0x14b0 */ 161,255,255, 53, 34, 0,160,210,250, 3, 2,203, 96, 12,128, 18, -/* 0x14c0 */ 161,253,255, 16, 2, 0,128, 82, 8, 7,128, 82, 1, 0, 0,212, -/* 0x14d0 */ 251, 3, 0, 42,195,255,255,151, 0, 0, 0, 0,102,105,108,101, -/* 0x14e0 */ 32,102,111,114,109, 97,116, 32,101,108,102, 54, 52, 45,108,105, -/* 0x14f0 */ 116,116,108,101, 97, 97,114, 99,104, 54, 52, 10, 10, 83,101, 99, -/* 0x1500 */ 116,105,111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,101, 32, -/* 0x1510 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122,101, 32, 32, 32, -/* 0x1520 */ 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, -/* 0x1530 */ 32, 32, 32, 32, 32, 76, 77, 65, 32, 32, 32, 32, 32, 32, 32, 32, -/* 0x1540 */ 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32,111,102,102, 32, -/* 0x1550 */ 32, 65,108,103,110, 32, 32, 70,108, 97,103,115, 10, 32, 32, 48, -/* 0x1560 */ 32, 69, 76, 70, 77, 65, 73, 78, 88, 32, 32, 32, 32, 32, 32, 48, -/* 0x1570 */ 56, 32, 32, 48, 32, 32, 48, 32, 32, 48, 52, 48, 32, 32, 50, 42, -/* 0x1580 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 49, -/* 0x1590 */ 32, 78, 82, 86, 95, 72, 69, 65, 68, 32, 32, 32, 32, 32, 32, 48, -/* 0x15a0 */ 32, 32, 48, 32, 32, 48, 32, 32, 48, 52, 56, 32, 32, 50, 42, 42, -/* 0x15b0 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 50, 32, -/* 0x15c0 */ 78, 82, 86, 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, 32, 48, 32, -/* 0x15d0 */ 32, 48, 32, 32, 48, 32, 32, 48, 52, 56, 32, 32, 50, 42, 42, 48, -/* 0x15e0 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 51, 32, 78, -/* 0x15f0 */ 82, 86, 50, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 49, 55, -/* 0x1600 */ 99, 32, 32, 48, 32, 32, 48, 32, 32, 48, 52, 56, 32, 32, 50, 42, -/* 0x1610 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 52, -/* 0x1620 */ 32, 78, 82, 86, 50, 68, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, -/* 0x1630 */ 49, 55, 48, 32, 32, 48, 32, 32, 48, 32, 32, 48, 49, 99, 52, 32, -/* 0x1640 */ 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, -/* 0x1650 */ 32, 32, 53, 32, 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, 32, 32, -/* 0x1660 */ 32, 32, 48, 49, 52, 52, 32, 32, 48, 32, 32, 48, 32, 32, 48, 51, -/* 0x1670 */ 51, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, -/* 0x1680 */ 84, 83, 10, 32, 32, 54, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, -/* 0x1690 */ 48, 32, 32, 32, 32, 48, 49, 48, 99, 32, 32, 48, 32, 32, 48, 32, -/* 0x16a0 */ 32, 48, 52, 55, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, -/* 0x16b0 */ 84, 69, 78, 84, 83, 10, 32, 32, 55, 32, 76, 90, 77, 65, 95, 68, -/* 0x16c0 */ 69, 67, 50, 48, 32, 32, 32, 32, 48, 57, 54, 56, 32, 32, 48, 32, -/* 0x16d0 */ 32, 48, 32, 32, 48, 53, 56, 52, 32, 32, 50, 42, 42, 48, 32, 32, -/* 0x16e0 */ 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 56, 32, 76, 90, 77, -/* 0x16f0 */ 65, 95, 68, 69, 67, 49, 48, 32, 32, 32, 32, 48, 52, 97, 48, 32, -/* 0x1700 */ 32, 48, 32, 32, 48, 32, 32, 48,101,101, 99, 32, 32, 50, 42, 42, -/* 0x1710 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 57, 32, -/* 0x1720 */ 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 32, 32, 32, 32, 48, 32, -/* 0x1730 */ 32, 48, 32, 32, 48, 32, 32, 48, 49, 51, 56, 99, 32, 32, 50, 42, -/* 0x1740 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 49, 48, -/* 0x1750 */ 32, 69, 76, 70, 77, 65, 73, 78, 89, 32, 32, 32, 32, 32, 32, 48, -/* 0x1760 */ 51,101, 32, 32, 48, 32, 32, 48, 32, 32, 48, 49, 51, 56, 99, 32, -/* 0x1770 */ 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, -/* 0x1780 */ 32, 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32, 32, 32, 32, -/* 0x1790 */ 32, 32, 48, 49, 49, 48, 32, 32, 48, 32, 32, 48, 32, 32, 48, 49, -/* 0x17a0 */ 51, 99, 99, 32, 32, 50, 42, 42, 50, 32, 32, 67, 79, 78, 84, 69, -/* 0x17b0 */ 78, 84, 83, 10, 83, 89, 77, 66, 79, 76, 32, 84, 65, 66, 76, 69, -/* 0x17c0 */ 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x17d0 */ 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, -/* 0x17e0 */ 68, 69, 67, 51, 48, 32, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, -/* 0x17f0 */ 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1800 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, -/* 0x1810 */ 65, 73, 78, 90, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, -/* 0x1820 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1830 */ 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, -/* 0x1840 */ 88, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 88, 10, 48, 48, 48, -/* 0x1850 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, -/* 0x1860 */ 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68, 32, 48, -/* 0x1870 */ 32, 78, 82, 86, 95, 72, 69, 65, 68, 10, 48, 48, 48, 48, 48, 48, -/* 0x1880 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32, -/* 0x1890 */ 100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 32, 48, 32, 78, 82, -/* 0x18a0 */ 86, 95, 84, 65, 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x18b0 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, -/* 0x18c0 */ 78, 82, 86, 50, 69, 32, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, -/* 0x18d0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, -/* 0x18e0 */ 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 32, 48, 32, 78, -/* 0x18f0 */ 82, 86, 50, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1900 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, -/* 0x1910 */ 86, 50, 66, 32, 48, 32, 78, 82, 86, 50, 66, 10, 48, 48, 48, 48, -/* 0x1920 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, -/* 0x1930 */ 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 32, -/* 0x1940 */ 48, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 10, 48, 48, 48, -/* 0x1950 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, -/* 0x1960 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, -/* 0x1970 */ 32, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, 10, 48, 48, -/* 0x1980 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, -/* 0x1990 */ 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, -/* 0x19a0 */ 48, 32, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, 10, 48, -/* 0x19b0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32, -/* 0x19c0 */ 108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, -/* 0x19d0 */ 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48, 48, -/* 0x19e0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32, 32, -/* 0x19f0 */ 32, 32, 32, 32, 32, 42, 85, 78, 68, 42, 32, 48, 32, 77, 70, 76, -/* 0x1a00 */ 71, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1a10 */ 48, 52, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, -/* 0x1a20 */ 73, 78, 88, 32, 48, 32, 95,115,116, 97,114,116, 10, 48, 48, 48, -/* 0x1a30 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,103, 32, -/* 0x1a40 */ 32, 32, 32, 32, 70, 32, 78, 82, 86, 50, 69, 32, 48, 49, 55, 99, -/* 0x1a50 */ 32,117, 99,108, 95,110,114,118, 50,101, 95,100,101, 99,111,109, -/* 0x1a60 */ 112,114,101,115,115, 95, 51, 50, 10, 48, 48, 48, 48, 48, 48, 48, -/* 0x1a70 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, -/* 0x1a80 */ 70, 32, 78, 82, 86, 50, 68, 32, 48, 49, 55, 48, 32,117, 99,108, -/* 0x1a90 */ 95,110,114,118, 50,100, 95,100,101, 99,111,109,112,114,101,115, -/* 0x1aa0 */ 115, 95, 51, 50, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1ab0 */ 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 70, 32, 78, 82, -/* 0x1ac0 */ 86, 50, 66, 32, 48, 49, 52, 52, 32,117, 99,108, 95,110,114,118, -/* 0x1ad0 */ 50, 98, 95,100,101, 99,111,109,112,114,101,115,115, 95, 51, 50, -/* 0x1ae0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1af0 */ 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, 68, -/* 0x1b00 */ 69, 67, 49, 48, 32, 48, 32, 76,122,109, 97, 68,101, 99,111,100, -/* 0x1b10 */ 101, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1b20 */ 48, 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, -/* 0x1b30 */ 73, 78, 89, 32, 48, 32,101,110,100, 95,100,101, 99,111,109,112, -/* 0x1b40 */ 114,101,115,115, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1b50 */ 48, 48, 48, 48, 48, 32, 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, -/* 0x1b60 */ 78, 68, 42, 32, 48, 32, 79, 95, 66, 73, 78, 70, 79, 10, 10, 82, -/* 0x1b70 */ 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, -/* 0x1b80 */ 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 88, 93, -/* 0x1b90 */ 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 32, 32, 32, 32, 32, -/* 0x1ba0 */ 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, -/* 0x1bb0 */ 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, -/* 0x1bc0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 65, 65, -/* 0x1bd0 */ 82, 67, 72, 54, 52, 95, 65, 66, 83, 51, 50, 32, 32, 32, 77, 70, -/* 0x1be0 */ 76, 71, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1bf0 */ 48, 48, 52, 32, 82, 95, 65, 65, 82, 67, 72, 54, 52, 95, 67, 65, -/* 0x1c00 */ 76, 76, 50, 54, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 43, 48, -/* 0x1c10 */ 120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 99, -/* 0x1c20 */ 52, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, -/* 0x1c30 */ 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 90, 77, 65, 95, -/* 0x1c40 */ 69, 76, 70, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, -/* 0x1c50 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, -/* 0x1c60 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, -/* 0x1c70 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, -/* 0x1c80 */ 52, 32, 82, 95, 65, 65, 82, 67, 72, 54, 52, 95, 67, 79, 78, 68, -/* 0x1c90 */ 66, 82, 49, 57, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, -/* 0x1ca0 */ 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, -/* 0x1cb0 */ 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, -/* 0x1cc0 */ 78, 90, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 32, 32, -/* 0x1cd0 */ 32, 32, 32, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, -/* 0x1ce0 */ 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, -/* 0x1cf0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 49, 48, 99, 32, 82, -/* 0x1d00 */ 95, 65, 65, 82, 67, 72, 54, 52, 95, 65, 66, 83, 51, 50, 32, 32, -/* 0x1d10 */ 32, 79, 95, 66, 73, 78, 70, 79, 10 +/* 0x0040 */ 0, 0, 0, 0,243,255,255, 24, 0, 0, 0,148,254, 15, 31,248, +/* 0x0050 */ 226, 15,191,169, 7, 64, 33,139, 5, 0,128, 18, 4, 0,176, 82, +/* 0x0060 */ 45, 0, 0, 20,227, 19,193,168, 0, 0, 7,203, 66, 0, 3,203, +/* 0x0070 */ 130, 0, 0,185,229, 3, 0,170,224, 3, 3,170, 97, 0, 2,139, +/* 0x0080 */ 35, 0, 59,213, 99, 1,224, 55, 98, 76, 80,211,100, 0,128,146, +/* 0x0090 */ 132, 32,194,154, 2, 0, 4,138, 95, 0, 1,235,162, 0, 0, 84, +/* 0x00a0 */ 34,123, 11,213, 66, 0, 4,203, 63, 0, 2,235,168,255,255, 84, +/* 0x00b0 */ 159, 59, 3,213, 99, 1,232, 55, 99, 12, 64,146, 98, 0,128,146, +/* 0x00c0 */ 66, 32,195,154, 0, 0, 2,138, 63, 0, 0,235,169, 0, 0, 84, +/* 0x00d0 */ 32,117, 11,213, 0, 0, 2,203, 63, 0, 0,235,168,255,255, 84, +/* 0x00e0 */ 159, 59, 3,213,223, 63, 3,213,224, 3, 5,170,254, 7, 65,248, +/* 0x00f0 */ 192, 3, 95,214,132, 0, 4, 43, 68, 0, 0, 52,192, 3, 95,214, +/* 0x0100 */ 4, 68, 64,184,132, 0, 4, 58,192, 3, 95,214, 3, 20, 64, 56, +/* 0x0110 */ 67, 20, 0, 56,248,255,255,151,162,255,255, 84, 33, 0,128, 82, +/* 0x0120 */ 4, 0, 0, 20, 33, 4, 0, 81,243,255,255,151, 33, 0, 1, 26, +/* 0x0130 */ 241,255,255,151, 33, 0, 1, 26,239,255,255,151, 67,255,255, 84, +/* 0x0140 */ 35, 12, 0,113, 1, 0,128, 82, 35, 1, 0, 84, 5, 20, 64, 56, +/* 0x0150 */ 165, 32, 3, 42,229, 3, 37, 42,101,248,255, 52,191, 0, 0,114, +/* 0x0160 */ 165,124, 1, 19,161, 1, 0, 84, 3, 0, 0, 20,226,255,255,151, +/* 0x0170 */ 66, 1, 0, 84, 33, 0,128, 82,223,255,255,151,226, 0, 0, 84, +/* 0x0180 */ 221,255,255,151, 33, 0, 1, 26,219,255,255,151,163,255,255, 84, +/* 0x0190 */ 33, 16, 0, 17, 4, 0, 0, 20,215,255,255,151, 33, 0, 1, 26, +/* 0x01a0 */ 33, 8, 0, 17,191, 0, 20, 49, 33, 36,129, 26, 67, 64, 33,139, +/* 0x01b0 */ 99,240, 95, 56, 67,200,101, 56, 67, 20, 0, 56, 33, 4, 0,113, +/* 0x01c0 */ 161,255,255, 84,212,255,255, 23,226, 15,190,169,254, 11, 0,249, +/* 0x01d0 */ 7, 64, 33,139, 5, 0,128, 18, 4, 0,176, 82, 45, 0, 0, 20, +/* 0x01e0 */ 227, 19,193,168, 0, 0, 7,203, 66, 0, 3,203,130, 0, 0,185, +/* 0x01f0 */ 229, 3, 0,170,224, 3, 3,170, 97, 0, 2,139, 35, 0, 59,213, +/* 0x0200 */ 99, 1,224, 55, 98, 76, 80,211,100, 0,128,146,132, 32,194,154, +/* 0x0210 */ 2, 0, 4,138, 95, 0, 1,235,162, 0, 0, 84, 34,123, 11,213, +/* 0x0220 */ 66, 0, 4,203, 63, 0, 2,235,168,255,255, 84,159, 59, 3,213, +/* 0x0230 */ 99, 1,232, 55, 99, 12, 64,146, 98, 0,128,146, 66, 32,195,154, +/* 0x0240 */ 0, 0, 2,138, 63, 0, 0,235,169, 0, 0, 84, 32,117, 11,213, +/* 0x0250 */ 0, 0, 2,203, 63, 0, 0,235,168,255,255, 84,159, 59, 3,213, +/* 0x0260 */ 223, 63, 3,213,224, 3, 5,170,254, 7, 65,248,192, 3, 95,214, +/* 0x0270 */ 132, 0, 4, 43, 68, 0, 0, 52,192, 3, 95,214, 4, 68, 64,184, +/* 0x0280 */ 132, 0, 4, 58,192, 3, 95,214, 3, 20, 64, 56, 67, 20, 0, 56, +/* 0x0290 */ 248,255,255,151,162,255,255, 84, 33, 0,128, 82, 4, 0, 0, 20, +/* 0x02a0 */ 33, 4, 0, 81,243,255,255,151, 33, 0, 1, 58,241,255,255,151, +/* 0x02b0 */ 33, 0, 1, 58,239,255,255,151, 67,255,255, 84, 35, 12, 0,113, +/* 0x02c0 */ 1, 0,128, 82, 35, 1, 0, 84, 5, 20, 64, 56,165, 32, 3, 42, +/* 0x02d0 */ 229, 3, 37, 42,101,248,255, 52,163, 0, 1, 83,165,124, 1, 83, +/* 0x02e0 */ 99, 0, 3, 43, 2, 0, 0, 20,226,255,255,151, 33, 0, 1, 58, +/* 0x02f0 */ 224,255,255,151, 33, 0, 1, 58,225, 0, 0, 84, 33, 0,128, 82, +/* 0x0300 */ 220,255,255,151, 33, 0, 1, 58,218,255,255,151,163,255,255, 84, +/* 0x0310 */ 33, 8, 0, 17, 33, 4, 0, 17,191, 0, 20, 49, 33, 52,129, 26, +/* 0x0320 */ 67, 0, 64, 57, 67,200,101, 56, 67, 20, 0, 56, 33, 4, 0,113, +/* 0x0330 */ 161,255,255, 84,215,255,255, 23, 1, 64, 33,139,225, 11,190,169, +/* 0x0340 */ 227,123, 1,169, 5, 0,128, 18, 4, 0,176, 82, 52, 0, 0, 20, +/* 0x0350 */ 228,123, 65,169,225, 15,194,168, 0, 0, 1,203, 66, 0, 3,203, +/* 0x0360 */ 130, 0, 0,185,229, 3, 0,170,224, 3, 3,170, 97, 0, 2,139, +/* 0x0370 */ 35, 0, 59,213, 99, 1,224, 55, 98, 76, 80,211,100, 0,128,146, +/* 0x0380 */ 132, 32,194,154, 2, 0, 4,138, 95, 0, 1,235,162, 0, 0, 84, +/* 0x0390 */ 34,123, 11,213, 66, 0, 4,203, 63, 0, 2,235,168,255,255, 84, +/* 0x03a0 */ 159, 59, 3,213, 99, 1,232, 55, 99, 12, 64,146, 98, 0,128,146, +/* 0x03b0 */ 66, 32,195,154, 0, 0, 2,138, 63, 0, 0,235,169, 0, 0, 84, +/* 0x03c0 */ 32,117, 11,213, 0, 0, 2,203, 63, 0, 0,235,168,255,255, 84, +/* 0x03d0 */ 159, 59, 3,213,223, 63, 3,213,224, 3, 5,170,192, 3, 95,214, +/* 0x03e0 */ 132, 0, 4, 43, 68, 0, 0, 52,192, 3, 95,214, 4, 68, 64,184, +/* 0x03f0 */ 132, 0, 4, 58,192, 3, 95,214, 33, 0,128, 82,240, 3, 30,170, +/* 0x0400 */ 248,255,255,151, 33, 0, 1, 58,246,255,255,151,163,255,255, 84, +/* 0x0410 */ 0, 2, 31,214, 3, 20, 64, 56, 67, 20, 0, 56,241,255,255,151, +/* 0x0420 */ 162,255,255, 84,245,255,255,151, 35, 12, 0,113, 1, 0,128, 82, +/* 0x0430 */ 163, 0, 0, 84, 5, 20, 64, 56,165, 32, 3, 42,229, 3, 37, 42, +/* 0x0440 */ 133,248,255, 52,231,255,255,151, 33, 0, 1, 58,229,255,255,151, +/* 0x0450 */ 33, 0, 1, 58, 97, 0, 0, 84,232,255,255,151, 33, 8, 0, 17, +/* 0x0460 */ 191, 0, 52, 49, 33, 36,129, 26, 67,200,101, 56, 33, 4, 0,113, +/* 0x0470 */ 67, 20, 0, 56,162,255,255, 84,233,255,255, 23,159, 56, 0,113, +/* 0x0480 */ 1, 0, 0, 84,226, 15,190,169,253,123, 1,169,253, 3, 0,145, +/* 0x0490 */ 8, 0, 64, 57, 7,192,128, 82, 8,125, 3, 83,231, 32,200, 26, +/* 0x04a0 */ 231,192, 57, 17,232, 3, 0,145,255, 67, 39,203,228, 3, 0,145, +/* 0x04b0 */ 159,124,129,168,159, 0, 8,235,195,255,255, 84,255,127,191,169, +/* 0x04c0 */ 230, 3, 3,170,197, 0, 64,185,228, 3, 2,170,227, 35, 0,145, +/* 0x04d0 */ 34, 8, 0, 81,225, 3, 0,170,224, 3, 0,145, 39, 20, 64, 56, +/* 0x04e0 */ 231, 8, 0, 18, 7, 8, 0, 57, 39, 20, 64, 56,232,124, 4, 83, +/* 0x04f0 */ 8, 4, 0, 57,231, 12, 0, 18, 7, 0, 0, 57, 35, 0, 0,148, +/* 0x0500 */ 191, 3, 0,145,229, 3, 0,170,253,123, 65,169,224, 7,194,168, +/* 0x0510 */ 33, 0, 64,249, 33, 0, 0,139, 35, 0, 59,213, 99, 1,224, 55, +/* 0x0520 */ 98, 76, 80,211,100, 0,128,146,132, 32,194,154, 2, 0, 4,138, +/* 0x0530 */ 95, 0, 1,235,162, 0, 0, 84, 34,123, 11,213, 66, 0, 4,203, +/* 0x0540 */ 63, 0, 2,235,168,255,255, 84,159, 59, 3,213, 99, 1,232, 55, +/* 0x0550 */ 99, 12, 64,146, 98, 0,128,146, 66, 32,195,154, 0, 0, 2,138, +/* 0x0560 */ 63, 0, 0,235,169, 0, 0, 84, 32,117, 11,213, 0, 0, 2,203, +/* 0x0570 */ 63, 0, 0,235,168,255,255, 84,159, 59, 3,213,223, 63, 3,213, +/* 0x0580 */ 224, 3, 5,170,192, 3, 95,214,255, 67, 1,209, 39, 0,128, 82, +/* 0x0590 */ 17, 16, 0,145, 9,128,128, 82,243, 83, 0,169,245, 91, 1,169, +/* 0x05a0 */ 247, 99, 2,169,249,107, 3,169,251,115, 4,169, 20, 8, 64, 57, +/* 0x05b0 */ 19, 4, 64, 57, 22, 0, 64, 57,244, 32,212, 26,127, 0, 0,185, +/* 0x05c0 */ 243, 32,211, 26,223, 0, 0,185, 7, 0,128,210,148, 6, 0, 81, +/* 0x05d0 */ 8, 4, 64, 57, 10, 1, 22, 11,104, 6, 0, 81, 18, 1, 39, 30, +/* 0x05e0 */ 8, 96,128, 82, 8, 33,202, 26, 8,217, 28, 49,160, 0, 0, 84, +/* 0x05f0 */ 41,122, 39,120,231, 4, 0,145, 31, 1, 7,107,168,255,255, 84, +/* 0x0600 */ 34, 64, 34,139, 63, 0, 2,235, 64, 16, 0, 84,235, 3, 1,170, +/* 0x0610 */ 40, 4, 0,145,103, 85, 64, 56, 31, 1, 2,235,160, 15, 0, 84, +/* 0x0620 */ 9, 21, 64, 56, 31, 1, 11,235, 39, 33, 7, 42, 97,255,255, 84, +/* 0x0630 */ 229, 69, 0, 52, 8, 1,128, 82, 53, 0,128, 82, 18, 0,128, 82, +/* 0x0640 */ 9, 0,128, 18, 20, 1, 39, 30,104, 0,128, 82,177, 2, 39, 30, +/* 0x0650 */ 247, 3, 21, 42, 7, 1, 39, 30, 8, 86,128,210,165, 2, 39, 30, +/* 0x0660 */ 252, 3, 21, 42, 3, 1,103,158,104, 1,128, 82,234, 3, 18, 42, +/* 0x0670 */ 240, 3, 18, 42, 0, 1, 39, 30, 8,176, 41,145, 14,224,191, 18, +/* 0x0680 */ 15, 0,129, 82, 1, 1,103,158, 40, 1,128, 82, 2, 1, 39, 30, +/* 0x0690 */ 136, 2, 38, 30, 8, 1, 22, 75, 16, 1, 39, 30, 72,110, 28, 83, +/* 0x06a0 */ 63, 1, 14,107, 25, 2, 20, 10, 13,125, 64,147,173,193, 57,139, +/* 0x06b0 */ 173,249,127,211,232, 0, 0, 84,127, 1, 2,235,160, 10, 0, 84, +/* 0x06c0 */ 104, 1, 64, 57, 41, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, +/* 0x06d0 */ 59,106,109,120, 40,125, 11, 83, 8,125, 27, 27,255, 0, 8,107, +/* 0x06e0 */ 130, 10, 0, 84, 73, 2, 38, 30, 19, 62, 1, 14, 95, 26, 0,113, +/* 0x06f0 */ 12, 2, 9, 10, 73, 41,211, 26,140, 33,214, 26,234, 1, 27, 75, +/* 0x0700 */ 41, 1, 12, 11,106, 23,138, 11, 42,106, 45,120, 41, 5, 9, 11, +/* 0x0710 */ 41, 93,120,211, 41,217, 28,145, 58, 6, 9,139,109, 31, 0, 84, +/* 0x0720 */ 10, 2, 28, 75, 41, 0,128, 82,153,104,106, 56, 7, 0, 0, 20, +/* 0x0730 */ 91,107, 42,120, 41,121, 31, 83,232, 3, 13, 42, 83, 57, 0, 53, +/* 0x0740 */ 63,253, 3,113,236, 3, 0, 84, 57,123, 31, 83, 31, 1, 14,107, +/* 0x0750 */ 51, 3, 24, 18, 56,121, 31, 83,106,126, 64,147, 74, 1, 4,145, +/* 0x0760 */ 74,193, 41,139, 74,249,127,211,232, 0, 0, 84,127, 1, 2,235, +/* 0x0770 */ 8, 93, 24, 83,224, 4, 0, 84,108, 1, 64, 57,107, 5, 0,145, +/* 0x0780 */ 135, 33, 7, 42, 76,107,106,120, 13,125, 11, 83,251, 1, 12, 75, +/* 0x0790 */ 173,125, 12, 27,155, 21,155, 11,140, 21, 76, 75,255, 0, 13,107, +/* 0x07a0 */ 8, 1, 13, 75, 99,252,255, 84, 76,107, 42,120, 9, 7, 0, 17, +/* 0x07b0 */ 231, 0, 13, 75,115,252,255, 53, 63,253, 3,113, 77, 27, 0, 84, +/* 0x07c0 */ 42, 29, 0, 83,233, 3, 8, 42,138, 72, 48, 56, 16, 6, 0, 17, +/* 0x07d0 */ 95, 38, 0,113,236, 49, 0, 84, 82, 14, 0, 81,191, 0, 16,107, +/* 0x07e0 */ 232,245,255, 84, 0,224,191, 18, 63, 1, 0,107,136, 0, 0, 84, +/* 0x07f0 */ 127, 1, 2,235,224, 0, 0, 84,107, 5, 0,145, 97, 1, 1,203, +/* 0x0800 */ 97, 0, 0,185,208, 0, 0,185, 0, 0,128, 82, 2, 0, 0, 20, +/* 0x0810 */ 32, 0,128, 82,243, 83, 64,169,245, 91, 65,169,247, 99, 66,169, +/* 0x0820 */ 249,107, 67,169,251,115, 68,169,255, 67, 1,145,192, 3, 95,214, +/* 0x0830 */ 58, 1, 8, 75, 74,126, 64,147,105, 23, 91, 75, 95, 3, 14,107, +/* 0x0840 */ 41,106, 45,120, 76, 1, 3,145,231, 0, 8, 75,140,249,127,211, +/* 0x0850 */ 232, 0, 0, 84,127, 1, 2,235,192,253,255, 84,104, 1, 64, 57, +/* 0x0860 */ 90, 95, 24, 83,107, 5, 0,145, 7, 33, 7, 42, 40,106,108,120, +/* 0x0870 */ 74,127, 11, 83, 74,125, 8, 27,255, 0, 10,107,130, 25, 0, 84, +/* 0x0880 */ 237, 0, 38, 30,233, 1, 8, 75, 95, 30, 0,113, 53, 2, 38, 30, +/* 0x0890 */ 8, 21,137, 11,241, 2, 39, 30, 40,106, 44,120,242,179,141, 26, +/* 0x08a0 */ 12,160, 25,145,247, 3, 28, 42, 95, 1, 14,107,232, 0, 0, 84, +/* 0x08b0 */ 127, 1, 2,235,224,250,255, 84,104, 1, 64, 57, 74, 93, 24, 83, +/* 0x08c0 */ 107, 5, 0,145, 7, 33, 7, 42,141, 1, 64,121, 73,125, 11, 83, +/* 0x08d0 */ 41,125, 13, 27,255, 0, 9,107, 98, 31, 0, 84, 40,115, 29, 83, +/* 0x08e0 */ 115, 0,128, 82,234, 1, 13, 75, 8,125, 64,147, 8, 9, 0,145, +/* 0x08f0 */ 173, 21,138, 11,228, 3, 39, 30,141, 1, 0,121,102, 2, 39, 30, +/* 0x0900 */ 153, 5, 8,139,218, 0, 38, 30, 44, 0,128, 82, 6, 0, 0, 20, +/* 0x0910 */ 13, 3, 0,121, 90, 7, 0,113,140,121, 31, 83,233, 3, 8, 42, +/* 0x0920 */ 32, 3, 0, 84, 63, 1, 14,107,147,121, 31, 83, 56,199, 44,139, +/* 0x0930 */ 232, 0, 0, 84,127, 1, 2,235, 41, 93, 24, 83,160,246,255, 84, +/* 0x0940 */ 104, 1, 64, 57,107, 5, 0,145, 7, 33, 7, 42, 8, 3, 64,121, +/* 0x0950 */ 42,125, 11, 83,237, 1, 8, 75, 27, 21, 72, 75, 13, 21,141, 11, +/* 0x0960 */ 72,125, 8, 27,255, 0, 8,107, 41, 1, 8, 75, 35,253,255, 84, +/* 0x0970 */ 27, 3, 0,121, 90, 7, 0,113,231, 0, 8, 75,108, 6, 0, 17, +/* 0x0980 */ 33,253,255, 84,166, 68,166, 46,138, 0, 38, 30, 95, 14, 0,113, +/* 0x0990 */ 200, 0, 38, 30, 72, 1, 8, 75, 8, 1, 12, 11, 6, 1, 39, 30, +/* 0x09a0 */ 236, 22, 0, 84,234, 0, 38, 30, 31, 13, 0,113,220, 0,128, 82, +/* 0x09b0 */ 10,209,138, 26, 40, 0,128, 82, 74,101, 26, 83, 74,125, 64,147, +/* 0x09c0 */ 74,193, 6,145, 91,249,127,211, 6, 0, 0, 20, 44,106, 57,120, +/* 0x09d0 */ 156, 7, 0,113, 8,121, 31, 83,233, 3, 10, 42, 32, 3, 0, 84, +/* 0x09e0 */ 63, 1, 14,107, 19,121, 31, 83,121,199, 40,139,232, 0, 0, 84, +/* 0x09f0 */ 127, 1, 2,235, 41, 93, 24, 83,192,240,255, 84,106, 1, 64, 57, +/* 0x0a00 */ 107, 5, 0,145, 71, 33, 7, 42, 42,106,121,120, 45,125, 11, 83, +/* 0x0a10 */ 236, 1, 10, 75, 90, 21, 74, 75, 76, 21,140, 11,170,125, 10, 27, +/* 0x0a20 */ 255, 0, 10,107, 41, 1, 10, 75, 35,253,255, 84, 58,106, 57,120, +/* 0x0a30 */ 156, 7, 0,113,231, 0, 10, 75,104, 6, 0, 17, 33,253,255, 84, +/* 0x0a40 */ 10, 1, 1, 81, 95, 13, 0,113, 45, 17, 0, 84, 95, 53, 0,113, +/* 0x0a50 */ 72, 1, 0, 18, 77,125, 1, 19, 12, 1, 31, 50,140, 32, 0, 84, +/* 0x0a60 */ 104, 0,102,158,187, 5, 0, 81,152, 33,219, 26, 8,193, 42,203, +/* 0x0a70 */ 8, 65, 56,139, 40, 6, 8,139, 8, 9, 0,209, 19, 1,103,158, +/* 0x0a80 */ 40, 0,128, 82,252, 3, 8, 42, 7, 0, 0, 20, 83, 3, 0,121, +/* 0x0a90 */ 8,121, 31, 83,233, 3, 10, 42,123, 7, 0,113,156,123, 31, 83, +/* 0x0aa0 */ 128, 14, 0, 84,106, 2,102,158, 63, 1, 14,107, 25,121, 31, 83, +/* 0x0ab0 */ 90,197, 40,139,232, 0, 0, 84,127, 1, 2,235, 41, 93, 24, 83, +/* 0x0ac0 */ 128,234,255, 84,106, 1, 64, 57,107, 5, 0,145, 71, 33, 7, 42, +/* 0x0ad0 */ 74, 3, 64,121, 45,125, 11, 83,243, 1, 10, 75, 76, 21, 74, 75, +/* 0x0ae0 */ 83, 21,147, 11,170,125, 10, 27,255, 0, 10,107, 41, 1, 10, 75, +/* 0x0af0 */ 227,252,255, 84, 76, 3, 0,121, 24, 3, 28, 42,231, 0, 10, 75, +/* 0x0b00 */ 40, 7, 0, 17,229,255,255, 23, 41, 0,128, 82, 6, 0, 0, 20, +/* 0x0b10 */ 41,121, 31, 83, 74,107, 56,120, 63,253, 3,113,232, 3, 12, 42, +/* 0x0b20 */ 44, 3, 0, 84, 31, 1, 14,107, 51,121, 31, 83, 56,125,127,147, +/* 0x0b30 */ 232, 0, 0, 84,127, 1, 2,235, 8, 93, 24, 83,160,230,255, 84, +/* 0x0b40 */ 106, 1, 64, 57,107, 5, 0,145, 71, 33, 7, 42, 74,107,120,120, +/* 0x0b50 */ 12,125, 11, 83,237, 1, 10, 75,140,125, 10, 27, 89, 21, 74, 75, +/* 0x0b60 */ 74, 21,141, 11,255, 0, 12,107, 8, 1, 12, 75, 35,253,255, 84, +/* 0x0b70 */ 105, 6, 0, 17, 89,107, 56,120, 63,253, 3,113,231, 0, 12, 75, +/* 0x0b80 */ 45,253,255, 84, 42, 29, 0, 83, 95, 14, 0,113,138, 72, 48, 56, +/* 0x0b90 */ 233, 3, 8, 42, 16, 6, 0, 17,204,225,255, 84,191, 0, 16,107, +/* 0x0ba0 */ 18, 0,128, 82,200,215,255, 84, 15,255,255, 23, 73, 3, 10, 75, +/* 0x0bb0 */ 8, 21, 72, 75, 63, 1, 14,107, 40,106, 44,120,231, 0, 10, 75, +/* 0x0bc0 */ 154, 97, 0,145,232, 0, 0, 84,127, 1, 2,235, 32,226,255, 84, +/* 0x0bd0 */ 104, 1, 64, 57, 41, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, +/* 0x0be0 */ 40,106,122,120, 42,125, 11, 83, 74,125, 8, 27,255, 0, 10,107, +/* 0x0bf0 */ 66, 10, 0, 84,233, 1, 8, 75, 95, 1, 14,107,173,129, 7,145, +/* 0x0c00 */ 8, 21,137, 11, 40,106, 58,120,232, 0, 0, 84,127, 1, 2,235, +/* 0x0c10 */ 0,224,255, 84,104, 1, 64, 57, 74, 93, 24, 83,107, 5, 0,145, +/* 0x0c20 */ 7, 33, 7, 42, 40,106,109,120, 73,125, 11, 83, 41,125, 8, 27, +/* 0x0c30 */ 255, 0, 9,107,226, 16, 0, 84,234, 1, 8, 75, 8, 21,138, 11, +/* 0x0c40 */ 40,106, 45,120,112,222,255, 52, 74, 0, 38, 30, 8, 2, 28, 75, +/* 0x0c50 */ 12, 0, 38, 30, 95, 30, 0,113, 82,177,140, 26,138,104,104, 56, +/* 0x0c60 */ 138, 72, 48, 56, 16, 6, 0, 17,221,254,255, 23,248, 3, 10, 42, +/* 0x0c70 */ 28, 7, 0, 49,128,219,255, 84, 82, 30, 0, 17,200, 0, 38, 30, +/* 0x0c80 */ 159, 3, 16,107, 12, 9, 0, 17, 72,220,255, 84,232, 3, 16, 42, +/* 0x0c90 */ 2, 0, 0, 20, 76,218,255, 52, 10, 2, 28, 75, 16, 6, 0, 17, +/* 0x0ca0 */ 31, 2, 5,107,140, 5, 0, 81,138,104,106, 56,138, 72, 40, 56, +/* 0x0cb0 */ 232, 3, 16, 42, 3,255,255, 84,191, 0, 16,107, 8,207,255, 84, +/* 0x0cc0 */ 201,254,255, 23, 74, 1, 9, 75,173, 21, 77, 75, 95, 1, 14,107, +/* 0x0cd0 */ 141, 1, 0,121,231, 0, 9, 75,232, 0, 0, 84,127, 1, 2,235, +/* 0x0ce0 */ 128,217,255, 84,104, 1, 64, 57, 74, 93, 24, 83,107, 5, 0,145, +/* 0x0cf0 */ 7, 33, 7, 42,141, 5, 64,121, 73,125, 11, 83, 41,125, 13, 27, +/* 0x0d00 */ 255, 0, 9,107, 34, 7, 0, 84, 40,115, 29, 83, 19, 1,128, 82, +/* 0x0d10 */ 234, 1, 13, 75, 8,125, 64,147,100, 2, 39, 30, 8, 9, 2,145, +/* 0x0d20 */ 115, 0,128, 82,173, 21,138, 11,153, 5, 8,139,141, 5, 0,121, +/* 0x0d30 */ 102, 2, 39, 30,244,254,255, 23, 41, 1, 10, 75, 8, 21, 72, 75, +/* 0x0d40 */ 63, 1, 14,107, 40,106, 58,120,231, 0, 10, 75,154,193, 0,145, +/* 0x0d50 */ 232, 0, 0, 84,127, 1, 2,235,192,213,255, 84,104, 1, 64, 57, +/* 0x0d60 */ 41, 93, 24, 83,107, 5, 0,145, 7, 33, 7, 42, 45,106,122,120, +/* 0x0d70 */ 40,125, 11, 83, 10,125, 13, 27,255, 0, 10,107, 35, 5, 0, 84, +/* 0x0d80 */ 41, 1, 10, 75,173, 21, 77, 75, 63, 1, 14,107, 45,106, 58,120, +/* 0x0d90 */ 231, 0, 10, 75,140, 33, 1,145,232, 0, 0, 84,127, 1, 2,235, +/* 0x0da0 */ 128,211,255, 84,104, 1, 64, 57, 41, 93, 24, 83,107, 5, 0,145, +/* 0x0db0 */ 7, 33, 7, 42, 45,106,108,120, 40,125, 11, 83, 10,125, 13, 27, +/* 0x0dc0 */ 255, 0, 10,107, 2, 8, 0, 84,232, 1, 13, 75,233, 3, 28, 42, +/* 0x0dd0 */ 60, 2, 38, 30,173, 21,136, 11, 45,106, 44,120,241, 2, 39, 30, +/* 0x0de0 */ 247, 3, 9, 42, 21, 0, 0, 20, 8, 2,128, 82,231, 0, 9, 75, +/* 0x0df0 */ 173, 21, 77, 75,153, 17, 8,145, 4, 1, 39, 30, 8, 1,128, 82, +/* 0x0e00 */ 141, 5, 0,121, 73, 1, 9, 75, 6, 1, 39, 30,190,254,255, 23, +/* 0x0e10 */ 191, 0, 16,107, 82, 26, 0, 81, 40,196,255, 84,114,254,255, 23, +/* 0x0e20 */ 232, 1, 13, 75,233, 3, 28, 42,252, 3, 23, 42,247, 3, 9, 42, +/* 0x0e30 */ 173, 21,136, 11, 45,106, 58,120,136, 2, 38, 30, 95, 30, 0,113, +/* 0x0e40 */ 9, 0, 38, 30, 44, 0,102,158, 18,177,137, 26,151,254,255, 23, +/* 0x0e50 */ 8, 21, 72, 75, 74, 1, 9, 75,231, 0, 9, 75, 40,106, 45,120, +/* 0x0e60 */ 246,255,255, 23,232, 3, 13, 42, 84,254,255, 23,170, 21, 0, 81, +/* 0x0e70 */ 63, 1, 14,107,140,121, 31, 83,232, 0, 0, 84,127, 1, 2,235, +/* 0x0e80 */ 41, 93, 24, 83, 96,204,255, 84,104, 1, 64, 57,107, 5, 0,145, +/* 0x0e90 */ 7, 33, 7, 42, 41,125, 1, 83,255, 0, 9,107, 99, 0, 0, 84, +/* 0x0ea0 */ 231, 0, 9, 75,140, 1, 0, 50, 74, 5, 0,113, 33,254,255, 84, +/* 0x0eb0 */ 8, 32, 25,145,152,109, 28, 83,155, 0,128, 82, 19, 1,103,158, +/* 0x0ec0 */ 240,254,255, 23,232, 3, 28, 42,231, 0, 10, 75,173, 21, 77, 75, +/* 0x0ed0 */ 252, 3, 21, 42, 45,106, 44,120, 42, 1, 10, 75, 53, 2, 38, 30, +/* 0x0ee0 */ 241, 2, 39, 30,247, 3, 8, 42,212,255,255, 23,240, 3, 5, 42, +/* 0x0ef0 */ 227, 19,189,169,229, 27, 1,169,254, 19, 0,249,232, 3, 1,170, +/* 0x0f00 */ 45, 64, 34,139,233, 3, 4,170,142, 64, 37,139, 11, 16, 0,145, +/* 0x0f10 */ 6, 0, 64, 57, 5, 4, 64, 57, 4, 8, 64, 57,174, 0, 6, 11, +/* 0x0f20 */ 7, 0,128, 18,229, 32,197, 26,229, 3, 37, 42,228, 32,196, 26, +/* 0x0f30 */ 228, 3, 36, 42, 35, 0,128, 82, 34, 0,128, 82, 33, 0,128, 82, +/* 0x0f40 */ 32, 0,128, 82, 6, 0,128, 82,230, 31, 0,185, 2, 96,128, 82, +/* 0x0f50 */ 192,230,128, 82, 66, 32,206, 26, 66, 0, 0, 11, 0,128,128,210, +/* 0x0f60 */ 225, 3, 11,170, 0, 64, 0,170, 0,128, 0,170, 32,132, 0,248, +/* 0x0f70 */ 66, 16, 0,113,204,255,255, 84, 0, 21, 0,145,232, 0, 0,148, +/* 0x0f80 */ 31, 0, 8,235,193,255,255, 84,227, 67, 66,248,226, 19, 64,185, +/* 0x0f90 */ 36, 1, 3,203,128, 0, 2, 10,224, 47, 0,185, 0, 16, 6, 11, +/* 0x0fa0 */ 97, 1, 0,145,226, 0, 0,148,161, 5, 0, 84,227, 23, 64,185, +/* 0x0fb0 */ 226, 27, 64,185, 99, 0, 4, 10,224,115, 64, 57, 99, 32,194, 26, +/* 0x0fc0 */ 226, 3, 2, 75, 66, 32, 0, 17, 2, 36,194, 26, 99, 0, 2, 11, +/* 0x0fd0 */ 106,177, 57,145, 99, 4, 3, 11,227, 3, 3, 42, 32, 0,128, 82, +/* 0x0fe0 */ 74, 37, 3,139,223, 28, 0,113, 35, 2, 0, 84,227,125, 64,147, +/* 0x0ff0 */ 227, 3, 3,203, 37,105, 99, 56,165,120, 31, 83, 65, 1, 8,145, +/* 0x1000 */ 164, 0, 24, 18,227, 3, 4, 42, 33, 4, 3,139,202, 0, 0,148, +/* 0x1010 */ 3, 0, 0, 18,130,124, 8, 83,127, 0, 2,107,193, 0, 0, 84, +/* 0x1020 */ 31, 0, 4,113,163,254,255, 84, 5, 0, 0, 20,225, 3, 10,170, +/* 0x1030 */ 193, 0, 0,148, 31, 0, 4,113,163,255,255, 84, 98, 0,128, 82, +/* 0x1040 */ 195, 0,128, 82,223, 40, 0,113, 67, 48,131, 26,223, 16, 0,113, +/* 0x1050 */ 195, 48,131, 26,198, 0, 3, 75, 34, 0, 0, 20, 97, 1, 6,145, +/* 0x1060 */ 178, 0, 0,148,129, 1, 0, 84,227, 11, 64,185,226, 7, 64,185, +/* 0x1070 */ 227, 15, 0,185,226, 11, 0,185,239, 7, 0,185, 3, 0,128, 82, +/* 0x1080 */ 223, 28, 0,113,102, 0,128, 82,102, 48,134, 26,106,145, 25,145, +/* 0x1090 */ 42, 0, 0, 20, 97, 97, 6,145,164, 0, 0,148, 97, 2, 0, 84, +/* 0x10a0 */ 227, 47, 64,185, 97,129, 7,145, 96, 16, 6, 11,160, 0, 0,148, +/* 0x10b0 */ 161, 3, 0, 84, 35, 1,128, 82,223, 28, 0,113,102, 1,128, 82, +/* 0x10c0 */ 102, 48,134, 26,227, 67, 66,248, 36, 1, 3,203,159, 0, 15,107, +/* 0x10d0 */ 131, 17, 0, 84,227,125, 64,147,227, 3, 3,203, 32,105, 99, 56, +/* 0x10e0 */ 32, 21, 0, 56,121, 0, 0, 20, 97,193, 6,145,143, 0, 0,148, +/* 0x10f0 */ 228, 7, 64,185, 64, 1, 0, 84, 97, 33, 7,145,139, 0, 0,148, +/* 0x1100 */ 228, 11, 64,185,128, 0, 0, 84,227, 11, 64,185,228, 15, 64,185, +/* 0x1110 */ 227, 15, 0,185,227, 7, 64,185,227, 11, 0,185,239, 7, 0,185, +/* 0x1120 */ 239, 3, 4, 42, 3, 1,128, 82,223, 28, 0,113,102, 1,128, 82, +/* 0x1130 */ 102, 48,134, 26,106,161, 41,145, 65, 1, 0,145,125, 0, 0,148, +/* 0x1140 */ 1, 1, 0, 84,227, 47, 64,185, 69, 17, 0,145,227, 3, 3, 42, +/* 0x1150 */ 2, 0,128, 82,165, 16, 3,139, 4, 1,128, 82, 14, 0, 0, 20, +/* 0x1160 */ 65, 9, 0,145,115, 0, 0,148, 1, 1, 0, 84,227, 47, 64,185, +/* 0x1170 */ 69, 17, 4,145,227, 3, 3, 42, 2, 1,128, 82,165, 16, 3,139, +/* 0x1180 */ 4, 1,128, 82, 4, 0, 0, 20, 69, 17, 8,145, 2, 2,128, 82, +/* 0x1190 */ 4, 32,128, 82,226, 55, 0,185, 32, 0,128, 82,225, 3, 5,170, +/* 0x11a0 */ 101, 0, 0,148, 3, 0, 4,107,163,255,255, 84,229, 55, 64,185, +/* 0x11b0 */ 165, 0, 3, 11,229, 55, 0,185,223, 16, 0,113,194, 6, 0, 84, +/* 0x11c0 */ 198, 28, 0, 17, 99, 0,128, 82,191, 16, 0,113,101, 32,133, 26, +/* 0x11d0 */ 227, 3, 5, 42,101, 29, 3,139,165,128, 13,145, 32, 0,128, 82, +/* 0x11e0 */ 4, 8,128, 82,225, 3, 5,170, 83, 0, 0,148, 3, 0, 4,107, +/* 0x11f0 */ 163,255,255, 84,227, 47, 0,185,127, 16, 0,113, 99, 4, 0, 84, +/* 0x1200 */ 100,124, 1, 83,132, 4, 0, 81,111, 0, 0, 18,239, 1, 31, 50, +/* 0x1210 */ 127, 56, 0,113,226, 0, 0, 84,239, 33,196, 26,106,121, 21,145, +/* 0x1220 */ 227, 1, 3, 75,227, 3, 3, 42, 74, 5, 3,139, 12, 0, 0, 20, +/* 0x1230 */ 132, 16, 0, 81, 53, 0, 0,148,231,124, 1, 83,131, 1, 7,107, +/* 0x1240 */ 108, 32,140, 26,239, 1, 15, 26,132, 4, 0,113, 65,255,255, 84, +/* 0x1250 */ 106, 17, 25,145,239,109, 28, 83,132, 0,128, 82, 37, 0,128, 82, +/* 0x1260 */ 32, 0,128, 82,225, 3, 10,170, 51, 0, 0,148, 31, 0, 0,114, +/* 0x1270 */ 64, 0, 0, 84,239, 1, 5, 42,165,120, 31, 83,132, 4, 0,113, +/* 0x1280 */ 33,255,255, 84, 2, 0, 0, 20,239, 47, 64,185,239, 5, 0, 49, +/* 0x1290 */ 229, 55, 64,185,227, 67, 66,248,165, 8, 0, 17, 35, 1, 3,203, +/* 0x12a0 */ 255, 1, 3,107,232, 2, 0, 84,227,125, 64,147,227, 3, 3,203, +/* 0x12b0 */ 32,105, 99, 56, 32, 21, 0, 56, 63, 1, 14,235,194, 0, 0, 84, +/* 0x12c0 */ 165, 4, 0,113, 97,255,255, 84,224,115, 0, 57, 63, 1, 14,235, +/* 0x12d0 */ 195,229,255, 84, 13, 0, 0,148, 0, 0,128, 82,226, 19, 64,249, +/* 0x12e0 */ 3, 1, 2,203,226, 31, 64,249, 67, 0, 0,185,226, 67, 66,248, +/* 0x12f0 */ 35, 1, 2,203,226, 55, 64,249, 67, 0, 0,185,255,243, 0,145, +/* 0x1300 */ 32, 0,128, 82,246,255,255, 23,227,124, 24, 83,195, 0, 0, 53, +/* 0x1310 */ 31, 1, 13,235,231, 92, 24, 83, 66,255,255, 84, 3, 21, 64, 56, +/* 0x1320 */ 108, 32, 12, 42,192, 3, 95,214,224, 3, 6, 42, 33, 68, 32,139, +/* 0x1330 */ 0, 0,128, 82, 33, 68, 32,139,227,124, 24, 83,241, 3, 30,170, +/* 0x1340 */ 94, 0, 0, 16, 99,254,255, 52, 35, 0, 64,121,226,124, 11, 83, +/* 0x1350 */ 98,124, 2, 27,159, 1, 2,107, 2, 1, 0, 84,231, 3, 2, 42, +/* 0x1360 */ 2, 0,129, 82, 66, 0, 3, 75, 0, 0, 0, 58, 99, 20, 66, 11, +/* 0x1370 */ 35, 0, 0,121, 32, 2, 95,214,140, 1, 2, 75,231, 0, 2, 75, +/* 0x1380 */ 99, 20, 67, 75, 0, 0, 0, 58, 35, 0, 0,121, 32, 2, 95,214, +/* 0x1390 */ 194, 3,128, 82,225, 0, 0, 16, 64, 0,128, 82, 8, 8,128, 82, +/* 0x13a0 */ 1, 0, 0,212,224, 15,128, 82,168, 11,128, 82, 1, 0, 0,212, +/* 0x13b0 */ 80, 82, 79, 84, 95, 69, 88, 69, 67,124, 80, 82, 79, 84, 95, 87, +/* 0x13c0 */ 82, 73, 84, 69, 32,102, 97,105,108,101,100, 46, 10, 0, 0, 0, +/* 0x13d0 */ 5, 0,128,210, 98, 0,128, 82,200, 27,128, 82, 1, 0, 0,212, +/* 0x13e0 */ 192, 3, 95,214,244, 3, 30,170, 0, 3, 95,184, 25, 67, 0,209, +/* 0x13f0 */ 57, 3, 0,203,129, 6, 64,185, 4, 0,128, 18, 67, 4,128, 82, +/* 0x1400 */ 0, 0,128,210,243,255,255,151,224, 7,191,169,250,111,191,169, +/* 0x1410 */ 251, 3, 0,170,226, 3, 0,170,225, 15, 31,248,227, 3, 0,145, +/* 0x1420 */ 128, 66, 0,145,129, 10, 64,185,132, 50, 64, 57, 0, 3, 63,214, +/* 0x1430 */ 232, 7, 65,248,122, 3, 0,249,115, 19, 0,185,162, 0,128, 82, +/* 0x1440 */ 225, 27, 64,185,224, 3, 27,170, 72, 28,128, 82, 1, 0, 0,212, +/* 0x1450 */ 128, 2, 64,185, 29, 3, 95,184, 60, 3, 0,139, 96, 83, 0,145, +/* 0x1460 */ 0, 0, 31,214, 47,112,114,111, 99, 47,115,101,108,102, 47,101, +/* 0x1470 */ 120,101, 0, 0, 1,132, 64,248,225,255,255,181,192, 3, 95,214, +/* 0x1480 */ 248, 3, 30,170,224, 3, 0,145,251,255,255,151,250,255,255,151, +/* 0x1490 */ 246, 3, 0,170, 1, 8,193,168, 63, 24, 0,113, 96, 0, 0, 84, +/* 0x14a0 */ 161,255,255, 53, 34, 0,160,210,250, 3, 2,203, 96, 12,128, 18, +/* 0x14b0 */ 161,253,255, 16, 2, 0,128, 82, 8, 7,128, 82, 1, 0, 0,212, +/* 0x14c0 */ 251, 3, 0, 42,200,255,255,151, 0, 0, 0, 0,102,105,108,101, +/* 0x14d0 */ 32,102,111,114,109, 97,116, 32,101,108,102, 54, 52, 45,108,105, +/* 0x14e0 */ 116,116,108,101, 97, 97,114, 99,104, 54, 52, 10, 10, 83,101, 99, +/* 0x14f0 */ 116,105,111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,101, 32, +/* 0x1500 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122,101, 32, 32, 32, +/* 0x1510 */ 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, +/* 0x1520 */ 32, 32, 32, 32, 32, 76, 77, 65, 32, 32, 32, 32, 32, 32, 32, 32, +/* 0x1530 */ 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32,111,102,102, 32, +/* 0x1540 */ 32, 65,108,103,110, 32, 32, 70,108, 97,103,115, 10, 32, 32, 48, +/* 0x1550 */ 32, 69, 76, 70, 77, 65, 73, 78, 88, 32, 32, 32, 32, 32, 32, 48, +/* 0x1560 */ 99, 32, 32, 48, 32, 32, 48, 32, 32, 48, 52, 48, 32, 32, 50, 42, +/* 0x1570 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 49, +/* 0x1580 */ 32, 78, 82, 86, 95, 72, 69, 65, 68, 32, 32, 32, 32, 32, 32, 48, +/* 0x1590 */ 32, 32, 48, 32, 32, 48, 32, 32, 48, 52, 99, 32, 32, 50, 42, 42, +/* 0x15a0 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 50, 32, +/* 0x15b0 */ 78, 82, 86, 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, 32, 48, 32, +/* 0x15c0 */ 32, 48, 32, 32, 48, 32, 32, 48, 52, 99, 32, 32, 50, 42, 42, 48, +/* 0x15d0 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 51, 32, 78, +/* 0x15e0 */ 82, 86, 50, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 49, 55, +/* 0x15f0 */ 99, 32, 32, 48, 32, 32, 48, 32, 32, 48, 52, 99, 32, 32, 50, 42, +/* 0x1600 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 52, +/* 0x1610 */ 32, 78, 82, 86, 50, 68, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, +/* 0x1620 */ 49, 55, 48, 32, 32, 48, 32, 32, 48, 32, 32, 48, 49, 99, 56, 32, +/* 0x1630 */ 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, +/* 0x1640 */ 32, 32, 53, 32, 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, 32, 32, +/* 0x1650 */ 32, 32, 48, 49, 52, 52, 32, 32, 48, 32, 32, 48, 32, 32, 48, 51, +/* 0x1660 */ 51, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, +/* 0x1670 */ 84, 83, 10, 32, 32, 54, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, +/* 0x1680 */ 48, 32, 32, 32, 32, 48, 49, 48, 99, 32, 32, 48, 32, 32, 48, 32, +/* 0x1690 */ 32, 48, 52, 55, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, +/* 0x16a0 */ 84, 69, 78, 84, 83, 10, 32, 32, 55, 32, 76, 90, 77, 65, 95, 68, +/* 0x16b0 */ 69, 67, 50, 48, 32, 32, 32, 32, 48, 57, 54, 56, 32, 32, 48, 32, +/* 0x16c0 */ 32, 48, 32, 32, 48, 53, 56, 56, 32, 32, 50, 42, 42, 48, 32, 32, +/* 0x16d0 */ 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 56, 32, 76, 90, 77, +/* 0x16e0 */ 65, 95, 68, 69, 67, 49, 48, 32, 32, 32, 32, 48, 52, 97, 48, 32, +/* 0x16f0 */ 32, 48, 32, 32, 48, 32, 32, 48,101,102, 48, 32, 32, 50, 42, 42, +/* 0x1700 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 32, 57, 32, +/* 0x1710 */ 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 32, 32, 32, 32, 48, 32, +/* 0x1720 */ 32, 48, 32, 32, 48, 32, 32, 48, 49, 51, 57, 48, 32, 32, 50, 42, +/* 0x1730 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, 32, 49, 48, +/* 0x1740 */ 32, 69, 76, 70, 77, 65, 73, 78, 89, 32, 32, 32, 32, 32, 32, 48, +/* 0x1750 */ 51,101, 32, 32, 48, 32, 32, 48, 32, 32, 48, 49, 51, 57, 48, 32, +/* 0x1760 */ 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 10, +/* 0x1770 */ 32, 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32, 32, 32, 32, +/* 0x1780 */ 32, 32, 48,102, 99, 32, 32, 48, 32, 32, 48, 32, 32, 48, 49, 51, +/* 0x1790 */ 100, 48, 32, 32, 50, 42, 42, 50, 32, 32, 67, 79, 78, 84, 69, 78, +/* 0x17a0 */ 84, 83, 10, 83, 89, 77, 66, 79, 76, 32, 84, 65, 66, 76, 69, 58, +/* 0x17b0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x17c0 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, +/* 0x17d0 */ 69, 67, 51, 48, 32, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, +/* 0x17e0 */ 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x17f0 */ 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, +/* 0x1800 */ 73, 78, 90, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48, +/* 0x1810 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32, +/* 0x1820 */ 108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 88, +/* 0x1830 */ 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 88, 10, 48, 48, 48, 48, +/* 0x1840 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, +/* 0x1850 */ 32, 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68, 32, 48, 32, +/* 0x1860 */ 78, 82, 86, 95, 72, 69, 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, +/* 0x1870 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, +/* 0x1880 */ 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 32, 48, 32, 78, 82, 86, +/* 0x1890 */ 95, 84, 65, 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x18a0 */ 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, +/* 0x18b0 */ 82, 86, 50, 69, 32, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48, +/* 0x18c0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, +/* 0x18d0 */ 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 32, 48, 32, 78, 82, +/* 0x18e0 */ 86, 50, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x18f0 */ 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, +/* 0x1900 */ 50, 66, 32, 48, 32, 78, 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, +/* 0x1910 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, +/* 0x1920 */ 32,100, 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 32, 48, +/* 0x1930 */ 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 10, 48, 48, 48, 48, +/* 0x1940 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, +/* 0x1950 */ 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, 32, +/* 0x1960 */ 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, 10, 48, 48, 48, +/* 0x1970 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, +/* 0x1980 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, +/* 0x1990 */ 32, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, 10, 48, 48, +/* 0x19a0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, +/* 0x19b0 */ 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, 32, +/* 0x19c0 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48, 48, 48, +/* 0x19d0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32, 32, 32, +/* 0x19e0 */ 32, 32, 32, 32, 42, 85, 78, 68, 42, 32, 48, 32, 77, 70, 76, 71, +/* 0x19f0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x1a00 */ 52, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, +/* 0x1a10 */ 78, 88, 32, 48, 32, 95,115,116, 97,114,116, 10, 48, 48, 48, 48, +/* 0x1a20 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32,103, 32, 32, +/* 0x1a30 */ 32, 32, 32, 70, 32, 78, 82, 86, 50, 69, 32, 48, 49, 55, 99, 32, +/* 0x1a40 */ 117, 99,108, 95,110,114,118, 50,101, 95,100,101, 99,111,109,112, +/* 0x1a50 */ 114,101,115,115, 95, 51, 50, 10, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x1a60 */ 48, 48, 48, 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 70, +/* 0x1a70 */ 32, 78, 82, 86, 50, 68, 32, 48, 49, 55, 48, 32,117, 99,108, 95, +/* 0x1a80 */ 110,114,118, 50,100, 95,100,101, 99,111,109,112,114,101,115,115, +/* 0x1a90 */ 95, 51, 50, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x1aa0 */ 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 70, 32, 78, 82, 86, +/* 0x1ab0 */ 50, 66, 32, 48, 49, 52, 52, 32,117, 99,108, 95,110,114,118, 50, +/* 0x1ac0 */ 98, 95,100,101, 99,111,109,112,114,101,115,115, 95, 51, 50, 10, +/* 0x1ad0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x1ae0 */ 32,103, 32, 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, 68, 69, +/* 0x1af0 */ 67, 49, 48, 32, 48, 32, 76,122,109, 97, 68,101, 99,111,100,101, +/* 0x1b00 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x1b10 */ 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, +/* 0x1b20 */ 78, 89, 32, 48, 32,101,110,100, 95,100,101, 99,111,109,112,114, +/* 0x1b30 */ 101,115,115, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x1b40 */ 48, 48, 48, 48, 32, 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, 78, +/* 0x1b50 */ 68, 42, 32, 48, 32, 79, 95, 66, 73, 78, 70, 79, 10, 10, 82, 69, +/* 0x1b60 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, +/* 0x1b70 */ 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 88, 93, 58, +/* 0x1b80 */ 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, +/* 0x1b90 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, +/* 0x1ba0 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, +/* 0x1bb0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 65, 65, 82, +/* 0x1bc0 */ 67, 72, 54, 52, 95, 65, 66, 83, 51, 50, 32, 32, 32, 77, 70, 76, +/* 0x1bd0 */ 71, 10, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, +/* 0x1be0 */ 48, 56, 32, 82, 95, 65, 65, 82, 67, 72, 54, 52, 95, 67, 65, 76, +/* 0x1bf0 */ 76, 50, 54, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 43, 48,120, +/* 0x1c00 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 98, 48, +/* 0x1c10 */ 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, +/* 0x1c20 */ 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 90, 77, 65, 95, 69, +/* 0x1c30 */ 76, 70, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, +/* 0x1c40 */ 32, 32, 32, 32, 32, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, +/* 0x1c50 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, +/* 0x1c60 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 52, +/* 0x1c70 */ 32, 82, 95, 65, 65, 82, 67, 72, 54, 52, 95, 67, 79, 78, 68, 66, +/* 0x1c80 */ 82, 49, 57, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 10, +/* 0x1c90 */ 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, +/* 0x1ca0 */ 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, +/* 0x1cb0 */ 90, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 32, 32, 32, +/* 0x1cc0 */ 32, 32, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, +/* 0x1cd0 */ 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, +/* 0x1ce0 */ 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,102, 56, 32, 82, 95, +/* 0x1cf0 */ 65, 65, 82, 67, 72, 54, 52, 95, 65, 66, 83, 51, 50, 32, 32, 32, +/* 0x1d00 */ 79, 95, 66, 73, 78, 70, 79, 10 }; diff --git a/src/stub/arm64-linux.elf-fold.h b/src/stub/arm64-linux.elf-fold.h index 5a79cfba..b9b69ed2 100644 --- a/src/stub/arm64-linux.elf-fold.h +++ b/src/stub/arm64-linux.elf-fold.h @@ -1,5 +1,5 @@ /* arm64-linux.elf-fold.h - created from arm64-linux.elf-fold.bin, 2836 (0xb14) bytes + created from arm64-linux.elf-fold.bin, 2852 (0xb24) bytes This file is part of the UPX executable compressor. @@ -32,187 +32,188 @@ /* clang-format off */ -#define STUB_ARM64_LINUX_ELF_FOLD_SIZE 2836 -#define STUB_ARM64_LINUX_ELF_FOLD_ADLER32 0x6d96d4b7 -#define STUB_ARM64_LINUX_ELF_FOLD_CRC32 0x2edfe878 +#define STUB_ARM64_LINUX_ELF_FOLD_SIZE 2852 +#define STUB_ARM64_LINUX_ELF_FOLD_ADLER32 0xf31ae492 +#define STUB_ARM64_LINUX_ELF_FOLD_CRC32 0xf7b54986 -unsigned char stub_arm64_linux_elf_fold[2836] = { +unsigned char stub_arm64_linux_elf_fold[2852] = { /* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0010 */ 2, 0,183, 0, 1, 0, 0, 0,188, 0, 16, 0, 0, 0, 0, 0, /* 0x0020 */ 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0030 */ 0, 0, 0, 0, 64, 0, 56, 0, 2, 0, 0, 0, 0, 0, 0, 0, /* 0x0040 */ 1, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0050 */ 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, -/* 0x0060 */ 20, 11, 0, 0, 0, 0, 0, 0, 20, 11, 0, 0, 0, 0, 0, 0, +/* 0x0060 */ 36, 11, 0, 0, 0, 0, 0, 0, 36, 11, 0, 0, 0, 0, 0, 0, /* 0x0070 */ 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, -/* 0x0080 */ 20, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +/* 0x0080 */ 36, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0090 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x00a0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, -/* 0x00b0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,146, -/* 0x00c0 */ 1, 0, 0,145, 0, 32,193,154,192, 3, 95,214,250,111, 65,169, -/* 0x00d0 */ 244, 87,194,168,231, 3, 64,249,224, 3, 0,145,225, 3, 22,170, -/* 0x00e0 */ 34, 4, 65,248,226,255,255,181, 32, 4, 64,209, 6, 16, 0,209, -/* 0x00f0 */ 33, 0, 6,203,192, 0, 1,203, 0, 32, 0,209, 0,236,124,146, -/* 0x0100 */ 225, 35, 0,145, 31, 0, 0,145, 7,132, 0,248, 34,132, 64,248, -/* 0x0110 */ 2,132, 0,248,194,255,255,181, 34,132, 64,248, 2,132, 0,248, -/* 0x0120 */ 194,255,255,181, 4, 32, 0,209, 31,132, 0,248,231, 3, 0,170, -/* 0x0130 */ 246, 3, 0,170, 34, 12,193,168, 2, 12,129,168,194,255,255,181, -/* 0x0140 */ 247, 3, 0,170,225, 3, 6,170,129, 0, 0,249,194, 6, 0, 24, -/* 0x0150 */ 34, 68, 0,184,226,255,129, 82,128, 6, 0, 16,113, 0, 0,148, -/* 0x0160 */ 31, 4, 64,177, 66, 0, 0, 84, 95,104, 32, 56,231, 3, 20,170, -/* 0x0170 */ 230, 3, 25,170,255, 3, 48,209, 5, 6, 0, 16,228, 3, 24,170, -/* 0x0180 */ 227, 3, 22,170,226, 3, 0,145,225, 3, 29, 42,224, 3, 28,170, -/* 0x0190 */ 7, 2, 0,148,255, 3, 48,145,248, 3, 0,170, 33, 83, 64,249, -/* 0x01a0 */ 224, 3, 25,170, 34, 67, 64, 57, 95, 8, 0,113, 65, 0, 0, 84, -/* 0x01b0 */ 65, 0, 0,148,224, 3, 25,170, 66, 0, 0,148, 5, 0,128,210, -/* 0x01c0 */ 228, 3, 21, 42,159, 0, 0,113, 11, 1, 0, 84, 67, 0,128, 82, -/* 0x01d0 */ 34, 0,128, 82, 1, 0,130,210, 0, 0,128,210, 70, 0, 0,148, -/* 0x01e0 */ 224, 3, 21, 42, 46, 0, 0,148,254, 3, 24,170,224, 3, 26,170, -/* 0x01f0 */ 225, 3, 27, 42,226,130, 95,248,255,127,191,169,240, 3, 31,170, -/* 0x0200 */ 227, 19, 64,169,230, 31, 64,169,232, 39, 64,169,244, 87, 64,169, -/* 0x0210 */ 246, 95, 64,169,248,103, 64,169,250,111, 64,169,252,119,193,168, -/* 0x0220 */ 192, 3, 95,214, 32, 32, 32, 61, 47,112,114,111, 99, 47,115,101, -/* 0x0230 */ 108,102, 47,101,120,101, 0, 0, 99, 28, 0, 18,127, 72, 1,113, -/* 0x0240 */ 129, 1, 0, 84, 33,252, 66,211, 65, 1, 0,180, 33, 4, 0,209, -/* 0x0250 */ 2,120, 97,184, 67,120, 26, 83,127, 20, 0,113,129, 0, 0, 84, -/* 0x0260 */ 67, 0, 1, 75, 98,100, 0, 51, 2,120, 33,184, 1,255,255,181, -/* 0x0270 */ 192, 3, 95,214, 0, 0, 32,212,192, 3, 95,214,168, 11,128, 82, -/* 0x0280 */ 1, 0, 0,212,232, 7,128, 82, 1, 0, 0,212,192, 3, 95,214, -/* 0x0290 */ 8, 8,128, 82, 1, 0, 0,212,192, 3, 95,214, 40, 7,128, 82, -/* 0x02a0 */ 1, 0, 0,212,192, 3, 95,214,168, 21,128, 82, 1, 0, 0,212, -/* 0x02b0 */ 192, 3, 95,214,200, 26,128, 82, 1, 0, 0,212,192, 3, 95,214, -/* 0x02c0 */ 232, 26,128, 82, 1, 0, 0,212,192, 3, 95,214, 8, 44, 64,146, -/* 0x02d0 */ 0, 0, 8,203, 33, 0, 8,139, 72, 28,128, 82, 1, 0, 0,212, -/* 0x02e0 */ 192, 3, 95,214, 38,239,255, 24, 5, 0,128,210, 4, 0,128,146, -/* 0x02f0 */ 99, 0, 6, 42, 8, 44, 64,146, 0, 0, 8,203, 33, 0, 8,139, -/* 0x0300 */ 200, 27,128, 82, 1, 0, 0,212,192, 3, 95,214, 2, 0,128,210, -/* 0x0310 */ 225, 3, 0,170, 96, 12,128, 18,104, 4,128, 82, 4, 0, 0, 20, -/* 0x0320 */ 200, 9,128, 82, 2, 0, 0, 20, 8, 7,128, 82,227, 3, 2,170, -/* 0x0330 */ 226, 3, 1,170,225, 3, 0,170, 96, 12,128,146, 1, 0, 0,212, -/* 0x0340 */ 192, 3, 95,214, 0, 0, 64,212, 2, 0,128, 82, 8, 0,128, 82, -/* 0x0350 */ 1, 0, 0,212,192, 3, 95,214,253,123,191,169, 3, 0,128,210, -/* 0x0360 */ 253, 3, 0,145, 5, 0, 64,249, 4, 4, 64,249,191, 0, 2,235, -/* 0x0370 */ 98, 0, 0, 84,224, 15,128, 82,193,255,255,151,127, 0, 2,235, -/* 0x0380 */ 160, 0, 0, 84,133,104, 99, 56, 37,104, 35, 56, 99, 4, 0,145, -/* 0x0390 */ 251,255,255, 23, 1, 4, 64,249, 33, 0, 3,139, 1, 4, 0,249, -/* 0x03a0 */ 1, 0, 64,249, 35, 0, 3,203, 3, 0, 0,249,253,123,193,168, -/* 0x03b0 */ 192, 3, 95,214,253,123,187,169,253, 3, 0,145,243, 83, 1,169, -/* 0x03c0 */ 245, 91, 2,169,244, 3, 0,170,243, 3, 1,170,246, 3, 2,170, -/* 0x03d0 */ 245, 3, 3,170, 96, 2, 64,249,160, 8, 0,180,224, 3, 20,170, -/* 0x03e0 */ 130, 1,128,210,161, 3, 1,145,220,255,255,151,160, 67, 64,185, -/* 0x03f0 */ 162, 71, 64,185, 0, 1, 0, 53,160, 10,138, 82, 0, 43,164,114, -/* 0x0400 */ 95, 0, 0,107,225, 0, 0, 84,128, 2, 64,249, 0, 7, 0,180, -/* 0x0410 */ 4, 0, 0, 20, 98, 0, 0, 52, 95, 0, 0,107,105, 0, 0, 84, -/* 0x0420 */ 224, 15,128, 82,150,255,255,151, 99, 2, 64,249,225, 3, 0, 42, -/* 0x0430 */ 63, 0, 3,235,104,255,255, 84, 95, 0, 0,107, 2, 4, 0, 84, -/* 0x0440 */ 161, 31, 0,249,225, 3, 2, 42,128, 6, 64,249,163,227, 0,145, -/* 0x0450 */ 98, 6, 64,249,164, 35, 65, 57,192, 2, 63,214, 32,254,255, 53, -/* 0x0460 */ 161, 31, 64,249,160, 67, 64,185, 63, 0, 0,235,161,253,255, 84, -/* 0x0470 */ 163, 39, 65, 57, 85, 1, 0,180, 35, 1, 0, 52, 63, 0, 8,241, -/* 0x0480 */ 136, 0, 0, 84, 96, 2, 64,249, 31, 0, 1,235,129, 0, 0, 84, -/* 0x0490 */ 96, 6, 64,249,162, 43, 65, 57,160, 2, 63,214,163, 71, 64,185, -/* 0x04a0 */ 129, 6, 64,249,128, 2, 64,249, 33, 0, 3,139,129, 6, 0,249, -/* 0x04b0 */ 0, 0, 3,203,128, 2, 0,249, 5, 0, 0, 20, 97, 6, 64,249, -/* 0x04c0 */ 224, 3, 20,170,226, 3, 2, 42,164,255,255,151,163, 67, 64,185, -/* 0x04d0 */ 97, 6, 64,249, 96, 2, 64,249, 33, 0, 3,139, 97, 6, 0,249, -/* 0x04e0 */ 0, 0, 3,203, 96, 2, 0,249,187,255,255, 23,243, 83, 65,169, -/* 0x04f0 */ 245, 91, 66,169,253,123,197,168,192, 3, 95,214, 0, 2, 0,180, -/* 0x0500 */ 224, 1, 0, 55,228, 3, 1, 42, 3, 0, 64,249,127, 0, 4,235, -/* 0x0510 */ 129, 0, 0, 84, 4, 0, 0,249, 2, 4, 0,249, 8, 0, 0, 20, -/* 0x0520 */ 127, 4, 0,241, 97, 0, 0, 84, 97, 0, 0, 52,250,255,255, 23, -/* 0x0530 */ 99, 0, 0,180, 0, 64, 0,145,244,255,255, 23,192, 3, 95,214, -/* 0x0540 */ 253,123,181,169,253, 3, 0,145,232, 39, 6,109,201, 0,103,158, -/* 0x0550 */ 6, 16, 64,249,236, 55, 8,109,245, 91, 2,169,238, 63, 9,109, -/* 0x0560 */ 246, 3, 0,170,234, 47, 7,109,251,115, 5,169, 28, 0, 6,139, -/* 0x0570 */ 245, 3, 1,170, 32, 1,102,158,249,107, 4,169,243, 83, 1,169, -/* 0x0580 */ 247, 99, 3,169, 76, 0, 39, 30,250, 3, 3,170,141, 0,103,158, -/* 0x0590 */ 249, 3, 7,170,174, 0,103,158, 2, 0, 64,249,195, 34, 64,121, -/* 0x05a0 */ 65, 2, 0,180, 65, 16, 64,249,127, 8, 0,113, 65, 0, 1,139, -/* 0x05b0 */ 32, 36, 64,249, 64, 0, 0,203, 65, 0, 0, 84, 32, 8, 64,249, -/* 0x05c0 */ 33, 20, 64,249, 2, 0,128, 82, 67, 6,128, 82, 4, 0,128, 18, -/* 0x05d0 */ 5, 0,128,210, 72,255,255,151,193, 34, 64,121, 63, 8, 0,113, -/* 0x05e0 */ 19, 16,159,154, 42, 0, 0, 20,127, 12, 0,113, 3, 2,128, 82, -/* 0x05f0 */ 99, 16,159, 26,199,114, 64,121,224, 3, 2,170, 99,136, 0, 17, -/* 0x0600 */ 228, 3, 28,170, 19, 0,128,146,231, 4, 0, 81,255, 4, 0, 49, -/* 0x0610 */ 160, 1, 0, 84,133, 0, 64,185,191, 4, 0,113, 1, 1, 0, 84, -/* 0x0620 */ 136, 8, 64,249,133, 20, 64,249,127, 2, 8,235, 5, 1, 5,139, -/* 0x0630 */ 115,146,136,154, 63, 0, 5,235, 33, 32,133,154,132,224, 0,145, -/* 0x0640 */ 242,255,255, 23,228, 3, 57,170,115, 2, 25,138,129, 0, 1,139, -/* 0x0650 */ 33, 0, 19,203, 33, 0, 25,138,163, 0, 32, 55, 83, 0, 0,181, -/* 0x0660 */ 162, 0, 0,181, 0, 0,128,210, 4, 0, 0, 20,224, 3, 19,170, -/* 0x0670 */ 2, 0, 0, 20, 67, 6,128, 82, 2, 0,128, 82, 4, 0,128, 18, -/* 0x0680 */ 5, 0,128,210, 28,255,255,151, 19, 0, 19,203,224, 3, 57, 42, -/* 0x0690 */ 232, 3, 39, 30, 10, 0, 39, 30,224, 3, 57,170, 15, 0,103,158, -/* 0x06a0 */ 1, 1, 38, 30,192,114, 64,121, 63, 0, 0,107,138, 21, 0, 84, -/* 0x06b0 */ 128, 3, 64,185, 53, 1, 0,180, 31, 24, 0,113,225, 0, 0, 84, -/* 0x06c0 */ 130, 11, 64,249,224, 3, 26,170, 97, 0,128, 82, 98, 2, 2,139, -/* 0x06d0 */ 139,255,255,151,157, 0, 0, 20, 31, 4, 0,113, 97, 19, 0, 84, -/* 0x06e0 */ 128, 23, 64,249, 32, 19, 0,180,155, 7, 64,185, 0, 72,140, 82, -/* 0x06f0 */ 32,106,174,114,123, 11, 30, 83, 27, 36,219, 26,121, 11, 0, 18, -/* 0x0700 */ 85, 2, 0,180,128, 7, 64,249, 0, 2, 0,181,194, 18, 64,249, -/* 0x0710 */ 224, 3, 26,170,131, 11, 64,249, 97, 0,128, 82, 98, 2, 2,139, -/* 0x0720 */ 66, 0, 3,139,118,255,255,151,194,114, 64,121,224, 3, 26,170, -/* 0x0730 */ 161, 0,128, 82,114,255,255,151,194,110, 64,121,224, 3, 26,170, -/* 0x0740 */ 129, 0,128, 82,110,255,255,151,148, 11, 64,249,191, 2, 31,235, -/* 0x0750 */ 128, 23, 64,249,130, 0,128, 18,116, 2, 20,139,151, 19, 64,249, -/* 0x0760 */ 128, 2, 0,139,183, 83, 0,249,225, 1,102,158,180, 87, 0,249, -/* 0x0770 */ 11, 0,103,158,152, 2, 23,139, 64, 1, 38, 30,135, 7, 64,249, -/* 0x0780 */ 72, 6,128, 82, 5, 0, 20, 10,148, 2, 5,203,183, 0, 23,139, -/* 0x0790 */ 128, 2, 23,139,229, 0, 5,203,224, 3, 0,203, 0, 0, 1,138, -/* 0x07a0 */ 23, 0, 23,139, 64, 0,128, 82, 3, 16,159, 26,191, 2, 31,235, -/* 0x07b0 */ 128, 1, 38, 30, 99, 0, 25, 42, 66, 16,159, 90,191, 2, 31,235, -/* 0x07c0 */ 66, 0, 3, 10, 67, 2,128, 82,225, 3, 23,170, 4, 0,159, 90, -/* 0x07d0 */ 191, 2, 31,235, 3, 17,131, 26,224, 3, 20,170,198,254,255,151, -/* 0x07e0 */ 159, 2, 0,235, 96, 0, 0, 84,224, 15,128, 82,164,254,255,151, -/* 0x07f0 */ 213, 0, 0,180,162, 1,102,158,224, 3, 21,170,195, 1,102,158, -/* 0x0800 */ 161,131, 2,145,236,254,255,151,187, 1, 8, 54, 64, 1, 38, 30, -/* 0x0810 */ 225, 3, 24, 75, 34, 0, 0, 10, 0, 0,128,210, 98, 0, 0, 53, -/* 0x0820 */ 24, 3, 2,139, 6, 0, 0, 20, 31,107, 32, 56, 0, 4, 0,145, -/* 0x0830 */ 31, 0, 2,235,161,255,255, 84,250,255,255, 23,213, 6, 0,180, -/* 0x0840 */ 128, 3, 64,249,225, 3, 0,178, 0,128, 64,146, 31, 0, 1,235, -/* 0x0850 */ 129, 5, 0, 84,128, 23, 64,249,130, 19, 64,249,129, 11, 64,249, -/* 0x0860 */ 31, 0, 2,235,129, 1, 0, 84,123, 14, 0,145,123, 3, 0,139, -/* 0x0870 */ 66, 1, 38, 30,123, 3, 1,139,123,247,126,146,224, 3, 27, 75, -/* 0x0880 */ 0, 0, 2, 10, 31, 28, 0,113,105, 0, 0, 84, 0, 0,128, 82, -/* 0x0890 */ 13, 0, 0, 20,128, 7, 64,249,160, 6, 0,180, 0, 0,128,210, -/* 0x08a0 */ 1, 0,130,210, 98, 0,128, 82, 67, 4,128, 82, 4, 0,128, 18, -/* 0x08b0 */ 229, 3, 0,170,144,254,255,151,251, 3, 0,170, 32, 2, 0,180, -/* 0x08c0 */ 32, 0,128, 82, 33, 0,128, 82, 1,128,186,114, 97, 3, 0,185, -/* 0x08d0 */ 1,120,128, 82,225,203,186,114, 97, 7, 0,185,160, 0, 0, 52, -/* 0x08e0 */ 224, 3, 27,170, 1, 1,128,210,162, 0,128, 82,120,254,255,151, -/* 0x08f0 */ 64,251,127,146, 1, 0,128, 82,226, 3, 27,170, 0,255,255,151, -/* 0x0900 */ 224, 3, 20,170,225, 3, 23,170,226, 3, 25, 42,112,254,255,151, -/* 0x0910 */ 192,246,255, 53, 96, 1,102,158, 31, 3, 0,235, 98, 1, 0, 84, -/* 0x0920 */ 97, 1,102,158,224, 3, 24,170,226, 3, 25, 42, 67, 6,128, 82, -/* 0x0930 */ 4, 0,128, 18, 5, 0,128,210, 33, 0, 24,203,110,254,255,151, -/* 0x0940 */ 31, 3, 0,235, 33,245,255, 84, 0, 1, 38, 30,156,227, 0,145, -/* 0x0950 */ 0, 4, 0, 17, 8, 0, 39, 30, 82,255,255, 23, 32, 1,102,158, -/* 0x0960 */ 192, 0, 0,180, 19, 0, 0,249, 4, 0, 0, 20, 59, 0, 19,139, -/* 0x0970 */ 123, 35, 0,145,212,255,255, 23,192, 14, 64,249,232, 39, 70,109, -/* 0x0980 */ 245, 91, 66,169,234, 47, 71,109, 96, 2, 0,139,236, 55, 72,109, -/* 0x0990 */ 243, 83, 65,169,238, 63, 73,109,247, 99, 67,169,249,107, 68,169, -/* 0x09a0 */ 251,115, 69,169,253,123,203,168,192, 3, 95,214,253,123,182,169, -/* 0x09b0 */ 253, 3, 0,145,247, 99, 3,169,247, 3, 3,170, 3, 4, 64,185, -/* 0x09c0 */ 243, 83, 1,169,162, 63, 0,249,243, 3, 2,170, 99, 48, 0,145, -/* 0x09d0 */ 2, 0, 64,185,162, 59, 0,249,226, 3, 4,170,160, 79, 0,249, -/* 0x09e0 */ 116, 2, 1,145,163, 75, 0,249, 3, 0,128,210,160, 71, 0,249, -/* 0x09f0 */ 160, 67, 2,145,161, 67, 0,249,161,195, 1,145,245, 91, 2,169, -/* 0x0a00 */ 249, 35, 0,249,249, 3, 7,170,165, 47, 0,249, 22, 0,128, 82, -/* 0x0a10 */ 166, 55, 0,249,164, 51, 0,249,103,254,255,151,164, 51, 64,249, -/* 0x0a20 */ 161, 3, 2,145,165, 47, 64,249, 2, 0,128, 82,227, 3, 23,170, -/* 0x0a30 */ 166,163, 1,145,231, 3, 25,170,224, 3, 19,170,193,254,255,151, -/* 0x0a40 */ 245, 3, 0,170, 33, 1,128, 82,224, 3, 23,170,226, 3, 21,170, -/* 0x0a50 */ 171,254,255,151, 96,114, 64,121,223, 2, 0,107,226, 4, 0, 84, -/* 0x0a60 */ 128, 2, 64,185, 31, 12, 0,113, 33, 4, 0, 84,129, 10, 64,249, -/* 0x0a70 */ 160, 55, 64,249, 32, 0, 0,139, 1, 0,128, 82,226, 3, 1, 42, -/* 0x0a80 */ 42,254,255,151,248, 3, 0, 42, 96, 0,248, 54,224, 15,128, 82, -/* 0x0a90 */ 251,253,255,151,225, 3, 19,170, 2,128,128,210,250,253,255,151, -/* 0x0aa0 */ 31, 0, 16,241, 65,255,255, 84, 1, 0,128,210,226, 3, 24, 42, -/* 0x0ab0 */ 227, 3, 1,170,228, 3, 1,170,229, 3, 1,170,166,163, 1,145, -/* 0x0ac0 */ 231, 3, 25,170,224, 3, 19,170,191, 55, 0,249,157,254,255,151, -/* 0x0ad0 */ 245, 3, 0,170,162, 55, 64,249,224, 3, 23,170,225, 0,128, 82, -/* 0x0ae0 */ 135,254,255,151,224, 3, 24, 42,237,253,255,151,148,226, 0,145, -/* 0x0af0 */ 214, 6, 0, 17,216,255,255, 23,224, 3, 21,170,249, 35, 64,249, -/* 0x0b00 */ 243, 83, 65,169,245, 91, 66,169,247, 99, 67,169,253,123,202,168, -/* 0x0b10 */ 192, 3, 95,214 +/* 0x00b0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,240,255,255, +/* 0x00c0 */ 255,255,255,255,192,255,255, 88,192, 3, 95,214, 34, 0, 0, 0, +/* 0x00d0 */ 19, 0, 0, 20,198,255,255, 24, 5, 0,128,210, 4, 0,128,146, +/* 0x00e0 */ 99, 0, 6, 42,200,254,255, 88, 8, 0, 40,138, 0, 0, 8,203, +/* 0x00f0 */ 33, 0, 8,139,200, 27,128, 82, 1, 0, 0,212,192, 3, 95,214, +/* 0x0100 */ 232,253,255, 88, 8, 0, 40,138, 0, 0, 8,203, 33, 0, 8,139, +/* 0x0110 */ 72, 28,128, 82, 1, 0, 0,212,192, 3, 95,214,250,111, 65,169, +/* 0x0120 */ 244, 87,194,168,231, 3, 64,249,224, 3, 0,145,225, 3, 22,170, +/* 0x0130 */ 34, 4, 65,248,226,255,255,181, 32, 4, 64,209, 6, 16, 0,209, +/* 0x0140 */ 33, 0, 6,203,192, 0, 1,203, 0, 32, 0,209, 0,236,124,146, +/* 0x0150 */ 225, 35, 0,145, 31, 0, 0,145, 7,132, 0,248, 34,132, 64,248, +/* 0x0160 */ 2,132, 0,248,194,255,255,181, 34,132, 64,248, 2,132, 0,248, +/* 0x0170 */ 194,255,255,181, 4, 32, 0,209, 31,132, 0,248,231, 3, 0,170, +/* 0x0180 */ 246, 3, 0,170, 34, 12,193,168, 2, 12,129,168,194,255,255,181, +/* 0x0190 */ 247, 3, 0,170,225, 3, 6,170,129, 0, 0,249,194, 6, 0, 24, +/* 0x01a0 */ 34, 68, 0,184,226,255,129, 82,128, 6, 0, 16, 97, 0, 0,148, +/* 0x01b0 */ 31, 4, 64,177, 66, 0, 0, 84, 95,104, 32, 56,231, 3, 20,170, +/* 0x01c0 */ 230, 3, 25,170,255, 3, 48,209, 5, 6, 0, 16,228, 3, 24,170, +/* 0x01d0 */ 227, 3, 22,170,226, 3, 0,145,225, 3, 29, 42,224, 3, 28,170, +/* 0x01e0 */ 247, 1, 0,148,255, 3, 48,145,248, 3, 0,170, 33, 83, 64,249, +/* 0x01f0 */ 224, 3, 25,170, 34, 67, 64, 57, 95, 8, 0,113, 65, 0, 0, 84, +/* 0x0200 */ 65, 0, 0,148,224, 3, 25,170, 66, 0, 0,148, 5, 0,128,210, +/* 0x0210 */ 228, 3, 21, 42,159, 0, 0,113, 11, 1, 0, 84, 67, 0,128, 82, +/* 0x0220 */ 34, 0,128, 82, 1, 0,130,210, 0, 0,128,210,174,255,255,151, +/* 0x0230 */ 224, 3, 21, 42, 46, 0, 0,148,254, 3, 24,170,224, 3, 26,170, +/* 0x0240 */ 225, 3, 27, 42,226,130, 95,248,255,127,191,169,240, 3, 31,170, +/* 0x0250 */ 227, 19, 64,169,230, 31, 64,169,232, 39, 64,169,244, 87, 64,169, +/* 0x0260 */ 246, 95, 64,169,248,103, 64,169,250,111, 64,169,252,119,193,168, +/* 0x0270 */ 192, 3, 95,214, 32, 32, 32, 61, 47,112,114,111, 99, 47,115,101, +/* 0x0280 */ 108,102, 47,101,120,101, 0, 0, 99, 28, 0, 18,127, 72, 1,113, +/* 0x0290 */ 129, 1, 0, 84, 33,252, 66,211, 65, 1, 0,180, 33, 4, 0,209, +/* 0x02a0 */ 2,120, 97,184, 67,120, 26, 83,127, 20, 0,113,129, 0, 0, 84, +/* 0x02b0 */ 67, 0, 1, 75, 98,100, 0, 51, 2,120, 33,184, 1,255,255,181, +/* 0x02c0 */ 192, 3, 95,214, 0, 0, 32,212,192, 3, 95,214,168, 11,128, 82, +/* 0x02d0 */ 1, 0, 0,212,232, 7,128, 82, 1, 0, 0,212,192, 3, 95,214, +/* 0x02e0 */ 8, 8,128, 82, 1, 0, 0,212,192, 3, 95,214, 40, 7,128, 82, +/* 0x02f0 */ 1, 0, 0,212,192, 3, 95,214,168, 21,128, 82, 1, 0, 0,212, +/* 0x0300 */ 192, 3, 95,214,200, 26,128, 82, 1, 0, 0,212,192, 3, 95,214, +/* 0x0310 */ 232, 26,128, 82, 1, 0, 0,212,192, 3, 95,214, 2, 0,128,210, +/* 0x0320 */ 225, 3, 0,170, 96, 12,128, 18,104, 4,128, 82, 4, 0, 0, 20, +/* 0x0330 */ 200, 9,128, 82, 2, 0, 0, 20, 8, 7,128, 82,227, 3, 2,170, +/* 0x0340 */ 226, 3, 1,170,225, 3, 0,170, 96, 12,128,146, 1, 0, 0,212, +/* 0x0350 */ 192, 3, 95,214, 0, 0, 64,212, 2, 0,128, 82, 8, 0,128, 82, +/* 0x0360 */ 1, 0, 0,212,192, 3, 95,214,253,123,191,169, 3, 0,128,210, +/* 0x0370 */ 253, 3, 0,145, 5, 0, 64,249, 4, 4, 64,249,191, 0, 2,235, +/* 0x0380 */ 98, 0, 0, 84,224, 15,128, 82,209,255,255,151,127, 0, 2,235, +/* 0x0390 */ 160, 0, 0, 84,133,104, 99, 56, 37,104, 35, 56, 99, 4, 0,145, +/* 0x03a0 */ 251,255,255, 23, 1, 4, 64,249, 33, 0, 3,139, 1, 4, 0,249, +/* 0x03b0 */ 1, 0, 64,249, 35, 0, 3,203, 3, 0, 0,249,253,123,193,168, +/* 0x03c0 */ 192, 3, 95,214,253,123,187,169,253, 3, 0,145,243, 83, 1,169, +/* 0x03d0 */ 245, 91, 2,169,244, 3, 0,170,243, 3, 1,170,246, 3, 2,170, +/* 0x03e0 */ 245, 3, 3,170, 96, 2, 64,249,160, 8, 0,180,224, 3, 20,170, +/* 0x03f0 */ 130, 1,128,210,161, 3, 1,145,220,255,255,151,160, 67, 64,185, +/* 0x0400 */ 162, 71, 64,185, 0, 1, 0, 53,160, 10,138, 82, 0, 43,164,114, +/* 0x0410 */ 95, 0, 0,107,225, 0, 0, 84,128, 2, 64,249, 0, 7, 0,180, +/* 0x0420 */ 4, 0, 0, 20, 98, 0, 0, 52, 95, 0, 0,107,105, 0, 0, 84, +/* 0x0430 */ 224, 15,128, 82,166,255,255,151, 99, 2, 64,249,225, 3, 0, 42, +/* 0x0440 */ 63, 0, 3,235,104,255,255, 84, 95, 0, 0,107, 2, 4, 0, 84, +/* 0x0450 */ 161, 31, 0,249,225, 3, 2, 42,128, 6, 64,249,163,227, 0,145, +/* 0x0460 */ 98, 6, 64,249,164, 35, 65, 57,192, 2, 63,214, 32,254,255, 53, +/* 0x0470 */ 161, 31, 64,249,160, 67, 64,185, 63, 0, 0,235,161,253,255, 84, +/* 0x0480 */ 163, 39, 65, 57, 85, 1, 0,180, 35, 1, 0, 52, 63, 0, 8,241, +/* 0x0490 */ 136, 0, 0, 84, 96, 2, 64,249, 31, 0, 1,235,129, 0, 0, 84, +/* 0x04a0 */ 96, 6, 64,249,162, 43, 65, 57,160, 2, 63,214,163, 71, 64,185, +/* 0x04b0 */ 129, 6, 64,249,128, 2, 64,249, 33, 0, 3,139,129, 6, 0,249, +/* 0x04c0 */ 0, 0, 3,203,128, 2, 0,249, 5, 0, 0, 20, 97, 6, 64,249, +/* 0x04d0 */ 224, 3, 20,170,226, 3, 2, 42,164,255,255,151,163, 67, 64,185, +/* 0x04e0 */ 97, 6, 64,249, 96, 2, 64,249, 33, 0, 3,139, 97, 6, 0,249, +/* 0x04f0 */ 0, 0, 3,203, 96, 2, 0,249,187,255,255, 23,243, 83, 65,169, +/* 0x0500 */ 245, 91, 66,169,253,123,197,168,192, 3, 95,214, 0, 2, 0,180, +/* 0x0510 */ 224, 1, 0, 55,228, 3, 1, 42, 3, 0, 64,249,127, 0, 4,235, +/* 0x0520 */ 129, 0, 0, 84, 4, 0, 0,249, 2, 4, 0,249, 8, 0, 0, 20, +/* 0x0530 */ 127, 4, 0,241, 97, 0, 0, 84, 97, 0, 0, 52,250,255,255, 23, +/* 0x0540 */ 99, 0, 0,180, 0, 64, 0,145,244,255,255, 23,192, 3, 95,214, +/* 0x0550 */ 253,123,181,169,253, 3, 0,145,232, 39, 6,109,201, 0,103,158, +/* 0x0560 */ 6, 16, 64,249,236, 55, 8,109,245, 91, 2,169,238, 63, 9,109, +/* 0x0570 */ 246, 3, 0,170,234, 47, 7,109,251,115, 5,169, 28, 0, 6,139, +/* 0x0580 */ 245, 3, 1,170, 32, 1,102,158,249,107, 4,169,243, 83, 1,169, +/* 0x0590 */ 247, 99, 3,169, 76, 0, 39, 30,250, 3, 3,170,141, 0,103,158, +/* 0x05a0 */ 249, 3, 7,170,174, 0,103,158, 2, 0, 64,249,195, 34, 64,121, +/* 0x05b0 */ 65, 2, 0,180, 65, 16, 64,249,127, 8, 0,113, 65, 0, 1,139, +/* 0x05c0 */ 32, 36, 64,249, 64, 0, 0,203, 65, 0, 0, 84, 32, 8, 64,249, +/* 0x05d0 */ 33, 20, 64,249, 2, 0,128, 82, 67, 6,128, 82, 4, 0,128, 18, +/* 0x05e0 */ 5, 0,128,210,192,254,255,151,193, 34, 64,121, 63, 8, 0,113, +/* 0x05f0 */ 19, 16,159,154, 42, 0, 0, 20,127, 12, 0,113, 3, 2,128, 82, +/* 0x0600 */ 99, 16,159, 26,199,114, 64,121,224, 3, 2,170, 99,136, 0, 17, +/* 0x0610 */ 228, 3, 28,170, 19, 0,128,146,231, 4, 0, 81,255, 4, 0, 49, +/* 0x0620 */ 160, 1, 0, 84,133, 0, 64,185,191, 4, 0,113, 1, 1, 0, 84, +/* 0x0630 */ 136, 8, 64,249,133, 20, 64,249,127, 2, 8,235, 5, 1, 5,139, +/* 0x0640 */ 115,146,136,154, 63, 0, 5,235, 33, 32,133,154,132,224, 0,145, +/* 0x0650 */ 242,255,255, 23,228, 3, 57,170,115, 2, 25,138,129, 0, 1,139, +/* 0x0660 */ 33, 0, 19,203, 33, 0, 25,138,163, 0, 32, 55, 83, 0, 0,181, +/* 0x0670 */ 162, 0, 0,181, 0, 0,128,210, 4, 0, 0, 20,224, 3, 19,170, +/* 0x0680 */ 2, 0, 0, 20, 67, 6,128, 82, 2, 0,128, 82, 4, 0,128, 18, +/* 0x0690 */ 5, 0,128,210,148,254,255,151, 19, 0, 19,203,224, 3, 57, 42, +/* 0x06a0 */ 232, 3, 39, 30, 10, 0, 39, 30,224, 3, 57,170, 15, 0,103,158, +/* 0x06b0 */ 1, 1, 38, 30,192,114, 64,121, 63, 0, 0,107,138, 21, 0, 84, +/* 0x06c0 */ 128, 3, 64,185, 53, 1, 0,180, 31, 24, 0,113,225, 0, 0, 84, +/* 0x06d0 */ 130, 11, 64,249,224, 3, 26,170, 97, 0,128, 82, 98, 2, 2,139, +/* 0x06e0 */ 139,255,255,151,157, 0, 0, 20, 31, 4, 0,113, 97, 19, 0, 84, +/* 0x06f0 */ 128, 23, 64,249, 32, 19, 0,180,155, 7, 64,185, 0, 72,140, 82, +/* 0x0700 */ 32,106,174,114,123, 11, 30, 83, 27, 36,219, 26,121, 11, 0, 18, +/* 0x0710 */ 85, 2, 0,180,128, 7, 64,249, 0, 2, 0,181,194, 18, 64,249, +/* 0x0720 */ 224, 3, 26,170,131, 11, 64,249, 97, 0,128, 82, 98, 2, 2,139, +/* 0x0730 */ 66, 0, 3,139,118,255,255,151,194,114, 64,121,224, 3, 26,170, +/* 0x0740 */ 161, 0,128, 82,114,255,255,151,194,110, 64,121,224, 3, 26,170, +/* 0x0750 */ 129, 0,128, 82,110,255,255,151,148, 11, 64,249,191, 2, 31,235, +/* 0x0760 */ 128, 23, 64,249,130, 0,128, 18,116, 2, 20,139,151, 19, 64,249, +/* 0x0770 */ 128, 2, 0,139,183, 83, 0,249,225, 1,102,158,180, 87, 0,249, +/* 0x0780 */ 11, 0,103,158,152, 2, 23,139, 64, 1, 38, 30,135, 7, 64,249, +/* 0x0790 */ 72, 6,128, 82, 5, 0, 20, 10,148, 2, 5,203,183, 0, 23,139, +/* 0x07a0 */ 128, 2, 23,139,229, 0, 5,203,224, 3, 0,203, 0, 0, 1,138, +/* 0x07b0 */ 23, 0, 23,139, 64, 0,128, 82, 3, 16,159, 26,191, 2, 31,235, +/* 0x07c0 */ 128, 1, 38, 30, 99, 0, 25, 42, 66, 16,159, 90,191, 2, 31,235, +/* 0x07d0 */ 66, 0, 3, 10, 67, 2,128, 82,225, 3, 23,170, 4, 0,159, 90, +/* 0x07e0 */ 191, 2, 31,235, 3, 17,131, 26,224, 3, 20,170, 62,254,255,151, +/* 0x07f0 */ 159, 2, 0,235, 96, 0, 0, 84,224, 15,128, 82,180,254,255,151, +/* 0x0800 */ 213, 0, 0,180,162, 1,102,158,224, 3, 21,170,195, 1,102,158, +/* 0x0810 */ 161,131, 2,145,236,254,255,151,187, 1, 8, 54, 64, 1, 38, 30, +/* 0x0820 */ 225, 3, 24, 75, 34, 0, 0, 10, 0, 0,128,210, 98, 0, 0, 53, +/* 0x0830 */ 24, 3, 2,139, 6, 0, 0, 20, 31,107, 32, 56, 0, 4, 0,145, +/* 0x0840 */ 31, 0, 2,235,161,255,255, 84,250,255,255, 23,213, 6, 0,180, +/* 0x0850 */ 128, 3, 64,249,225, 3, 0,178, 0,128, 64,146, 31, 0, 1,235, +/* 0x0860 */ 129, 5, 0, 84,128, 23, 64,249,130, 19, 64,249,129, 11, 64,249, +/* 0x0870 */ 31, 0, 2,235,129, 1, 0, 84,123, 14, 0,145,123, 3, 0,139, +/* 0x0880 */ 66, 1, 38, 30,123, 3, 1,139,123,247,126,146,224, 3, 27, 75, +/* 0x0890 */ 0, 0, 2, 10, 31, 28, 0,113,105, 0, 0, 84, 0, 0,128, 82, +/* 0x08a0 */ 13, 0, 0, 20,128, 7, 64,249,160, 6, 0,180, 0, 0,128,210, +/* 0x08b0 */ 1, 0,130,210, 98, 0,128, 82, 67, 4,128, 82, 4, 0,128, 18, +/* 0x08c0 */ 229, 3, 0,170, 8,254,255,151,251, 3, 0,170, 32, 2, 0,180, +/* 0x08d0 */ 32, 0,128, 82, 33, 0,128, 82, 1,128,186,114, 97, 3, 0,185, +/* 0x08e0 */ 1,120,128, 82,225,203,186,114, 97, 7, 0,185,160, 0, 0, 52, +/* 0x08f0 */ 224, 3, 27,170, 1, 1,128,210,162, 0,128, 82, 1,254,255,151, +/* 0x0900 */ 64,251,127,146, 1, 0,128, 82,226, 3, 27,170, 0,255,255,151, +/* 0x0910 */ 224, 3, 20,170,225, 3, 23,170,226, 3, 25, 42,249,253,255,151, +/* 0x0920 */ 192,246,255, 53, 96, 1,102,158, 31, 3, 0,235, 98, 1, 0, 84, +/* 0x0930 */ 97, 1,102,158,224, 3, 24,170,226, 3, 25, 42, 67, 6,128, 82, +/* 0x0940 */ 4, 0,128, 18, 5, 0,128,210, 33, 0, 24,203,230,253,255,151, +/* 0x0950 */ 31, 3, 0,235, 33,245,255, 84, 0, 1, 38, 30,156,227, 0,145, +/* 0x0960 */ 0, 4, 0, 17, 8, 0, 39, 30, 82,255,255, 23, 32, 1,102,158, +/* 0x0970 */ 192, 0, 0,180, 19, 0, 0,249, 4, 0, 0, 20, 59, 0, 19,139, +/* 0x0980 */ 123, 35, 0,145,212,255,255, 23,192, 14, 64,249,232, 39, 70,109, +/* 0x0990 */ 245, 91, 66,169,234, 47, 71,109, 96, 2, 0,139,236, 55, 72,109, +/* 0x09a0 */ 243, 83, 65,169,238, 63, 73,109,247, 99, 67,169,249,107, 68,169, +/* 0x09b0 */ 251,115, 69,169,253,123,203,168,192, 3, 95,214,253,123,182,169, +/* 0x09c0 */ 253, 3, 0,145,247, 99, 3,169,247, 3, 3,170, 3, 4, 64,185, +/* 0x09d0 */ 243, 83, 1,169,162, 63, 0,249,243, 3, 2,170, 99, 48, 0,145, +/* 0x09e0 */ 2, 0, 64,185,162, 59, 0,249,226, 3, 4,170,160, 79, 0,249, +/* 0x09f0 */ 116, 2, 1,145,163, 75, 0,249, 3, 0,128,210,160, 71, 0,249, +/* 0x0a00 */ 160, 67, 2,145,161, 67, 0,249,161,195, 1,145,245, 91, 2,169, +/* 0x0a10 */ 249, 35, 0,249,249, 3, 7,170,165, 47, 0,249, 22, 0,128, 82, +/* 0x0a20 */ 166, 55, 0,249,164, 51, 0,249,103,254,255,151,164, 51, 64,249, +/* 0x0a30 */ 161, 3, 2,145,165, 47, 64,249, 2, 0,128, 82,227, 3, 23,170, +/* 0x0a40 */ 166,163, 1,145,231, 3, 25,170,224, 3, 19,170,193,254,255,151, +/* 0x0a50 */ 245, 3, 0,170, 33, 1,128, 82,224, 3, 23,170,226, 3, 21,170, +/* 0x0a60 */ 171,254,255,151, 96,114, 64,121,223, 2, 0,107,226, 4, 0, 84, +/* 0x0a70 */ 128, 2, 64,185, 31, 12, 0,113, 33, 4, 0, 84,129, 10, 64,249, +/* 0x0a80 */ 160, 55, 64,249, 32, 0, 0,139, 1, 0,128, 82,226, 3, 1, 42, +/* 0x0a90 */ 42,254,255,151,248, 3, 0, 42, 96, 0,248, 54,224, 15,128, 82, +/* 0x0aa0 */ 11,254,255,151,225, 3, 19,170, 2,128,128,210, 10,254,255,151, +/* 0x0ab0 */ 31, 0, 16,241, 65,255,255, 84, 1, 0,128,210,226, 3, 24, 42, +/* 0x0ac0 */ 227, 3, 1,170,228, 3, 1,170,229, 3, 1,170,166,163, 1,145, +/* 0x0ad0 */ 231, 3, 25,170,224, 3, 19,170,191, 55, 0,249,157,254,255,151, +/* 0x0ae0 */ 245, 3, 0,170,162, 55, 64,249,224, 3, 23,170,225, 0,128, 82, +/* 0x0af0 */ 135,254,255,151,224, 3, 24, 42,253,253,255,151,148,226, 0,145, +/* 0x0b00 */ 214, 6, 0, 17,216,255,255, 23,224, 3, 21,170,249, 35, 64,249, +/* 0x0b10 */ 243, 83, 65,169,245, 91, 66,169,247, 99, 67,169,253,123,202,168, +/* 0x0b20 */ 192, 3, 95,214 }; diff --git a/src/stub/src/amd64-linux.elf-fold.S b/src/stub/src/amd64-linux.elf-fold.S index 42ed61de..175d850d 100644 --- a/src/stub/src/amd64-linux.elf-fold.S +++ b/src/stub/src/amd64-linux.elf-fold.S @@ -216,4 +216,8 @@ write: .globl write read: .globl read movb $ __NR_read,%al; 5: jmp sysgo +my_bkpt: .globl my_bkpt + int3 + ret + /* vim:set ts=8 sw=8 et: */ diff --git a/src/stub/src/amd64-linux.elf-main.c b/src/stub/src/amd64-linux.elf-main.c index 2156919b..a00cb36f 100644 --- a/src/stub/src/amd64-linux.elf-main.c +++ b/src/stub/src/amd64-linux.elf-main.c @@ -76,6 +76,8 @@ unsigned Pprotect(void *, size_t, unsigned); #endif //} +extern void my_bkpt(void *, ...); + static int dprintf(char const *fmt, ...); // forward #endif /*}*/ @@ -480,6 +482,7 @@ do_xmap( if (ET_EXEC==ehdr->e_type) { reloc = 0; } + DPRINTF("do_xmap 1 reloc=%%p\\n", reloc); } else { // PT_INTERP DPRINTF("INTERP\\n", 0); @@ -489,8 +492,8 @@ do_xmap( , PAGE_MASK #endif ); + DPRINTF("do_xmap 2 reloc=%%p\\n", reloc); } - DPRINTF("do_xmap reloc=%%p\\n", reloc); int j; for (j=0; j < ehdr->e_phnum; ++phdr, ++j) if (xi && PT_PHDR==phdr->p_type) { diff --git a/src/stub/src/arm64-linux.elf-entry.S b/src/stub/src/arm64-linux.elf-entry.S index cc7333fe..d87c2fc3 100644 --- a/src/stub/src/arm64-linux.elf-entry.S +++ b/src/stub/src/arm64-linux.elf-entry.S @@ -114,6 +114,7 @@ xauxv .req x22 wszuf .req w21 xszuf .req x21 xFOLD .req x20 +wPrivAnon .req w19 // http://infocenter.arm.com/help/topic/com.arm.doc.ihi0055b/IHI0055B_aapcs64.pdf // x18 is CLOBBERED: "The platform register" @@ -126,12 +127,13 @@ xFOLD .req x20 section ELFMAINX sz_pack2= .-4 // placed there by ::pack3() mflg: - .long MFLG // MAP_{PRIVATE|ANONYMOUS} // QNX vs linux + .int MFLG // MAP_{PRIVATE|ANONYMOUS} // QNX vs linux _start: .globl _start #if DEBUG /*{*/ brk #0 // DEBUG 0xd4200000 TRACE(#0) #endif /*}*/ + ldr wPrivAnon,mflg call main f_exp: @@ -212,14 +214,9 @@ unfold: callr xfexp // decompress it POP1(x8) // discard lzma EOF -// Generate code to compute PAGE_MASK - ldr x0,[xADRM,#1*4] // 2nd instr - rbit x1,xPMASK - clz x1,x1 // # trailing 0's in xPMASK - add x1,x1,#1 - lsl x1,x1,#2*5 // past two register numbers - orr x0,x0,x1 - str x0,[xADRM,#1*4] // modify 2nd instr: "add x1,x0,#1+ count" +// propagate PAGE_MASK and wPrivAnon + str xPMASK,[xADRM] + str wPrivAnon,[xADRM,#NBPW + 2*4] // bits_privanon in unfolded code // PROT_EXEC mov w2,#PROT_EXEC|PROT_READ @@ -232,7 +229,7 @@ unfold: ldr w0,[xFOLD, #LOBINFO - LxFOLD] // O_BINFO ldr wLENC,[xfexp,#sz_pack2 - f_exp] add xADRC,xelfa,x0 // &b_info of compressed input data - add x0,xADRM,#4*4 // jmp over get_page_mask() + add x0,xADRM,#NBPW + 3*4 // jmp over get_page_mask() and bits_privanon jr x0 .unreq src @@ -350,7 +347,7 @@ main: // set xPMASK by finding actual page size in Elf64_auxv 1: - ldp x1,x2,[x0],#8 + ldp x1,x2,[x0],#sz_auxv cmp w1,#AT_PAGESZ; beq 2f cbnz w1,1b // AT_NULL mov x2,#PAGE_SIZE // default diff --git a/src/stub/src/arm64-linux.elf-fold.S b/src/stub/src/arm64-linux.elf-fold.S index b2e03854..49596237 100644 --- a/src/stub/src/arm64-linux.elf-fold.S +++ b/src/stub/src/arm64-linux.elf-fold.S @@ -51,6 +51,7 @@ sz_auxv= 2*NBPW MAP_PRIVATE= 0x02 MAP_FIXED= 0x10 +MAP_ANONYMOUS= 0x20 PROT_READ= 0x1 @@ -79,14 +80,17 @@ PATH_MAX= 4096 #define OVERHEAD 2048 #include "MAX_ELF_HDR.S" -get_page_mask: - mov x0,#~0 // all 1's; -1 - add x1,x0,#0 // constant is modified to (1+ count) - lsl x0,x0,x1 // generate the mask +PAGE_MASK: .quad ~0<<12 // default +get_page_mask: .globl get_page_mask + ldr x0,PAGE_MASK ret -fold_begin: +bits_privanon: // known offset (NBPW + 2*4) + .int MAP_PRIVATE | MAP_ANONYMOUS // Linux default; else QNX + +fold_begin: // known offset (NBPW + 3*4) //// brk #0 // DEBUG + b L10 // In: sp/ PMASK,fd,ADRU,LENU, argc,argv,... //lr .req x30 @@ -107,6 +111,31 @@ wfd .req w21 xfd .req x21 xPMASK .req x20 +mmap_privanon: .globl mmap_privanon + ldr w6,bits_privanon // r12 === ip + mov x5,#0 // offset= 0 + mov x4,#-1 // fd= -1 + orr w3,w3,w6 // flags |= MAP_{PRIVATE|ANON} [QNX vs Linux] + // FALL THROUGH to mmap + + .globl mmap +mmap: + ldr x8,PAGE_MASK + bic x8,x0,x8 + sub x0,x0,x8 + add x1,x1,x8 + do_sys __NR_mmap; ret + +// Sometimes Linux enforces page-aligned address +Pprotect: .globl Pprotect +mprotect: .globl mprotect + ldr x8,PAGE_MASK + bic x8,x0,x8 + sub x0,x0,x8 + add x1,x1,x8 + do_sys __NR_mprotect; ret + +L10: POP4(xPMASK,xfd, xADRU,xLENU) ldr x7,[sp,#0] // argc @@ -446,30 +475,6 @@ brk: munmap: do_sys __NR_munmap; ret -// Sometimes Linux enforces page-aligned address -Pprotect: .globl Pprotect -mprotect: .globl mprotect - and x8,x0,#-1+ (1<<12) // FIXME: variable PAGE_SIZE - sub x0,x0,x8 - add x1,x1,x8 - do_sys __NR_mprotect; ret - -bits_privanon= -4+ fold_begin // entry stores: MAP_{PRIVATE|ANON} QNX vs linux - -mmap_privanon: .globl mmap_privanon - ldr w6,bits_privanon // r12 === ip - mov x5,#0 // offset= 0 - mov x4,#-1 // fd= -1 - orr w3,w3,w6 // flags |= MAP_{PRIVATE|ANON} [QNX vs Linux] - // FALL THROUGH to mmap - - .globl mmap -mmap: - and x8,x0,#-1+ (1<<12) // FIXME: variable PAGE_SIZE - sub x0,x0,x8 - add x1,x1,x8 - do_sys __NR_mmap; ret - .globl unlink unlink: mov x2,#0 // flags as last arg diff --git a/src/stub/tmp/amd64-linux.elf-fold.map b/src/stub/tmp/amd64-linux.elf-fold.map index 1367ffc7..75903513 100644 --- a/src/stub/tmp/amd64-linux.elf-fold.map +++ b/src/stub/tmp/amd64-linux.elf-fold.map @@ -8,62 +8,63 @@ Linker script and memory map 0x00000000001000bc . = ((0x100000 + SIZEOF_HEADERS) + 0xc) -.text 0x00000000001000bc 0x8b4 +.text 0x00000000001000bc 0x8b8 *(.text) - .text 0x00000000001000bc 0x1b7 tmp/amd64-linux.elf-fold.o + .text 0x00000000001000bc 0x1b9 tmp/amd64-linux.elf-fold.o 0x0000000000100263 munmap 0x000000000010022a mmap 0x000000000010026b write 0x000000000010026f read + 0x0000000000100273 my_bkpt 0x0000000000100241 Pprotect 0x0000000000100253 exit 0x0000000000100257 brk 0x000000000010025f open 0x0000000000100267 mprotect 0x000000000010025b close - *fill* 0x0000000000100273 0x1 00 - .text 0x0000000000100274 0x6fa tmp/amd64-linux.elf-main.o - 0x0000000000100826 upx_main - *fill* 0x000000000010096e 0x2 00 - .text 0x0000000000100970 0x0 tmp/amd64-expand.o + *fill* 0x0000000000100275 0x3 00 + .text 0x0000000000100278 0x6fa tmp/amd64-linux.elf-main.o + 0x000000000010082a upx_main + *fill* 0x0000000000100972 0x2 00 + .text 0x0000000000100974 0x0 tmp/amd64-expand.o *(.data) - .data 0x0000000000100970 0x0 tmp/amd64-linux.elf-fold.o - .data 0x0000000000100970 0x0 tmp/amd64-linux.elf-main.o - .data 0x0000000000100970 0x0 tmp/amd64-expand.o - 0x0000000000100970 . = ALIGN (0x1) - 0x0000000000100970 __start_EXP_HEAD = . + .data 0x0000000000100974 0x0 tmp/amd64-linux.elf-fold.o + .data 0x0000000000100974 0x0 tmp/amd64-linux.elf-main.o + .data 0x0000000000100974 0x0 tmp/amd64-expand.o + 0x0000000000100974 . = ALIGN (0x1) + 0x0000000000100974 __start_EXP_HEAD = . -EXP_HEAD 0x0000000000100970 0xe0 - EXP_HEAD 0x0000000000100970 0xe0 tmp/amd64-expand.o - 0x0000000000100970 f_expand - 0x0000000000100a50 __stop_EXP_HEAD = . - 0x0000000000100a50 . = ALIGN (0x1) - 0x0000000000100a50 __start_NRV2E = . +EXP_HEAD 0x0000000000100974 0xe0 + EXP_HEAD 0x0000000000100974 0xe0 tmp/amd64-expand.o + 0x0000000000100974 f_expand + 0x0000000000100a54 __stop_EXP_HEAD = . + 0x0000000000100a54 . = ALIGN (0x1) + 0x0000000000100a54 __start_NRV2E = . -NRV2E 0x0000000000100a50 0xe5 - NRV2E 0x0000000000100a50 0xe5 tmp/amd64-expand.o - 0x0000000000100b35 __stop_NRV2E = . - 0x0000000000100b35 . = ALIGN (0x1) - 0x0000000000100b35 __start_NRV2D = . +NRV2E 0x0000000000100a54 0xe5 + NRV2E 0x0000000000100a54 0xe5 tmp/amd64-expand.o + 0x0000000000100b39 __stop_NRV2E = . + 0x0000000000100b39 . = ALIGN (0x1) + 0x0000000000100b39 __start_NRV2D = . -NRV2D 0x0000000000100b35 0xd7 - NRV2D 0x0000000000100b35 0xd7 tmp/amd64-expand.o - 0x0000000000100c0c __stop_NRV2D = . - 0x0000000000100c0c . = ALIGN (0x1) - 0x0000000000100c0c __start_NRV2B = . +NRV2D 0x0000000000100b39 0xd7 + NRV2D 0x0000000000100b39 0xd7 tmp/amd64-expand.o + 0x0000000000100c10 __stop_NRV2D = . + 0x0000000000100c10 . = ALIGN (0x1) + 0x0000000000100c10 __start_NRV2B = . -NRV2B 0x0000000000100c0c 0xc1 - NRV2B 0x0000000000100c0c 0xc1 tmp/amd64-expand.o - 0x0000000000100ccd __stop_NRV2B = . +NRV2B 0x0000000000100c10 0xc1 + NRV2B 0x0000000000100c10 0xc1 tmp/amd64-expand.o + 0x0000000000100cd1 __stop_NRV2B = . .data -.bss 0x0000000000100cd0 0x0 - .bss 0x0000000000100cd0 0x0 tmp/amd64-linux.elf-fold.o - .bss 0x0000000000100cd0 0x0 tmp/amd64-linux.elf-main.o - .bss 0x0000000000100cd0 0x0 tmp/amd64-expand.o +.bss 0x0000000000100cd4 0x0 + .bss 0x0000000000100cd4 0x0 tmp/amd64-linux.elf-fold.o + .bss 0x0000000000100cd4 0x0 tmp/amd64-linux.elf-main.o + .bss 0x0000000000100cd4 0x0 tmp/amd64-expand.o -.rela.dyn 0x0000000000100cd0 0x0 +.rela.dyn 0x0000000000100cd8 0x0 .rela.text 0x0000000000000000 0x0 tmp/amd64-linux.elf-fold.o LOAD tmp/amd64-linux.elf-fold.o LOAD tmp/amd64-linux.elf-main.o diff --git a/src/stub/tmp/arm64-linux.elf-entry.bin.dump b/src/stub/tmp/arm64-linux.elf-entry.bin.dump index 82fbdd20..917e1b40 100644 --- a/src/stub/tmp/arm64-linux.elf-entry.bin.dump +++ b/src/stub/tmp/arm64-linux.elf-entry.bin.dump @@ -2,18 +2,18 @@ file format elf64-littleaarch64 Sections: Idx Name Size VMA LMA File off Algn Flags - 0 ELFMAINX 08 0 0 040 2**0 CONTENTS - 1 NRV_HEAD 0 0 0 048 2**0 CONTENTS - 2 NRV_TAIL 0 0 0 048 2**0 CONTENTS - 3 NRV2E 017c 0 0 048 2**0 CONTENTS - 4 NRV2D 0170 0 0 01c4 2**0 CONTENTS - 5 NRV2B 0144 0 0 0334 2**0 CONTENTS - 6 LZMA_ELF00 010c 0 0 0478 2**0 CONTENTS - 7 LZMA_DEC20 0968 0 0 0584 2**0 CONTENTS - 8 LZMA_DEC10 04a0 0 0 0eec 2**0 CONTENTS - 9 LZMA_DEC30 0 0 0 0138c 2**0 CONTENTS - 10 ELFMAINY 03e 0 0 0138c 2**0 CONTENTS - 11 ELFMAINZ 0110 0 0 013cc 2**2 CONTENTS + 0 ELFMAINX 0c 0 0 040 2**0 CONTENTS + 1 NRV_HEAD 0 0 0 04c 2**0 CONTENTS + 2 NRV_TAIL 0 0 0 04c 2**0 CONTENTS + 3 NRV2E 017c 0 0 04c 2**0 CONTENTS + 4 NRV2D 0170 0 0 01c8 2**0 CONTENTS + 5 NRV2B 0144 0 0 0338 2**0 CONTENTS + 6 LZMA_ELF00 010c 0 0 047c 2**0 CONTENTS + 7 LZMA_DEC20 0968 0 0 0588 2**0 CONTENTS + 8 LZMA_DEC10 04a0 0 0 0ef0 2**0 CONTENTS + 9 LZMA_DEC30 0 0 0 01390 2**0 CONTENTS + 10 ELFMAINY 03e 0 0 01390 2**0 CONTENTS + 11 ELFMAINZ 0fc 0 0 013d0 2**2 CONTENTS SYMBOL TABLE: 0000000000000000 l d LZMA_DEC30 0 LZMA_DEC30 0000000000000000 l d ELFMAINZ 0 ELFMAINZ @@ -39,7 +39,7 @@ SYMBOL TABLE: RELOCATION RECORDS FOR [ELFMAINX]: OFFSET TYPE VALUE 0000000000000000 R_AARCH64_ABS32 MFLG -0000000000000004 R_AARCH64_CALL26 ELFMAINZ+0x00000000000000c4 +0000000000000008 R_AARCH64_CALL26 ELFMAINZ+0x00000000000000b0 RELOCATION RECORDS FOR [LZMA_ELF00]: OFFSET TYPE VALUE @@ -47,4 +47,4 @@ OFFSET TYPE VALUE RELOCATION RECORDS FOR [ELFMAINZ]: OFFSET TYPE VALUE -000000000000010c R_AARCH64_ABS32 O_BINFO +00000000000000f8 R_AARCH64_ABS32 O_BINFO diff --git a/src/stub/tmp/arm64-linux.elf-fold.map b/src/stub/tmp/arm64-linux.elf-fold.map index def4d22d..38fd1397 100644 --- a/src/stub/tmp/arm64-linux.elf-fold.map +++ b/src/stub/tmp/arm64-linux.elf-fold.map @@ -8,45 +8,46 @@ Linker script and memory map 0x00000000001000bc . = ((0x100000 + SIZEOF_HEADERS) + 0xc) -.text 0x00000000001000bc 0xa58 +.text 0x00000000001000bc 0xa68 *(.text) - .text 0x00000000001000bc 0x29c tmp/arm64-linux.elf-fold.o - 0x0000000000100274 my_bkpt - 0x000000000010027c exit - 0x0000000000100284 read - 0x0000000000100290 write - 0x000000000010029c close - 0x00000000001002a8 getpid - 0x00000000001002b4 brk - 0x00000000001002c0 munmap - 0x00000000001002cc Pprotect - 0x00000000001002cc mprotect - 0x00000000001002e4 mmap_privanon - 0x00000000001002f4 mmap - 0x000000000010030c unlink - 0x0000000000100320 readlink - 0x0000000000100328 open - 0x0000000000100344 __clear_cache - .text 0x0000000000100358 0x7bc tmp/arm64-linux.elf-main.o - 0x00000000001009ac upx_main + .text 0x00000000001000bc 0x2ac tmp/arm64-linux.elf-fold.o + 0x00000000001000c4 get_page_mask + 0x00000000001000d4 mmap_privanon + 0x00000000001000e4 mmap + 0x0000000000100100 Pprotect + 0x0000000000100100 mprotect + 0x00000000001002c4 my_bkpt + 0x00000000001002cc exit + 0x00000000001002d4 read + 0x00000000001002e0 write + 0x00000000001002ec close + 0x00000000001002f8 getpid + 0x0000000000100304 brk + 0x0000000000100310 munmap + 0x000000000010031c unlink + 0x0000000000100330 readlink + 0x0000000000100338 open + 0x0000000000100354 __clear_cache + .text 0x0000000000100368 0x7bc tmp/arm64-linux.elf-main.o + 0x00000000001009bc upx_main *(.data) - .data 0x0000000000100b14 0x0 tmp/arm64-linux.elf-fold.o - .data 0x0000000000100b14 0x0 tmp/arm64-linux.elf-main.o + .data 0x0000000000100b24 0x0 tmp/arm64-linux.elf-fold.o + .data 0x0000000000100b24 0x0 tmp/arm64-linux.elf-main.o -.iplt 0x0000000000100b14 0x0 - .iplt 0x0000000000100b14 0x0 tmp/arm64-linux.elf-fold.o +.iplt 0x0000000000100b24 0x0 + .iplt 0x0000000000100b24 0x0 tmp/arm64-linux.elf-fold.o -.rela.dyn 0x0000000000100b18 0x0 - .rela.iplt 0x0000000000100b18 0x0 tmp/arm64-linux.elf-fold.o +.rela.dyn 0x0000000000100b28 0x0 + .rela.iplt 0x0000000000100b28 0x0 tmp/arm64-linux.elf-fold.o .data LOAD tmp/arm64-linux.elf-fold.o LOAD tmp/arm64-linux.elf-main.o OUTPUT(tmp/arm64-linux.elf-fold.bin elf64-littleaarch64) -.igot.plt 0x0000000000100b18 0x0 - .igot.plt 0x0000000000100b18 0x0 tmp/arm64-linux.elf-fold.o +.igot.plt 0x0000000000100b28 0x0 + .igot.plt 0x0000000000100b28 0x0 tmp/arm64-linux.elf-fold.o -.bss 0x0000000000100b14 0x0 - .bss 0x0000000000100b14 0x0 tmp/arm64-linux.elf-fold.o - .bss 0x0000000000100b14 0x0 tmp/arm64-linux.elf-main.o +.bss 0x0000000000100b24 0x0 + .bss 0x0000000000100b24 0x0 tmp/arm64-linux.elf-fold.o + .bss 0x0000000000100b24 0x0 tmp/arm64-linux.elf-main.o