Revamp powerpc{,64le,64}.

Fix 64-bit stack frame (8*8 bytes for spilling a0-a7).  Avoid using r2 (t0).
Prepare for -pie executables.  Prepare for unified strategy in stubs.

	modified:   p_lx_elf.cpp
	modified:   stub/src/amd64-linux.elf-main.c
	modified:   stub/src/arch/powerpc/32/bxx.S
	modified:   stub/src/arch/powerpc/32/lzma_d.S
	modified:   stub/src/arch/powerpc/32/nrv2b_d.S
	modified:   stub/src/arch/powerpc/32/nrv2d_d.S
	modified:   stub/src/arch/powerpc/32/nrv2e_d.S
	modified:   stub/src/arch/powerpc/32/ppc_regs.h
	new file:   stub/src/arch/powerpc/64/Makefile
	new file:   stub/src/arch/powerpc/64/Makefile.extra
	new file:   stub/src/arch/powerpc/64/lzma_d.S
	new file:   stub/src/arch/powerpc/64/lzma_d_cf.S
	new file:   stub/src/arch/powerpc/64/lzma_d_cs.S
	modified:   stub/src/arch/powerpc/64le/bxx.S
	copied:     stub/src/arch/powerpc/64le/lzma_d.S -> stub/src/arch/powerpc/64le/lzma_d-common.S
	modified:   stub/src/arch/powerpc/64le/lzma_d.S
	modified:   stub/src/arch/powerpc/64le/lzma_d_cs.S
	modified:   stub/src/arch/powerpc/64le/nrv2b_d.S
	modified:   stub/src/arch/powerpc/64le/nrv2d_d.S
	modified:   stub/src/arch/powerpc/64le/nrv2e_d.S
	modified:   stub/src/arch/powerpc/64le/ppc_regs.h
	modified:   stub/src/i386-darwin.macho-entry.S
	modified:   stub/src/powerpc-darwin.dylib-entry.S
	modified:   stub/src/powerpc-darwin.macho-entry.S
	modified:   stub/src/powerpc-darwin.macho-fold.S
	modified:   stub/src/powerpc-linux.elf-entry.S
	modified:   stub/src/powerpc-linux.elf-fold.S
	modified:   stub/src/powerpc-linux.elf-main.c
	modified:   stub/src/powerpc64-darwin.dylib-entry.S
	modified:   stub/src/powerpc64-darwin.macho-entry.S
	modified:   stub/src/powerpc64-darwin.macho-fold.S
	modified:   stub/src/powerpc64-darwin.macho-main.c
	modified:   stub/src/powerpc64-linux.elf-main.c
	modified:   stub/src/powerpc64-savegpr0.S
	modified:   stub/src/powerpc64le-darwin.dylib-entry.S
	modified:   stub/src/powerpc64le-darwin.macho-entry.S
	modified:   stub/src/powerpc64le-darwin.macho-fold.S
	modified:   stub/src/powerpc64le-linux.elf-entry.S
	modified:   stub/src/powerpc64le-linux.elf-fold.S

	modified:   stub/i386-darwin.macho-entry.h
	modified:   stub/powerpc-darwin.dylib-entry.h
	modified:   stub/powerpc-darwin.macho-entry.h
	modified:   stub/powerpc-darwin.macho-fold.h
	modified:   stub/powerpc-linux.elf-entry.h
	modified:   stub/powerpc-linux.elf-fold.h
	modified:   stub/powerpc-linux.kernel.vmlinux.h
	modified:   stub/powerpc64-linux.elf-entry.h
	modified:   stub/powerpc64-linux.elf-fold.h
	modified:   stub/powerpc64le-darwin.dylib-entry.h
	modified:   stub/powerpc64le-darwin.macho-entry.h
	modified:   stub/powerpc64le-darwin.macho-fold.h
	modified:   stub/powerpc64le-linux.elf-entry.h
	modified:   stub/powerpc64le-linux.elf-fold.h
	modified:   stub/powerpc64le-linux.kernel.vmlinux.h
	modified:   stub/tmp/i386-darwin.macho-entry.bin.dump
	modified:   stub/tmp/powerpc-darwin.dylib-entry.bin.dump
	modified:   stub/tmp/powerpc-darwin.macho-entry.bin.dump
	modified:   stub/tmp/powerpc-linux.elf-entry.bin.dump
	modified:   stub/tmp/powerpc-linux.elf-fold.map
	modified:   stub/tmp/powerpc64le-darwin.dylib-entry.bin.dump
	modified:   stub/tmp/powerpc64le-darwin.macho-entry.bin.dump
	modified:   stub/tmp/powerpc64le-linux.elf-entry.bin.dump
	modified:   stub/tmp/powerpc64le-linux.elf-fold.map
	modified:   stub/tmp/powerpc64le-linux.kernel.vmlinux.bin.dump
This commit is contained in:
John Reiser
2017-04-19 19:25:05 -07:00
parent 4e05f087f9
commit c4a921283a
64 changed files with 8739 additions and 7226 deletions
+198 -198
View File
@@ -1,5 +1,5 @@
/* powerpc-darwin.dylib-entry.h
created from powerpc-darwin.dylib-entry.bin, 8993 (0x2321) bytes
created from powerpc-darwin.dylib-entry.bin, 8997 (0x2325) bytes
This file is part of the UPX executable compressor.
@@ -31,15 +31,15 @@
*/
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_SIZE 8993
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_ADLER32 0x8a436210
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_CRC32 0x3d13cd40
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_SIZE 8997
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_ADLER32 0x45c96881
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_CRC32 0xd5b27dad
unsigned char stub_powerpc_darwin_dylib_entry[8993] = {
unsigned char stub_powerpc_darwin_dylib_entry[8997] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0010 */ 0, 1, 0, 20, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0020 */ 0, 0, 26,120, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40,
/* 0x0030 */ 0, 0, 0, 0,124, 72, 2,166, 72, 0, 2, 1,124, 0, 41,236,
/* 0x0020 */ 0, 0, 26,124, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40,
/* 0x0030 */ 0, 0, 0, 0,124, 72, 2,166, 72, 0, 2, 5,124, 0, 41,236,
/* 0x0040 */ 125,168, 2,166, 40, 7, 0, 8, 64,130, 1, 60,144,166, 0, 0,
/* 0x0050 */ 124,132, 26, 20, 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255,
/* 0x0060 */ 56,165,255,255, 57, 64,255,255, 72, 0, 1, 12, 57, 32, 0, 1,
@@ -50,8 +50,8 @@ unsigned char stub_powerpc_darwin_dylib_entry[8993] = {
/* 0x00b0 */ 65,162,255,189,124,231, 57, 20,125, 41, 72, 21, 65,162,255,177,
/* 0x00c0 */ 124,231, 57, 20,124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161,
/* 0x00d0 */ 65,160,255,216, 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46,
/* 0x00e0 */ 65,128, 0, 32,140, 67, 0, 1,124,234, 16,249,125, 74, 14,112,
/* 0x00f0 */ 65,130, 0, 0,112, 66, 0, 1, 65,162, 0, 80, 72, 0, 0, 20,
/* 0x00e0 */ 65,128, 0, 32,141, 99, 0, 1,124,234, 88,249,125, 74, 14,112,
/* 0x00f0 */ 65,130, 0, 0,113,107, 0, 1, 65,162, 0, 80, 72, 0, 0, 20,
/* 0x0100 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,101, 65,161, 0, 60,
/* 0x0110 */ 57, 0, 0, 1,124, 9, 0, 64,125, 41, 74, 20, 65,162,255, 81,
/* 0x0120 */ 65,161, 0, 40,125, 41, 72, 21, 65,162,255, 69,125, 8, 65, 20,
@@ -70,8 +70,8 @@ unsigned char stub_powerpc_darwin_dylib_entry[8993] = {
/* 0x01f0 */ 56,231,255,255,125, 41, 72, 21, 65,162,255,189,124,231, 57, 21,
/* 0x0200 */ 125, 41, 72, 21, 65,162,255,177,124,231, 57, 21,124, 9, 0, 64,
/* 0x0210 */ 125, 41, 74, 20, 65,162,255,161, 65,160,255,216, 57, 0, 0, 0,
/* 0x0220 */ 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24,140, 67, 0, 1,
/* 0x0230 */ 124,234, 16,249,125, 74, 14,112, 65,130, 0, 0, 72, 0, 0, 12,
/* 0x0220 */ 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24,141, 99, 0, 1,
/* 0x0230 */ 124,234, 88,249,125, 74, 14,112, 65,130, 0, 0, 72, 0, 0, 12,
/* 0x0240 */ 125, 41, 72, 21, 65,162,255,113,125, 8, 65, 21,125, 41, 72, 21,
/* 0x0250 */ 65,162,255,101,125, 8, 65, 21, 64,130, 0, 40, 57, 0, 0, 1,
/* 0x0260 */ 125, 41, 72, 21, 65,162,255, 81,125, 8, 65, 21,124, 9, 0, 64,
@@ -87,22 +87,22 @@ unsigned char stub_powerpc_darwin_dylib_entry[8993] = {
/* 0x0300 */ 78,128, 0, 32,141, 3, 0, 1,157, 5, 0, 1, 75,255,255,213,
/* 0x0310 */ 65,129,255,244, 56,224, 0, 1, 75,255,255,201,124,231, 57, 21,
/* 0x0320 */ 75,255,255,193, 65,160,255,244, 52,231,255,253, 57, 0, 0, 0,
/* 0x0330 */ 65,128, 0, 20,140, 67, 0, 1, 84,231, 64, 46,124,234, 16,249,
/* 0x0330 */ 65,128, 0, 20,141, 99, 0, 1, 84,231, 64, 46,124,234, 88,249,
/* 0x0340 */ 65,130, 0, 0, 75,255,255,157,125, 8, 65, 21, 75,255,255,149,
/* 0x0350 */ 125, 8, 65, 21, 56,224, 0, 1, 64,130, 0, 28, 56,224, 0, 3,
/* 0x0360 */ 57, 0, 0, 1, 75,255,255,125,125, 8, 65, 21, 75,255,255,117,
/* 0x0370 */ 65,160,255,244, 32, 74,242,255,125, 8, 57, 20,124,234, 42, 20,
/* 0x0370 */ 65,160,255,244, 33,106,242,255,125, 8, 57, 20,124,234, 42, 20,
/* 0x0380 */ 125, 9, 3,166,141, 7, 0, 1,157, 5, 0, 1, 66, 0,255,248,
/* 0x0390 */ 56,224, 1, 0,124, 7, 41,236,124, 7, 26, 44, 75,255,255,112,
/* 0x03a0 */ 40, 7, 0, 14, 64,130, 0, 36,148, 33,255,232,124, 8, 2,166,
/* 0x03b0 */ 124,201, 51,120,129, 6, 0, 0,124,167, 43,120, 56,164,255,254,
/* 0x03c0 */ 56,131, 0, 2,144, 1, 0, 8,136, 3, 0, 0, 84, 11,232,254,
/* 0x03d0 */ 84, 2, 7,126, 56, 96,250, 0,124, 99, 88, 48, 56, 99,241,124,
/* 0x03d0 */ 84, 12, 7,126, 56, 96,250, 0,124, 99, 88, 48, 56, 99,241,124,
/* 0x03e0 */ 124, 38, 11,120,124, 33, 26, 20, 84, 33, 0, 52, 56, 0, 0, 0,
/* 0x03f0 */ 124,195, 51,120,144, 9, 0, 0,148, 3,255,252,124, 1, 24, 64,
/* 0x0400 */ 65,128,255,248,144,193, 0, 0,136, 4,255,255,144,225, 0, 8,
/* 0x0410 */ 56,193, 0, 16,145, 33, 0, 12, 56, 97, 0, 20, 84, 11,225, 62,
/* 0x0420 */ 84, 0, 7, 62,152, 67, 0, 2,153, 99, 0, 1,152, 3, 0, 0,
/* 0x0420 */ 84, 0, 7, 62,153,131, 0, 2,153, 99, 0, 1,152, 3, 0, 0,
/* 0x0430 */ 124, 8, 2,166,148, 33,255,160,189,193, 0, 24, 59, 32, 0, 0,
/* 0x0440 */ 125, 40, 3,166,124,206, 51,120,124,147, 35,120,144, 1, 0,100,
/* 0x0450 */ 124,245, 59,120,125, 20, 67,120,137, 67, 0, 2, 59, 3, 0, 4,
@@ -416,187 +416,187 @@ unsigned char stub_powerpc_darwin_dylib_entry[8993] = {
/* 0x1790 */ 125,168, 3,166,124,100, 24, 80,124,135, 40, 80, 56, 99, 0, 1,
/* 0x17a0 */ 56,132, 0, 1,144,134, 0, 0, 96,231, 0, 31,124, 0, 56,108,
/* 0x17b0 */ 124, 7, 40, 64,124, 0, 63,172, 56,231, 0, 32, 65,128,255,240,
/* 0x17c0 */ 124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32,148, 65,255,136,
/* 0x17d0 */ 188, 97, 0, 4,127,232, 2,166,130,191,255,252,131,191,255,244,
/* 0x17e0 */ 86,181, 1,186,127,189,170, 20, 58,181,255,252, 56, 96, 0, 0,
/* 0x17f0 */ 127,164,235,120, 56,160, 0, 3, 56,192, 16, 2, 56,224,255,255,
/* 0x1800 */ 57, 0, 0, 0, 57, 32, 0, 0, 56, 0, 0,197, 68, 0, 0, 2,
/* 0x1810 */ 56, 96,255,255,124,124, 27,120, 56,160, 1,136,124,169, 3,166,
/* 0x1820 */ 124,131,234, 20,124,117,250, 20,140, 3,255,255,156, 4,255,255,
/* 0x1830 */ 66, 0,255,248,124,165,232, 80,124,136, 3,166,124,169, 3,166,
/* 0x1840 */ 78,128, 0, 32,140, 3,255,255,156, 4,255,255, 66, 0,255,248,
/* 0x1850 */ 131,223,255,232,127,227,248, 80,127,228,250, 20,127,222, 26, 20,
/* 0x1860 */ 128, 95,255,236,127, 68, 18, 20,127, 99, 18, 20, 59,123,255,232,
/* 0x1870 */ 128, 90, 0, 4, 59, 90, 0, 12,127, 90, 18, 20,127, 88,211,120,
/* 0x1880 */ 127,121,219,120, 56,122, 0, 0, 72, 0, 0,189, 65,130, 0,104,
/* 0x1890 */ 127,123, 26, 20,124,119, 27,120, 56,122, 0, 4, 72, 0, 0,169,
/* 0x18a0 */ 127, 90, 26, 20,124,118, 27,120, 59, 90, 0, 12,150,225,255,248,
/* 0x18b0 */ 127,232, 3,166, 56,120, 0, 12,126,196,179,120,127, 37,203,120,
/* 0x18c0 */ 124, 38, 11,120,136,248, 0, 8, 56, 33,255,232, 78,128, 0, 33,
/* 0x18d0 */ 56, 33, 0, 32,136,216, 0, 9, 40, 6, 0, 0, 65,130,255,160,
/* 0x18e0 */ 136,184, 0, 10,128,152, 0, 0,127, 35,203,120, 72, 0, 0,125,
/* 0x18f0 */ 75,255,255,140, 72, 0, 0, 29, 68, 0, 0, 2, 56, 96,255,255,
/* 0x1900 */ 184, 65, 0, 0, 56, 33, 0,120,124, 72, 3,166, 78,128, 4, 32,
/* 0x1910 */ 56, 64, 0, 6,124,104, 2,166, 56, 99, 0, 24,124, 73, 3,166,
/* 0x1920 */ 132, 67,255,252,148, 89,255,252, 66, 0,255,248,127, 40, 3,166,
/* 0x1930 */ 127,201, 3,166,127,131,227,120,127,164,235,120, 56, 0, 0, 73,
/* 0x1940 */ 78,128, 0, 32,136, 67, 0, 3,137, 99, 0, 2, 81, 98, 68, 46,
/* 0x1950 */ 137, 99, 0, 1, 81, 98,130, 30,137, 99, 0, 0, 81, 98,192, 14,
/* 0x1960 */ 124, 67, 19,121, 78,128, 0, 32, 40, 6, 0,208, 76,130, 0, 32,
/* 0x1970 */ 84,132,240,191, 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64,
/* 0x1980 */ 65,128, 0, 8,124, 4, 3,120, 56,165, 1, 32,124,103, 27,120,
/* 0x1990 */ 56, 99,255,252,124,137, 3,166, 72, 0, 0, 28, 84, 75, 2,186,
/* 0x19a0 */ 125, 99, 88, 80,125,107, 58, 20, 81, 98, 1,186,144, 67, 0, 0,
/* 0x19b0 */ 78, 64, 0, 32,132, 67, 0, 4, 84, 75, 85,190,124, 11, 40, 64,
/* 0x19c0 */ 65,162,255,220, 66, 0,255,240, 78,128, 0, 32, 75,255,254, 0,
/* 0x19d0 */ 102,105,108,101, 32,102,111,114,109, 97,116, 32,101,108,102, 51,
/* 0x19e0 */ 50, 45,112,111,119,101,114,112, 99, 10, 10, 83,101, 99,116,105,
/* 0x19f0 */ 111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,101, 32, 32, 32,
/* 0x1a00 */ 32, 32, 32, 32, 32, 32, 32, 83,105,122,101, 32, 32, 32, 32, 32,
/* 0x1a10 */ 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, 32, 76, 77, 65, 32, 32,
/* 0x1a20 */ 32, 32, 32, 32, 32, 70,105,108,101, 32,111,102,102, 32, 32, 65,
/* 0x1a30 */ 108,103,110, 32, 32, 70,108, 97,103,115, 10, 32, 32, 48, 32, 77,
/* 0x1a40 */ 65, 67, 79, 83, 48, 48, 48, 32, 32, 32, 32, 32, 32, 48, 48, 48,
/* 0x1a50 */ 48, 48, 48, 48, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1a60 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,
/* 0x1a70 */ 48, 51, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69,
/* 0x1a80 */ 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68,
/* 0x1a90 */ 79, 78, 76, 89, 10, 32, 32, 49, 32, 78, 82, 86, 95, 72, 69, 65,
/* 0x1aa0 */ 68, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1ab0 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,
/* 0x1ac0 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 51, 99, 32, 32, 50,
/* 0x1ad0 */ 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82,
/* 0x1ae0 */ 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 50, 32, 78, 82, 86, 50,
/* 0x1af0 */ 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49,
/* 0x1b00 */ 52, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48,
/* 0x1b10 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 51, 99,
/* 0x1b20 */ 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83,
/* 0x1b30 */ 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76,
/* 0x1b40 */ 89, 10, 32, 32, 51, 32, 78, 82, 86, 50, 68, 32, 32, 32, 32, 32,
/* 0x1b50 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, 50, 99, 32, 32, 48, 48,
/* 0x1b60 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1b70 */ 32, 32, 48, 48, 48, 48, 48, 49, 56, 52, 32, 32, 50, 42, 42, 48,
/* 0x1b80 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79,
/* 0x1b90 */ 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 52, 32,
/* 0x1ba0 */ 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48,
/* 0x1bb0 */ 48, 48, 48, 48,102, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1bc0 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1bd0 */ 48, 50, 98, 48, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84,
/* 0x1be0 */ 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65,
/* 0x1bf0 */ 68, 79, 78, 76, 89, 10, 32, 32, 53, 32, 76, 90, 77, 65, 95, 69,
/* 0x1c00 */ 76, 70, 48, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 57, 48,
/* 0x1c10 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1c20 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 51, 97, 48, 32, 32,
/* 0x1c30 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1c40 */ 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10,
/* 0x1c50 */ 32, 32, 54, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, 32, 32,
/* 0x1c60 */ 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, 32, 48, 48, 48, 48,
/* 0x1c70 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1c80 */ 48, 48, 48, 48, 48, 52, 51, 48, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1c90 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78,
/* 0x1ca0 */ 76, 89, 10, 32, 32, 55, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50,
/* 0x1cb0 */ 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, 32, 48,
/* 0x1cc0 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48,
/* 0x1cd0 */ 48, 32, 32, 48, 48, 48, 48, 48,100, 99, 99, 32, 32, 50, 42, 42,
/* 0x1ce0 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65,
/* 0x1cf0 */ 68, 79, 78, 76, 89, 10, 32, 32, 56, 32, 76, 90, 77, 65, 95, 68,
/* 0x1d00 */ 69, 67, 51, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 52,
/* 0x1d10 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1d20 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 54, 56, 32, 32,
/* 0x1d30 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1d40 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 57, 32, 78, 82, 86,
/* 0x1d50 */ 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48,
/* 0x1d60 */ 48, 49, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1d70 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 56,
/* 0x1d80 */ 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84,
/* 0x1d90 */ 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 49, 48, 32,
/* 0x1da0 */ 67, 70, 76, 85, 83, 72, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48,
/* 0x1db0 */ 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1dc0 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1dd0 */ 49, 55, 97, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84,
/* 0x1de0 */ 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32,
/* 0x1df0 */ 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, 89, 32, 32, 32, 32, 32,
/* 0x1e00 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,
/* 0x1e10 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1e20 */ 48, 48, 48, 49, 55, 99, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67,
/* 0x1e30 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76,
/* 0x1e40 */ 89, 10, 32, 49, 50, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32, 32,
/* 0x1e50 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 50, 48, 52, 32, 32, 48, 48,
/* 0x1e60 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1e70 */ 32, 32, 48, 48, 48, 48, 49, 55, 99, 99, 32, 32, 50, 42, 42, 48,
/* 0x1e80 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68,
/* 0x1e90 */ 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, 32, 84, 65, 66, 76,
/* 0x1ea0 */ 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1eb0 */ 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 9, 48,
/* 0x1ec0 */ 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67,
/* 0x1ed0 */ 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1ee0 */ 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 9, 48, 48, 48,
/* 0x1ef0 */ 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 48,
/* 0x1f00 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1f10 */ 69, 76, 70, 77, 65, 73, 78, 90, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x1f20 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48,
/* 0x1f30 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 77, 65, 67, 79,
/* 0x1f40 */ 83, 48, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 77, 65,
/* 0x1f50 */ 67, 79, 83, 48, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1f60 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68,
/* 0x1f70 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 72, 69,
/* 0x1f80 */ 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1f90 */ 32,100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48, 48, 48, 48, 48,
/* 0x1fa0 */ 48, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x1fb0 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 9,
/* 0x1fc0 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 68, 10, 48,
/* 0x1fd0 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1fe0 */ 78, 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78,
/* 0x1ff0 */ 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x2000 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48,
/* 0x2010 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 69,
/* 0x2020 */ 76, 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x2030 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48,
/* 0x2040 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68,
/* 0x2050 */ 69, 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x2060 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48,
/* 0x2070 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68,
/* 0x2080 */ 69, 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x2090 */ 32, 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72, 9, 48, 48, 48,
/* 0x20a0 */ 48, 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72, 10, 48, 48, 48,
/* 0x20b0 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76,
/* 0x20c0 */ 70, 77, 65, 73, 78, 89, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x20d0 */ 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x20e0 */ 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 77, 65, 67, 79, 83, 48,
/* 0x20f0 */ 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 95,115,116, 97,
/* 0x2100 */ 114,116, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82,
/* 0x2110 */ 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 77, 65, 67, 79,
/* 0x2120 */ 83, 48, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32,
/* 0x2130 */ 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x2140 */ 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 52,
/* 0x2150 */ 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 50, 52, 32, 32, 32, 32,
/* 0x2160 */ 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 43, 48,120, 48, 48,
/* 0x2170 */ 48, 48, 48, 50, 48, 48, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73,
/* 0x2180 */ 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91,
/* 0x2190 */ 78, 82, 86, 50, 69, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32,
/* 0x21a0 */ 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x21b0 */ 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98,
/* 0x21c0 */ 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32,
/* 0x21d0 */ 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69,
/* 0x21e0 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83,
/* 0x21f0 */ 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 68, 93, 58, 10, 79, 70,
/* 0x2200 */ 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32,
/* 0x2210 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48,
/* 0x2220 */ 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69,
/* 0x2230 */ 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65,
/* 0x2240 */ 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82,
/* 0x2250 */ 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50,
/* 0x2260 */ 66, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80,
/* 0x2270 */ 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86,
/* 0x2280 */ 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 57, 48, 32, 82, 95,
/* 0x2290 */ 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32,
/* 0x22a0 */ 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65,
/* 0x22b0 */ 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82,
/* 0x22c0 */ 32, 91, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 93, 58, 10, 79,
/* 0x22d0 */ 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32,
/* 0x22e0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10,
/* 0x22f0 */ 48, 48, 48, 48, 48, 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82,
/* 0x2300 */ 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95,
/* 0x2310 */ 68, 69, 67, 51, 48, 43, 48,120, 48, 48, 48, 48, 48, 48, 50, 52,
/* 0x2320 */ 10
/* 0x17c0 */ 124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32,124,128, 0, 8,
/* 0x17d0 */ 148, 65,255,136,188, 97, 0, 4,127,232, 2,166,130,191,255,252,
/* 0x17e0 */ 131,191,255,244, 86,181, 1,186,127,189,170, 20, 58,181,255,252,
/* 0x17f0 */ 56, 96, 0, 0,127,164,235,120, 56,160, 0, 3, 56,192, 16, 2,
/* 0x1800 */ 56,224,255,255, 57, 0, 0, 0, 57, 32, 0, 0, 56, 0, 0,197,
/* 0x1810 */ 68, 0, 0, 2, 56, 96,255,255,124,124, 27,120, 56,160, 1,136,
/* 0x1820 */ 124,169, 3,166,124,131,234, 20,124,117,250, 20,140, 3,255,255,
/* 0x1830 */ 156, 4,255,255, 66, 0,255,248,124,165,232, 80,124,136, 3,166,
/* 0x1840 */ 124,169, 3,166, 78,128, 0, 32,140, 3,255,255,156, 4,255,255,
/* 0x1850 */ 66, 0,255,248,131,223,255,232,127,227,248, 80,127,228,250, 20,
/* 0x1860 */ 127,222, 26, 20,129,159,255,236,127, 68, 98, 20,127, 99, 98, 20,
/* 0x1870 */ 59,123,255,232,129,154, 0, 4, 59, 90, 0, 12,127, 90, 98, 20,
/* 0x1880 */ 127, 88,211,120,127,121,219,120, 56,122, 0, 0, 72, 0, 0,189,
/* 0x1890 */ 65,130, 0,104,127,123, 26, 20,124,119, 27,120, 56,122, 0, 4,
/* 0x18a0 */ 72, 0, 0,169,127, 90, 26, 20,124,118, 27,120, 59, 90, 0, 12,
/* 0x18b0 */ 150,225,255,248,127,232, 3,166, 56,120, 0, 12,126,196,179,120,
/* 0x18c0 */ 127, 37,203,120,124, 38, 11,120,136,248, 0, 8, 56, 33,255,232,
/* 0x18d0 */ 78,128, 0, 33, 56, 33, 0, 32,136,216, 0, 9, 40, 6, 0, 0,
/* 0x18e0 */ 65,130,255,160,136,184, 0, 10,128,152, 0, 0,127, 35,203,120,
/* 0x18f0 */ 72, 0, 0,125, 75,255,255,140, 72, 0, 0, 29, 68, 0, 0, 2,
/* 0x1900 */ 56, 96,255,255,184, 65, 0, 4, 56, 33, 0,120,125,136, 3,166,
/* 0x1910 */ 78,128, 4, 32, 57,128, 0, 6,124,104, 2,166, 56, 99, 0, 24,
/* 0x1920 */ 125,137, 3,166,133,131,255,252,149,153,255,252, 66, 0,255,248,
/* 0x1930 */ 127, 40, 3,166,127,201, 3,166,127,131,227,120,127,164,235,120,
/* 0x1940 */ 56, 0, 0, 73, 78,128, 0, 32,137,131, 0, 3,137, 99, 0, 2,
/* 0x1950 */ 81,108, 68, 46,137, 99, 0, 1, 81,108,130, 30,137, 99, 0, 0,
/* 0x1960 */ 81,108,192, 14,125,131, 99,121, 78,128, 0, 32, 40, 6, 0,208,
/* 0x1970 */ 76,130, 0, 32, 84,132,240,191, 77,130, 0, 32, 60, 0, 0, 16,
/* 0x1980 */ 124, 4, 0, 64, 65,128, 0, 8,124, 4, 3,120, 56,165, 1, 32,
/* 0x1990 */ 124,103, 27,120, 56, 99,255,252,124,137, 3,166, 72, 0, 0, 28,
/* 0x19a0 */ 85, 96, 2,186,124, 3, 0, 80,124, 0, 58, 20, 80, 11, 1,186,
/* 0x19b0 */ 145, 99, 0, 0, 78, 64, 0, 32,133, 99, 0, 4, 85, 96, 85,190,
/* 0x19c0 */ 124, 0, 40, 64, 65,162,255,220, 66, 0,255,240, 78,128, 0, 32,
/* 0x19d0 */ 75,255,253,252,102,105,108,101, 32,102,111,114,109, 97,116, 32,
/* 0x19e0 */ 101,108,102, 51, 50, 45,112,111,119,101,114,112, 99, 10, 10, 83,
/* 0x19f0 */ 101, 99,116,105,111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,
/* 0x1a00 */ 101, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122,101, 32,
/* 0x1a10 */ 32, 32, 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, 32, 76,
/* 0x1a20 */ 77, 65, 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32,111,102,
/* 0x1a30 */ 102, 32, 32, 65,108,103,110, 32, 32, 70,108, 97,103,115, 10, 32,
/* 0x1a40 */ 32, 48, 32, 77, 65, 67, 79, 83, 48, 48, 48, 32, 32, 32, 32, 32,
/* 0x1a50 */ 32, 48, 48, 48, 48, 48, 48, 48, 56, 32, 32, 48, 48, 48, 48, 48,
/* 0x1a60 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1a70 */ 48, 48, 48, 48, 48, 51, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67,
/* 0x1a80 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32,
/* 0x1a90 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 49, 32, 78, 82, 86,
/* 0x1aa0 */ 95, 72, 69, 65, 68, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48,
/* 0x1ab0 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1ac0 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 51,
/* 0x1ad0 */ 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84,
/* 0x1ae0 */ 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 50, 32,
/* 0x1af0 */ 78, 82, 86, 50, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48,
/* 0x1b00 */ 48, 48, 48, 49, 52, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1b10 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1b20 */ 48, 48, 51, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84,
/* 0x1b30 */ 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65,
/* 0x1b40 */ 68, 79, 78, 76, 89, 10, 32, 32, 51, 32, 78, 82, 86, 50, 68, 32,
/* 0x1b50 */ 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, 50, 99,
/* 0x1b60 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1b70 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 49, 56, 52, 32, 32,
/* 0x1b80 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1b90 */ 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10,
/* 0x1ba0 */ 32, 32, 52, 32, 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, 32, 32,
/* 0x1bb0 */ 32, 32, 48, 48, 48, 48, 48, 48,102, 48, 32, 32, 48, 48, 48, 48,
/* 0x1bc0 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1bd0 */ 48, 48, 48, 48, 48, 50, 98, 48, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1be0 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44,
/* 0x1bf0 */ 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 53, 32, 76, 90,
/* 0x1c00 */ 77, 65, 95, 69, 76, 70, 48, 48, 32, 32, 32, 32, 48, 48, 48, 48,
/* 0x1c10 */ 48, 48, 57, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1c20 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 51,
/* 0x1c30 */ 97, 48, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78,
/* 0x1c40 */ 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79,
/* 0x1c50 */ 78, 76, 89, 10, 32, 32, 54, 32, 76, 90, 77, 65, 95, 68, 69, 67,
/* 0x1c60 */ 49, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, 32,
/* 0x1c70 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48,
/* 0x1c80 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 52, 51, 48, 32, 32, 50, 42,
/* 0x1c90 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69,
/* 0x1ca0 */ 65, 68, 79, 78, 76, 89, 10, 32, 32, 55, 32, 76, 90, 77, 65, 95,
/* 0x1cb0 */ 68, 69, 67, 50, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57,
/* 0x1cc0 */ 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48,
/* 0x1cd0 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,100, 99, 99, 32,
/* 0x1ce0 */ 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44,
/* 0x1cf0 */ 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 56, 32, 76, 90,
/* 0x1d00 */ 77, 65, 95, 68, 69, 67, 51, 48, 32, 32, 32, 32, 48, 48, 48, 48,
/* 0x1d10 */ 48, 48, 50, 52, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1d20 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55,
/* 0x1d30 */ 54, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78,
/* 0x1d40 */ 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 57,
/* 0x1d50 */ 32, 78, 82, 86, 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, 32, 48,
/* 0x1d60 */ 48, 48, 48, 48, 48, 49, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48,
/* 0x1d70 */ 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48,
/* 0x1d80 */ 48, 49, 55, 56, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78,
/* 0x1d90 */ 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10,
/* 0x1da0 */ 32, 49, 48, 32, 67, 70, 76, 85, 83, 72, 32, 32, 32, 32, 32, 32,
/* 0x1db0 */ 32, 32, 48, 48, 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48,
/* 0x1dc0 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1dd0 */ 48, 48, 48, 48, 49, 55, 97, 56, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1de0 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78,
/* 0x1df0 */ 76, 89, 10, 32, 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, 89, 32,
/* 0x1e00 */ 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1e10 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48,
/* 0x1e20 */ 48, 32, 32, 48, 48, 48, 48, 49, 55, 99, 99, 32, 32, 50, 42, 42,
/* 0x1e30 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65,
/* 0x1e40 */ 68, 79, 78, 76, 89, 10, 32, 49, 50, 32, 69, 76, 70, 77, 65, 73,
/* 0x1e50 */ 78, 90, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 50, 48, 56,
/* 0x1e60 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1e70 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 99, 99, 32, 32,
/* 0x1e80 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1e90 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, 32,
/* 0x1ea0 */ 84, 65, 66, 76, 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1eb0 */ 108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67,
/* 0x1ec0 */ 51, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65,
/* 0x1ed0 */ 95, 68, 69, 67, 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1ee0 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76,
/* 0x1ef0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, 65,
/* 0x1f00 */ 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1f10 */ 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 9, 48, 48, 48,
/* 0x1f20 */ 48, 48, 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48,
/* 0x1f30 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1f40 */ 77, 65, 67, 79, 83, 48, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x1f50 */ 48, 32, 77, 65, 67, 79, 83, 48, 48, 48, 10, 48, 48, 48, 48, 48,
/* 0x1f60 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95,
/* 0x1f70 */ 72, 69, 65, 68, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82,
/* 0x1f80 */ 86, 95, 72, 69, 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1f90 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48,
/* 0x1fa0 */ 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48,
/* 0x1fb0 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82,
/* 0x1fc0 */ 86, 50, 68, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86,
/* 0x1fd0 */ 50, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1fe0 */ 32,100, 32, 32, 78, 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48,
/* 0x1ff0 */ 48, 48, 32, 78, 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2000 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69,
/* 0x2010 */ 76, 70, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90,
/* 0x2020 */ 77, 65, 95, 69, 76, 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2030 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68,
/* 0x2040 */ 69, 67, 49, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90,
/* 0x2050 */ 77, 65, 95, 68, 69, 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2060 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68,
/* 0x2070 */ 69, 67, 50, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90,
/* 0x2080 */ 77, 65, 95, 68, 69, 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2090 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72,
/* 0x20a0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72,
/* 0x20b0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100,
/* 0x20c0 */ 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, 9, 48, 48, 48, 48, 48,
/* 0x20d0 */ 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48,
/* 0x20e0 */ 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 77, 65,
/* 0x20f0 */ 67, 79, 83, 48, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x2100 */ 95,115,116, 97,114,116, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73,
/* 0x2110 */ 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91,
/* 0x2120 */ 77, 65, 67, 79, 83, 48, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69,
/* 0x2130 */ 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x2140 */ 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48,
/* 0x2150 */ 48, 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 50, 52,
/* 0x2160 */ 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 43,
/* 0x2170 */ 48,120, 48, 48, 48, 48, 48, 50, 48, 52, 10, 10, 82, 69, 76, 79,
/* 0x2180 */ 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70,
/* 0x2190 */ 79, 82, 32, 91, 78, 82, 86, 50, 69, 93, 58, 10, 79, 70, 70, 83,
/* 0x21a0 */ 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32,
/* 0x21b0 */ 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48,
/* 0x21c0 */ 48, 48, 48, 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49,
/* 0x21d0 */ 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76,
/* 0x21e0 */ 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67,
/* 0x21f0 */ 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 68, 93,
/* 0x2200 */ 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32,
/* 0x2210 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76,
/* 0x2220 */ 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80, 80,
/* 0x2230 */ 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82,
/* 0x2240 */ 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73,
/* 0x2250 */ 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91,
/* 0x2260 */ 78, 82, 86, 50, 66, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32,
/* 0x2270 */ 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x2280 */ 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 57,
/* 0x2290 */ 48, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32,
/* 0x22a0 */ 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69,
/* 0x22b0 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83,
/* 0x22c0 */ 32, 70, 79, 82, 32, 91, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48,
/* 0x22d0 */ 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69,
/* 0x22e0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65,
/* 0x22f0 */ 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 52, 32, 82, 95, 80,
/* 0x2300 */ 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 76,
/* 0x2310 */ 90, 77, 65, 95, 68, 69, 67, 51, 48, 43, 48,120, 48, 48, 48, 48,
/* 0x2320 */ 48, 48, 50, 52, 10
};