Pprotect: mprotect but enlarge the interval to start on page boundary

https://github.com/upx/upx/issues/609
	modified:   src/stub/src/amd64-linux.elf-fold.S
	modified:   src/stub/src/amd64-linux.elf-main.c
	modified:   src/stub/src/amd64-linux.elf-so_fold.S
	modified:   src/stub/src/amd64-linux.elf-so_main.c
	modified:   src/stub/src/arm.v4a-linux.elf-fold.S
	modified:   src/stub/src/arm.v4a-linux.elf-so_fold.S
	modified:   src/stub/src/arm64-linux.elf-fold.S
	modified:   src/stub/src/arm64-linux.elf-so_fold.S
	modified:   src/stub/src/i386-linux.elf-fold.S
	modified:   src/stub/src/i386-linux.elf-main.c
	modified:   src/stub/src/i386-linux.elf-so_fold.S
	modified:   src/stub/src/i386-linux.elf-so_main.c
	modified:   src/stub/src/mipsel.r3000-linux.elf-fold.S
	modified:   src/stub/src/powerpc-linux.elf-fold.S
	modified:   src/stub/src/powerpc64le-linux.elf-fold.S

	modified:   src/stub/amd64-linux.elf-fold.h
	modified:   src/stub/amd64-linux.elf-so_fold.h
	modified:   src/stub/arm.v4a-linux.elf-fold.h
	modified:   src/stub/arm.v4a-linux.elf-so_fold.h
	modified:   src/stub/arm.v5a-linux.elf-fold.h
	modified:   src/stub/arm.v5a-linux.elf-so_fold.h
	modified:   src/stub/arm64-linux.elf-fold.h
	modified:   src/stub/arm64-linux.elf-so_fold.h
	modified:   src/stub/armeb.v4a-linux.elf-fold.h
	modified:   src/stub/i386-linux.elf-fold.h
	modified:   src/stub/i386-linux.elf-so_fold.h
	modified:   src/stub/mips.r3000-linux.elf-fold.h
	modified:   src/stub/mipsel.r3000-linux.elf-fold.h
	modified:   src/stub/powerpc-linux.elf-fold.h
	modified:   src/stub/powerpc64-linux.elf-fold.h
	modified:   src/stub/powerpc64le-linux.elf-fold.h

	modified:   src/stub/tmp/amd64-linux.elf-fold.map
	modified:   src/stub/tmp/amd64-linux.elf-so_fold.bin.dump
	modified:   src/stub/tmp/arm.v4a-linux.elf-fold.map
	modified:   src/stub/tmp/arm.v5a-linux.elf-fold.map
	modified:   src/stub/tmp/arm64-linux.elf-fold.map
	modified:   src/stub/tmp/armeb.v4a-linux.elf-fold.map
	modified:   src/stub/tmp/i386-linux.elf-fold.map
	modified:   src/stub/tmp/mips.r3000-linux.elf-fold.map
	modified:   src/stub/tmp/mipsel.r3000-linux.elf-fold.map
	modified:   src/stub/tmp/powerpc-linux.elf-fold.map
	modified:   src/stub/tmp/powerpc64-linux.elf-fold.map
	modified:   src/stub/tmp/powerpc64le-linux.elf-fold.map
This commit is contained in:
John Reiser
2023-03-29 15:46:58 -07:00
parent c72ceaa979
commit 4df68aafd2
43 changed files with 5842 additions and 5699 deletions
+144 -142
View File
@@ -1,5 +1,5 @@
/* armeb.v4a-linux.elf-fold.h
created from armeb.v4a-linux.elf-fold.bin, 2864 (0xb30) bytes
created from armeb.v4a-linux.elf-fold.bin, 2884 (0xb44) bytes
This file is part of the UPX executable compressor.
@@ -31,17 +31,17 @@
*/
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_SIZE 2864
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_ADLER32 0x625d9ab5
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_CRC32 0x1e64357e
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_SIZE 2884
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_ADLER32 0xdc34a2a3
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_CRC32 0x961034df
unsigned char stub_armeb_v4a_linux_elf_fold[2864] = {
unsigned char stub_armeb_v4a_linux_elf_fold[2884] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 97, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0010 */ 0, 2, 0, 40, 0, 0, 0, 1, 0, 0,128,128, 0, 0, 0, 52,
/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 2, 0, 52, 0, 32, 0, 2, 0, 0,
/* 0x0030 */ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,128, 0,
/* 0x0040 */ 0, 0,128, 0, 0, 0, 11, 48, 0, 0, 11, 48, 0, 0, 0, 5,
/* 0x0050 */ 0, 0,128, 0, 0, 0, 0, 1, 0, 0, 11, 48, 0, 0, 0, 0,
/* 0x0040 */ 0, 0,128, 0, 0, 0, 11, 68, 0, 0, 11, 68, 0, 0, 0, 5,
/* 0x0050 */ 0, 0,128, 0, 0, 0, 0, 1, 0, 0, 11, 68, 0, 0, 0, 0,
/* 0x0060 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0070 */ 0, 0,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0080 */ 0, 0, 0, 34,232,189, 31,192,225,160, 16, 13,226, 77,218, 1,
@@ -61,11 +61,11 @@ unsigned char stub_armeb_v4a_linux_elf_fold[2864] = {
/* 0x0160 */ 229,141, 0, 24,229, 49, 32, 4,225, 81, 0, 13,229, 32, 32, 4,
/* 0x0170 */ 26,255,255,251,225,160,208, 0,232,189, 12, 16,226, 77,220, 10,
/* 0x0180 */ 229,154,144, 4,225,160,128, 13,229,154,112, 0,226,143, 96,176,
/* 0x0190 */ 226,137,144, 12,233, 45, 15,248,232,189, 0, 15,235, 0, 2, 22,
/* 0x0190 */ 226,137,144, 12,233, 45, 15,248,232,189, 0, 15,235, 0, 2, 27,
/* 0x01a0 */ 226,141,208, 20,226,141,220, 10,229,141, 0, 16,229,155, 16, 92,
/* 0x01b0 */ 229,155, 32, 60,225,160, 0, 11,224, 65, 16, 2,235, 0, 0, 70,
/* 0x01c0 */ 228,157, 64, 4,227,160, 80, 0,233, 45, 0, 48,227,160, 48, 2,
/* 0x01d0 */ 227,160, 32, 1,227,160, 26, 1,227,160, 0, 0,235, 0, 0, 69,
/* 0x01d0 */ 227,160, 32, 1,227,160, 26, 1,227,160, 0, 0,235, 0, 0, 74,
/* 0x01e0 */ 232,189, 0, 3,235, 0, 0, 50,232,189, 64, 7,227,160, 48, 0,
/* 0x01f0 */ 227,160, 64, 0,227,160, 80, 0,227,160, 96, 0,227,160,128, 0,
/* 0x0200 */ 227,160,144, 0,227,160,160, 0,227,160,176, 0,226, 77,199, 1,
@@ -82,137 +82,139 @@ unsigned char stub_armeb_v4a_linux_elf_fold[2864] = {
/* 0x02b0 */ 225,160,240, 14,239,144, 0, 6,225,160,240, 14,239,144, 0, 10,
/* 0x02c0 */ 225,160,240, 14,239,144, 0, 20,225,160,240, 14,239,144, 0, 45,
/* 0x02d0 */ 225,160,240, 14,239,144, 0, 85,225,160,240, 14,239,144, 0, 91,
/* 0x02e0 */ 225,160,240, 14,239,144, 0,125,225,160,240, 14,227,160, 32, 0,
/* 0x02f0 */ 239,159, 0, 2,225,160,240, 14,233, 45, 64, 48,229,157, 80, 16,
/* 0x0300 */ 229,157, 64, 12,225,160, 86, 37,239,144, 0,192,232,189,128, 48,
/* 0x0310 */ 229, 31, 0, 60,225,160,240, 14,233, 45, 64, 48,229, 31, 66,164,
/* 0x0320 */ 227,160, 80, 0,225,131, 48, 4,227,224, 64, 0,234,255,255,245,
/* 0x0330 */ 225,160,192, 0,224, 65, 16, 1,225,160, 32, 0,224,144, 1,128,
/* 0x0340 */ 224,161, 17,129,224,129, 30,162,225,160, 32, 0,224,144, 2, 0,
/* 0x0350 */ 224,161, 18, 1,224,129, 30, 34,225,160, 32, 0,224,144, 4, 0,
/* 0x0360 */ 224,161, 20, 1,224,129, 28, 34,225,160, 32, 0,224,144, 8, 0,
/* 0x0370 */ 224,161, 24, 1,224,129, 24, 34,224, 80, 15,140,224,193, 16,172,
/* 0x0380 */ 224,144, 0, 12,226,161, 0, 0,225,160,240, 14,227, 80, 0, 0,
/* 0x0390 */ 1, 47,255, 30,229,144, 48, 0,225, 83, 0, 1, 18,128, 0, 8,
/* 0x03a0 */ 26,255,255,251,229,128, 32, 4,225, 47,255, 30,229,159, 0, 0,
/* 0x03b0 */ 225, 47,255, 30,255,255,240, 0,229,144, 48, 0,225, 83, 0, 2,
/* 0x03c0 */ 229,144, 48, 4,229, 45,224, 4, 33,160,192, 3,225,160,224, 2,
/* 0x03d0 */ 33,160, 32, 2, 42, 0, 0, 3,227,160, 0,127,235,255,255,173,
/* 0x03e0 */ 229, 92, 48, 1,229, 65, 48, 1,226, 66, 32, 1,227,114, 0, 1,
/* 0x03f0 */ 226,140,192, 1,226,129, 16, 1, 26,255,255,248,229,144, 32, 4,
/* 0x0400 */ 229,144, 48, 0,224,130, 32, 14,224,110, 48, 3,229,128, 48, 0,
/* 0x0410 */ 229,128, 32, 4,228,157,240, 4,233, 45, 64,240,225,160, 80, 0,
/* 0x0420 */ 226, 77,208, 20,225,160, 64, 1,225,160,112, 2,225,160, 96, 3,
/* 0x0430 */ 234, 0, 0, 68,226,141, 16, 4,225,160, 0, 5,227,160, 32, 12,
/* 0x0440 */ 235,255,255,220,229,157,224, 4,227, 94, 0, 0,229,157, 16, 8,
/* 0x0450 */ 26, 0, 0, 6,229,159, 49, 0,225, 81, 0, 3, 26, 0, 0, 5,
/* 0x0460 */ 229,149, 48, 0,227, 83, 0, 0, 26, 0, 0, 2,234, 0, 0, 56,
/* 0x0470 */ 227, 81, 0, 0, 26, 0, 0, 1,227,160, 0,127,235,255,255,133,
/* 0x0480 */ 225, 81, 0, 14,138,255,255,251,229,148, 48, 0,225, 94, 0, 3,
/* 0x0490 */ 138,255,255,248,225, 81, 0, 14, 42, 0, 0, 33,229,221,192, 12,
/* 0x04a0 */ 229,149, 0, 4,229,148, 32, 4,226,141, 48, 16,229,141,224, 16,
/* 0x04b0 */ 229,141,192, 0,225,160,224, 15,225, 47,255, 23,227, 80, 0, 0,
/* 0x04c0 */ 26,255,255,236,229,157, 16, 16,229,157, 48, 4,225, 81, 0, 3,
/* 0x04d0 */ 26,255,255,232,229,221, 32, 13,227, 82, 0, 0, 19, 86, 0, 0,
/* 0x04e0 */ 10, 0, 0, 9,227, 81, 12, 2,138, 0, 0, 2,229,148, 48, 0,
/* 0x04f0 */ 225, 83, 0, 1, 26, 0, 0, 4,225,160, 48, 2,229,148, 0, 4,
/* 0x0500 */ 229,221, 32, 14,225,160,224, 15,225, 47,255, 22,229,157, 48, 8,
/* 0x0510 */ 232,149, 0, 6,224,130, 32, 3,224, 99, 16, 1,232,133, 0, 6,
/* 0x0520 */ 234, 0, 0, 3,225,160, 32, 1,225,160, 0, 5,229,148, 16, 4,
/* 0x0530 */ 235,255,255,160,229,157, 48, 4,232,148, 0, 6,224,130, 32, 3,
/* 0x0540 */ 224, 99, 16, 1,232,132, 0, 6,229,148, 48, 0,227, 83, 0, 0,
/* 0x0550 */ 26,255,255,183,226,141,208, 20,232,189,128,240, 33, 88, 80, 85,
/* 0x0560 */ 233, 45, 79,240,225,160,128, 1,229,145, 16, 28,226, 77,208, 52,
/* 0x0570 */ 226, 82,144, 0,229,141, 0, 12,229,141, 48, 8,224,136, 96, 1,
/* 0x0580 */ 10, 0, 0, 18,229,157, 32, 88,229,146, 0, 0,225,208, 49,176,
/* 0x0590 */ 226,128, 16, 52,227, 83, 0, 2, 21,145, 48, 40, 3,160, 48, 0,
/* 0x05a0 */ 16, 99, 0, 0, 5,145, 80, 8, 5,141, 48, 24,229,145, 48, 20,
/* 0x05b0 */ 17,160, 80, 0, 21,141, 0, 24,225,160, 16, 3,225,160, 0, 5,
/* 0x05c0 */ 224,131, 48, 5,229,141, 48, 20,235,255,255, 67,234, 0, 0, 41,
/* 0x05d0 */ 225,216, 49,176,225,216, 34,188,227, 83, 0, 3, 19,160,192, 16,
/* 0x05e0 */ 3,160,192, 0,226, 66, 0, 1,225,160, 16, 6,227,224, 64, 0,
/* 0x05f0 */ 225,160, 80, 9,234, 0, 0, 13,229,145, 48, 0,227, 83, 0, 1,
/* 0x0600 */ 26, 0, 0, 8,229,145, 48, 20,227, 83, 0, 0, 10, 0, 0, 5,
/* 0x0610 */ 229,145, 32, 8,224,131, 48, 2,225, 85, 0, 3, 49,160, 80, 3,
/* 0x0620 */ 225, 84, 0, 2, 33,160, 64, 2,226,129, 16, 32,226, 64, 0, 1,
/* 0x0630 */ 227, 80, 0, 0,170,255,255,239,227,196, 78,255,227,196, 64, 15,
/* 0x0640 */ 224,100, 80, 5,226,133, 94,255,226,133, 80, 15,227,197, 94,255,
/* 0x0650 */ 227,197, 80, 15,225,160, 0, 4,225,160, 16, 5,225,160, 48, 12,
/* 0x0660 */ 227,160, 32, 0,235,255,255, 43,224,100, 64, 0,224,133, 80, 0,
/* 0x0670 */ 229,141, 64, 24,229,141, 80, 20,229,157,192, 24,227,160, 48, 52,
/* 0x0680 */ 224, 12, 12,147,227,160, 0, 0,226,134, 80, 32,229,141,192, 36,
/* 0x0690 */ 229,141, 0, 28,234, 0, 0,173,227, 89, 0, 0, 10, 0, 0, 9,
/* 0x06a0 */ 229, 21, 48, 32,227, 83, 0, 6, 26, 0, 0, 6,229, 21, 32, 24,
/* 0x06b0 */ 229,157, 48, 24,229,157, 0, 8,224,131, 32, 2,227,160, 16, 3,
/* 0x06c0 */ 235,255,255, 49,234, 0, 0,157,229, 21, 48, 32,227, 83, 0, 1,
/* 0x06d0 */ 26, 0, 0,154,229, 21, 48, 12,227, 83, 0, 0, 10, 0, 0,151,
/* 0x06e0 */ 227, 89, 0, 0, 10, 0, 0, 18,229, 21, 48, 28,227, 83, 0, 0,
/* 0x06f0 */ 26, 0, 0, 15,229,152, 48, 28,229, 21, 32, 24,229,157,192, 24,
/* 0x0700 */ 224,130, 32, 3,224,140, 32, 2,227,160, 16, 3,229,157, 0, 8,
/* 0x0710 */ 235,255,255, 29,229,157, 0, 8,227,160, 16, 5,225,216, 34,188,
/* 0x0720 */ 235,255,255, 25,229,157, 0, 8,227,160, 16, 4,225,216, 34,186,
/* 0x0730 */ 235,255,255, 21,229, 21, 16, 8,229,159, 34,180,226, 1, 48, 7,
/* 0x0740 */ 225,160, 49, 3,225,160, 67, 50,229,157, 0, 24,229, 21, 48, 24,
/* 0x0750 */ 224,128, 48, 3,229,141, 48, 16,229,157,192, 16,229, 21, 48, 16,
/* 0x0760 */ 225,160, 42, 12,229, 21, 0, 12,225,160, 42, 34,227, 89, 0, 0,
/* 0x0770 */ 229,141, 48, 44,229,141,192, 48,224,131,160, 2,226, 4,176, 7,
/* 0x0780 */ 229,141, 0, 40,224, 98, 96, 12, 10, 0, 0, 16,227, 17, 0, 1,
/* 0x0790 */ 3,160, 32, 3, 19,160, 32, 7,225,160, 0, 6,225,160, 16, 10,
/* 0x07a0 */ 227,160, 48, 16,235,255,254,219,225, 86, 0, 0, 26, 0, 0, 82,
/* 0x07b0 */ 229,157, 32, 92,226, 20, 48, 4, 17,160, 48, 2,225,160, 0, 9,
/* 0x07c0 */ 226,141, 16, 44,229,157, 32, 12,235,255,255, 18,234, 0, 0, 11,
/* 0x07d0 */ 229, 21,192, 28,224, 98,192, 12,229,141,192, 4,229,157,192, 12,
/* 0x07e0 */ 225,160, 0, 6,225,160, 16, 10,225,160, 32, 11,227,160, 48, 18,
/* 0x07f0 */ 229,141,192, 0,235,255,254,191,225, 86, 0, 0, 26, 0, 0, 62,
/* 0x0800 */ 226,106, 48, 0,225,160,122, 3,227, 27, 0, 2,225,160,122, 39,
/* 0x0810 */ 10, 0, 0, 7,227, 87, 0, 0, 10, 0, 0, 5,224,134, 16, 10,
/* 0x0820 */ 225,160, 32, 7,227,160, 48, 0,226, 82, 32, 1,228,193, 48, 1,
/* 0x0830 */ 26,255,255,251,227, 89, 0, 0, 10, 0, 0, 49,235,255,254,179,
/* 0x0840 */ 229, 21, 48, 32,227, 83, 0, 1,229,141, 0, 32, 26, 0, 0, 36,
/* 0x0850 */ 229, 21, 48, 8,227, 19, 0, 1, 10, 0, 0, 33,229, 21, 32, 12,
/* 0x0860 */ 229, 21, 48, 16,225, 82, 0, 3,229, 21, 16, 24, 26, 0, 0, 74,
/* 0x0870 */ 224,130, 48, 1,229,157, 0, 24,226,131, 48, 3,224,128, 48, 3,
/* 0x0880 */ 227,195, 64, 3,226,100, 48, 0,225,160, 58, 3,225,160, 58, 35,
/* 0x0890 */ 227, 83, 0, 7,154, 0, 0, 64,234, 0, 0, 10,227,160,224, 0,
/* 0x08a0 */ 227,160, 32, 7,227,224,192, 0,225,160, 0, 14,227,160, 26, 1,
/* 0x08b0 */ 227,160, 48, 34,232,141, 80, 0,235,255,254,142,226, 80, 32, 0,
/* 0x08c0 */ 26, 0, 0, 60,234, 0, 0, 6,229,157, 32, 32,229,159, 49, 36,
/* 0x08d0 */ 232,132, 0, 12,225,160, 0, 4,226,132, 16, 8,235,255,254,130,
/* 0x08e0 */ 234, 0, 0, 62,225,160, 0, 6,225,160, 16, 10,225,160, 32, 11,
/* 0x08f0 */ 235,255,254,123,227, 80, 0, 0, 10, 0, 0, 1,227,160, 0,127,
/* 0x0900 */ 235,255,254,100,229,157,192, 16,229,157, 0, 40,224,138, 48, 7,
/* 0x0910 */ 224,140, 16, 0,224,134, 64, 3,225, 84, 0, 1, 42, 0, 0, 7,
/* 0x0920 */ 224,100, 16, 1,225,160, 32, 11,225,160, 0, 4,227,160, 48, 16,
/* 0x0930 */ 235,255,254,120,225, 84, 0, 0, 10, 0, 0, 0,234,255,255,254,
/* 0x0940 */ 229,157, 32, 28,226,130, 32, 1,229,141, 32, 28,226,133, 80, 32,
/* 0x0950 */ 225,216, 50,188,229,157,192, 28,225, 92, 0, 3,186,255,255, 77,
/* 0x0960 */ 227, 89, 0, 0, 10, 0, 0, 3,225,216, 49,176,227, 83, 0, 3,
/* 0x0970 */ 21,157, 0, 20, 27,255,254, 84,229,157, 0, 88,227, 80, 0, 0,
/* 0x0980 */ 21,157, 32, 24, 21,128, 32, 0,229,157, 48, 24,229,152, 0, 24,
/* 0x0990 */ 224,131, 0, 0,226,141,208, 52,232,189,143,240,229, 21, 48, 28,
/* 0x09a0 */ 227, 83, 0, 0, 5,157,192, 36, 0,129, 48, 12, 2,131, 64, 8,
/* 0x09b0 */ 10,255,255,196,234,255,255,184,225,160, 64, 2,229,159, 48, 52,
/* 0x09c0 */ 229,157, 32, 32,226,132, 16, 8,232,132, 0, 12,235,255,254, 70,
/* 0x09d0 */ 225,160, 0, 4,227,160, 16, 8,227,160, 32, 5,235,255,254, 64,
/* 0x09e0 */ 225,160, 32, 4,229,157, 0, 8,227,160, 16, 0,235,255,254,102,
/* 0x09f0 */ 234,255,255,187,115, 81, 98, 64,225,160,240, 14,233, 45, 71,240,
/* 0x0a00 */ 226, 77,208, 12,226,141, 96, 52,225,160,144, 0,225,160,112, 1,
/* 0x0a10 */ 225,160,128, 3,225,160, 0, 6,226,141, 16, 44,227,160, 48, 0,
/* 0x0a20 */ 229,157,160, 48,225,160, 80, 2,229,157, 64, 52,235,255,254,121,
/* 0x0a30 */ 229,157, 48, 60,226,141,224, 12,229,157,192, 56,229, 46, 48, 4,
/* 0x0a40 */ 224,100,192, 12,225,160, 32, 6,225,160, 16, 10,225,160, 48, 9,
/* 0x0a50 */ 225,160, 0, 5,229,141,192, 56,229,141,224, 0,229,141,112, 52,
/* 0x0a60 */ 229,141,128, 4,235,255,254,189,225,160, 64, 0,227,160, 16, 9,
/* 0x0a70 */ 225,160, 0, 9,225,160, 32, 4,235,255,254, 67,225,218, 2,188,
/* 0x0a80 */ 226,138, 32, 52,227,160, 16, 0,234, 0, 0, 35,229,146, 48, 0,
/* 0x0a90 */ 227, 83, 0, 3, 26, 0, 0, 30,229,146, 48, 8,229,157, 0, 8,
/* 0x0aa0 */ 227,160, 16, 0,224,131, 0, 0,225,160, 32, 1,235,255,253,254,
/* 0x0ab0 */ 226, 80, 80, 0,186, 0, 0, 4,225,160, 16, 10,227,160, 44, 2,
/* 0x0ac0 */ 235,255,253,245,227, 80, 12, 2, 10, 0, 0, 1,227,160, 0,127,
/* 0x0ad0 */ 235,255,253,240,227,160,224, 0,225,160, 32, 14,226,141,192, 8,
/* 0x0ae0 */ 225,160, 16, 10,225,160, 48, 9,225,160, 0, 5,232,141, 80, 0,
/* 0x0af0 */ 235,255,254,154,227,160, 16, 7,225,160, 64, 0,229,157, 32, 8,
/* 0x0b00 */ 225,160, 0, 9,235,255,254, 32,225,160, 0, 5,235,255,253,232,
/* 0x0b10 */ 234, 0, 0, 3,226,130, 32, 32,226,129, 16, 1,225, 81, 0, 0,
/* 0x0b20 */ 186,255,255,217,225,160, 0, 4,226,141,208, 12,232,189,135,240
/* 0x02e0 */ 225,160,240, 14,229,159,192, 16,224, 12,192, 0,224, 64, 0, 12,
/* 0x02f0 */ 224,129, 16, 12,239,144, 0,125,225,160,240, 14, 0, 0, 15,255,
/* 0x0300 */ 227,160, 32, 0,239,159, 0, 2,225,160,240, 14,233, 45, 64, 48,
/* 0x0310 */ 229,157, 80, 16,229,157, 64, 12,225,160, 86, 37,239,144, 0,192,
/* 0x0320 */ 232,189,128, 48,229, 31, 0, 80,225,160,240, 14,233, 45, 64, 48,
/* 0x0330 */ 229, 31, 66,184,227,160, 80, 0,225,131, 48, 4,227,224, 64, 0,
/* 0x0340 */ 234,255,255,245,225,160,192, 0,224, 65, 16, 1,225,160, 32, 0,
/* 0x0350 */ 224,144, 1,128,224,161, 17,129,224,129, 30,162,225,160, 32, 0,
/* 0x0360 */ 224,144, 2, 0,224,161, 18, 1,224,129, 30, 34,225,160, 32, 0,
/* 0x0370 */ 224,144, 4, 0,224,161, 20, 1,224,129, 28, 34,225,160, 32, 0,
/* 0x0380 */ 224,144, 8, 0,224,161, 24, 1,224,129, 24, 34,224, 80, 15,140,
/* 0x0390 */ 224,193, 16,172,224,144, 0, 12,226,161, 0, 0,225,160,240, 14,
/* 0x03a0 */ 227, 80, 0, 0, 1, 47,255, 30,229,144, 48, 0,225, 83, 0, 1,
/* 0x03b0 */ 18,128, 0, 8, 26,255,255,251,229,128, 32, 4,225, 47,255, 30,
/* 0x03c0 */ 229,159, 0, 0,225, 47,255, 30,255,255,240, 0,229,144, 48, 0,
/* 0x03d0 */ 225, 83, 0, 2,229,144, 48, 4,229, 45,224, 4, 33,160,192, 3,
/* 0x03e0 */ 225,160,224, 2, 33,160, 32, 2, 42, 0, 0, 3,227,160, 0,127,
/* 0x03f0 */ 235,255,255,168,229, 92, 48, 1,229, 65, 48, 1,226, 66, 32, 1,
/* 0x0400 */ 227,114, 0, 1,226,140,192, 1,226,129, 16, 1, 26,255,255,248,
/* 0x0410 */ 229,144, 32, 4,229,144, 48, 0,224,130, 32, 14,224,110, 48, 3,
/* 0x0420 */ 229,128, 48, 0,229,128, 32, 4,228,157,240, 4,233, 45, 64,240,
/* 0x0430 */ 225,160, 80, 0,226, 77,208, 20,225,160, 64, 1,225,160,112, 2,
/* 0x0440 */ 225,160, 96, 3,234, 0, 0, 68,226,141, 16, 4,225,160, 0, 5,
/* 0x0450 */ 227,160, 32, 12,235,255,255,220,229,157,224, 4,227, 94, 0, 0,
/* 0x0460 */ 229,157, 16, 8, 26, 0, 0, 6,229,159, 49, 0,225, 81, 0, 3,
/* 0x0470 */ 26, 0, 0, 5,229,149, 48, 0,227, 83, 0, 0, 26, 0, 0, 2,
/* 0x0480 */ 234, 0, 0, 56,227, 81, 0, 0, 26, 0, 0, 1,227,160, 0,127,
/* 0x0490 */ 235,255,255,128,225, 81, 0, 14,138,255,255,251,229,148, 48, 0,
/* 0x04a0 */ 225, 94, 0, 3,138,255,255,248,225, 81, 0, 14, 42, 0, 0, 33,
/* 0x04b0 */ 229,221,192, 12,229,149, 0, 4,229,148, 32, 4,226,141, 48, 16,
/* 0x04c0 */ 229,141,224, 16,229,141,192, 0,225,160,224, 15,225, 47,255, 23,
/* 0x04d0 */ 227, 80, 0, 0, 26,255,255,236,229,157, 16, 16,229,157, 48, 4,
/* 0x04e0 */ 225, 81, 0, 3, 26,255,255,232,229,221, 32, 13,227, 82, 0, 0,
/* 0x04f0 */ 19, 86, 0, 0, 10, 0, 0, 9,227, 81, 12, 2,138, 0, 0, 2,
/* 0x0500 */ 229,148, 48, 0,225, 83, 0, 1, 26, 0, 0, 4,225,160, 48, 2,
/* 0x0510 */ 229,148, 0, 4,229,221, 32, 14,225,160,224, 15,225, 47,255, 22,
/* 0x0520 */ 229,157, 48, 8,232,149, 0, 6,224,130, 32, 3,224, 99, 16, 1,
/* 0x0530 */ 232,133, 0, 6,234, 0, 0, 3,225,160, 32, 1,225,160, 0, 5,
/* 0x0540 */ 229,148, 16, 4,235,255,255,160,229,157, 48, 4,232,148, 0, 6,
/* 0x0550 */ 224,130, 32, 3,224, 99, 16, 1,232,132, 0, 6,229,148, 48, 0,
/* 0x0560 */ 227, 83, 0, 0, 26,255,255,183,226,141,208, 20,232,189,128,240,
/* 0x0570 */ 33, 88, 80, 85,233, 45, 79,240,225,160,128, 1,229,145, 16, 28,
/* 0x0580 */ 226, 77,208, 52,226, 82,144, 0,229,141, 0, 12,229,141, 48, 8,
/* 0x0590 */ 224,136, 96, 1, 10, 0, 0, 18,229,157, 32, 88,229,146, 0, 0,
/* 0x05a0 */ 225,208, 49,176,226,128, 16, 52,227, 83, 0, 2, 21,145, 48, 40,
/* 0x05b0 */ 3,160, 48, 0, 16, 99, 0, 0, 5,145, 80, 8, 5,141, 48, 24,
/* 0x05c0 */ 229,145, 48, 20, 17,160, 80, 0, 21,141, 0, 24,225,160, 16, 3,
/* 0x05d0 */ 225,160, 0, 5,224,131, 48, 5,229,141, 48, 20,235,255,255, 62,
/* 0x05e0 */ 234, 0, 0, 41,225,216, 49,176,225,216, 34,188,227, 83, 0, 3,
/* 0x05f0 */ 19,160,192, 16, 3,160,192, 0,226, 66, 0, 1,225,160, 16, 6,
/* 0x0600 */ 227,224, 64, 0,225,160, 80, 9,234, 0, 0, 13,229,145, 48, 0,
/* 0x0610 */ 227, 83, 0, 1, 26, 0, 0, 8,229,145, 48, 20,227, 83, 0, 0,
/* 0x0620 */ 10, 0, 0, 5,229,145, 32, 8,224,131, 48, 2,225, 85, 0, 3,
/* 0x0630 */ 49,160, 80, 3,225, 84, 0, 2, 33,160, 64, 2,226,129, 16, 32,
/* 0x0640 */ 226, 64, 0, 1,227, 80, 0, 0,170,255,255,239,227,196, 78,255,
/* 0x0650 */ 227,196, 64, 15,224,100, 80, 5,226,133, 94,255,226,133, 80, 15,
/* 0x0660 */ 227,197, 94,255,227,197, 80, 15,225,160, 0, 4,225,160, 16, 5,
/* 0x0670 */ 225,160, 48, 12,227,160, 32, 0,235,255,255, 43,224,100, 64, 0,
/* 0x0680 */ 224,133, 80, 0,229,141, 64, 24,229,141, 80, 20,229,157,192, 24,
/* 0x0690 */ 227,160, 48, 52,224, 12, 12,147,227,160, 0, 0,226,134, 80, 32,
/* 0x06a0 */ 229,141,192, 36,229,141, 0, 28,234, 0, 0,173,227, 89, 0, 0,
/* 0x06b0 */ 10, 0, 0, 9,229, 21, 48, 32,227, 83, 0, 6, 26, 0, 0, 6,
/* 0x06c0 */ 229, 21, 32, 24,229,157, 48, 24,229,157, 0, 8,224,131, 32, 2,
/* 0x06d0 */ 227,160, 16, 3,235,255,255, 49,234, 0, 0,157,229, 21, 48, 32,
/* 0x06e0 */ 227, 83, 0, 1, 26, 0, 0,154,229, 21, 48, 12,227, 83, 0, 0,
/* 0x06f0 */ 10, 0, 0,151,227, 89, 0, 0, 10, 0, 0, 18,229, 21, 48, 28,
/* 0x0700 */ 227, 83, 0, 0, 26, 0, 0, 15,229,152, 48, 28,229, 21, 32, 24,
/* 0x0710 */ 229,157,192, 24,224,130, 32, 3,224,140, 32, 2,227,160, 16, 3,
/* 0x0720 */ 229,157, 0, 8,235,255,255, 29,229,157, 0, 8,227,160, 16, 5,
/* 0x0730 */ 225,216, 34,188,235,255,255, 25,229,157, 0, 8,227,160, 16, 4,
/* 0x0740 */ 225,216, 34,186,235,255,255, 21,229, 21, 16, 8,229,159, 34,180,
/* 0x0750 */ 226, 1, 48, 7,225,160, 49, 3,225,160, 67, 50,229,157, 0, 24,
/* 0x0760 */ 229, 21, 48, 24,224,128, 48, 3,229,141, 48, 16,229,157,192, 16,
/* 0x0770 */ 229, 21, 48, 16,225,160, 42, 12,229, 21, 0, 12,225,160, 42, 34,
/* 0x0780 */ 227, 89, 0, 0,229,141, 48, 44,229,141,192, 48,224,131,160, 2,
/* 0x0790 */ 226, 4,176, 7,229,141, 0, 40,224, 98, 96, 12, 10, 0, 0, 16,
/* 0x07a0 */ 227, 17, 0, 1, 3,160, 32, 3, 19,160, 32, 7,225,160, 0, 6,
/* 0x07b0 */ 225,160, 16, 10,227,160, 48, 16,235,255,254,219,225, 86, 0, 0,
/* 0x07c0 */ 26, 0, 0, 82,229,157, 32, 92,226, 20, 48, 4, 17,160, 48, 2,
/* 0x07d0 */ 225,160, 0, 9,226,141, 16, 44,229,157, 32, 12,235,255,255, 18,
/* 0x07e0 */ 234, 0, 0, 11,229, 21,192, 28,224, 98,192, 12,229,141,192, 4,
/* 0x07f0 */ 229,157,192, 12,225,160, 0, 6,225,160, 16, 10,225,160, 32, 11,
/* 0x0800 */ 227,160, 48, 18,229,141,192, 0,235,255,254,191,225, 86, 0, 0,
/* 0x0810 */ 26, 0, 0, 62,226,106, 48, 0,225,160,122, 3,227, 27, 0, 2,
/* 0x0820 */ 225,160,122, 39, 10, 0, 0, 7,227, 87, 0, 0, 10, 0, 0, 5,
/* 0x0830 */ 224,134, 16, 10,225,160, 32, 7,227,160, 48, 0,226, 82, 32, 1,
/* 0x0840 */ 228,193, 48, 1, 26,255,255,251,227, 89, 0, 0, 10, 0, 0, 49,
/* 0x0850 */ 235,255,254,179,229, 21, 48, 32,227, 83, 0, 1,229,141, 0, 32,
/* 0x0860 */ 26, 0, 0, 36,229, 21, 48, 8,227, 19, 0, 1, 10, 0, 0, 33,
/* 0x0870 */ 229, 21, 32, 12,229, 21, 48, 16,225, 82, 0, 3,229, 21, 16, 24,
/* 0x0880 */ 26, 0, 0, 74,224,130, 48, 1,229,157, 0, 24,226,131, 48, 3,
/* 0x0890 */ 224,128, 48, 3,227,195, 64, 3,226,100, 48, 0,225,160, 58, 3,
/* 0x08a0 */ 225,160, 58, 35,227, 83, 0, 7,154, 0, 0, 64,234, 0, 0, 10,
/* 0x08b0 */ 227,160,224, 0,227,160, 32, 7,227,224,192, 0,225,160, 0, 14,
/* 0x08c0 */ 227,160, 26, 1,227,160, 48, 34,232,141, 80, 0,235,255,254,142,
/* 0x08d0 */ 226, 80, 32, 0, 26, 0, 0, 60,234, 0, 0, 6,229,157, 32, 32,
/* 0x08e0 */ 229,159, 49, 36,232,132, 0, 12,225,160, 0, 4,226,132, 16, 8,
/* 0x08f0 */ 235,255,254,130,234, 0, 0, 62,225,160, 0, 6,225,160, 16, 10,
/* 0x0900 */ 225,160, 32, 11,235,255,254,118,227, 80, 0, 0, 10, 0, 0, 1,
/* 0x0910 */ 227,160, 0,127,235,255,254, 95,229,157,192, 16,229,157, 0, 40,
/* 0x0920 */ 224,138, 48, 7,224,140, 16, 0,224,134, 64, 3,225, 84, 0, 1,
/* 0x0930 */ 42, 0, 0, 7,224,100, 16, 1,225,160, 32, 11,225,160, 0, 4,
/* 0x0940 */ 227,160, 48, 16,235,255,254,120,225, 84, 0, 0, 10, 0, 0, 0,
/* 0x0950 */ 234,255,255,254,229,157, 32, 28,226,130, 32, 1,229,141, 32, 28,
/* 0x0960 */ 226,133, 80, 32,225,216, 50,188,229,157,192, 28,225, 92, 0, 3,
/* 0x0970 */ 186,255,255, 77,227, 89, 0, 0, 10, 0, 0, 3,225,216, 49,176,
/* 0x0980 */ 227, 83, 0, 3, 21,157, 0, 20, 27,255,254, 79,229,157, 0, 88,
/* 0x0990 */ 227, 80, 0, 0, 21,157, 32, 24, 21,128, 32, 0,229,157, 48, 24,
/* 0x09a0 */ 229,152, 0, 24,224,131, 0, 0,226,141,208, 52,232,189,143,240,
/* 0x09b0 */ 229, 21, 48, 28,227, 83, 0, 0, 5,157,192, 36, 0,129, 48, 12,
/* 0x09c0 */ 2,131, 64, 8, 10,255,255,196,234,255,255,184,225,160, 64, 2,
/* 0x09d0 */ 229,159, 48, 52,229,157, 32, 32,226,132, 16, 8,232,132, 0, 12,
/* 0x09e0 */ 235,255,254, 70,225,160, 0, 4,227,160, 16, 8,227,160, 32, 5,
/* 0x09f0 */ 235,255,254, 59,225,160, 32, 4,229,157, 0, 8,227,160, 16, 0,
/* 0x0a00 */ 235,255,254,102,234,255,255,187,115, 81, 98, 64,225,160,240, 14,
/* 0x0a10 */ 233, 45, 71,240,226, 77,208, 12,226,141, 96, 52,225,160,144, 0,
/* 0x0a20 */ 225,160,112, 1,225,160,128, 3,225,160, 0, 6,226,141, 16, 44,
/* 0x0a30 */ 227,160, 48, 0,229,157,160, 48,225,160, 80, 2,229,157, 64, 52,
/* 0x0a40 */ 235,255,254,121,229,157, 48, 60,226,141,224, 12,229,157,192, 56,
/* 0x0a50 */ 229, 46, 48, 4,224,100,192, 12,225,160, 32, 6,225,160, 16, 10,
/* 0x0a60 */ 225,160, 48, 9,225,160, 0, 5,229,141,192, 56,229,141,224, 0,
/* 0x0a70 */ 229,141,112, 52,229,141,128, 4,235,255,254,189,225,160, 64, 0,
/* 0x0a80 */ 227,160, 16, 9,225,160, 0, 9,225,160, 32, 4,235,255,254, 67,
/* 0x0a90 */ 225,218, 2,188,226,138, 32, 52,227,160, 16, 0,234, 0, 0, 35,
/* 0x0aa0 */ 229,146, 48, 0,227, 83, 0, 3, 26, 0, 0, 30,229,146, 48, 8,
/* 0x0ab0 */ 229,157, 0, 8,227,160, 16, 0,224,131, 0, 0,225,160, 32, 1,
/* 0x0ac0 */ 235,255,253,249,226, 80, 80, 0,186, 0, 0, 4,225,160, 16, 10,
/* 0x0ad0 */ 227,160, 44, 2,235,255,253,240,227, 80, 12, 2, 10, 0, 0, 1,
/* 0x0ae0 */ 227,160, 0,127,235,255,253,235,227,160,224, 0,225,160, 32, 14,
/* 0x0af0 */ 226,141,192, 8,225,160, 16, 10,225,160, 48, 9,225,160, 0, 5,
/* 0x0b00 */ 232,141, 80, 0,235,255,254,154,227,160, 16, 7,225,160, 64, 0,
/* 0x0b10 */ 229,157, 32, 8,225,160, 0, 9,235,255,254, 32,225,160, 0, 5,
/* 0x0b20 */ 235,255,253,227,234, 0, 0, 3,226,130, 32, 32,226,129, 16, 1,
/* 0x0b30 */ 225, 81, 0, 0,186,255,255,217,225,160, 0, 4,226,141,208, 12,
/* 0x0b40 */ 232,189,135,240
};