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
+69 -6
View File
@@ -516,7 +516,7 @@ PackLinuxElf::addStubEntrySections(Filter const *)
if (hasLoaderSection("ELFMAINXu")) { if (hasLoaderSection("ELFMAINXu")) {
// brk() trouble if static // brk() trouble if static
all_pages |= (Elf32_Ehdr::EM_ARM==e_machine && 0x8000==load_va); all_pages |= (Elf32_Ehdr::EM_ARM==e_machine && 0x8000==load_va);
addLoader(/*(all_pages ? "LUNMP000" : "LUNMP001"),*/ "ELFMAINXu", NULL); addLoader("ELFMAINXu", NULL);
} }
//addLoader(getDecompressorSections(), NULL); //addLoader(getDecompressorSections(), NULL);
addLoader( addLoader(
@@ -533,7 +533,7 @@ PackLinuxElf::addStubEntrySections(Filter const *)
} }
addLoader("+40,ELFMAINZ", NULL); addLoader("+40,ELFMAINZ", NULL);
if (hasLoaderSection("ELFMAINZu")) { if (hasLoaderSection("ELFMAINZu")) {
addLoader(/*(all_pages ? "LUNMP000" : "LUNMP001"),*/ "ELFMAINZu", NULL); addLoader("ELFMAINZu", NULL);
} }
addLoader("FOLDEXEC", NULL); addLoader("FOLDEXEC", NULL);
} }
@@ -547,6 +547,54 @@ void PackLinuxElf::defineSymbols(Filter const *)
void PackLinuxElf32::defineSymbols(Filter const *ft) void PackLinuxElf32::defineSymbols(Filter const *ft)
{ {
PackLinuxElf::defineSymbols(ft); PackLinuxElf::defineSymbols(ft);
// We want to know if compressed data, plus stub, plus a couple pages,
// will fit below the uncompressed program in memory. But we don't
// know the final total compressed size yet, so use the uncompressed
// size (total over all PT_LOAD32) as an upper bound.
unsigned len = 0; // XXX: 4GB
upx_uint32_t lo_va_user = ~0u; // infinity
for (int j= e_phnum; --j>=0; ) {
if (PT_LOAD32 == get_te32(&phdri[j].p_type)) {
len += (unsigned)get_te32(&phdri[j].p_filesz);
upx_uint32_t const va = get_te32(&phdri[j].p_vaddr);
if (va < lo_va_user) {
lo_va_user = va;
}
}
}
lsize = /*getLoaderSize()*/ 64 * 1024; // XXX: upper bound; avoid circularity
upx_uint32_t lo_va_stub = get_te32(&elfout.phdr[0].p_vaddr);
upx_uint32_t adrm;
unsigned lenm;
unsigned lenu;
len += (7&-lsize) + lsize;
upx_uint32_t my_page_size = 4096u;
upx_uint32_t my_page_mask = -my_page_size;
is_big = (lo_va_user < (lo_va_stub + len + 2 * my_page_size));
if (is_pie || (is_big /*&& ehdri.ET_EXEC==get_te16(&ehdri.e_type)*/)) {
// .e_entry is set later by PackLinuxElf32::updateLoader
set_te32( &elfout.ehdr.e_entry,
get_te32(&elfout.ehdr.e_entry) + lo_va_user - lo_va_stub);
set_te32(&elfout.phdr[0].p_vaddr, lo_va_user);
set_te32(&elfout.phdr[0].p_paddr, lo_va_user);
lo_va_stub = lo_va_user;
adrm = getbrk(phdri, e_phnum) - lo_va_user;
lenm = my_page_size + len;
lenu = my_page_size + len;
}
else {
adrm = len;
lenm = my_page_size;
lenu = my_page_size + len;
}
adrm = my_page_mask & (~my_page_mask + adrm); // round up to page boundary
linker->defineSymbol("LENU", lenu); // len for unmap
linker->defineSymbol("LENM", lenm); // len for map
linker->defineSymbol("ADRM", adrm); // offset from &Elf32_Ehdr
//linker->dumpSymbols(); // debug
} }
void PackLinuxElf64::defineSymbols(Filter const *ft) void PackLinuxElf64::defineSymbols(Filter const *ft)
@@ -765,8 +813,9 @@ void PackLinuxElf32mipseb::updateLoader(OutputFile *fo)
void PackLinuxElf32::updateLoader(OutputFile * /*fo*/) void PackLinuxElf32::updateLoader(OutputFile * /*fo*/)
{ {
set_te32(&elfout.ehdr.e_entry, sz_pack2 + unsigned start = linker->getSymbolOffset("_start");
get_te32(&elfout.phdr[0].p_vaddr)); unsigned vbase = get_te32(&elfout.phdr[0].p_vaddr);
set_te32(&elfout.ehdr.e_entry, start + sz_pack2 + vbase);
} }
void PackLinuxElf64::updateLoader(OutputFile * /*fo*/) void PackLinuxElf64::updateLoader(OutputFile * /*fo*/)
@@ -959,8 +1008,7 @@ void PackLinuxElf32x86::addStubEntrySections(Filter const *ft)
if (Elf32_Ehdr::ET_DYN==get_te16(&ehdri.e_type)) { if (Elf32_Ehdr::ET_DYN==get_te16(&ehdri.e_type)) {
addLoader("LEXECDYN", NULL); addLoader("LEXECDYN", NULL);
} }
addLoader(/*((opt->o_unix.unmap_all_pages|is_big) ? "LUNMP000" : "LUNMP001"),*/ addLoader("LEXEC025", NULL);
"LEXEC025", NULL);
addLoader("FOLDEXEC", NULL); addLoader("FOLDEXEC", NULL);
} }
@@ -1080,6 +1128,21 @@ PackLinuxElf64::buildLinuxLoader(
if (r != UPX_E_OK || h.sz_cpr >= h.sz_unc) if (r != UPX_E_OK || h.sz_cpr >= h.sz_unc)
throwInternalError("loader compression failed"); throwInternalError("loader compression failed");
} }
#if 1 //{ debugging only
if (M_IS_LZMA(ph.method)) {
ucl_uint tmp_len = h.sz_unc; // LZMA uses this as EOF
unsigned char *tmp = New(unsigned char, tmp_len);
memset(tmp, 0, tmp_len);
int r = upx_decompress(sizeof(h) + cprLoader, h.sz_cpr, tmp, &tmp_len, h.b_method, NULL);
if (r == UPX_E_OUT_OF_MEMORY)
throwOutOfMemoryException();
printf("\n%d %d: %d %d %d\n", h.b_method, r, h.sz_cpr, h.sz_unc, tmp_len);
for (unsigned j=0; j < h.sz_unc; ++j) if (tmp[j]!=uncLoader[j]) {
printf("%d: %x %x\n", j, tmp[j], uncLoader[j]);
}
delete[] tmp;
}
#endif //}
unsigned const sz_cpr = h.sz_cpr; unsigned const sz_cpr = h.sz_cpr;
set_te32(&h.sz_cpr, h.sz_cpr); set_te32(&h.sz_cpr, h.sz_cpr);
set_te32(&h.sz_unc, h.sz_unc); set_te32(&h.sz_unc, h.sz_unc);
File diff suppressed because it is too large Load Diff
+198 -198
View File
@@ -1,5 +1,5 @@
/* powerpc-darwin.dylib-entry.h /* 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. 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_SIZE 8997
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_ADLER32 0x8a436210 #define STUB_POWERPC_DARWIN_DYLIB_ENTRY_ADLER32 0x45c96881
#define STUB_POWERPC_DARWIN_DYLIB_ENTRY_CRC32 0x3d13cd40 #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, /* 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, /* 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, /* 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, 1,124, 0, 41,236, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 0x00e0 */ 65,128, 0, 32,141, 99, 0, 1,124,234, 88,249,125, 74, 14,112,
/* 0x00f0 */ 65,130, 0, 0,112, 66, 0, 1, 65,162, 0, 80, 72, 0, 0, 20, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 0x0220 */ 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24,141, 99, 0, 1,
/* 0x0230 */ 124,234, 16,249,125, 74, 14,112, 65,130, 0, 0, 72, 0, 0, 12, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 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, /* 0x17c0 */ 124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32,124,128, 0, 8,
/* 0x17d0 */ 188, 97, 0, 4,127,232, 2,166,130,191,255,252,131,191,255,244, /* 0x17d0 */ 148, 65,255,136,188, 97, 0, 4,127,232, 2,166,130,191,255,252,
/* 0x17e0 */ 86,181, 1,186,127,189,170, 20, 58,181,255,252, 56, 96, 0, 0, /* 0x17e0 */ 131,191,255,244, 86,181, 1,186,127,189,170, 20, 58,181,255,252,
/* 0x17f0 */ 127,164,235,120, 56,160, 0, 3, 56,192, 16, 2, 56,224,255,255, /* 0x17f0 */ 56, 96, 0, 0,127,164,235,120, 56,160, 0, 3, 56,192, 16, 2,
/* 0x1800 */ 57, 0, 0, 0, 57, 32, 0, 0, 56, 0, 0,197, 68, 0, 0, 2, /* 0x1800 */ 56,224,255,255, 57, 0, 0, 0, 57, 32, 0, 0, 56, 0, 0,197,
/* 0x1810 */ 56, 96,255,255,124,124, 27,120, 56,160, 1,136,124,169, 3,166, /* 0x1810 */ 68, 0, 0, 2, 56, 96,255,255,124,124, 27,120, 56,160, 1,136,
/* 0x1820 */ 124,131,234, 20,124,117,250, 20,140, 3,255,255,156, 4,255,255, /* 0x1820 */ 124,169, 3,166,124,131,234, 20,124,117,250, 20,140, 3,255,255,
/* 0x1830 */ 66, 0,255,248,124,165,232, 80,124,136, 3,166,124,169, 3,166, /* 0x1830 */ 156, 4,255,255, 66, 0,255,248,124,165,232, 80,124,136, 3,166,
/* 0x1840 */ 78,128, 0, 32,140, 3,255,255,156, 4,255,255, 66, 0,255,248, /* 0x1840 */ 124,169, 3,166, 78,128, 0, 32,140, 3,255,255,156, 4,255,255,
/* 0x1850 */ 131,223,255,232,127,227,248, 80,127,228,250, 20,127,222, 26, 20, /* 0x1850 */ 66, 0,255,248,131,223,255,232,127,227,248, 80,127,228,250, 20,
/* 0x1860 */ 128, 95,255,236,127, 68, 18, 20,127, 99, 18, 20, 59,123,255,232, /* 0x1860 */ 127,222, 26, 20,129,159,255,236,127, 68, 98, 20,127, 99, 98, 20,
/* 0x1870 */ 128, 90, 0, 4, 59, 90, 0, 12,127, 90, 18, 20,127, 88,211,120, /* 0x1870 */ 59,123,255,232,129,154, 0, 4, 59, 90, 0, 12,127, 90, 98, 20,
/* 0x1880 */ 127,121,219,120, 56,122, 0, 0, 72, 0, 0,189, 65,130, 0,104, /* 0x1880 */ 127, 88,211,120,127,121,219,120, 56,122, 0, 0, 72, 0, 0,189,
/* 0x1890 */ 127,123, 26, 20,124,119, 27,120, 56,122, 0, 4, 72, 0, 0,169, /* 0x1890 */ 65,130, 0,104,127,123, 26, 20,124,119, 27,120, 56,122, 0, 4,
/* 0x18a0 */ 127, 90, 26, 20,124,118, 27,120, 59, 90, 0, 12,150,225,255,248, /* 0x18a0 */ 72, 0, 0,169,127, 90, 26, 20,124,118, 27,120, 59, 90, 0, 12,
/* 0x18b0 */ 127,232, 3,166, 56,120, 0, 12,126,196,179,120,127, 37,203,120, /* 0x18b0 */ 150,225,255,248,127,232, 3,166, 56,120, 0, 12,126,196,179,120,
/* 0x18c0 */ 124, 38, 11,120,136,248, 0, 8, 56, 33,255,232, 78,128, 0, 33, /* 0x18c0 */ 127, 37,203,120,124, 38, 11,120,136,248, 0, 8, 56, 33,255,232,
/* 0x18d0 */ 56, 33, 0, 32,136,216, 0, 9, 40, 6, 0, 0, 65,130,255,160, /* 0x18d0 */ 78,128, 0, 33, 56, 33, 0, 32,136,216, 0, 9, 40, 6, 0, 0,
/* 0x18e0 */ 136,184, 0, 10,128,152, 0, 0,127, 35,203,120, 72, 0, 0,125, /* 0x18e0 */ 65,130,255,160,136,184, 0, 10,128,152, 0, 0,127, 35,203,120,
/* 0x18f0 */ 75,255,255,140, 72, 0, 0, 29, 68, 0, 0, 2, 56, 96,255,255, /* 0x18f0 */ 72, 0, 0,125, 75,255,255,140, 72, 0, 0, 29, 68, 0, 0, 2,
/* 0x1900 */ 184, 65, 0, 0, 56, 33, 0,120,124, 72, 3,166, 78,128, 4, 32, /* 0x1900 */ 56, 96,255,255,184, 65, 0, 4, 56, 33, 0,120,125,136, 3,166,
/* 0x1910 */ 56, 64, 0, 6,124,104, 2,166, 56, 99, 0, 24,124, 73, 3,166, /* 0x1910 */ 78,128, 4, 32, 57,128, 0, 6,124,104, 2,166, 56, 99, 0, 24,
/* 0x1920 */ 132, 67,255,252,148, 89,255,252, 66, 0,255,248,127, 40, 3,166, /* 0x1920 */ 125,137, 3,166,133,131,255,252,149,153,255,252, 66, 0,255,248,
/* 0x1930 */ 127,201, 3,166,127,131,227,120,127,164,235,120, 56, 0, 0, 73, /* 0x1930 */ 127, 40, 3,166,127,201, 3,166,127,131,227,120,127,164,235,120,
/* 0x1940 */ 78,128, 0, 32,136, 67, 0, 3,137, 99, 0, 2, 81, 98, 68, 46, /* 0x1940 */ 56, 0, 0, 73, 78,128, 0, 32,137,131, 0, 3,137, 99, 0, 2,
/* 0x1950 */ 137, 99, 0, 1, 81, 98,130, 30,137, 99, 0, 0, 81, 98,192, 14, /* 0x1950 */ 81,108, 68, 46,137, 99, 0, 1, 81,108,130, 30,137, 99, 0, 0,
/* 0x1960 */ 124, 67, 19,121, 78,128, 0, 32, 40, 6, 0,208, 76,130, 0, 32, /* 0x1960 */ 81,108,192, 14,125,131, 99,121, 78,128, 0, 32, 40, 6, 0,208,
/* 0x1970 */ 84,132,240,191, 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, /* 0x1970 */ 76,130, 0, 32, 84,132,240,191, 77,130, 0, 32, 60, 0, 0, 16,
/* 0x1980 */ 65,128, 0, 8,124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, /* 0x1980 */ 124, 4, 0, 64, 65,128, 0, 8,124, 4, 3,120, 56,165, 1, 32,
/* 0x1990 */ 56, 99,255,252,124,137, 3,166, 72, 0, 0, 28, 84, 75, 2,186, /* 0x1990 */ 124,103, 27,120, 56, 99,255,252,124,137, 3,166, 72, 0, 0, 28,
/* 0x19a0 */ 125, 99, 88, 80,125,107, 58, 20, 81, 98, 1,186,144, 67, 0, 0, /* 0x19a0 */ 85, 96, 2,186,124, 3, 0, 80,124, 0, 58, 20, 80, 11, 1,186,
/* 0x19b0 */ 78, 64, 0, 32,132, 67, 0, 4, 84, 75, 85,190,124, 11, 40, 64, /* 0x19b0 */ 145, 99, 0, 0, 78, 64, 0, 32,133, 99, 0, 4, 85, 96, 85,190,
/* 0x19c0 */ 65,162,255,220, 66, 0,255,240, 78,128, 0, 32, 75,255,254, 0, /* 0x19c0 */ 124, 0, 40, 64, 65,162,255,220, 66, 0,255,240, 78,128, 0, 32,
/* 0x19d0 */ 102,105,108,101, 32,102,111,114,109, 97,116, 32,101,108,102, 51, /* 0x19d0 */ 75,255,253,252,102,105,108,101, 32,102,111,114,109, 97,116, 32,
/* 0x19e0 */ 50, 45,112,111,119,101,114,112, 99, 10, 10, 83,101, 99,116,105, /* 0x19e0 */ 101,108,102, 51, 50, 45,112,111,119,101,114,112, 99, 10, 10, 83,
/* 0x19f0 */ 111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,101, 32, 32, 32, /* 0x19f0 */ 101, 99,116,105,111,110,115, 58, 10, 73,100,120, 32, 78, 97,109,
/* 0x1a00 */ 32, 32, 32, 32, 32, 32, 32, 83,105,122,101, 32, 32, 32, 32, 32, /* 0x1a00 */ 101, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122,101, 32,
/* 0x1a10 */ 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, 32, 76, 77, 65, 32, 32, /* 0x1a10 */ 32, 32, 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, 32, 76,
/* 0x1a20 */ 32, 32, 32, 32, 32, 70,105,108,101, 32,111,102,102, 32, 32, 65, /* 0x1a20 */ 77, 65, 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32,111,102,
/* 0x1a30 */ 108,103,110, 32, 32, 70,108, 97,103,115, 10, 32, 32, 48, 32, 77, /* 0x1a30 */ 102, 32, 32, 65,108,103,110, 32, 32, 70,108, 97,103,115, 10, 32,
/* 0x1a40 */ 65, 67, 79, 83, 48, 48, 48, 32, 32, 32, 32, 32, 32, 48, 48, 48, /* 0x1a40 */ 32, 48, 32, 77, 65, 67, 79, 83, 48, 48, 48, 32, 32, 32, 32, 32,
/* 0x1a50 */ 48, 48, 48, 48, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1a50 */ 32, 48, 48, 48, 48, 48, 48, 48, 56, 32, 32, 48, 48, 48, 48, 48,
/* 0x1a60 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 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, 51, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, /* 0x1a70 */ 48, 48, 48, 48, 48, 51, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67,
/* 0x1a80 */ 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, /* 0x1a80 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32,
/* 0x1a90 */ 79, 78, 76, 89, 10, 32, 32, 49, 32, 78, 82, 86, 95, 72, 69, 65, /* 0x1a90 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 49, 32, 78, 82, 86,
/* 0x1aa0 */ 68, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1aa0 */ 95, 72, 69, 65, 68, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48,
/* 0x1ab0 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 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, 32, 32, 48, 48, 48, 48, 48, 48, 51, 99, 32, 32, 50, /* 0x1ac0 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 51,
/* 0x1ad0 */ 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, /* 0x1ad0 */ 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84,
/* 0x1ae0 */ 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 50, 32, 78, 82, 86, 50, /* 0x1ae0 */ 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 50, 32,
/* 0x1af0 */ 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, /* 0x1af0 */ 78, 82, 86, 50, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48,
/* 0x1b00 */ 52, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, /* 0x1b00 */ 48, 48, 48, 49, 52, 56, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1b10 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 51, 99, /* 0x1b10 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1b20 */ 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, /* 0x1b20 */ 48, 48, 51, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84,
/* 0x1b30 */ 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, /* 0x1b30 */ 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65,
/* 0x1b40 */ 89, 10, 32, 32, 51, 32, 78, 82, 86, 50, 68, 32, 32, 32, 32, 32, /* 0x1b40 */ 68, 79, 78, 76, 89, 10, 32, 32, 51, 32, 78, 82, 86, 50, 68, 32,
/* 0x1b50 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, 50, 99, 32, 32, 48, 48, /* 0x1b50 */ 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, 50, 99,
/* 0x1b60 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1b60 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1b70 */ 32, 32, 48, 48, 48, 48, 48, 49, 56, 52, 32, 32, 50, 42, 42, 48, /* 0x1b70 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 49, 56, 52, 32, 32,
/* 0x1b80 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, /* 0x1b80 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1b90 */ 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 52, 32, /* 0x1b90 */ 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10,
/* 0x1ba0 */ 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, /* 0x1ba0 */ 32, 32, 52, 32, 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, 32, 32,
/* 0x1bb0 */ 48, 48, 48, 48,102, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1bb0 */ 32, 32, 48, 48, 48, 48, 48, 48,102, 48, 32, 32, 48, 48, 48, 48,
/* 0x1bc0 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 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, 50, 98, 48, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, /* 0x1bd0 */ 48, 48, 48, 48, 48, 50, 98, 48, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1be0 */ 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, /* 0x1be0 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44,
/* 0x1bf0 */ 68, 79, 78, 76, 89, 10, 32, 32, 53, 32, 76, 90, 77, 65, 95, 69, /* 0x1bf0 */ 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 53, 32, 76, 90,
/* 0x1c00 */ 76, 70, 48, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 57, 48, /* 0x1c00 */ 77, 65, 95, 69, 76, 70, 48, 48, 32, 32, 32, 32, 48, 48, 48, 48,
/* 0x1c10 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 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, 32, 32, 48, 48, 48, 48, 48, 51, 97, 48, 32, 32, /* 0x1c20 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 51,
/* 0x1c30 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, /* 0x1c30 */ 97, 48, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78,
/* 0x1c40 */ 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, /* 0x1c40 */ 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79,
/* 0x1c50 */ 32, 32, 54, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, 32, 32, /* 0x1c50 */ 78, 76, 89, 10, 32, 32, 54, 32, 76, 90, 77, 65, 95, 68, 69, 67,
/* 0x1c60 */ 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, 32, 48, 48, 48, 48, /* 0x1c60 */ 49, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, 32,
/* 0x1c70 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, /* 0x1c70 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48,
/* 0x1c80 */ 48, 48, 48, 48, 48, 52, 51, 48, 32, 32, 50, 42, 42, 48, 32, 32, /* 0x1c80 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 52, 51, 48, 32, 32, 50, 42,
/* 0x1c90 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, /* 0x1c90 */ 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69,
/* 0x1ca0 */ 76, 89, 10, 32, 32, 55, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, /* 0x1ca0 */ 65, 68, 79, 78, 76, 89, 10, 32, 32, 55, 32, 76, 90, 77, 65, 95,
/* 0x1cb0 */ 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, 32, 32, 48, /* 0x1cb0 */ 68, 69, 67, 50, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57,
/* 0x1cc0 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, /* 0x1cc0 */ 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48,
/* 0x1cd0 */ 48, 32, 32, 48, 48, 48, 48, 48,100, 99, 99, 32, 32, 50, 42, 42, /* 0x1cd0 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,100, 99, 99, 32,
/* 0x1ce0 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, /* 0x1ce0 */ 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44,
/* 0x1cf0 */ 68, 79, 78, 76, 89, 10, 32, 32, 56, 32, 76, 90, 77, 65, 95, 68, /* 0x1cf0 */ 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 56, 32, 76, 90,
/* 0x1d00 */ 69, 67, 51, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 52, /* 0x1d00 */ 77, 65, 95, 68, 69, 67, 51, 48, 32, 32, 32, 32, 48, 48, 48, 48,
/* 0x1d10 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 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, 32, 32, 48, 48, 48, 48, 49, 55, 54, 56, 32, 32, /* 0x1d20 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55,
/* 0x1d30 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, /* 0x1d30 */ 54, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78,
/* 0x1d40 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 57, 32, 78, 82, 86, /* 0x1d40 */ 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 57,
/* 0x1d50 */ 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, /* 0x1d50 */ 32, 78, 82, 86, 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, 32, 48,
/* 0x1d60 */ 48, 49, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, /* 0x1d60 */ 48, 48, 48, 48, 48, 49, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48,
/* 0x1d70 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 56, /* 0x1d70 */ 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48,
/* 0x1d80 */ 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, /* 0x1d80 */ 48, 49, 55, 56, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78,
/* 0x1d90 */ 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 49, 48, 32, /* 0x1d90 */ 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10,
/* 0x1da0 */ 67, 70, 76, 85, 83, 72, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, /* 0x1da0 */ 32, 49, 48, 32, 67, 70, 76, 85, 83, 72, 32, 32, 32, 32, 32, 32,
/* 0x1db0 */ 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1db0 */ 32, 32, 48, 48, 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48,
/* 0x1dc0 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, /* 0x1dc0 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1dd0 */ 49, 55, 97, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, /* 0x1dd0 */ 48, 48, 48, 48, 49, 55, 97, 56, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1de0 */ 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, /* 0x1de0 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78,
/* 0x1df0 */ 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, 89, 32, 32, 32, 32, 32, /* 0x1df0 */ 76, 89, 10, 32, 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, 89, 32,
/* 0x1e00 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, /* 0x1e00 */ 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1e10 */ 48, 48, 48, 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, 48, 48, 49, 55, 99, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, /* 0x1e20 */ 48, 32, 32, 48, 48, 48, 48, 49, 55, 99, 99, 32, 32, 50, 42, 42,
/* 0x1e30 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, /* 0x1e30 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65,
/* 0x1e40 */ 89, 10, 32, 49, 50, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32, 32, /* 0x1e40 */ 68, 79, 78, 76, 89, 10, 32, 49, 50, 32, 69, 76, 70, 77, 65, 73,
/* 0x1e50 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 50, 48, 52, 32, 32, 48, 48, /* 0x1e50 */ 78, 90, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 50, 48, 56,
/* 0x1e60 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1e60 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1e70 */ 32, 32, 48, 48, 48, 48, 49, 55, 99, 99, 32, 32, 50, 42, 42, 48, /* 0x1e70 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 99, 99, 32, 32,
/* 0x1e80 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, /* 0x1e80 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1e90 */ 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, 32, 84, 65, 66, 76, /* 0x1e90 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, 32,
/* 0x1ea0 */ 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1ea0 */ 84, 65, 66, 76, 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1eb0 */ 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 9, 48, /* 0x1eb0 */ 108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67,
/* 0x1ec0 */ 48, 48, 48, 48, 48, 48, 48, 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 */ 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1ed0 */ 95, 68, 69, 67, 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1ee0 */ 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 9, 48, 48, 48, /* 0x1ee0 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76,
/* 0x1ef0 */ 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 48, /* 0x1ef0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, 65,
/* 0x1f00 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, /* 0x1f00 */ 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1f10 */ 69, 76, 70, 77, 65, 73, 78, 90, 9, 48, 48, 48, 48, 48, 48, 48, /* 0x1f10 */ 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 9, 48, 48, 48,
/* 0x1f20 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48, /* 0x1f20 */ 48, 48, 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48,
/* 0x1f30 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 77, 65, 67, 79, /* 0x1f30 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1f40 */ 83, 48, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 77, 65, /* 0x1f40 */ 77, 65, 67, 79, 83, 48, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x1f50 */ 67, 79, 83, 48, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1f50 */ 48, 32, 77, 65, 67, 79, 83, 48, 48, 48, 10, 48, 48, 48, 48, 48,
/* 0x1f60 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68, /* 0x1f60 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95,
/* 0x1f70 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 72, 69, /* 0x1f70 */ 72, 69, 65, 68, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82,
/* 0x1f80 */ 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1f80 */ 86, 95, 72, 69, 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1f90 */ 32,100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48, 48, 48, 48, 48, /* 0x1f90 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48,
/* 0x1fa0 */ 48, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48, 48, 48, 48, 48, /* 0x1fa0 */ 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48,
/* 0x1fb0 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 9, /* 0x1fb0 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82,
/* 0x1fc0 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 68, 10, 48, /* 0x1fc0 */ 86, 50, 68, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86,
/* 0x1fd0 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, /* 0x1fd0 */ 50, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1fe0 */ 78, 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, /* 0x1fe0 */ 32,100, 32, 32, 78, 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48,
/* 0x1ff0 */ 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x1ff0 */ 48, 48, 32, 78, 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2000 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, /* 0x2000 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69,
/* 0x2010 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 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 */ 76, 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x2020 */ 77, 65, 95, 69, 76, 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2030 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, /* 0x2030 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68,
/* 0x2040 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 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 */ 69, 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x2050 */ 77, 65, 95, 68, 69, 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2060 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, /* 0x2060 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68,
/* 0x2070 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 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 */ 69, 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x2080 */ 77, 65, 95, 68, 69, 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2090 */ 32, 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72, 9, 48, 48, 48, /* 0x2090 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72,
/* 0x20a0 */ 48, 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72, 10, 48, 48, 48, /* 0x20a0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72,
/* 0x20b0 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, /* 0x20b0 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100,
/* 0x20c0 */ 70, 77, 65, 73, 78, 89, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x20c0 */ 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, 9, 48, 48, 48, 48, 48,
/* 0x20d0 */ 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48, 48, 48, 48, 48, /* 0x20d0 */ 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, 48, 48,
/* 0x20e0 */ 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 77, 65, 67, 79, 83, 48, /* 0x20e0 */ 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 77, 65,
/* 0x20f0 */ 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 95,115,116, 97, /* 0x20f0 */ 67, 79, 83, 48, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x2100 */ 114,116, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, /* 0x2100 */ 95,115,116, 97,114,116, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73,
/* 0x2110 */ 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 77, 65, 67, 79, /* 0x2110 */ 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91,
/* 0x2120 */ 83, 48, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, /* 0x2120 */ 77, 65, 67, 79, 83, 48, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69,
/* 0x2130 */ 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x2130 */ 84, 32, 32, 32, 84, 89, 80, 69, 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, /* 0x2140 */ 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48,
/* 0x2150 */ 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 50, 52, 32, 32, 32, 32, /* 0x2150 */ 48, 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 50, 52,
/* 0x2160 */ 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 43, 48,120, 48, 48, /* 0x2160 */ 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 43,
/* 0x2170 */ 48, 48, 48, 50, 48, 48, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, /* 0x2170 */ 48,120, 48, 48, 48, 48, 48, 50, 48, 52, 10, 10, 82, 69, 76, 79,
/* 0x2180 */ 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, /* 0x2180 */ 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70,
/* 0x2190 */ 78, 82, 86, 50, 69, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, /* 0x2190 */ 79, 82, 32, 91, 78, 82, 86, 50, 69, 93, 58, 10, 79, 70, 70, 83,
/* 0x21a0 */ 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x21a0 */ 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32,
/* 0x21b0 */ 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, /* 0x21b0 */ 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48,
/* 0x21c0 */ 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, /* 0x21c0 */ 48, 48, 48, 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49,
/* 0x21d0 */ 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, /* 0x21d0 */ 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76,
/* 0x21e0 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, /* 0x21e0 */ 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67,
/* 0x21f0 */ 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 68, 93, 58, 10, 79, 70, /* 0x21f0 */ 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 68, 93,
/* 0x2200 */ 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, /* 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, 86, 65, 76, 85, 69, 10, 48, /* 0x2210 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76,
/* 0x2220 */ 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, /* 0x2220 */ 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80, 80,
/* 0x2230 */ 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, /* 0x2230 */ 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82,
/* 0x2240 */ 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, /* 0x2240 */ 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73,
/* 0x2250 */ 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, /* 0x2250 */ 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91,
/* 0x2260 */ 66, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, /* 0x2260 */ 78, 82, 86, 50, 66, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32,
/* 0x2270 */ 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, /* 0x2270 */ 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x2280 */ 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 57, 48, 32, 82, 95, /* 0x2280 */ 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 57,
/* 0x2290 */ 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, /* 0x2290 */ 48, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32,
/* 0x22a0 */ 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, /* 0x22a0 */ 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69,
/* 0x22b0 */ 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, /* 0x22b0 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83,
/* 0x22c0 */ 32, 91, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 93, 58, 10, 79, /* 0x22c0 */ 32, 70, 79, 82, 32, 91, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48,
/* 0x22d0 */ 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, /* 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, 86, 65, 76, 85, 69, 10, /* 0x22e0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65,
/* 0x22f0 */ 48, 48, 48, 48, 48, 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, /* 0x22f0 */ 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 52, 32, 82, 95, 80,
/* 0x2300 */ 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, /* 0x2300 */ 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 76,
/* 0x2310 */ 68, 69, 67, 51, 48, 43, 48,120, 48, 48, 48, 48, 48, 48, 50, 52, /* 0x2310 */ 90, 77, 65, 95, 68, 69, 67, 51, 48, 43, 48,120, 48, 48, 48, 48,
/* 0x2320 */ 10 /* 0x2320 */ 48, 48, 50, 52, 10
}; };
+100 -110
View File
@@ -1,5 +1,5 @@
/* powerpc-darwin.macho-entry.h /* powerpc-darwin.macho-entry.h
created from powerpc-darwin.macho-entry.bin, 9076 (0x2374) bytes created from powerpc-darwin.macho-entry.bin, 8924 (0x22dc) bytes
This file is part of the UPX executable compressor. This file is part of the UPX executable compressor.
@@ -31,20 +31,20 @@
*/ */
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_SIZE 9076 #define STUB_POWERPC_DARWIN_MACHO_ENTRY_SIZE 8924
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_ADLER32 0x26193a29 #define STUB_POWERPC_DARWIN_MACHO_ENTRY_ADLER32 0x067719e1
#define STUB_POWERPC_DARWIN_MACHO_ENTRY_CRC32 0xb72e6768 #define STUB_POWERPC_DARWIN_MACHO_ENTRY_CRC32 0x1ea12920
unsigned char stub_powerpc_darwin_macho_entry[9076] = { unsigned char stub_powerpc_darwin_macho_entry[8924] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 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, /* 0x0010 */ 0, 1, 0, 20, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0020 */ 0, 0, 25, 72, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40, /* 0x0020 */ 0, 0, 25, 68, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40,
/* 0x0030 */ 0, 0, 0, 0, 0, 0, 0,104, 40, 6, 0,208, 76,130, 0, 32, /* 0x0030 */ 0, 0, 0, 0, 0, 0, 0,104, 40, 6, 0,208, 76,130, 0, 32,
/* 0x0040 */ 84,132,240,191, 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, /* 0x0040 */ 84,132,240,191, 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64,
/* 0x0050 */ 65,128, 0, 8,124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, /* 0x0050 */ 65,128, 0, 8,124, 4, 3,120, 56,165, 1, 32,124,103, 27,120,
/* 0x0060 */ 56, 99,255,252,124,137, 3,166, 72, 0, 0, 28, 84, 75, 2,186, /* 0x0060 */ 56, 99,255,252,124,137, 3,166, 72, 0, 0, 28, 85, 96, 2,186,
/* 0x0070 */ 125, 99, 88, 80,125,107, 58, 20, 81, 98, 1,186,144, 67, 0, 0, /* 0x0070 */ 124, 3, 0, 80,124, 0, 58, 20, 80, 11, 1,186,145, 99, 0, 0,
/* 0x0080 */ 78, 64, 0, 32,132, 67, 0, 4, 84, 75, 85,190,124, 11, 40, 64, /* 0x0080 */ 78, 64, 0, 32,133, 99, 0, 4, 85, 96, 85,190,124, 0, 40, 64,
/* 0x0090 */ 65,162,255,220, 66, 0,255,240, 78,128, 0, 32, 72, 0, 0, 73, /* 0x0090 */ 65,162,255,220, 66, 0,255,240, 78,128, 0, 32, 72, 0, 0, 73,
/* 0x00a0 */ 124, 0, 41,236,125,168, 2,166, 40, 7, 0, 8, 64,130, 1, 60, /* 0x00a0 */ 124, 0, 41,236,125,168, 2,166, 40, 7, 0, 8, 64,130, 1, 60,
/* 0x00b0 */ 144,166, 0, 0,124,132, 26, 20, 60, 0,128, 0, 61, 32,128, 0, /* 0x00b0 */ 144,166, 0, 0,124,132, 26, 20, 60, 0,128, 0, 61, 32,128, 0,
@@ -56,8 +56,8 @@ unsigned char stub_powerpc_darwin_macho_entry[9076] = {
/* 0x0110 */ 125, 41, 72, 21, 65,162,255,189,124,231, 57, 20,125, 41, 72, 21, /* 0x0110 */ 125, 41, 72, 21, 65,162,255,189,124,231, 57, 20,125, 41, 72, 21,
/* 0x0120 */ 65,162,255,177,124,231, 57, 20,124, 9, 0, 64,125, 41, 74, 20, /* 0x0120 */ 65,162,255,177,124,231, 57, 20,124, 9, 0, 64,125, 41, 74, 20,
/* 0x0130 */ 65,162,255,161, 65,160,255,216, 57, 0, 0, 0, 52,231,255,253, /* 0x0130 */ 65,162,255,161, 65,160,255,216, 57, 0, 0, 0, 52,231,255,253,
/* 0x0140 */ 84,231, 64, 46, 65,128, 0, 32,140, 67, 0, 1,124,234, 16,249, /* 0x0140 */ 84,231, 64, 46, 65,128, 0, 32,141, 99, 0, 1,124,234, 88,249,
/* 0x0150 */ 125, 74, 14,112, 65,130, 0, 0,112, 66, 0, 1, 65,162, 0, 80, /* 0x0150 */ 125, 74, 14,112, 65,130, 0, 0,113,107, 0, 1, 65,162, 0, 80,
/* 0x0160 */ 72, 0, 0, 20,124, 9, 0, 64,125, 41, 74, 20, 65,162,255,101, /* 0x0160 */ 72, 0, 0, 20,124, 9, 0, 64,125, 41, 74, 20, 65,162,255,101,
/* 0x0170 */ 65,161, 0, 60, 57, 0, 0, 1,124, 9, 0, 64,125, 41, 74, 20, /* 0x0170 */ 65,161, 0, 60, 57, 0, 0, 1,124, 9, 0, 64,125, 41, 74, 20,
/* 0x0180 */ 65,162,255, 81, 65,161, 0, 40,125, 41, 72, 21, 65,162,255, 69, /* 0x0180 */ 65,162,255, 81, 65,161, 0, 40,125, 41, 72, 21, 65,162,255, 69,
@@ -77,7 +77,7 @@ unsigned char stub_powerpc_darwin_macho_entry[9076] = {
/* 0x0260 */ 124,231, 57, 21,125, 41, 72, 21, 65,162,255,177,124,231, 57, 21, /* 0x0260 */ 124,231, 57, 21,125, 41, 72, 21, 65,162,255,177,124,231, 57, 21,
/* 0x0270 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161, 65,160,255,216, /* 0x0270 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161, 65,160,255,216,
/* 0x0280 */ 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24, /* 0x0280 */ 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24,
/* 0x0290 */ 140, 67, 0, 1,124,234, 16,249,125, 74, 14,112, 65,130, 0, 0, /* 0x0290 */ 141, 99, 0, 1,124,234, 88,249,125, 74, 14,112, 65,130, 0, 0,
/* 0x02a0 */ 72, 0, 0, 12,125, 41, 72, 21, 65,162,255,113,125, 8, 65, 21, /* 0x02a0 */ 72, 0, 0, 12,125, 41, 72, 21, 65,162,255,113,125, 8, 65, 21,
/* 0x02b0 */ 125, 41, 72, 21, 65,162,255,101,125, 8, 65, 21, 64,130, 0, 40, /* 0x02b0 */ 125, 41, 72, 21, 65,162,255,101,125, 8, 65, 21, 64,130, 0, 40,
/* 0x02c0 */ 57, 0, 0, 1,125, 41, 72, 21, 65,162,255, 81,125, 8, 65, 21, /* 0x02c0 */ 57, 0, 0, 1,125, 41, 72, 21, 65,162,255, 81,125, 8, 65, 21,
@@ -93,22 +93,22 @@ unsigned char stub_powerpc_darwin_macho_entry[9076] = {
/* 0x0360 */ 125, 41, 73, 20, 78,128, 0, 32,141, 3, 0, 1,157, 5, 0, 1, /* 0x0360 */ 125, 41, 73, 20, 78,128, 0, 32,141, 3, 0, 1,157, 5, 0, 1,
/* 0x0370 */ 75,255,255,213, 65,129,255,244, 56,224, 0, 1, 75,255,255,201, /* 0x0370 */ 75,255,255,213, 65,129,255,244, 56,224, 0, 1, 75,255,255,201,
/* 0x0380 */ 124,231, 57, 21, 75,255,255,193, 65,160,255,244, 52,231,255,253, /* 0x0380 */ 124,231, 57, 21, 75,255,255,193, 65,160,255,244, 52,231,255,253,
/* 0x0390 */ 57, 0, 0, 0, 65,128, 0, 20,140, 67, 0, 1, 84,231, 64, 46, /* 0x0390 */ 57, 0, 0, 0, 65,128, 0, 20,141, 99, 0, 1, 84,231, 64, 46,
/* 0x03a0 */ 124,234, 16,249, 65,130, 0, 0, 75,255,255,157,125, 8, 65, 21, /* 0x03a0 */ 124,234, 88,249, 65,130, 0, 0, 75,255,255,157,125, 8, 65, 21,
/* 0x03b0 */ 75,255,255,149,125, 8, 65, 21, 56,224, 0, 1, 64,130, 0, 28, /* 0x03b0 */ 75,255,255,149,125, 8, 65, 21, 56,224, 0, 1, 64,130, 0, 28,
/* 0x03c0 */ 56,224, 0, 3, 57, 0, 0, 1, 75,255,255,125,125, 8, 65, 21, /* 0x03c0 */ 56,224, 0, 3, 57, 0, 0, 1, 75,255,255,125,125, 8, 65, 21,
/* 0x03d0 */ 75,255,255,117, 65,160,255,244, 32, 74,242,255,125, 8, 57, 20, /* 0x03d0 */ 75,255,255,117, 65,160,255,244, 33,106,242,255,125, 8, 57, 20,
/* 0x03e0 */ 124,234, 42, 20,125, 9, 3,166,141, 7, 0, 1,157, 5, 0, 1, /* 0x03e0 */ 124,234, 42, 20,125, 9, 3,166,141, 7, 0, 1,157, 5, 0, 1,
/* 0x03f0 */ 66, 0,255,248, 56,224, 1, 0,124, 7, 41,236,124, 7, 26, 44, /* 0x03f0 */ 66, 0,255,248, 56,224, 1, 0,124, 7, 41,236,124, 7, 26, 44,
/* 0x0400 */ 75,255,255,112, 40, 7, 0, 14, 64,130, 0, 36,148, 33,255,232, /* 0x0400 */ 75,255,255,112, 40, 7, 0, 14, 64,130, 0, 36,148, 33,255,232,
/* 0x0410 */ 124, 8, 2,166,124,201, 51,120,129, 6, 0, 0,124,167, 43,120, /* 0x0410 */ 124, 8, 2,166,124,201, 51,120,129, 6, 0, 0,124,167, 43,120,
/* 0x0420 */ 56,164,255,254, 56,131, 0, 2,144, 1, 0, 8,136, 3, 0, 0, /* 0x0420 */ 56,164,255,254, 56,131, 0, 2,144, 1, 0, 8,136, 3, 0, 0,
/* 0x0430 */ 84, 11,232,254, 84, 2, 7,126, 56, 96,250, 0,124, 99, 88, 48, /* 0x0430 */ 84, 11,232,254, 84, 12, 7,126, 56, 96,250, 0,124, 99, 88, 48,
/* 0x0440 */ 56, 99,241,124,124, 38, 11,120,124, 33, 26, 20, 84, 33, 0, 52, /* 0x0440 */ 56, 99,241,124,124, 38, 11,120,124, 33, 26, 20, 84, 33, 0, 52,
/* 0x0450 */ 56, 0, 0, 0,124,195, 51,120,144, 9, 0, 0,148, 3,255,252, /* 0x0450 */ 56, 0, 0, 0,124,195, 51,120,144, 9, 0, 0,148, 3,255,252,
/* 0x0460 */ 124, 1, 24, 64, 65,128,255,248,144,193, 0, 0,136, 4,255,255, /* 0x0460 */ 124, 1, 24, 64, 65,128,255,248,144,193, 0, 0,136, 4,255,255,
/* 0x0470 */ 144,225, 0, 8, 56,193, 0, 16,145, 33, 0, 12, 56, 97, 0, 20, /* 0x0470 */ 144,225, 0, 8, 56,193, 0, 16,145, 33, 0, 12, 56, 97, 0, 20,
/* 0x0480 */ 84, 11,225, 62, 84, 0, 7, 62,152, 67, 0, 2,153, 99, 0, 1, /* 0x0480 */ 84, 11,225, 62, 84, 0, 7, 62,153,131, 0, 2,153, 99, 0, 1,
/* 0x0490 */ 152, 3, 0, 0,124, 8, 2,166,148, 33,255,160,189,193, 0, 24, /* 0x0490 */ 152, 3, 0, 0,124, 8, 2,166,148, 33,255,160,189,193, 0, 24,
/* 0x04a0 */ 59, 32, 0, 0,125, 40, 3,166,124,206, 51,120,124,147, 35,120, /* 0x04a0 */ 59, 32, 0, 0,125, 40, 3,166,124,206, 51,120,124,147, 35,120,
/* 0x04b0 */ 144, 1, 0,100,124,245, 59,120,125, 20, 67,120,137, 67, 0, 2, /* 0x04b0 */ 144, 1, 0,100,124,245, 59,120,125, 20, 67,120,137, 67, 0, 2,
@@ -423,10 +423,10 @@ unsigned char stub_powerpc_darwin_macho_entry[9076] = {
/* 0x1800 */ 56, 99, 0, 1, 56,132, 0, 1,144,134, 0, 0, 96,231, 0, 31, /* 0x1800 */ 56, 99, 0, 1, 56,132, 0, 1,144,134, 0, 0, 96,231, 0, 31,
/* 0x1810 */ 124, 0, 56,108,124, 7, 40, 64,124, 0, 63,172, 56,231, 0, 32, /* 0x1810 */ 124, 0, 56,108,124, 7, 40, 64,124, 0, 63,172, 56,231, 0, 32,
/* 0x1820 */ 65,128,255,240,124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32, /* 0x1820 */ 65,128,255,240,124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32,
/* 0x1830 */ 124, 72, 2,166,128,130, 0, 12,124,137, 3,166,128,194, 0, 8, /* 0x1830 */ 125,136, 2,166,128,140, 0, 12,124,137, 3,166,128,204, 0, 8,
/* 0x1840 */ 136,226, 0, 16,124,164, 18, 20, 56,165, 0, 16,124,102, 18, 20, /* 0x1840 */ 136,236, 0, 16,124,164, 98, 20, 56,165, 0, 16,124,102, 98, 20,
/* 0x1850 */ 56, 99, 0,192,140, 5,255,255,156, 3,255,255, 66, 0,255,248, /* 0x1850 */ 56, 99, 0,192,140, 5,255,255,156, 3,255,255, 66, 0,255,248,
/* 0x1860 */ 127,233, 3,166, 56,162, 0,128,144,193,255,252, 56,193,255,252, /* 0x1860 */ 127,233, 3,166, 56,172, 0,128,144,193,255,252, 56,193,255,252,
/* 0x1870 */ 56, 33,255,232, 78,128, 4, 32,127,232, 2,166, 75,255,255,181, /* 0x1870 */ 56, 33,255,232, 78,128, 4, 32,127,232, 2,166, 75,255,255,181,
/* 0x1880 */ 72, 0, 0,128, 0, 0, 0, 0,102,105,108,101, 32,102,111,114, /* 0x1880 */ 72, 0, 0,128, 0, 0, 0, 0,102,105,108,101, 32,102,111,114,
/* 0x1890 */ 109, 97,116, 32,101,108,102, 51, 50, 45,112,111,119,101,114,112, /* 0x1890 */ 109, 97,116, 32,101,108,102, 51, 50, 45,112,111,119,101,114,112,
@@ -514,94 +514,84 @@ unsigned char stub_powerpc_darwin_macho_entry[9076] = {
/* 0x1db0 */ 32, 32, 48, 48, 48, 48, 48, 48, 53, 56, 32, 32, 48, 48, 48, 48, /* 0x1db0 */ 32, 32, 48, 48, 48, 48, 48, 48, 53, 56, 32, 32, 48, 48, 48, 48,
/* 0x1dc0 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, /* 0x1dc0 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1dd0 */ 48, 48, 48, 48, 49, 56, 51, 48, 32, 32, 50, 42, 42, 48, 32, 32, /* 0x1dd0 */ 48, 48, 48, 48, 49, 56, 51, 48, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1de0 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, /* 0x1de0 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78,
/* 0x1df0 */ 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, /* 0x1df0 */ 76, 89, 10, 83, 89, 77, 66, 79, 76, 32, 84, 65, 66, 76, 69, 58,
/* 0x1e00 */ 32, 84, 65, 66, 76, 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1e00 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100,
/* 0x1e10 */ 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, /* 0x1e10 */ 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 9, 48, 48, 48,
/* 0x1e20 */ 67, 51, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, /* 0x1e20 */ 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48,
/* 0x1e30 */ 65, 95, 68, 69, 67, 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1e30 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100,
/* 0x1e40 */ 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, /* 0x1e40 */ 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 9, 48, 48, 48, 48, 48,
/* 0x1e50 */ 76, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, /* 0x1e50 */ 48, 48, 48, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 48, 48, 48,
/* 0x1e60 */ 65, 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, /* 0x1e60 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 77, 65,
/* 0x1e70 */ 32, 32,100, 32, 32, 77, 65, 67, 72, 77, 65, 73, 78, 90, 9, 48, /* 0x1e70 */ 67, 72, 77, 65, 73, 78, 90, 9, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1e80 */ 48, 48, 48, 48, 48, 48, 48, 32, 77, 65, 67, 72, 77, 65, 73, 78, /* 0x1e80 */ 32, 77, 65, 67, 72, 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48,
/* 0x1e90 */ 90, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32, /* 0x1e90 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 80, 80, 67, 51,
/* 0x1ea0 */ 100, 32, 32, 80, 80, 67, 51, 50, 66, 88, 88, 9, 48, 48, 48, 48, /* 0x1ea0 */ 50, 66, 88, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 80, 80,
/* 0x1eb0 */ 48, 48, 48, 48, 32, 80, 80, 67, 51, 50, 66, 88, 88, 10, 48, 48, /* 0x1eb0 */ 67, 51, 50, 66, 88, 88, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1ec0 */ 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 77, /* 0x1ec0 */ 108, 32, 32, 32, 32,100, 32, 32, 77, 65, 67, 77, 65, 73, 78, 88,
/* 0x1ed0 */ 65, 67, 77, 65, 73, 78, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1ed0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 77, 65, 67, 77, 65, 73,
/* 0x1ee0 */ 32, 77, 65, 67, 77, 65, 73, 78, 88, 10, 48, 48, 48, 48, 48, 48, /* 0x1ee0 */ 78, 88, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1ef0 */ 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 77, 65, 67, 72, 95, /* 0x1ef0 */ 32,100, 32, 32, 77, 65, 67, 72, 95, 85, 78, 67, 9, 48, 48, 48,
/* 0x1f00 */ 85, 78, 67, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 77, 65, 67, /* 0x1f00 */ 48, 48, 48, 48, 48, 32, 77, 65, 67, 72, 95, 85, 78, 67, 10, 48,
/* 0x1f10 */ 72, 95, 85, 78, 67, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, /* 0x1f10 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1f20 */ 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68, 9, /* 0x1f20 */ 78, 82, 86, 95, 72, 69, 65, 68, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x1f30 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 72, 69, 65, /* 0x1f30 */ 48, 32, 78, 82, 86, 95, 72, 69, 65, 68, 10, 48, 48, 48, 48, 48,
/* 0x1f40 */ 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32, /* 0x1f40 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50,
/* 0x1f50 */ 100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48, 48, 48, 48, 48, 48, /* 0x1f50 */ 69, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 69,
/* 0x1f60 */ 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1f60 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100,
/* 0x1f70 */ 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 9, 48, /* 0x1f70 */ 32, 32, 78, 82, 86, 50, 68, 9, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1f80 */ 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 68, 10, 48, 48, /* 0x1f80 */ 32, 78, 82, 86, 50, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1f90 */ 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, /* 0x1f90 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 66, 9, 48, 48,
/* 0x1fa0 */ 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, /* 0x1fa0 */ 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 66, 10, 48, 48, 48,
/* 0x1fb0 */ 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, /* 0x1fb0 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90,
/* 0x1fc0 */ 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 9, /* 0x1fc0 */ 77, 65, 95, 69, 76, 70, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x1fd0 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 69, 76, /* 0x1fd0 */ 48, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 10, 48, 48, 48,
/* 0x1fe0 */ 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, /* 0x1fe0 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90,
/* 0x1ff0 */ 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, 9, /* 0x1ff0 */ 77, 65, 95, 68, 69, 67, 49, 48, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x2000 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, 69, /* 0x2000 */ 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, 10, 48, 48, 48,
/* 0x2010 */ 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, /* 0x2010 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90,
/* 0x2020 */ 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, 9, /* 0x2020 */ 77, 65, 95, 68, 69, 67, 50, 48, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x2030 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, 69, /* 0x2030 */ 48, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, 10, 48, 48, 48,
/* 0x2040 */ 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, /* 0x2040 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 67, 70,
/* 0x2050 */ 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72, 9, 48, 48, 48, 48, /* 0x2050 */ 76, 85, 83, 72, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 67, 70,
/* 0x2060 */ 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72, 10, 48, 48, 48, 48, /* 0x2060 */ 76, 85, 83, 72, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32,
/* 0x2070 */ 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 77, 65, 67, /* 0x2070 */ 32, 32, 32,100, 32, 32, 77, 65, 67, 72, 77, 65, 73, 78, 89, 9,
/* 0x2080 */ 72, 77, 65, 73, 78, 89, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x2080 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 77, 65, 67, 72, 77, 65, 73,
/* 0x2090 */ 77, 65, 67, 72, 77, 65, 73, 78, 89, 10, 48, 48, 48, 48, 48, 48, /* 0x2090 */ 78, 89, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,103, 32, 32, 32,
/* 0x20a0 */ 48, 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 77, 65, 67, 77, 65, /* 0x20a0 */ 32, 32, 32, 32, 77, 65, 67, 77, 65, 73, 78, 88, 9, 48, 48, 48,
/* 0x20b0 */ 73, 78, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 95,115,116, /* 0x20b0 */ 48, 48, 48, 48, 48, 32, 95,115,116, 97,114,116, 10, 10, 82, 69,
/* 0x20c0 */ 97,114,116, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32, 32, /* 0x20c0 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83,
/* 0x20d0 */ 32, 32, 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, 48, 48, 48, 48, /* 0x20d0 */ 32, 70, 79, 82, 32, 91, 77, 65, 67, 77, 65, 73, 78, 88, 93, 58,
/* 0x20e0 */ 48, 48, 48, 32, 79, 95, 66, 73, 78, 70, 79, 10, 10, 82, 69, 76, /* 0x20e0 */ 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32,
/* 0x20f0 */ 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, /* 0x20f0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85,
/* 0x2100 */ 70, 79, 82, 32, 91, 77, 65, 67, 77, 65, 73, 78, 88, 93, 58, 10, /* 0x2100 */ 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 80, 80, 67,
/* 0x2110 */ 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, /* 0x2110 */ 95, 82, 69, 76, 50, 52, 32, 32, 32, 32, 32, 32, 32, 77, 65, 67,
/* 0x2120 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, /* 0x2120 */ 72, 77, 65, 73, 78, 90, 43, 48,120, 48, 48, 48, 48, 48, 48, 52,
/* 0x2130 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 80, 80, 67, 95, /* 0x2130 */ 56, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69,
/* 0x2140 */ 82, 69, 76, 50, 52, 32, 32, 32, 32, 32, 32, 32, 77, 65, 67, 72, /* 0x2140 */ 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 69,
/* 0x2150 */ 77, 65, 73, 78, 90, 43, 48,120, 48, 48, 48, 48, 48, 48, 52, 56, /* 0x2150 */ 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69,
/* 0x2160 */ 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, /* 0x2160 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65,
/* 0x2170 */ 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 69, 93, /* 0x2170 */ 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80,
/* 0x2180 */ 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, /* 0x2180 */ 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78,
/* 0x2190 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, /* 0x2190 */ 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84,
/* 0x21a0 */ 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, 80, 80, /* 0x21a0 */ 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32,
/* 0x21b0 */ 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, /* 0x21b0 */ 91, 78, 82, 86, 50, 68, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32,
/* 0x21c0 */ 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, /* 0x21c0 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x21d0 */ 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, /* 0x21d0 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48,
/* 0x21e0 */ 78, 82, 86, 50, 68, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, /* 0x21e0 */ 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32,
/* 0x21f0 */ 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x21f0 */ 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82,
/* 0x2200 */ 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, /* 0x2200 */ 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68,
/* 0x2210 */ 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, /* 0x2210 */ 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 66, 93, 58, 10, 79,
/* 0x2220 */ 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, /* 0x2220 */ 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32,
/* 0x2230 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, /* 0x2230 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10,
/* 0x2240 */ 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 66, 93, 58, 10, 79, 70, /* 0x2240 */ 48, 48, 48, 48, 48, 48, 57, 48, 32, 82, 95, 80, 80, 67, 95, 82,
/* 0x2250 */ 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, /* 0x2250 */ 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84,
/* 0x2260 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, /* 0x2260 */ 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32,
/* 0x2270 */ 48, 48, 48, 48, 48, 57, 48, 32, 82, 95, 80, 80, 67, 95, 82, 69, /* 0x2270 */ 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 90, 77,
/* 0x2280 */ 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, /* 0x2280 */ 65, 95, 69, 76, 70, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84,
/* 0x2290 */ 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, /* 0x2290 */ 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x22a0 */ 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 90, 77, 65, /* 0x22a0 */ 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48,
/* 0x22b0 */ 95, 69, 76, 70, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, /* 0x22b0 */ 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32,
/* 0x22c0 */ 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x22c0 */ 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48,
/* 0x22d0 */ 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, /* 0x22d0 */ 43, 48,120, 48, 48, 48, 48, 48, 48, 50, 52, 10
/* 0x22e0 */ 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32,
/* 0x22f0 */ 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 43,
/* 0x2300 */ 48,120, 48, 48, 48, 48, 48, 48, 50, 52, 10, 10, 82, 69, 76, 79,
/* 0x2310 */ 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70,
/* 0x2320 */ 79, 82, 32, 91, 77, 65, 67, 72, 77, 65, 73, 78, 90, 93, 58, 10,
/* 0x2330 */ 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32,
/* 0x2340 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69,
/* 0x2350 */ 10, 48, 48, 48, 48, 48, 48, 53, 52, 32, 82, 95, 80, 80, 67, 95,
/* 0x2360 */ 65, 68, 68, 82, 51, 50, 32, 32, 32, 32, 32, 32, 79, 95, 66, 73,
/* 0x2370 */ 78, 70, 79, 10
}; };
+7 -7
View File
@@ -32,23 +32,23 @@
#define STUB_POWERPC_DARWIN_MACHO_FOLD_SIZE 2564 #define STUB_POWERPC_DARWIN_MACHO_FOLD_SIZE 2564
#define STUB_POWERPC_DARWIN_MACHO_FOLD_ADLER32 0x4c75bfa4 #define STUB_POWERPC_DARWIN_MACHO_FOLD_ADLER32 0xfba2bc8a
#define STUB_POWERPC_DARWIN_MACHO_FOLD_CRC32 0xf7d60c1b #define STUB_POWERPC_DARWIN_MACHO_FOLD_CRC32 0xbb9b4325
unsigned char stub_powerpc_darwin_macho_fold[2564] = { unsigned char stub_powerpc_darwin_macho_fold[2564] = {
/* 0x0000 */ 72, 0, 0,105, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191, /* 0x0000 */ 72, 0, 0,105, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191,
/* 0x0010 */ 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8, /* 0x0010 */ 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8,
/* 0x0020 */ 124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, 56, 99,255,252, /* 0x0020 */ 124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, 56, 99,255,252,
/* 0x0030 */ 124,137, 3,166, 72, 0, 0, 28, 84, 75, 2,186,125, 99, 88, 80, /* 0x0030 */ 124,137, 3,166, 72, 0, 0, 28, 85, 96, 2,186,124, 3, 0, 80,
/* 0x0040 */ 125,107, 58, 20, 81, 98, 1,186,144, 67, 0, 0, 78, 64, 0, 32, /* 0x0040 */ 124, 0, 58, 20, 80, 11, 1,186,145, 99, 0, 0, 78, 64, 0, 32,
/* 0x0050 */ 132, 67, 0, 4, 84, 75, 85,190,124, 11, 40, 64, 65,162,255,220, /* 0x0050 */ 133, 99, 0, 4, 85, 96, 85,190,124, 0, 40, 64, 65,162,255,220,
/* 0x0060 */ 66, 0,255,240, 78,128, 0, 32, 56, 33, 0, 24, 57, 32, 0, 0, /* 0x0060 */ 66, 0,255,240, 78,128, 0, 32, 56, 33, 0, 24, 57, 32, 0, 0,
/* 0x0070 */ 149, 33,255,252,124, 41, 11,120,125, 8, 2,166,128,159,255,248, /* 0x0070 */ 149, 33,255,252,124, 41, 11,120,125, 8, 2,166,128,159,255,248,
/* 0x0080 */ 124,100,248, 80,128,195, 0, 24, 40, 6, 8, 0, 65,129, 0, 8, /* 0x0080 */ 124,100,248, 80,128,195, 0, 24, 40, 6, 8, 0, 65,129, 0, 8,
/* 0x0090 */ 56,192, 8, 0,124, 61, 11,120,124, 38, 8, 80,124, 37, 11,120, /* 0x0090 */ 56,192, 8, 0,124, 61, 11,120,124, 38, 8, 80,124, 37, 11,120,
/* 0x00a0 */ 56, 33,255,232,127,231,251,120, 72, 0, 6,253,127,161,235,120, /* 0x00a0 */ 56, 33,255,232,127,231,251,120, 72, 0, 6,253,127,161,235,120,
/* 0x00b0 */ 128, 67, 0, 0,124, 73, 3,166,128, 67, 0,136,124, 79,241, 32, /* 0x00b0 */ 128, 3, 0, 0,124, 9, 3,166,128, 3, 0,136,124, 15,241, 32,
/* 0x00c0 */ 128, 67, 0,140,124, 65, 3,166,128, 67, 0,144,124, 72, 3,166, /* 0x00c0 */ 128, 3, 0,140,124, 1, 3,166,128, 3, 0,144,124, 8, 3,166,
/* 0x00d0 */ 184,131, 0, 24,128, 3, 0, 8,128, 67, 0, 16,128, 99, 0, 20, /* 0x00d0 */ 184,131, 0, 24,128, 3, 0, 8,128, 67, 0, 16,128, 99, 0, 20,
/* 0x00e0 */ 78,128, 4, 32,124,199, 51,120, 56,192, 0, 0, 56, 0, 0,153, /* 0x00e0 */ 78,128, 4, 32,124,199, 51,120, 56,192, 0, 0, 56, 0, 0,153,
/* 0x00f0 */ 72, 0, 0, 16,125, 9, 67,120, 57, 0, 0, 0, 56, 0, 0,197, /* 0x00f0 */ 72, 0, 0, 16,125, 9, 67,120, 57, 0, 0, 0, 56, 0, 0,197,
+214 -196
View File
@@ -1,5 +1,5 @@
/* powerpc-linux.elf-entry.h /* powerpc-linux.elf-entry.h
created from powerpc-linux.elf-entry.bin, 9042 (0x2352) bytes created from powerpc-linux.elf-entry.bin, 9333 (0x2475) bytes
This file is part of the UPX executable compressor. This file is part of the UPX executable compressor.
@@ -31,15 +31,15 @@
*/ */
#define STUB_POWERPC_LINUX_ELF_ENTRY_SIZE 9042 #define STUB_POWERPC_LINUX_ELF_ENTRY_SIZE 9333
#define STUB_POWERPC_LINUX_ELF_ENTRY_ADLER32 0x038832c3 #define STUB_POWERPC_LINUX_ELF_ENTRY_ADLER32 0x0fce77f6
#define STUB_POWERPC_LINUX_ELF_ENTRY_CRC32 0x2a7eb489 #define STUB_POWERPC_LINUX_ELF_ENTRY_CRC32 0x5aca59c2
unsigned char stub_powerpc_linux_elf_entry[9042] = { unsigned char stub_powerpc_linux_elf_entry[9333] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 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, /* 0x0010 */ 0, 1, 0, 20, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0020 */ 0, 0, 25,136, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40, /* 0x0020 */ 0, 0, 25,220, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 40,
/* 0x0030 */ 0, 0, 0, 0, 72, 0, 0,217,124, 0, 41,236,125,168, 2,166, /* 0x0030 */ 0, 0, 0, 0, 72, 0, 1, 29,124, 0, 41,236,125,168, 2,166,
/* 0x0040 */ 40, 7, 0, 8, 64,130, 1, 60,144,166, 0, 0,124,132, 26, 20, /* 0x0040 */ 40, 7, 0, 8, 64,130, 1, 60,144,166, 0, 0,124,132, 26, 20,
/* 0x0050 */ 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255, 56,165,255,255, /* 0x0050 */ 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255, 56,165,255,255,
/* 0x0060 */ 57, 64,255,255, 72, 0, 1, 12, 57, 32, 0, 1,125, 41, 28, 44, /* 0x0060 */ 57, 64,255,255, 72, 0, 1, 12, 57, 32, 0, 1,125, 41, 28, 44,
@@ -50,8 +50,8 @@ unsigned char stub_powerpc_linux_elf_entry[9042] = {
/* 0x00b0 */ 124,231, 57, 20,125, 41, 72, 21, 65,162,255,177,124,231, 57, 20, /* 0x00b0 */ 124,231, 57, 20,125, 41, 72, 21, 65,162,255,177,124,231, 57, 20,
/* 0x00c0 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161, 65,160,255,216, /* 0x00c0 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161, 65,160,255,216,
/* 0x00d0 */ 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46, 65,128, 0, 32, /* 0x00d0 */ 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46, 65,128, 0, 32,
/* 0x00e0 */ 140, 67, 0, 1,124,234, 16,249,125, 74, 14,112, 65,130, 0, 0, /* 0x00e0 */ 141, 99, 0, 1,124,234, 88,249,125, 74, 14,112, 65,130, 0, 0,
/* 0x00f0 */ 112, 66, 0, 1, 65,162, 0, 80, 72, 0, 0, 20,124, 9, 0, 64, /* 0x00f0 */ 113,107, 0, 1, 65,162, 0, 80, 72, 0, 0, 20,124, 9, 0, 64,
/* 0x0100 */ 125, 41, 74, 20, 65,162,255,101, 65,161, 0, 60, 57, 0, 0, 1, /* 0x0100 */ 125, 41, 74, 20, 65,162,255,101, 65,161, 0, 60, 57, 0, 0, 1,
/* 0x0110 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255, 81, 65,161, 0, 40, /* 0x0110 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255, 81, 65,161, 0, 40,
/* 0x0120 */ 125, 41, 72, 21, 65,162,255, 69,125, 8, 65, 20,124, 9, 0, 64, /* 0x0120 */ 125, 41, 72, 21, 65,162,255, 69,125, 8, 65, 20,124, 9, 0, 64,
@@ -70,7 +70,7 @@ unsigned char stub_powerpc_linux_elf_entry[9042] = {
/* 0x01f0 */ 125, 41, 72, 21, 65,162,255,189,124,231, 57, 21,125, 41, 72, 21, /* 0x01f0 */ 125, 41, 72, 21, 65,162,255,189,124,231, 57, 21,125, 41, 72, 21,
/* 0x0200 */ 65,162,255,177,124,231, 57, 21,124, 9, 0, 64,125, 41, 74, 20, /* 0x0200 */ 65,162,255,177,124,231, 57, 21,124, 9, 0, 64,125, 41, 74, 20,
/* 0x0210 */ 65,162,255,161, 65,160,255,216, 57, 0, 0, 0, 52,231,255,253, /* 0x0210 */ 65,162,255,161, 65,160,255,216, 57, 0, 0, 0, 52,231,255,253,
/* 0x0220 */ 84,231, 64, 46, 65,128, 0, 24,140, 67, 0, 1,124,234, 16,249, /* 0x0220 */ 84,231, 64, 46, 65,128, 0, 24,141, 99, 0, 1,124,234, 88,249,
/* 0x0230 */ 125, 74, 14,112, 65,130, 0, 0, 72, 0, 0, 12,125, 41, 72, 21, /* 0x0230 */ 125, 74, 14,112, 65,130, 0, 0, 72, 0, 0, 12,125, 41, 72, 21,
/* 0x0240 */ 65,162,255,113,125, 8, 65, 21,125, 41, 72, 21, 65,162,255,101, /* 0x0240 */ 65,162,255,113,125, 8, 65, 21,125, 41, 72, 21, 65,162,255,101,
/* 0x0250 */ 125, 8, 65, 21, 64,130, 0, 40, 57, 0, 0, 1,125, 41, 72, 21, /* 0x0250 */ 125, 8, 65, 21, 64,130, 0, 40, 57, 0, 0, 1,125, 41, 72, 21,
@@ -87,22 +87,22 @@ unsigned char stub_powerpc_linux_elf_entry[9042] = {
/* 0x0300 */ 141, 3, 0, 1,157, 5, 0, 1, 75,255,255,213, 65,129,255,244, /* 0x0300 */ 141, 3, 0, 1,157, 5, 0, 1, 75,255,255,213, 65,129,255,244,
/* 0x0310 */ 56,224, 0, 1, 75,255,255,201,124,231, 57, 21, 75,255,255,193, /* 0x0310 */ 56,224, 0, 1, 75,255,255,201,124,231, 57, 21, 75,255,255,193,
/* 0x0320 */ 65,160,255,244, 52,231,255,253, 57, 0, 0, 0, 65,128, 0, 20, /* 0x0320 */ 65,160,255,244, 52,231,255,253, 57, 0, 0, 0, 65,128, 0, 20,
/* 0x0330 */ 140, 67, 0, 1, 84,231, 64, 46,124,234, 16,249, 65,130, 0, 0, /* 0x0330 */ 141, 99, 0, 1, 84,231, 64, 46,124,234, 88,249, 65,130, 0, 0,
/* 0x0340 */ 75,255,255,157,125, 8, 65, 21, 75,255,255,149,125, 8, 65, 21, /* 0x0340 */ 75,255,255,157,125, 8, 65, 21, 75,255,255,149,125, 8, 65, 21,
/* 0x0350 */ 56,224, 0, 1, 64,130, 0, 28, 56,224, 0, 3, 57, 0, 0, 1, /* 0x0350 */ 56,224, 0, 1, 64,130, 0, 28, 56,224, 0, 3, 57, 0, 0, 1,
/* 0x0360 */ 75,255,255,125,125, 8, 65, 21, 75,255,255,117, 65,160,255,244, /* 0x0360 */ 75,255,255,125,125, 8, 65, 21, 75,255,255,117, 65,160,255,244,
/* 0x0370 */ 32, 74,242,255,125, 8, 57, 20,124,234, 42, 20,125, 9, 3,166, /* 0x0370 */ 33,106,242,255,125, 8, 57, 20,124,234, 42, 20,125, 9, 3,166,
/* 0x0380 */ 141, 7, 0, 1,157, 5, 0, 1, 66, 0,255,248, 56,224, 1, 0, /* 0x0380 */ 141, 7, 0, 1,157, 5, 0, 1, 66, 0,255,248, 56,224, 1, 0,
/* 0x0390 */ 124, 7, 41,236,124, 7, 26, 44, 75,255,255,112, 40, 7, 0, 14, /* 0x0390 */ 124, 7, 41,236,124, 7, 26, 44, 75,255,255,112, 40, 7, 0, 14,
/* 0x03a0 */ 64,130, 0, 36,148, 33,255,232,124, 8, 2,166,124,201, 51,120, /* 0x03a0 */ 64,130, 0, 36,148, 33,255,232,124, 8, 2,166,124,201, 51,120,
/* 0x03b0 */ 129, 6, 0, 0,124,167, 43,120, 56,164,255,254, 56,131, 0, 2, /* 0x03b0 */ 129, 6, 0, 0,124,167, 43,120, 56,164,255,254, 56,131, 0, 2,
/* 0x03c0 */ 144, 1, 0, 8,136, 3, 0, 0, 84, 11,232,254, 84, 2, 7,126, /* 0x03c0 */ 144, 1, 0, 8,136, 3, 0, 0, 84, 11,232,254, 84, 12, 7,126,
/* 0x03d0 */ 56, 96,250, 0,124, 99, 88, 48, 56, 99,241,124,124, 38, 11,120, /* 0x03d0 */ 56, 96,250, 0,124, 99, 88, 48, 56, 99,241,124,124, 38, 11,120,
/* 0x03e0 */ 124, 33, 26, 20, 84, 33, 0, 52, 56, 0, 0, 0,124,195, 51,120, /* 0x03e0 */ 124, 33, 26, 20, 84, 33, 0, 52, 56, 0, 0, 0,124,195, 51,120,
/* 0x03f0 */ 144, 9, 0, 0,148, 3,255,252,124, 1, 24, 64, 65,128,255,248, /* 0x03f0 */ 144, 9, 0, 0,148, 3,255,252,124, 1, 24, 64, 65,128,255,248,
/* 0x0400 */ 144,193, 0, 0,136, 4,255,255,144,225, 0, 8, 56,193, 0, 16, /* 0x0400 */ 144,193, 0, 0,136, 4,255,255,144,225, 0, 8, 56,193, 0, 16,
/* 0x0410 */ 145, 33, 0, 12, 56, 97, 0, 20, 84, 11,225, 62, 84, 0, 7, 62, /* 0x0410 */ 145, 33, 0, 12, 56, 97, 0, 20, 84, 11,225, 62, 84, 0, 7, 62,
/* 0x0420 */ 152, 67, 0, 2,153, 99, 0, 1,152, 3, 0, 0,124, 8, 2,166, /* 0x0420 */ 153,131, 0, 2,153, 99, 0, 1,152, 3, 0, 0,124, 8, 2,166,
/* 0x0430 */ 148, 33,255,160,189,193, 0, 24, 59, 32, 0, 0,125, 40, 3,166, /* 0x0430 */ 148, 33,255,160,189,193, 0, 24, 59, 32, 0, 0,125, 40, 3,166,
/* 0x0440 */ 124,206, 51,120,124,147, 35,120,144, 1, 0,100,124,245, 59,120, /* 0x0440 */ 124,206, 51,120,124,147, 35,120,144, 1, 0,100,124,245, 59,120,
/* 0x0450 */ 125, 20, 67,120,137, 67, 0, 2, 59, 3, 0, 4, 59,224, 0, 0, /* 0x0450 */ 125, 20, 67,120,137, 67, 0, 2, 59, 3, 0, 4, 59,224, 0, 0,
@@ -420,186 +420,204 @@ unsigned char stub_powerpc_linux_elf_entry[9042] = {
/* 0x17d0 */ 95, 69, 88, 69, 67,124, 80, 82, 79, 84, 95, 87, 82, 73, 84, 69, /* 0x17d0 */ 95, 69, 88, 69, 67,124, 80, 82, 79, 84, 95, 87, 82, 73, 84, 69,
/* 0x17e0 */ 32,102, 97,105,108,101,100, 46, 10, 0, 56,160, 0, 30,124,136, /* 0x17e0 */ 32,102, 97,105,108,101,100, 46, 10, 0, 56,160, 0, 30,124,136,
/* 0x17f0 */ 2,166, 56, 96, 0, 2, 56, 0, 0, 4, 68, 0, 0, 2, 56, 96, /* 0x17f0 */ 2,166, 56, 96, 0, 2, 56, 0, 0, 4, 68, 0, 0, 2, 56, 96,
/* 0x1800 */ 0,127, 56, 0, 0, 1, 68, 0, 0, 2,128, 67, 0, 0, 56, 99, /* 0x1800 */ 0,127, 56, 0, 0, 1, 68, 0, 0, 2,128, 3, 0, 0, 56, 99,
/* 0x1810 */ 0, 4, 47,130, 0, 0, 64,158,255,244, 78,128, 0, 32,127,200, /* 0x1810 */ 0, 4, 47,128, 0, 0, 64,158,255,244, 78,128, 0, 32,127,200,
/* 0x1820 */ 2,166,131, 94, 0, 0, 56, 97, 0,128, 75,255,255,225, 75,255, /* 0x1820 */ 2,166,131, 31,255,248,131, 94, 0, 12,130,254, 0, 8, 56, 97,
/* 0x1830 */ 255,221,124,124, 27,120,128, 67, 0, 0,128,131, 0, 4, 56, 99, /* 0x1830 */ 0,144, 75,255,255,217, 75,255,255,213,124,124, 27,120,128, 3,
/* 0x1840 */ 0, 8, 44, 2, 0, 6, 65,130, 0, 16, 44, 2, 0, 0, 64,130, /* 0x1840 */ 0, 0,128,131, 0, 4, 56, 99, 0, 8, 44, 0, 0, 6, 65,130,
/* 0x1850 */ 255,232, 56,128, 16, 0,124,155, 35,120, 57, 0, 0, 0, 56,224, /* 0x1850 */ 0, 16, 44, 0, 0, 0, 64,130,255,232, 56,128, 16, 0,124,155,
/* 0x1860 */ 255,255, 56,192, 0, 34, 56,160, 0, 7,128,126, 0, 8, 56, 99, /* 0x1860 */ 35,120, 57, 0, 0, 0, 56,224,255,255, 56,192, 0, 34, 56,160,
/* 0x1870 */ 0, 12, 56, 68,255,255,124, 99,242, 20,124, 99, 18, 20,124, 66, /* 0x1870 */ 0, 7,128,158, 0, 4,128,126, 0, 0, 56, 0, 0, 90,124,110,
/* 0x1880 */ 24, 56,124, 98, 24, 80, 56, 0, 0, 90,124,110, 27,120, 68, 0, /* 0x1880 */ 27,120, 68, 0, 0, 2,124, 14, 24, 64, 64,130, 0, 0,128, 30,
/* 0x1890 */ 0, 2,124, 14, 24, 64, 64,130, 0, 0,127,233, 3,166,128, 30, /* 0x1890 */ 0, 4, 58,192, 0, 0,124, 0,216, 64, 64,129, 0, 68, 59, 24,
/* 0x18a0 */ 0, 4,136,254, 0, 12, 56,193, 0,124,144, 1, 0,124,124,101, /* 0x18a0 */ 0, 8,127, 24,248, 80,126,216, 24, 80,127,255,178, 20,127, 57,
/* 0x18b0 */ 27,120,124,104, 3,166,128,158, 0, 8, 56,126, 0, 16, 78,128, /* 0x18b0 */ 178, 20,127, 24,178, 20, 56, 0, 0, 7, 56,132,255,252, 84, 0,
/* 0x18c0 */ 4, 32,148, 33,255,128,188, 65, 0, 4,127,232, 2,166, 75,255, /* 0x18c0 */ 232,254, 56, 99,255,252,124, 9, 3,166,129,100, 0, 4,133,132,
/* 0x18d0 */ 255, 81, 0, 0, 0, 0,102,105,108,101, 32,102,111,114,109, 97, /* 0x18d0 */ 0, 8,145, 99, 0, 4,149,131, 0, 8, 66, 0,255,240,127,233,
/* 0x18e0 */ 116, 32,101,108,102, 51, 50, 45,112,111,119,101,114,112, 99, 10, /* 0x18e0 */ 3,166,128, 30, 0, 16,136,254, 0, 24, 56,193, 0,140,144, 1,
/* 0x18f0 */ 10, 83,101, 99,116,105,111,110,115, 58, 10, 73,100,120, 32, 78, /* 0x18f0 */ 0,140,125,197,115,120,125,200, 3,166,128,158, 0, 20, 56,126,
/* 0x1900 */ 97,109,101, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 83,105,122, /* 0x1900 */ 0, 28, 78,128, 4, 32,124,128, 0, 8,148, 33,255,112,188, 65,
/* 0x1910 */ 101, 32, 32, 32, 32, 32, 32, 86, 77, 65, 32, 32, 32, 32, 32, 32, /* 0x1910 */ 0, 20,127,232, 2,166, 75,255,255, 9, 0, 0, 0, 0, 0, 0,
/* 0x1920 */ 32, 76, 77, 65, 32, 32, 32, 32, 32, 32, 32, 70,105,108,101, 32, /* 0x1920 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,102,105,108,101, 32,102,
/* 0x1930 */ 111,102,102, 32, 32, 65,108,103,110, 32, 32, 70,108, 97,103,115, /* 0x1930 */ 111,114,109, 97,116, 32,101,108,102, 51, 50, 45,112,111,119,101,
/* 0x1940 */ 10, 32, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78, 88, 32, 32, 32, /* 0x1940 */ 114,112, 99, 10, 10, 83,101, 99,116,105,111,110,115, 58, 10, 73,
/* 0x1950 */ 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 52, 32, 32, 48, 48, 48, /* 0x1950 */ 100,120, 32, 78, 97,109,101, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x1960 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1960 */ 32, 83,105,122,101, 32, 32, 32, 32, 32, 32, 86, 77, 65, 32, 32,
/* 0x1970 */ 32, 48, 48, 48, 48, 48, 48, 51, 52, 32, 32, 50, 42, 42, 48, 32, /* 0x1970 */ 32, 32, 32, 32, 32, 76, 77, 65, 32, 32, 32, 32, 32, 32, 32, 70,
/* 0x1980 */ 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, /* 0x1980 */ 105,108,101, 32,111,102,102, 32, 32, 65,108,103,110, 32, 32, 70,
/* 0x1990 */ 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 49, 32, 78, /* 0x1990 */ 108, 97,103,115, 10, 32, 32, 48, 32, 69, 76, 70, 77, 65, 73, 78,
/* 0x19a0 */ 82, 86, 95, 72, 69, 65, 68, 32, 32, 32, 32, 32, 32, 48, 48, 48, /* 0x19a0 */ 88, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 48, 52, 32,
/* 0x19b0 */ 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x19b0 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,
/* 0x19c0 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, /* 0x19c0 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 51, 52, 32, 32, 50,
/* 0x19d0 */ 48, 51, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, /* 0x19d0 */ 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82,
/* 0x19e0 */ 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, /* 0x19e0 */ 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32,
/* 0x19f0 */ 50, 32, 78, 82, 86, 50, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x19f0 */ 32, 49, 32, 78, 82, 86, 95, 72, 69, 65, 68, 32, 32, 32, 32, 32,
/* 0x1a00 */ 48, 48, 48, 48, 48, 49, 52, 56, 32, 32, 48, 48, 48, 48, 48, 48, /* 0x1a00 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,
/* 0x1a10 */ 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, /* 0x1a10 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1a20 */ 48, 48, 48, 48, 51, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, /* 0x1a20 */ 48, 48, 48, 48, 48, 51, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67,
/* 0x1a30 */ 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, /* 0x1a30 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76,
/* 0x1a40 */ 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 51, 32, 78, 82, 86, 50, /* 0x1a40 */ 89, 10, 32, 32, 50, 32, 78, 82, 86, 50, 69, 32, 32, 32, 32, 32,
/* 0x1a50 */ 68, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, /* 0x1a50 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, 52, 56, 32, 32, 48, 48,
/* 0x1a60 */ 50, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, /* 0x1a60 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1a70 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 49, 56, 48, /* 0x1a70 */ 32, 32, 48, 48, 48, 48, 48, 48, 51, 56, 32, 32, 50, 42, 42, 48,
/* 0x1a80 */ 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, /* 0x1a80 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79,
/* 0x1a90 */ 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, /* 0x1a90 */ 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 51, 32,
/* 0x1aa0 */ 89, 10, 32, 32, 52, 32, 78, 82, 86, 50, 66, 32, 32, 32, 32, 32, /* 0x1aa0 */ 78, 82, 86, 50, 68, 32, 32, 32, 32, 32, 32, 32, 32, 32, 48, 48,
/* 0x1ab0 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 48,102, 48, 32, 32, 48, 48, /* 0x1ab0 */ 48, 48, 48, 49, 50, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48,
/* 0x1ac0 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1ac0 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1ad0 */ 32, 32, 48, 48, 48, 48, 48, 50, 97, 99, 32, 32, 50, 42, 42, 48, /* 0x1ad0 */ 48, 49, 56, 48, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84,
/* 0x1ae0 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, /* 0x1ae0 */ 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65,
/* 0x1af0 */ 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 53, 32, /* 0x1af0 */ 68, 79, 78, 76, 89, 10, 32, 32, 52, 32, 78, 82, 86, 50, 66, 32,
/* 0x1b00 */ 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 32, 32, 32, 32, 48, 48, /* 0x1b00 */ 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48,102, 48,
/* 0x1b10 */ 48, 48, 48, 48, 57, 48, 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 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, /* 0x1b20 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 50, 97, 99, 32, 32,
/* 0x1b30 */ 48, 51, 57, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, /* 0x1b30 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1b40 */ 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, /* 0x1b40 */ 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10,
/* 0x1b50 */ 68, 79, 78, 76, 89, 10, 32, 32, 54, 32, 76, 90, 77, 65, 95, 68, /* 0x1b50 */ 32, 32, 53, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 32, 32,
/* 0x1b60 */ 69, 67, 49, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, 57, 57, 99, /* 0x1b60 */ 32, 32, 48, 48, 48, 48, 48, 48, 57, 48, 32, 32, 48, 48, 48, 48,
/* 0x1b70 */ 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, 48, 48, 48, 32, 32,
/* 0x1b80 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 52, 50, 99, 32, 32, /* 0x1b80 */ 48, 48, 48, 48, 48, 51, 57, 99, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1b90 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, /* 0x1b90 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44,
/* 0x1ba0 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 55, 32, 76, 90, 77, /* 0x1ba0 */ 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 54, 32, 76, 90,
/* 0x1bb0 */ 65, 95, 68, 69, 67, 50, 48, 32, 32, 32, 32, 48, 48, 48, 48, 48, /* 0x1bb0 */ 77, 65, 95, 68, 69, 67, 49, 48, 32, 32, 32, 32, 48, 48, 48, 48,
/* 0x1bc0 */ 57, 57, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, /* 0x1bc0 */ 48, 57, 57, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1bd0 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48,100, 99, /* 0x1bd0 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 52,
/* 0x1be0 */ 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, /* 0x1be0 */ 50, 99, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78,
/* 0x1bf0 */ 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 56, 32, /* 0x1bf0 */ 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 32, 55,
/* 0x1c00 */ 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 32, 32, 32, 32, 48, 48, /* 0x1c00 */ 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, 32, 32, 32, 32, 48,
/* 0x1c10 */ 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1c10 */ 48, 48, 48, 48, 57, 57, 99, 32, 32, 48, 48, 48, 48, 48, 48, 48,
/* 0x1c20 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, /* 0x1c20 */ 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48,
/* 0x1c30 */ 49, 55, 54, 52, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, /* 0x1c30 */ 48, 48,100, 99, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78,
/* 0x1c40 */ 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, /* 0x1c40 */ 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10,
/* 0x1c50 */ 32, 57, 32, 78, 82, 86, 95, 84, 65, 73, 76, 32, 32, 32, 32, 32, /* 0x1c50 */ 32, 32, 56, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 32, 32,
/* 0x1c60 */ 32, 48, 48, 48, 48, 48, 48, 49, 99, 32, 32, 48, 48, 48, 48, 48, /* 0x1c60 */ 32, 32, 48, 48, 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, 48, 48,
/* 0x1c70 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, /* 0x1c70 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32,
/* 0x1c80 */ 48, 48, 48, 49, 55, 56, 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, /* 0x1c80 */ 48, 48, 48, 48, 49, 55, 54, 52, 32, 32, 50, 42, 42, 48, 32, 32,
/* 0x1c90 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78, 76, /* 0x1c90 */ 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, 79, 78,
/* 0x1ca0 */ 89, 10, 32, 49, 48, 32, 67, 70, 76, 85, 83, 72, 32, 32, 32, 32, /* 0x1ca0 */ 76, 89, 10, 32, 32, 57, 32, 78, 82, 86, 95, 84, 65, 73, 76, 32,
/* 0x1cb0 */ 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 52, 32, 32, 48, 48, /* 0x1cb0 */ 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 49, 99, 32, 32, 48,
/* 0x1cc0 */ 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, /* 0x1cc0 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48,
/* 0x1cd0 */ 32, 32, 48, 48, 48, 48, 49, 55, 97, 52, 32, 32, 50, 42, 42, 48, /* 0x1cd0 */ 48, 32, 32, 48, 48, 48, 48, 49, 55, 56, 56, 32, 32, 50, 42, 42,
/* 0x1ce0 */ 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65, 68, /* 0x1ce0 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 65,
/* 0x1cf0 */ 79, 78, 76, 89, 10, 32, 49, 49, 32, 69, 76, 70, 77, 65, 73, 78, /* 0x1cf0 */ 68, 79, 78, 76, 89, 10, 32, 49, 48, 32, 67, 70, 76, 85, 83, 72,
/* 0x1d00 */ 89, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 50, 32, /* 0x1d00 */ 32, 32, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 48, 50, 52,
/* 0x1d10 */ 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, /* 0x1d10 */ 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48,
/* 0x1d20 */ 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 99, 56, 32, 32, 50, /* 0x1d20 */ 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 49, 55, 97, 52, 32, 32,
/* 0x1d30 */ 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, /* 0x1d30 */ 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32,
/* 0x1d40 */ 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, /* 0x1d40 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 32, 49, 49, 32, 69, 76, 70,
/* 0x1d50 */ 49, 50, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32, 32, 32, 32, 32, /* 0x1d50 */ 77, 65, 73, 78, 89, 32, 32, 32, 32, 32, 32, 48, 48, 48, 48, 48,
/* 0x1d60 */ 32, 48, 48, 48, 48, 48, 48,101, 99, 32, 32, 48, 48, 48, 48, 48, /* 0x1d60 */ 48, 50, 50, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 48,
/* 0x1d70 */ 48, 48, 48, 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, 99,
/* 0x1d80 */ 48, 48, 48, 49, 55,101, 97, 32, 32, 50, 42, 42, 48, 32, 32, 67, /* 0x1d80 */ 56, 32, 32, 50, 42, 42, 48, 32, 32, 67, 79, 78, 84, 69, 78, 84,
/* 0x1d90 */ 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, /* 0x1d90 */ 83, 44, 32, 82, 69, 76, 79, 67, 44, 32, 82, 69, 65, 68, 79, 78,
/* 0x1da0 */ 82, 69, 65, 68, 79, 78, 76, 89, 10, 83, 89, 77, 66, 79, 76, 32, /* 0x1da0 */ 76, 89, 10, 32, 49, 50, 32, 69, 76, 70, 77, 65, 73, 78, 90, 32,
/* 0x1db0 */ 84, 65, 66, 76, 69, 58, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1db0 */ 32, 32, 32, 32, 32, 48, 48, 48, 48, 48, 49, 52, 48, 32, 32, 48,
/* 0x1dc0 */ 108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, /* 0x1dc0 */ 48, 48, 48, 48, 48, 48, 48, 32, 32, 48, 48, 48, 48, 48, 48, 48,
/* 0x1dd0 */ 51, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, /* 0x1dd0 */ 48, 32, 32, 48, 48, 48, 48, 49, 55,101, 97, 32, 32, 50, 42, 42,
/* 0x1de0 */ 95, 68, 69, 67, 51, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1de0 */ 48, 32, 32, 67, 79, 78, 84, 69, 78, 84, 83, 44, 32, 82, 69, 76,
/* 0x1df0 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, /* 0x1df0 */ 79, 67, 44, 32, 82, 69, 65, 68, 79, 78, 76, 89, 10, 83, 89, 77,
/* 0x1e00 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 84, 65, /* 0x1e00 */ 66, 79, 76, 32, 84, 65, 66, 76, 69, 58, 10, 48, 48, 48, 48, 48,
/* 0x1e10 */ 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1e10 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65,
/* 0x1e20 */ 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, 9, 48, 48, 48, /* 0x1e20 */ 95, 68, 69, 67, 51, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1e30 */ 48, 48, 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, /* 0x1e30 */ 76, 90, 77, 65, 95, 68, 69, 67, 51, 48, 10, 48, 48, 48, 48, 48,
/* 0x1e40 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, /* 0x1e40 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95,
/* 0x1e50 */ 69, 76, 70, 77, 65, 73, 78, 90, 9, 48, 48, 48, 48, 48, 48, 48, /* 0x1e50 */ 84, 65, 73, 76, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82,
/* 0x1e60 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48, 48, 48, 48, 48, /* 0x1e60 */ 86, 95, 84, 65, 73, 76, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1e70 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, /* 0x1e70 */ 108, 32, 32, 32, 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 89,
/* 0x1e80 */ 65, 73, 78, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 69, 76, /* 0x1e80 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 69, 76, 70, 77, 65, 73,
/* 0x1e90 */ 70, 77, 65, 73, 78, 88, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x1e90 */ 78, 89, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1ea0 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95, 72, 69, 65, 68, /* 0x1ea0 */ 32,100, 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 9, 48, 48, 48,
/* 0x1eb0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 95, 72, 69, /* 0x1eb0 */ 48, 48, 48, 48, 48, 32, 69, 76, 70, 77, 65, 73, 78, 90, 10, 48,
/* 0x1ec0 */ 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, /* 0x1ec0 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32,
/* 0x1ed0 */ 32,100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48, 48, 48, 48, 48, /* 0x1ed0 */ 69, 76, 70, 77, 65, 73, 78, 88, 9, 48, 48, 48, 48, 48, 48, 48,
/* 0x1ee0 */ 48, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48, 48, 48, 48, 48, /* 0x1ee0 */ 48, 32, 69, 76, 70, 77, 65, 73, 78, 88, 10, 48, 48, 48, 48, 48,
/* 0x1ef0 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 68, 9, /* 0x1ef0 */ 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 95,
/* 0x1f00 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 68, 10, 48, /* 0x1f00 */ 72, 69, 65, 68, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82,
/* 0x1f10 */ 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, /* 0x1f10 */ 86, 95, 72, 69, 65, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x1f20 */ 78, 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, /* 0x1f20 */ 108, 32, 32, 32, 32,100, 32, 32, 78, 82, 86, 50, 69, 9, 48, 48,
/* 0x1f30 */ 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x1f30 */ 48, 48, 48, 48, 48, 48, 32, 78, 82, 86, 50, 69, 10, 48, 48, 48,
/* 0x1f40 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, /* 0x1f40 */ 48, 48, 48, 48, 48, 32,108, 32, 32, 32, 32,100, 32, 32, 78, 82,
/* 0x1f50 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 69, /* 0x1f50 */ 86, 50, 68, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 78, 82, 86,
/* 0x1f60 */ 76, 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x1f60 */ 50, 68, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, 32, 32,
/* 0x1f70 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 49, 48, /* 0x1f70 */ 32,100, 32, 32, 78, 82, 86, 50, 66, 9, 48, 48, 48, 48, 48, 48,
/* 0x1f80 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, /* 0x1f80 */ 48, 48, 32, 78, 82, 86, 50, 66, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x1f90 */ 69, 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x1f90 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 69,
/* 0x1fa0 */ 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 50, 48, /* 0x1fa0 */ 76, 70, 48, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90,
/* 0x1fb0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90, 77, 65, 95, 68, /* 0x1fb0 */ 77, 65, 95, 69, 76, 70, 48, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x1fc0 */ 69, 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,108, 32, /* 0x1fc0 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68,
/* 0x1fd0 */ 32, 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72, 9, 48, 48, 48, /* 0x1fd0 */ 69, 67, 49, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90,
/* 0x1fe0 */ 48, 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72, 10, 48, 48, 48, /* 0x1fe0 */ 77, 65, 95, 68, 69, 67, 49, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x1ff0 */ 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32, 32, 32, 69, 76, /* 0x1ff0 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 76, 90, 77, 65, 95, 68,
/* 0x2000 */ 70, 77, 65, 73, 78, 88, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x2000 */ 69, 67, 50, 48, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 76, 90,
/* 0x2010 */ 95,115,116, 97,114,116, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, /* 0x2010 */ 77, 65, 95, 68, 69, 67, 50, 48, 10, 48, 48, 48, 48, 48, 48, 48,
/* 0x2020 */ 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, 48, /* 0x2020 */ 48, 32,108, 32, 32, 32, 32,100, 32, 32, 67, 70, 76, 85, 83, 72,
/* 0x2030 */ 48, 48, 48, 48, 48, 48, 32, 79, 95, 66, 73, 78, 70, 79, 10, 10, /* 0x2030 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 67, 70, 76, 85, 83, 72,
/* 0x2040 */ 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, /* 0x2040 */ 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,103, 32, 32, 32, 32, 32,
/* 0x2050 */ 68, 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 88, /* 0x2050 */ 32, 32, 69, 76, 70, 77, 65, 73, 78, 88, 9, 48, 48, 48, 48, 48,
/* 0x2060 */ 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, /* 0x2060 */ 48, 48, 48, 32, 95,115,116, 97,114,116, 10, 48, 48, 48, 48, 48,
/* 0x2070 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, /* 0x2070 */ 48, 48, 48, 32, 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, 78, 68,
/* 0x2080 */ 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 80, /* 0x2080 */ 42, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 65, 68, 82, 77, 10,
/* 0x2090 */ 80, 67, 95, 82, 69, 76, 50, 52, 32, 32, 32, 32, 32, 32, 32, 69, /* 0x2090 */ 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x20a0 */ 76, 70, 77, 65, 73, 78, 90, 43, 48,120, 48, 48, 48, 48, 48, 48, /* 0x20a0 */ 32, 42, 85, 78, 68, 42, 9, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x20b0 */ 100, 56, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, /* 0x20b0 */ 76, 69, 78, 77, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 32, 32,
/* 0x20c0 */ 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, /* 0x20c0 */ 32, 32, 32, 32, 32, 32, 42, 85, 78, 68, 42, 9, 48, 48, 48, 48,
/* 0x20d0 */ 69, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, /* 0x20d0 */ 48, 48, 48, 48, 32, 76, 69, 78, 85, 10, 48, 48, 48, 48, 48, 48,
/* 0x20e0 */ 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, /* 0x20e0 */ 48, 48, 32, 32, 32, 32, 32, 32, 32, 32, 32, 42, 85, 78, 68, 42,
/* 0x20f0 */ 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52, 32, 82, 95, /* 0x20f0 */ 9, 48, 48, 48, 48, 48, 48, 48, 48, 32, 79, 95, 66, 73, 78, 70,
/* 0x2100 */ 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, /* 0x2100 */ 79, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69,
/* 0x2110 */ 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, /* 0x2110 */ 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65,
/* 0x2120 */ 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, /* 0x2120 */ 73, 78, 88, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84,
/* 0x2130 */ 32, 91, 78, 82, 86, 50, 68, 93, 58, 10, 79, 70, 70, 83, 69, 84, /* 0x2130 */ 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x2140 */ 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x2140 */ 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32,
/* 0x2150 */ 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, /* 0x2150 */ 82, 95, 80, 80, 67, 95, 82, 69, 76, 50, 52, 32, 32, 32, 32, 32,
/* 0x2160 */ 48, 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, /* 0x2160 */ 32, 32, 69, 76, 70, 77, 65, 73, 78, 90, 43, 48,120, 48, 48, 48,
/* 0x2170 */ 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, /* 0x2170 */ 48, 48, 49, 49, 99, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79,
/* 0x2180 */ 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, /* 0x2180 */ 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78,
/* 0x2190 */ 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 66, 93, 58, 10, /* 0x2190 */ 82, 86, 50, 69, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32,
/* 0x21a0 */ 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, /* 0x21a0 */ 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
/* 0x21b0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, /* 0x21b0 */ 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 98, 52,
/* 0x21c0 */ 10, 48, 48, 48, 48, 48, 48, 57, 48, 32, 82, 95, 80, 80, 67, 95, /* 0x21c0 */ 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32,
/* 0x21d0 */ 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, /* 0x21d0 */ 32, 32, 32, 78, 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76,
/* 0x21e0 */ 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, /* 0x21e0 */ 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32,
/* 0x21f0 */ 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 76, 90, /* 0x21f0 */ 70, 79, 82, 32, 91, 78, 82, 86, 50, 68, 93, 58, 10, 79, 70, 70,
/* 0x2200 */ 77, 65, 95, 69, 76, 70, 48, 48, 93, 58, 10, 79, 70, 70, 83, 69, /* 0x2200 */ 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32,
/* 0x2210 */ 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x2210 */ 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48,
/* 0x2220 */ 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, /* 0x2220 */ 48, 48, 48, 48, 98, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76,
/* 0x2230 */ 48, 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, /* 0x2230 */ 49, 52, 32, 32, 32, 32, 32, 32, 32, 78, 82, 86, 95, 84, 65, 73,
/* 0x2240 */ 32, 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, 68, 69, 67, 51, /* 0x2240 */ 76, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69,
/* 0x2250 */ 48, 43, 48,120, 48, 48, 48, 48, 48, 48, 50, 52, 10, 10, 82, 69, /* 0x2250 */ 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 78, 82, 86, 50, 66,
/* 0x2260 */ 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, /* 0x2260 */ 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69,
/* 0x2270 */ 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78, 89, 93, 58, /* 0x2270 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65,
/* 0x2280 */ 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, /* 0x2280 */ 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 57, 48, 32, 82, 95, 80,
/* 0x2290 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, /* 0x2290 */ 80, 67, 95, 82, 69, 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 78,
/* 0x22a0 */ 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95, 80, 80, 67, /* 0x22a0 */ 82, 86, 95, 84, 65, 73, 76, 10, 10, 82, 69, 76, 79, 67, 65, 84,
/* 0x22b0 */ 95, 82, 69, 76, 50, 52, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, /* 0x22b0 */ 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32,
/* 0x22c0 */ 77, 65, 73, 78, 90, 10, 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, /* 0x22c0 */ 91, 76, 90, 77, 65, 95, 69, 76, 70, 48, 48, 93, 58, 10, 79, 70,
/* 0x22d0 */ 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, /* 0x22d0 */ 70, 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32,
/* 0x22e0 */ 76, 70, 77, 65, 73, 78, 90, 93, 58, 10, 79, 70, 70, 83, 69, 84, /* 0x22e0 */ 32, 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48,
/* 0x22f0 */ 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, /* 0x22f0 */ 48, 48, 48, 48, 48, 48, 52, 32, 82, 95, 80, 80, 67, 95, 82, 69,
/* 0x2300 */ 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, /* 0x2300 */ 76, 49, 52, 32, 32, 32, 32, 32, 32, 32, 76, 90, 77, 65, 95, 68,
/* 0x2310 */ 48, 97, 99, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76, 49, 52, 32, /* 0x2310 */ 69, 67, 51, 48, 43, 48,120, 48, 48, 48, 48, 48, 48, 50, 52, 10,
/* 0x2320 */ 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, 78, 89, 10, 48, /* 0x2320 */ 10, 82, 69, 76, 79, 67, 65, 84, 73, 79, 78, 32, 82, 69, 67, 79,
/* 0x2330 */ 48, 48, 48, 48, 48,101, 56, 32, 82, 95, 80, 80, 67, 95, 65, 68, /* 0x2330 */ 82, 68, 83, 32, 70, 79, 82, 32, 91, 69, 76, 70, 77, 65, 73, 78,
/* 0x2340 */ 68, 82, 51, 50, 32, 32, 32, 32, 32, 32, 79, 95, 66, 73, 78, 70, /* 0x2340 */ 89, 93, 58, 10, 79, 70, 70, 83, 69, 84, 32, 32, 32, 84, 89, 80,
/* 0x2350 */ 79, 10 /* 0x2350 */ 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 86,
/* 0x2360 */ 65, 76, 85, 69, 10, 48, 48, 48, 48, 48, 48, 48, 48, 32, 82, 95,
/* 0x2370 */ 80, 80, 67, 95, 82, 69, 76, 50, 52, 32, 32, 32, 32, 32, 32, 32,
/* 0x2380 */ 69, 76, 70, 77, 65, 73, 78, 90, 10, 10, 82, 69, 76, 79, 67, 65,
/* 0x2390 */ 84, 73, 79, 78, 32, 82, 69, 67, 79, 82, 68, 83, 32, 70, 79, 82,
/* 0x23a0 */ 32, 91, 69, 76, 70, 77, 65, 73, 78, 90, 93, 58, 10, 79, 70, 70,
/* 0x23b0 */ 83, 69, 84, 32, 32, 32, 84, 89, 80, 69, 32, 32, 32, 32, 32, 32,
/* 0x23c0 */ 32, 32, 32, 32, 32, 32, 32, 32, 86, 65, 76, 85, 69, 10, 48, 48,
/* 0x23d0 */ 48, 48, 48, 48, 97, 48, 32, 82, 95, 80, 80, 67, 95, 82, 69, 76,
/* 0x23e0 */ 49, 52, 32, 32, 32, 32, 32, 32, 32, 69, 76, 70, 77, 65, 73, 78,
/* 0x23f0 */ 89, 10, 48, 48, 48, 48, 48, 49, 51, 48, 32, 82, 95, 80, 80, 67,
/* 0x2400 */ 95, 65, 68, 68, 82, 51, 50, 32, 32, 32, 32, 32, 32, 65, 68, 82,
/* 0x2410 */ 77, 10, 48, 48, 48, 48, 48, 49, 51, 52, 32, 82, 95, 80, 80, 67,
/* 0x2420 */ 95, 65, 68, 68, 82, 51, 50, 32, 32, 32, 32, 32, 32, 76, 69, 78,
/* 0x2430 */ 77, 10, 48, 48, 48, 48, 48, 49, 51, 56, 32, 82, 95, 80, 80, 67,
/* 0x2440 */ 95, 65, 68, 68, 82, 51, 50, 32, 32, 32, 32, 32, 32, 76, 69, 78,
/* 0x2450 */ 85, 10, 48, 48, 48, 48, 48, 49, 51, 99, 32, 82, 95, 80, 80, 67,
/* 0x2460 */ 95, 65, 68, 68, 82, 51, 50, 32, 32, 32, 32, 32, 32, 79, 95, 66,
/* 0x2470 */ 73, 78, 70, 79, 10
}; };
+221 -205
View File
@@ -1,5 +1,5 @@
/* powerpc-linux.elf-fold.h /* powerpc-linux.elf-fold.h
created from powerpc-linux.elf-fold.bin, 3292 (0xcdc) bytes created from powerpc-linux.elf-fold.bin, 3540 (0xdd4) bytes
This file is part of the UPX executable compressor. This file is part of the UPX executable compressor.
@@ -31,215 +31,231 @@
*/ */
#define STUB_POWERPC_LINUX_ELF_FOLD_SIZE 3292 #define STUB_POWERPC_LINUX_ELF_FOLD_SIZE 3540
#define STUB_POWERPC_LINUX_ELF_FOLD_ADLER32 0x10be5fcd #define STUB_POWERPC_LINUX_ELF_FOLD_ADLER32 0xc29a94c0
#define STUB_POWERPC_LINUX_ELF_FOLD_CRC32 0x31d24b57 #define STUB_POWERPC_LINUX_ELF_FOLD_CRC32 0xfd4cabe0
unsigned char stub_powerpc_linux_elf_fold[3292] = { unsigned char stub_powerpc_linux_elf_fold[3540] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0010 */ 0, 2, 0, 20, 0, 0, 0, 1, 0, 16, 0,128, 0, 0, 0, 52, /* 0x0010 */ 0, 2, 0, 20, 0, 0, 0, 1, 0, 16, 0,128, 0, 0, 0, 52,
/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 32, 0, 2, 0, 0, /* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 32, 0, 2, 0, 0,
/* 0x0030 */ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 16, 0, 0, /* 0x0030 */ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 16, 0, 0,
/* 0x0040 */ 0, 16, 0, 0, 0, 0, 12,220, 0, 0, 12,220, 0, 0, 0, 5, /* 0x0040 */ 0, 16, 0, 0, 0, 0, 13,212, 0, 0, 13,212, 0, 0, 0, 5,
/* 0x0050 */ 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 12,220, 0, 0, 0, 0, /* 0x0050 */ 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 13,212, 0, 0, 0, 0,
/* 0x0060 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0060 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0070 */ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0070 */ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0080 */ 72, 0, 0,105, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191, /* 0x0080 */ 124,128, 0, 8, 72, 0, 0,105, 40, 6, 0,208, 76,130, 0, 32,
/* 0x0090 */ 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8, /* 0x0090 */ 84,132,240,191, 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64,
/* 0x00a0 */ 124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, 56, 99,255,252, /* 0x00a0 */ 65,128, 0, 8,124, 4, 3,120, 56,165, 1, 32,124,103, 27,120,
/* 0x00b0 */ 124,137, 3,166, 72, 0, 0, 28, 84, 75, 2,186,125, 99, 88, 80, /* 0x00b0 */ 56, 99,255,252,124,137, 3,166, 72, 0, 0, 28, 85, 96, 2,186,
/* 0x00c0 */ 125,107, 58, 20, 81, 98, 1,186,144, 67, 0, 0, 78, 64, 0, 32, /* 0x00c0 */ 124, 3, 0, 80,124, 0, 58, 20, 80, 11, 1,186,145, 99, 0, 0,
/* 0x00d0 */ 132, 67, 0, 4, 84, 75, 85,190,124, 11, 40, 64, 65,162,255,220, /* 0x00d0 */ 78, 64, 0, 32,133, 99, 0, 4, 85, 96, 85,190,124, 0, 40, 64,
/* 0x00e0 */ 66, 0,255,240, 78,128, 0, 32,125, 8, 2,166,127,137,227,120, /* 0x00e0 */ 65,162,255,220, 66, 0,255,240, 78,128, 0, 32, 56, 0, 0, 0,
/* 0x00f0 */ 128,159,255,248, 85, 30, 0, 38,127,231,251,120,127,164,248, 80, /* 0x00f0 */ 57, 65, 0,140,146,202, 0, 0,124, 27, 0, 80,127,106,219,120,
/* 0x0100 */ 56,161,248, 0, 59,189,255,248,124,154, 32, 80,124,125,210, 20, /* 0x0100 */ 127,137,227,120,125, 8, 2,166,125, 30, 0, 56,127,231,251,120,
/* 0x0110 */ 127,106,219,120, 56, 33,247,232,128,195, 0, 0, 72, 0, 9,149, /* 0x0110 */ 56, 33,248, 0,128,159,255,248,127,164,248, 80, 59,189,255,248,
/* 0x0120 */ 124,127, 27,120,127,163,235,120,124,157,240, 80, 72, 0, 0, 81, /* 0x0120 */ 147,161, 0, 8,124,125,210, 20,124,154, 32, 80, 56,161, 0, 16,
/* 0x0130 */ 127,232, 3,166,184, 65, 8, 28,128, 33, 8, 24, 78,128, 0, 32, /* 0x0130 */ 128,195, 0, 0,124,128, 0, 8, 72, 0, 9,153,124,127, 27,120,
/* 0x0140 */ 56, 0, 0, 90, 68, 0, 0, 2, 64,163, 0, 8, 56, 96,255,255, /* 0x0140 */ 127,163,235,120,124,157,240, 80, 72, 0, 0, 81,127,232, 3,166,
/* 0x0150 */ 78,128, 0, 32, 56, 0, 0, 1, 72, 0, 0, 8, 56, 0, 0, 3, /* 0x0150 */ 184, 65, 8, 20,128, 33, 8, 0, 78,128, 0, 32, 56, 0, 0, 90,
/* 0x0160 */ 72, 0, 0, 8, 56, 0, 0, 5, 72, 0, 0, 8, 56, 0, 0, 6, /* 0x0160 */ 68, 0, 0, 2, 64,163, 0, 8, 56, 96,255,255, 78,128, 0, 32,
/* 0x0170 */ 72, 0, 0, 8, 56, 0, 0,125, 72, 0, 0, 8, 56, 0, 0, 91, /* 0x0170 */ 56, 0, 0, 1, 72, 0, 0, 8, 56, 0, 0, 3, 72, 0, 0, 8,
/* 0x0180 */ 72, 0, 0, 8, 56, 0, 0, 45, 75,255,255,188,148, 33,255,208, /* 0x0180 */ 56, 0, 0, 5, 72, 0, 0, 8, 56, 0, 0, 6, 72, 0, 0, 8,
/* 0x0190 */ 124, 8, 2,166,147,225, 0, 44,144, 1, 0, 52,124, 63, 11,120, /* 0x0190 */ 56, 0, 0,125, 72, 0, 0, 8, 56, 0, 0, 91, 72, 0, 0, 8,
/* 0x01a0 */ 144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,129, 63, 0, 8, /* 0x01a0 */ 56, 0, 0, 45, 75,255,255,188,148, 33,255,208,124, 8, 2,166,
/* 0x01b0 */ 128, 9, 0, 4,144, 31, 0, 20,128, 31, 0, 12,144, 31, 0, 24, /* 0x01b0 */ 147,225, 0, 44,144, 1, 0, 52,124, 63, 11,120,144,127, 0, 8,
/* 0x01c0 */ 129, 63, 0, 8,129, 41, 0, 0,128, 31, 0, 16,127,137, 0, 64, /* 0x01c0 */ 144,159, 0, 12,144,191, 0, 16,129, 63, 0, 8,128, 9, 0, 4,
/* 0x01d0 */ 64,156, 0, 12, 56, 96, 0,127, 75,255,255,125,128, 31, 0, 16, /* 0x01d0 */ 144, 31, 0, 20,128, 31, 0, 12,144, 31, 0, 24,129, 63, 0, 8,
/* 0x01e0 */ 144, 31, 0, 28,129, 63, 0, 28, 56, 9,255,255,124, 9, 3,120, /* 0x01e0 */ 129, 41, 0, 0,128, 31, 0, 16,127,137, 0, 64, 64,156, 0, 12,
/* 0x01f0 */ 145, 63, 0, 28, 56, 0,255,255,127,137, 0, 0, 65,158, 0, 48, /* 0x01f0 */ 56, 96, 0,127, 75,255,255,125,128, 31, 0, 16,144, 31, 0, 28,
/* 0x0200 */ 129,127, 0, 24,129, 63, 0, 20,136, 9, 0, 0,152, 11, 0, 0, /* 0x0200 */ 129, 63, 0, 28, 56, 9,255,255,124, 9, 3,120,145, 63, 0, 28,
/* 0x0210 */ 129, 63, 0, 20, 56, 9, 0, 1,144, 31, 0, 20,129, 63, 0, 24, /* 0x0210 */ 56, 0,255,255,127,137, 0, 0, 65,158, 0, 48,129,127, 0, 24,
/* 0x0220 */ 56, 9, 0, 1,144, 31, 0, 24, 75,255,255,188,129,127, 0, 8, /* 0x0220 */ 129, 63, 0, 20,136, 9, 0, 0,152, 11, 0, 0,129, 63, 0, 20,
/* 0x0230 */ 129, 63, 0, 8,129, 41, 0, 4,128, 31, 0, 16,124, 9, 2, 20, /* 0x0230 */ 56, 9, 0, 1,144, 31, 0, 20,129, 63, 0, 24, 56, 9, 0, 1,
/* 0x0240 */ 144, 11, 0, 4,129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 0, /* 0x0240 */ 144, 31, 0, 24, 75,255,255,188,129,127, 0, 8,129, 63, 0, 8,
/* 0x0250 */ 128, 31, 0, 16,124, 0, 72, 80,144, 11, 0, 0,129, 97, 0, 0, /* 0x0250 */ 129, 41, 0, 4,128, 31, 0, 16,124, 9, 2, 20,144, 11, 0, 4,
/* 0x0260 */ 128, 11, 0, 4,124, 8, 3,166,131,235,255,252,125, 97, 91,120, /* 0x0260 */ 129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 0,128, 31, 0, 16,
/* 0x0270 */ 78,128, 0, 32,148, 33,255,176,124, 8, 2,166,147,225, 0, 76, /* 0x0270 */ 124, 0, 72, 80,144, 11, 0, 0,129, 97, 0, 0,128, 11, 0, 4,
/* 0x0280 */ 144, 1, 0, 84,124, 63, 11,120,144,127, 0, 8,144,159, 0, 12, /* 0x0280 */ 124, 8, 3,166,131,235,255,252,125, 97, 91,120, 78,128, 0, 32,
/* 0x0290 */ 144,191, 0, 16,144,223, 0, 20,129, 63, 0, 12,128, 9, 0, 0, /* 0x0290 */ 148, 33,255,176,124, 8, 2,166,147,225, 0, 76,144, 1, 0, 84,
/* 0x02a0 */ 47,128, 0, 0, 65,158, 1,192, 56, 31, 0, 32,128,127, 0, 8, /* 0x02a0 */ 124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,
/* 0x02b0 */ 124, 4, 3,120, 56,160, 0, 12, 75,255,254,213,128, 31, 0, 32, /* 0x02b0 */ 144,223, 0, 20,129, 63, 0, 12,128, 9, 0, 0, 47,128, 0, 0,
/* 0x02c0 */ 47,128, 0, 0, 64,158, 0, 48,128, 31, 0, 36, 61, 32, 33, 88, /* 0x02c0 */ 65,158, 1,192, 56, 31, 0, 32,128,127, 0, 8,124, 4, 3,120,
/* 0x02d0 */ 97, 41, 80, 85,127,128, 72, 0, 65,158, 0, 8, 72, 0, 0, 36, /* 0x02d0 */ 56,160, 0, 12, 75,255,254,213,128, 31, 0, 32, 47,128, 0, 0,
/* 0x02e0 */ 129, 63, 0, 8,128, 9, 0, 0, 47,128, 0, 0, 65,158, 1,120, /* 0x02e0 */ 64,158, 0, 48,128, 31, 0, 36, 61, 32, 33, 88, 97, 41, 80, 85,
/* 0x02f0 */ 72, 0, 0, 16,128, 31, 0, 36, 47,128, 0, 0, 64,158, 0, 12, /* 0x02f0 */ 127,128, 72, 0, 65,158, 0, 8, 72, 0, 0, 36,129, 63, 0, 8,
/* 0x0300 */ 56, 96, 0,127, 75,255,254, 81,128, 31, 0, 36,129, 63, 0, 32, /* 0x0300 */ 128, 9, 0, 0, 47,128, 0, 0, 65,158, 1,120, 72, 0, 0, 16,
/* 0x0310 */ 127,128, 72, 64, 65,157,255,236,129, 63, 0, 12,129,127, 0, 32, /* 0x0310 */ 128, 31, 0, 36, 47,128, 0, 0, 64,158, 0, 12, 56, 96, 0,127,
/* 0x0320 */ 128, 9, 0, 0,127,139, 0, 64, 65,157,255,216,128, 31, 0, 36, /* 0x0320 */ 75,255,254, 81,128, 31, 0, 36,129, 63, 0, 32,127,128, 72, 64,
/* 0x0330 */ 129, 63, 0, 32,127,128, 72, 64, 64,156, 0,228,128, 31, 0, 32, /* 0x0330 */ 65,157,255,236,129, 63, 0, 12,129,127, 0, 32,128, 9, 0, 0,
/* 0x0340 */ 144, 31, 0, 48,129, 63, 0, 8,129,127, 0, 12, 57, 95, 0, 48, /* 0x0340 */ 127,139, 0, 64, 65,157,255,216,128, 31, 0, 36,129, 63, 0, 32,
/* 0x0350 */ 136, 31, 0, 40, 84, 0, 6, 62,129, 31, 0, 16,125, 9, 3,166, /* 0x0350 */ 127,128, 72, 64, 64,156, 0,228,128, 31, 0, 32,144, 31, 0, 48,
/* 0x0360 */ 128,105, 0, 4,128,159, 0, 36,128,171, 0, 4,125, 70, 83,120, /* 0x0360 */ 129, 63, 0, 8,129,127, 0, 12, 57, 95, 0, 48,136, 31, 0, 40,
/* 0x0370 */ 124, 7, 3,120, 78,128, 4, 33,124, 96, 27,120,144, 31, 0, 52, /* 0x0370 */ 84, 0, 6, 62,129, 31, 0, 16,125, 9, 3,166,128,105, 0, 4,
/* 0x0380 */ 128, 31, 0, 52, 47,128, 0, 0, 64,158,255,120,128, 31, 0, 32, /* 0x0380 */ 128,159, 0, 36,128,171, 0, 4,125, 70, 83,120,124, 7, 3,120,
/* 0x0390 */ 129, 63, 0, 48,127,128, 72, 0, 64,158,255,104,136, 31, 0, 41, /* 0x0390 */ 78,128, 4, 33,124, 96, 27,120,144, 31, 0, 52,128, 31, 0, 52,
/* 0x03a0 */ 84, 0, 6, 62, 47,128, 0, 0, 65,158, 0, 64,128, 31, 0, 20, /* 0x03a0 */ 47,128, 0, 0, 64,158,255,120,128, 31, 0, 32,129, 63, 0, 48,
/* 0x03b0 */ 47,128, 0, 0, 65,158, 0, 52,129, 63, 0, 12,136, 31, 0, 42, /* 0x03b0 */ 127,128, 72, 0, 64,158,255,104,136, 31, 0, 41, 84, 0, 6, 62,
/* 0x03c0 */ 84, 11, 6, 62,136, 31, 0, 41, 84, 0, 6, 62,129, 31, 0, 20, /* 0x03c0 */ 47,128, 0, 0, 65,158, 0, 64,128, 31, 0, 20, 47,128, 0, 0,
/* 0x03d0 */ 125, 9, 3,166,128,105, 0, 4,128,159, 0, 48,125,101, 91,120, /* 0x03d0 */ 65,158, 0, 52,129, 63, 0, 12,136, 31, 0, 42, 84, 11, 6, 62,
/* 0x03e0 */ 124, 6, 3,120, 78,128, 4, 33,129,127, 0, 8,129, 63, 0, 8, /* 0x03e0 */ 136, 31, 0, 41, 84, 0, 6, 62,129, 31, 0, 20,125, 9, 3,166,
/* 0x03f0 */ 129, 41, 0, 4,128, 31, 0, 36,124, 9, 2, 20,144, 11, 0, 4, /* 0x03f0 */ 128,105, 0, 4,128,159, 0, 48,125,101, 91,120,124, 6, 3,120,
/* 0x0400 */ 129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 0,128, 31, 0, 36, /* 0x0400 */ 78,128, 4, 33,129,127, 0, 8,129, 63, 0, 8,129, 41, 0, 4,
/* 0x0410 */ 124, 0, 72, 80,144, 11, 0, 0, 72, 0, 0, 24,129, 63, 0, 12, /* 0x0410 */ 128, 31, 0, 36,124, 9, 2, 20,144, 11, 0, 4,129,127, 0, 8,
/* 0x0420 */ 128,127, 0, 8,128,137, 0, 4,128,191, 0, 36, 75,255,253, 97, /* 0x0420 */ 129, 63, 0, 8,129, 41, 0, 0,128, 31, 0, 36,124, 0, 72, 80,
/* 0x0430 */ 129,127, 0, 12,129, 63, 0, 12,129, 41, 0, 4,128, 31, 0, 32, /* 0x0430 */ 144, 11, 0, 0, 72, 0, 0, 24,129, 63, 0, 12,128,127, 0, 8,
/* 0x0440 */ 124, 9, 2, 20,144, 11, 0, 4,129,127, 0, 12,129, 63, 0, 12, /* 0x0440 */ 128,137, 0, 4,128,191, 0, 36, 75,255,253, 97,129,127, 0, 12,
/* 0x0450 */ 129, 41, 0, 0,128, 31, 0, 32,124, 0, 72, 80,144, 11, 0, 0, /* 0x0450 */ 129, 63, 0, 12,129, 41, 0, 4,128, 31, 0, 32,124, 9, 2, 20,
/* 0x0460 */ 75,255,254, 56,129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166, /* 0x0460 */ 144, 11, 0, 4,129,127, 0, 12,129, 63, 0, 12,129, 41, 0, 0,
/* 0x0470 */ 131,235,255,252,125, 97, 91,120, 78,128, 0, 32,148, 33,255,224, /* 0x0470 */ 128, 31, 0, 32,124, 0, 72, 80,144, 11, 0, 0, 75,255,254, 56,
/* 0x0480 */ 147,225, 0, 28,124, 63, 11,120,144,127, 0, 8,144,159, 0, 12, /* 0x0480 */ 129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166,131,235,255,252,
/* 0x0490 */ 128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 52,129, 63, 0, 8, /* 0x0490 */ 125, 97, 91,120, 78,128, 0, 32,148, 33,255,224,147,225, 0, 28,
/* 0x04a0 */ 125, 43, 75,120, 56, 0, 0, 0,152, 11, 0, 0, 57, 41, 0, 1, /* 0x04a0 */ 124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,128, 31, 0, 12,
/* 0x04b0 */ 145, 63, 0, 8,129, 63, 0, 12, 56, 9,255,255,144, 31, 0, 12, /* 0x04b0 */ 47,128, 0, 0, 65,158, 0, 52,129, 63, 0, 8,125, 43, 75,120,
/* 0x04c0 */ 47,128, 0, 0, 65,158, 0, 8, 75,255,255,212,129, 97, 0, 0, /* 0x04c0 */ 56, 0, 0, 0,152, 11, 0, 0, 57, 41, 0, 1,145, 63, 0, 8,
/* 0x04d0 */ 131,235,255,252,125, 97, 91,120, 78,128, 0, 32,148, 33,255,224, /* 0x04d0 */ 129, 63, 0, 12, 56, 9,255,255,144, 31, 0, 12, 47,128, 0, 0,
/* 0x04e0 */ 147,225, 0, 28,124, 63, 11,120,144,127, 0, 8,144,159, 0, 12, /* 0x04e0 */ 65,158, 0, 8, 75,255,255,212,129, 97, 0, 0,131,235,255,252,
/* 0x04f0 */ 144,191, 0, 16,128, 31, 0, 8, 47,128, 0, 0, 65,158, 0,100, /* 0x04f0 */ 125, 97, 91,120, 78,128, 0, 32,148, 33,255,224,147,225, 0, 28,
/* 0x0500 */ 129, 63, 0, 8,129, 41, 0, 0,128, 31, 0, 12,127,137, 0, 0, /* 0x0500 */ 124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,
/* 0x0510 */ 65,158, 0, 36,129, 63, 0, 8,128, 9, 0, 0, 47,128, 0, 1, /* 0x0510 */ 128, 31, 0, 8, 47,128, 0, 0, 65,158, 0,100,129, 63, 0, 8,
/* 0x0520 */ 64,158, 0, 48,128, 31, 0, 12, 47,128, 0, 0, 64,158, 0, 8, /* 0x0520 */ 129, 41, 0, 0,128, 31, 0, 12,127,137, 0, 0, 65,158, 0, 36,
/* 0x0530 */ 72, 0, 0, 32,129, 63, 0, 8,128, 31, 0, 12,144, 9, 0, 0, /* 0x0530 */ 129, 63, 0, 8,128, 9, 0, 0, 47,128, 0, 1, 64,158, 0, 48,
/* 0x0540 */ 129, 63, 0, 8,128, 31, 0, 16,144, 9, 0, 4, 72, 0, 0, 20, /* 0x0540 */ 128, 31, 0, 12, 47,128, 0, 0, 64,158, 0, 8, 72, 0, 0, 32,
/* 0x0550 */ 129, 63, 0, 8, 56, 9, 0, 8,144, 31, 0, 8, 75,255,255,164, /* 0x0550 */ 129, 63, 0, 8,128, 31, 0, 12,144, 9, 0, 0,129, 63, 0, 8,
/* 0x0560 */ 129, 97, 0, 0,131,235,255,252,125, 97, 91,120, 78,128, 0, 32, /* 0x0560 */ 128, 31, 0, 16,144, 9, 0, 4, 72, 0, 0, 20,129, 63, 0, 8,
/* 0x0570 */ 148, 33,255,192,124, 8, 2,166,147,225, 0, 60,144, 1, 0, 68, /* 0x0570 */ 56, 9, 0, 8,144, 31, 0, 8, 75,255,255,164,129, 97, 0, 0,
/* 0x0580 */ 124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,144,191, 0, 16, /* 0x0580 */ 131,235,255,252,125, 97, 91,120, 78,128, 0, 32,148, 33,255,192,
/* 0x0590 */ 144,223, 0, 20,144,255, 0, 24, 56, 0,255,255,144, 31, 0, 28, /* 0x0590 */ 124, 8, 2,166,147,225, 0, 60,144, 1, 0, 68,124, 63, 11,120,
/* 0x05a0 */ 56, 0, 0, 0,144, 31, 0, 32, 56, 0, 0, 0,144, 31, 0, 36, /* 0x05a0 */ 144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,144,223, 0, 20,
/* 0x05b0 */ 129, 63, 0, 8, 56, 9, 8, 34,144, 31, 0, 8,129, 63, 0, 16, /* 0x05b0 */ 144,255, 0, 24, 56, 0,255,255,144, 31, 0, 28, 56, 0, 0, 0,
/* 0x05c0 */ 56, 9,255,255,144, 31, 0, 16, 47,128, 0, 0, 65,156, 0,136, /* 0x05c0 */ 144, 31, 0, 32, 56, 0, 0, 0,144, 31, 0, 36,129, 63, 0, 8,
/* 0x05d0 */ 129, 63, 0, 12,128, 9, 0, 0, 47,128, 0, 1, 64,158, 0,104, /* 0x05d0 */ 56, 9, 8, 34,144, 31, 0, 8,129, 63, 0, 16, 56, 9,255,255,
/* 0x05e0 */ 129, 63, 0, 12,129, 41, 0, 8,128, 31, 0, 28,127,137, 0, 64, /* 0x05e0 */ 144, 31, 0, 16, 47,128, 0, 0, 65,156, 0,136,129, 63, 0, 12,
/* 0x05f0 */ 64,156, 0, 28,129, 63, 0, 12,128, 9, 0, 8,144, 31, 0, 28, /* 0x05f0 */ 128, 9, 0, 0, 47,128, 0, 1, 64,158, 0,104,129, 63, 0, 12,
/* 0x0600 */ 129, 63, 0, 12,128, 9, 0, 16,144, 31, 0, 36,129, 63, 0, 12, /* 0x0600 */ 129, 41, 0, 8,128, 31, 0, 28,127,137, 0, 64, 64,156, 0, 28,
/* 0x0610 */ 129,127, 0, 12,129, 41, 0, 20,128, 11, 0, 8,125, 41, 2, 20, /* 0x0610 */ 129, 63, 0, 12,128, 9, 0, 8,144, 31, 0, 28,129, 63, 0, 12,
/* 0x0620 */ 128, 31, 0, 32,127,137, 0, 64, 64,157, 0, 28,129, 63, 0, 12, /* 0x0620 */ 128, 9, 0, 16,144, 31, 0, 36,129, 63, 0, 12,129,127, 0, 12,
/* 0x0630 */ 129,127, 0, 12,129, 41, 0, 20,128, 11, 0, 8,124, 9, 2, 20, /* 0x0630 */ 129, 41, 0, 20,128, 11, 0, 8,125, 41, 2, 20,128, 31, 0, 32,
/* 0x0640 */ 144, 31, 0, 32,129, 63, 0, 12, 56, 9, 0, 32,144, 31, 0, 12, /* 0x0640 */ 127,137, 0, 64, 64,157, 0, 28,129, 63, 0, 12,129,127, 0, 12,
/* 0x0650 */ 75,255,255,108,128, 31, 0, 24,124, 9, 0,248,128, 31, 0, 28, /* 0x0650 */ 129, 41, 0, 20,128, 11, 0, 8,124, 9, 2, 20,144, 31, 0, 32,
/* 0x0660 */ 125, 41, 0, 56,128, 31, 0, 36,124, 0, 74, 20,144, 31, 0, 36, /* 0x0660 */ 129, 63, 0, 12, 56, 9, 0, 32,144, 31, 0, 12, 75,255,255,108,
/* 0x0670 */ 129, 63, 0, 28,128, 31, 0, 24,125, 32, 0, 56,144, 31, 0, 28, /* 0x0670 */ 128, 31, 0, 24,124, 9, 0,248,128, 31, 0, 28,125, 41, 0, 56,
/* 0x0680 */ 129, 63, 0, 32,128, 31, 0, 28,125, 32, 72, 80,128, 31, 0, 24, /* 0x0680 */ 128, 31, 0, 36,124, 0, 74, 20,144, 31, 0, 36,129, 63, 0, 28,
/* 0x0690 */ 125, 32, 72, 80, 57, 41,255,255,128, 31, 0, 24,125, 32, 0, 56, /* 0x0690 */ 128, 31, 0, 24,125, 32, 0, 56,144, 31, 0, 28,129, 63, 0, 32,
/* 0x06a0 */ 144, 31, 0, 32,129, 63, 0, 36,128, 31, 0, 24,125, 32, 72, 80, /* 0x06a0 */ 128, 31, 0, 28,125, 32, 72, 80,128, 31, 0, 24,125, 32, 72, 80,
/* 0x06b0 */ 57, 41,255,255,128, 31, 0, 24,125, 32, 0, 56,144, 31, 0, 36, /* 0x06b0 */ 57, 41,255,255,128, 31, 0, 24,125, 32, 0, 56,144, 31, 0, 32,
/* 0x06c0 */ 128,127, 0, 28,128,159, 0, 32, 56,160, 0, 0,128,223, 0, 8, /* 0x06c0 */ 129, 63, 0, 36,128, 31, 0, 24,125, 32, 72, 80, 57, 41,255,255,
/* 0x06d0 */ 56,224,255,255, 57, 0, 0, 0, 75,255,250,105,144,127, 0, 40, /* 0x06d0 */ 128, 31, 0, 24,125, 32, 0, 56,144, 31, 0, 36,128,127, 0, 28,
/* 0x06e0 */ 129,127, 0, 20,129, 63, 0, 40,128, 31, 0, 32,124, 9, 2, 20, /* 0x06e0 */ 128,159, 0, 32, 56,160, 0, 0,128,223, 0, 8, 56,224,255,255,
/* 0x06f0 */ 144, 11, 0, 0,129, 63, 0, 40,128, 31, 0, 28,124, 0, 72, 80, /* 0x06f0 */ 57, 0, 0, 0, 75,255,250,105,144,127, 0, 40,129,127, 0, 20,
/* 0x0700 */ 124, 3, 3,120,129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166, /* 0x0700 */ 129, 63, 0, 40,128, 31, 0, 32,124, 9, 2, 20,144, 11, 0, 0,
/* 0x0710 */ 131,235,255,252,125, 97, 91,120, 78,128, 0, 32,148, 33,255,144, /* 0x0710 */ 129, 63, 0, 40,128, 31, 0, 28,124, 0, 72, 80,124, 3, 3,120,
/* 0x0720 */ 124, 8, 2,166,147,225, 0,108,144, 1, 0,116,124, 63, 11,120, /* 0x0720 */ 129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166,131,235,255,252,
/* 0x0730 */ 144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,144,223, 0, 20, /* 0x0730 */ 125, 97, 91,120, 78,128, 0, 32,148, 33,255,144,124, 8, 2,166,
/* 0x0740 */ 144,255, 0, 24,145, 31, 0, 28,145, 63, 0, 32,129, 63, 0, 8, /* 0x0740 */ 147,225, 0,108,144, 1, 0,116,124, 63, 11,120,144,127, 0, 8,
/* 0x0750 */ 129, 41, 0, 28,128, 31, 0, 8,124, 9, 2, 20,144, 31, 0, 36, /* 0x0750 */ 144,159, 0, 12,144,191, 0, 16,144,223, 0, 20,144,255, 0, 24,
/* 0x0760 */ 129, 63, 0, 8,160, 9, 0, 16, 84, 0, 4, 62, 47,128, 0, 3, /* 0x0760 */ 145, 31, 0, 28,145, 63, 0, 32,145, 95, 0, 36,129, 63, 0, 8,
/* 0x0770 */ 65,158, 0, 16, 56, 0, 0, 16,144, 31, 0, 80, 72, 0, 0, 12, /* 0x0770 */ 129, 41, 0, 28,128, 31, 0, 8,124, 9, 2, 20,144, 31, 0, 40,
/* 0x0780 */ 57, 32, 0, 0,145, 63, 0, 80,129, 63, 0, 8,160, 9, 0, 44, /* 0x0780 */ 129, 63, 0, 8,160, 9, 0, 16, 84, 0, 4, 62, 47,128, 0, 3,
/* 0x0790 */ 84, 0, 4, 62, 57, 63, 0, 40,128,127, 0, 80,128,159, 0, 36, /* 0x0790 */ 65,158, 0, 16, 56, 0, 0, 16,144, 31, 0, 88, 72, 0, 0, 12,
/* 0x07a0 */ 124, 5, 3,120,125, 38, 75,120,128,255, 0, 32, 75,255,253,197, /* 0x07a0 */ 57, 32, 0, 0,145, 63, 0, 88,129, 63, 0, 8,160, 9, 0, 44,
/* 0x07b0 */ 124, 96, 27,120,144, 31, 0, 44, 56, 0, 0, 0,144, 31, 0, 48, /* 0x07b0 */ 84, 0, 4, 62, 57, 63, 0, 44,128,127, 0, 88,128,159, 0, 40,
/* 0x07c0 */ 129, 63, 0, 8,160, 9, 0, 44, 84, 9, 4, 62,128, 31, 0, 48, /* 0x07c0 */ 124, 5, 3,120,125, 38, 75,120,128,255, 0, 36, 75,255,253,193,
/* 0x07d0 */ 127,137, 0, 0, 64,157, 2,176,128, 31, 0, 12, 47,128, 0, 0, /* 0x07d0 */ 124, 96, 27,120,144, 31, 0, 48, 56, 0, 0, 0,144, 31, 0, 52,
/* 0x07e0 */ 65,158, 0, 56,129, 63, 0, 36,128, 9, 0, 0, 47,128, 0, 6, /* 0x07e0 */ 129, 63, 0, 8,160, 9, 0, 44, 84, 9, 4, 62,128, 31, 0, 52,
/* 0x07f0 */ 64,158, 0, 40,129, 63, 0, 36,129, 41, 0, 8,128, 31, 0, 44, /* 0x07f0 */ 127,137, 0, 0, 64,157, 2,152,128, 31, 0, 12, 47,128, 0, 0,
/* 0x0800 */ 124, 9, 2, 20,128,127, 0, 20, 56,128, 0, 3,124, 5, 3,120, /* 0x0800 */ 65,158, 0, 56,129, 63, 0, 40,128, 9, 0, 0, 47,128, 0, 6,
/* 0x0810 */ 75,255,252,205, 72, 0, 2, 84,129, 63, 0, 36,128, 9, 0, 0, /* 0x0810 */ 64,158, 0, 40,129, 63, 0, 40,129, 41, 0, 8,128, 31, 0, 48,
/* 0x0820 */ 47,128, 0, 1, 64,158, 2, 68,129, 63, 0, 36,128, 9, 0, 24, /* 0x0820 */ 124, 9, 2, 20,128,127, 0, 20, 56,128, 0, 3,124, 5, 3,120,
/* 0x0830 */ 84, 0, 7,126, 84, 9, 16, 58, 60, 0,115, 81, 96, 0, 98, 64, /* 0x0830 */ 75,255,252,201, 72, 0, 2, 60,129, 63, 0, 40,128, 9, 0, 0,
/* 0x0840 */ 124, 0, 76, 48, 84, 0, 7,126,144, 31, 0, 52,129, 63, 0, 36, /* 0x0840 */ 47,128, 0, 1, 64,158, 2, 44,129, 63, 0, 40,128, 9, 0, 24,
/* 0x0850 */ 128, 9, 0, 16,144, 31, 0, 56,144, 31, 0, 64,129, 63, 0, 36, /* 0x0850 */ 84, 0, 7,126, 84, 9, 16, 58, 60, 0,115, 81, 96, 0, 98, 64,
/* 0x0860 */ 128, 9, 0, 8,144, 31, 0, 60,144, 31, 0, 68,129, 63, 0, 36, /* 0x0860 */ 124, 0, 76, 48, 84, 0, 7,126,144, 31, 0, 56,129, 63, 0, 40,
/* 0x0870 */ 129, 41, 0, 20,128, 31, 0, 68,124, 9, 2, 20,144, 31, 0, 72, /* 0x0870 */ 128, 9, 0, 16,144, 31, 0, 64,144, 31, 0, 72,129, 63, 0, 40,
/* 0x0880 */ 128, 31, 0, 32,124, 9, 0,248,128, 31, 0, 68,125, 32, 0, 56, /* 0x0880 */ 129, 41, 0, 8,128, 31, 0, 48,124, 9, 2, 20,144, 31, 0, 68,
/* 0x0890 */ 144, 31, 0, 76,129, 63, 0, 64,128, 31, 0, 76,124, 9, 2, 20, /* 0x0890 */ 144, 31, 0, 76,129, 63, 0, 40,129, 41, 0, 20,128, 31, 0, 76,
/* 0x08a0 */ 144, 31, 0, 64,129, 63, 0, 68,128, 31, 0, 76,124, 0, 72, 80, /* 0x08a0 */ 124, 9, 2, 20,144, 31, 0, 80,128, 31, 0, 36,124, 9, 0,248,
/* 0x08b0 */ 144, 31, 0, 68,129, 63, 0, 68,128, 31, 0, 44,124, 9, 2, 20, /* 0x08b0 */ 128, 31, 0, 76,125, 32, 0, 56,144, 31, 0, 84,129, 63, 0, 72,
/* 0x08c0 */ 144, 31, 0, 68,129, 63, 0, 72,128, 31, 0, 44,124, 9, 2, 20, /* 0x08c0 */ 128, 31, 0, 84,124, 9, 2, 20,144, 31, 0, 72,129, 63, 0, 76,
/* 0x08d0 */ 144, 31, 0, 72,128, 31, 0, 12,124, 11,254,112,125,105, 2,120, /* 0x08d0 */ 128, 31, 0, 84,124, 0, 72, 80,144, 31, 0, 76,128, 31, 0, 12,
/* 0x08e0 */ 125, 43, 72, 80,145, 63, 0, 84,128, 31, 0, 84,124, 0, 0,208, /* 0x08e0 */ 124, 11,254,112,125,105, 2,120,125, 43, 72, 80,145, 63, 0, 92,
/* 0x08f0 */ 144, 31, 0, 84,129, 63, 0, 84, 85, 41, 15,254,145, 63, 0, 84, /* 0x08f0 */ 128, 31, 0, 92,124, 0, 0,208,144, 31, 0, 92,129, 63, 0, 92,
/* 0x0900 */ 129,127, 0, 84, 85,107, 8, 60,145,127, 0, 84,128, 31, 0, 52, /* 0x0900 */ 85, 41, 15,254,145, 63, 0, 92,129,127, 0, 92, 85,107, 8, 60,
/* 0x0910 */ 129, 63, 0, 84,125, 41, 3,120,145, 63, 0, 84,128, 31, 0, 12, /* 0x0910 */ 145,127, 0, 92,128, 31, 0, 56,129, 63, 0, 92,125, 41, 3,120,
/* 0x0920 */ 47,128, 0, 0, 65,158, 0, 16, 57, 96, 0, 50,145,127, 0, 88, /* 0x0920 */ 145, 63, 0, 92,128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 16,
/* 0x0930 */ 72, 0, 0, 12, 56, 0, 0, 18,144, 31, 0, 88,128, 31, 0, 12, /* 0x0930 */ 57, 96, 0, 50,145,127, 0, 96, 72, 0, 0, 12, 56, 0, 0, 18,
/* 0x0940 */ 47,128, 0, 0, 64,158, 0, 16,129, 63, 0, 16,145, 63, 0, 92, /* 0x0940 */ 144, 31, 0, 96,128, 31, 0, 12, 47,128, 0, 0, 64,158, 0, 16,
/* 0x0950 */ 72, 0, 0, 12, 57, 96,255,255,145,127, 0, 92,129, 63, 0, 36, /* 0x0950 */ 129, 63, 0, 16,145, 63, 0,100, 72, 0, 0, 12, 57, 96,255,255,
/* 0x0960 */ 129, 41, 0, 4,128, 31, 0, 76,124, 0, 72, 80,128,127, 0, 68, /* 0x0960 */ 145,127, 0,100,129, 63, 0, 40,129, 41, 0, 4,128, 31, 0, 84,
/* 0x0970 */ 128,159, 0, 64,128,191, 0, 84,128,223, 0, 88,128,255, 0, 92, /* 0x0970 */ 124, 0, 72, 80,128,127, 0, 76,128,159, 0, 72,128,191, 0, 92,
/* 0x0980 */ 124, 8, 3,120, 75,255,247,189,124,105, 27,120,128, 31, 0, 68, /* 0x0980 */ 128,223, 0, 96,128,255, 0,100,124, 8, 3,120, 75,255,247,209,
/* 0x0990 */ 127,137, 0, 0, 65,158, 0, 8, 72, 0, 0,200,128, 31, 0, 12, /* 0x0990 */ 124,105, 27,120,128, 31, 0, 76,127,137, 0, 0, 65,158, 0, 8,
/* 0x09a0 */ 47,128, 0, 0, 65,158, 0, 28, 56, 31, 0, 56,128,127, 0, 12, /* 0x09a0 */ 72, 0, 0,200,128, 31, 0, 12, 47,128, 0, 0, 65,158, 0, 28,
/* 0x09b0 */ 124, 4, 3,120,128,191, 0, 24,128,223, 0, 28, 75,255,248,185, /* 0x09b0 */ 56, 31, 0, 64,128,127, 0, 12,124, 4, 3,120,128,191, 0, 24,
/* 0x09c0 */ 128, 31, 0, 64,125, 32, 0,208,128, 31, 0, 32,124, 0, 0,248, /* 0x09c0 */ 128,223, 0, 28, 75,255,248,205,128, 31, 0, 72,125, 32, 0,208,
/* 0x09d0 */ 125, 32, 0, 56,144, 31, 0, 76,128, 31, 0, 52, 84, 0, 7,188, /* 0x09d0 */ 128, 31, 0, 36,124, 0, 0,248,125, 32, 0, 56,144, 31, 0, 84,
/* 0x09e0 */ 47,128, 0, 0, 65,158, 0, 28,128, 31, 0, 68,129, 63, 0, 64, /* 0x09e0 */ 128, 31, 0, 56, 84, 0, 7,188, 47,128, 0, 0, 65,158, 0, 28,
/* 0x09f0 */ 124, 0, 74, 20,124, 3, 3,120,128,159, 0, 76, 75,255,250,129, /* 0x09f0 */ 128, 31, 0, 76,129, 63, 0, 72,124, 0, 74, 20,124, 3, 3,120,
/* 0x0a00 */ 129, 63, 0, 64,128, 31, 0, 76,125, 41, 2, 20,128, 31, 0, 68, /* 0x0a00 */ 128,159, 0, 84, 75,255,250,149,129, 63, 0, 72,128, 31, 0, 84,
/* 0x0a10 */ 124, 0, 74, 20,144, 31, 0, 68,129, 63, 0, 68,128, 31, 0, 72, /* 0x0a10 */ 125, 41, 2, 20,128, 31, 0, 76,124, 0, 74, 20,144, 31, 0, 76,
/* 0x0a20 */ 127,137, 0, 64, 64,156, 0, 68,129, 63, 0, 72,128, 31, 0, 68, /* 0x0a20 */ 129, 63, 0, 76,128, 31, 0, 80,127,137, 0, 64, 64,156, 0, 68,
/* 0x0a30 */ 124, 0, 72, 80,128,127, 0, 68,124, 4, 3,120,128,191, 0, 52, /* 0x0a30 */ 129, 63, 0, 80,128, 31, 0, 76,124, 0, 72, 80,128,127, 0, 76,
/* 0x0a40 */ 56,192, 0, 50, 56,224,255,255, 57, 0, 0, 0, 75,255,246,245, /* 0x0a40 */ 124, 4, 3,120,128,191, 0, 56, 56,192, 0, 50, 56,224,255,255,
/* 0x0a50 */ 124,105, 27,120,128, 31, 0, 68,127,137, 0, 0, 65,158, 0, 12, /* 0x0a50 */ 57, 0, 0, 0, 75,255,247, 9,124,105, 27,120,128, 31, 0, 76,
/* 0x0a60 */ 56, 96, 0,127, 75,255,246,241,129, 63, 0, 36, 56, 9, 0, 32, /* 0x0a60 */ 127,137, 0, 0, 65,158, 0, 12, 56, 96, 0,127, 75,255,247, 5,
/* 0x0a70 */ 144, 31, 0, 36,129, 63, 0, 48, 56, 9, 0, 1,144, 31, 0, 48, /* 0x0a70 */ 129, 63, 0, 40, 56, 9, 0, 32,144, 31, 0, 40,129, 63, 0, 52,
/* 0x0a80 */ 75,255,253, 64,129, 63, 0, 8,129, 41, 0, 24,128, 31, 0, 44, /* 0x0a80 */ 56, 9, 0, 1,144, 31, 0, 52, 75,255,253, 88,128, 31, 0, 32,
/* 0x0a90 */ 124, 9, 2, 20,124, 3, 3,120,129, 97, 0, 0,128, 11, 0, 4, /* 0x0a90 */ 47,128, 0, 0, 65,158, 0, 16,129, 63, 0, 32,128, 31, 0, 48,
/* 0x0aa0 */ 124, 8, 3,166,131,235,255,252,125, 97, 91,120, 78,128, 0, 32, /* 0x0aa0 */ 144, 9, 0, 0,129, 63, 0, 8,129, 41, 0, 24,128, 31, 0, 48,
/* 0x0ab0 */ 148, 33,255,144,124, 8, 2,166,147,225, 0,108,144, 1, 0,116, /* 0x0ab0 */ 124, 9, 2, 20,124, 3, 3,120,129, 97, 0, 0,128, 11, 0, 4,
/* 0x0ac0 */ 124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,144,191, 0, 16, /* 0x0ac0 */ 124, 8, 3,166,131,235,255,252,125, 97, 91,120, 78,128, 0, 32,
/* 0x0ad0 */ 144,223, 0, 20,144,255, 0, 24,145, 31, 0, 28,145, 63, 0, 32, /* 0x0ad0 */ 148, 33,255,144,124, 8, 2,166,147,225, 0,108,144, 1, 0,116,
/* 0x0ae0 */ 145, 95, 0, 36,129, 63, 0, 16, 56, 9, 0, 52,144, 31, 0, 40, /* 0x0ae0 */ 124, 63, 11,120,144,127, 0, 8,144,159, 0, 12,144,191, 0, 16,
/* 0x0af0 */ 128, 31, 0, 36, 47,128, 16, 0, 65,158, 0, 28,128, 31, 0, 36, /* 0x0af0 */ 144,223, 0, 20,144,255, 0, 24,145, 31, 0, 28,145, 63, 0, 32,
/* 0x0b00 */ 61, 32, 0, 1,127,128, 72, 0, 65,158, 0, 12, 56, 96, 0,232, /* 0x0b00 */ 145, 95, 0, 36,128, 31, 0, 36,124, 0, 0,208,144, 31, 0, 40,
/* 0x0b10 */ 75,255,246, 69,128, 31, 0, 36,124, 0, 0,208,144, 31, 0, 48, /* 0x0b10 */ 128, 31, 0, 36, 47,128, 16, 0, 65,158, 0, 28,128, 31, 0, 36,
/* 0x0b20 */ 128, 31, 0, 8,144, 31, 0, 60,128, 31, 0, 12,144, 31, 0, 56, /* 0x0b20 */ 61, 32, 0, 1,127,128, 72, 0, 65,158, 0, 12, 56, 96, 0,232,
/* 0x0b30 */ 128, 31, 0, 16,144, 31, 0, 68,129, 63, 0, 8,128, 9, 0, 0, /* 0x0b30 */ 75,255,246, 65,129, 63, 0, 16, 56, 9, 0, 52,144, 31, 0, 44,
/* 0x0b40 */ 144, 31, 0, 64,129, 63, 0, 56,129, 95, 0, 60,145, 63, 0, 72, /* 0x0b40 */ 128, 31, 0, 16,144, 31, 0, 52,129, 63, 0, 8,128, 9, 0, 0,
/* 0x0b50 */ 145, 95, 0, 76, 56, 31, 0, 56, 57, 63, 0, 64,124, 3, 3,120, /* 0x0b50 */ 144, 31, 0, 48,128, 31, 0, 8,144, 31, 0, 68,128, 31, 0, 12,
/* 0x0b60 */ 125, 36, 75,120,128,191, 0, 24, 56,192, 0, 0, 75,255,247, 9, /* 0x0b60 */ 144, 31, 0, 64,128, 31, 0, 8,144, 31, 0, 60,128, 31, 0, 12,
/* 0x0b70 */ 129, 63, 0, 40,129, 41, 0, 8, 56, 9, 0, 52,128,127, 0, 32, /* 0x0b70 */ 144, 31, 0, 56, 56, 31, 0, 64, 57, 63, 0, 48,124, 3, 3,120,
/* 0x0b80 */ 56,128, 0, 3,124, 5, 3,120, 75,255,249, 85,129, 63, 0, 16, /* 0x0b80 */ 125, 36, 75,120,128,191, 0, 24, 56,192, 0, 0, 75,255,247, 5,
/* 0x0b90 */ 160, 9, 0, 44, 84, 0, 4, 62,128,127, 0, 32, 56,128, 0, 5, /* 0x0b90 */ 129, 63, 0, 44,129, 41, 0, 8, 56, 9, 0, 52,128,127, 0, 32,
/* 0x0ba0 */ 124, 5, 3,120, 75,255,249, 57,129, 63, 0, 16,128,127, 0, 32, /* 0x0ba0 */ 56,128, 0, 3,124, 5, 3,120, 75,255,249, 81,129, 63, 0, 16,
/* 0x0bb0 */ 56,128, 0, 9,128,169, 0, 24, 75,255,249, 37, 56, 31, 0, 72, /* 0x0bb0 */ 160, 9, 0, 44, 84, 0, 4, 62,128,127, 0, 32, 56,128, 0, 5,
/* 0x0bc0 */ 128,127, 0, 16,124, 4, 3,120, 56,160, 0, 0,128,223, 0, 32, /* 0x0bc0 */ 124, 5, 3,120, 75,255,249, 53,129, 63, 0, 16,160, 9, 0, 16,
/* 0x0bd0 */ 128,255, 0, 24,129, 31, 0, 28,129, 63, 0, 48, 75,255,251, 65, /* 0x0bd0 */ 84, 0, 4, 62,144, 31, 0, 72,128, 31, 0, 72, 47,128, 0, 3,
/* 0x0be0 */ 124, 96, 27,120,144, 31, 0, 44, 56, 0, 0, 0,144, 31, 0, 80, /* 0x0be0 */ 64,158, 0,168,129, 63, 0, 16, 56, 0, 0, 2,176, 9, 0, 16,
/* 0x0bf0 */ 129, 63, 0, 16,160, 9, 0, 44, 84, 9, 4, 62,128, 31, 0, 80, /* 0x0bf0 */ 129, 63, 0, 16,129, 41, 0, 24,128, 31, 0,120,124, 9, 2, 20,
/* 0x0c00 */ 127,137, 0, 0, 64,157, 0,184,129, 63, 0, 40,128, 9, 0, 0, /* 0x0c00 */ 128,127, 0, 32, 56,128, 0, 9,124, 5, 3,120, 75,255,248,237,
/* 0x0c10 */ 47,128, 0, 3, 64,158, 0,140,129, 63, 0, 40,128, 9, 0, 8, /* 0x0c10 */ 129, 63, 0, 16, 56, 9, 0, 52,144, 31, 0, 44, 56, 0, 0, 0,
/* 0x0c20 */ 144, 31, 0, 84,128,127, 0, 84, 56,128, 0, 0, 56,160, 0, 0, /* 0x0c20 */ 144, 31, 0, 76,129, 63, 0, 16,160, 9, 0, 44, 84, 9, 4, 62,
/* 0x0c30 */ 75,255,245, 53,124, 96, 27,120,144, 31, 0, 88,128, 31, 0, 88, /* 0x0c30 */ 128, 31, 0, 76,127,137, 0, 64, 64,157, 0, 80,129,127, 0, 44,
/* 0x0c40 */ 47,128, 0, 0, 64,156, 0, 8, 72, 0, 0, 32,128,127, 0, 88, /* 0x0c40 */ 129, 63, 0, 44,129, 41, 0, 8,128, 31, 0,120,124, 9, 2, 20,
/* 0x0c50 */ 128,159, 0, 16, 56,160, 2, 0, 75,255,245, 5,124, 96, 27,120, /* 0x0c50 */ 144, 11, 0, 8,129,127, 0, 44,129, 63, 0, 44,129, 41, 0, 12,
/* 0x0c60 */ 47,128, 2, 0, 65,158, 0, 12, 56, 96, 0,127, 75,255,244,233, /* 0x0c60 */ 128, 31, 0,120,124, 9, 2, 20,144, 11, 0, 12,129, 63, 0, 44,
/* 0x0c70 */ 128,127, 0, 16, 56,128, 0, 0,128,191, 0, 88, 56,192, 0, 0, /* 0x0c70 */ 56, 9, 0, 32,144, 31, 0, 44,129, 63, 0, 76, 56, 9, 0, 1,
/* 0x0c80 */ 56,224, 0, 0, 57, 0, 0, 0,129, 63, 0, 48, 75,255,250,145, /* 0x0c80 */ 144, 31, 0, 76, 75,255,255,160, 56, 31, 0, 56,128,127, 0, 16,
/* 0x0c90 */ 124, 96, 27,120,144, 31, 0, 44,128,127, 0, 88, 75,255,244,209, /* 0x0c90 */ 124, 4, 3,120, 56,160, 0, 0,128,223, 0, 32,128,255, 0, 24,
/* 0x0ca0 */ 129, 63, 0, 40, 56, 9, 0, 32,144, 31, 0, 40,129, 63, 0, 80, /* 0x0ca0 */ 129, 31, 0, 28, 57, 63, 0,120,129, 95, 0, 40, 75,255,250,141,
/* 0x0cb0 */ 56, 9, 0, 1,144, 31, 0, 80, 75,255,255, 56,128, 31, 0, 44, /* 0x0cb0 */ 124, 96, 27,120,144, 31, 0, 76,128, 31, 0, 72, 47,128, 0, 3,
/* 0x0cc0 */ 124, 3, 3,120,129, 97, 0, 0,128, 11, 0, 4,124, 8, 3,166, /* 0x0cc0 */ 65,158, 0, 20,128,127, 0, 32, 56,128, 0, 9,128,191, 0, 76,
/* 0x0cd0 */ 131,235,255,252,125, 97, 91,120, 78,128, 0, 32 /* 0x0cd0 */ 75,255,248, 41, 56, 0, 0, 0,144, 31, 0, 80,129, 63, 0, 16,
/* 0x0ce0 */ 160, 9, 0, 44, 84, 9, 4, 62,128, 31, 0, 80,127,137, 0, 0,
/* 0x0cf0 */ 64,157, 0,196,129, 63, 0, 44,128, 9, 0, 0, 47,128, 0, 3,
/* 0x0d00 */ 64,158, 0,152,129, 63, 0, 44,129, 41, 0, 8,128, 31, 0,120,
/* 0x0d10 */ 124, 9, 2, 20,144, 31, 0, 84,128,127, 0, 84, 56,128, 0, 0,
/* 0x0d20 */ 56,160, 0, 0, 75,255,244, 93,124, 96, 27,120,144, 31, 0, 88,
/* 0x0d30 */ 128, 31, 0, 88, 47,128, 0, 0, 64,156, 0, 8, 72, 0, 0, 32,
/* 0x0d40 */ 128,127, 0, 88,128,159, 0, 16, 56,160, 2, 0, 75,255,244, 45,
/* 0x0d50 */ 124, 96, 27,120, 47,128, 2, 0, 65,158, 0, 12, 56, 96, 0,127,
/* 0x0d60 */ 75,255,244, 17,128,127, 0, 16, 56,128, 0, 0,128,191, 0, 88,
/* 0x0d70 */ 56,192, 0, 0, 56,224, 0, 0, 57, 0, 0, 0, 57, 32, 0, 0,
/* 0x0d80 */ 129, 95, 0, 40, 75,255,249,181,124, 96, 27,120,144, 31, 0, 76,
/* 0x0d90 */ 128,127, 0, 88, 75,255,243,245,129, 63, 0, 44, 56, 9, 0, 32,
/* 0x0da0 */ 144, 31, 0, 44,129, 63, 0, 80, 56, 9, 0, 1,144, 31, 0, 80,
/* 0x0db0 */ 75,255,255, 44,128, 31, 0, 76,124, 3, 3,120,129, 97, 0, 0,
/* 0x0dc0 */ 128, 11, 0, 4,124, 8, 3,166,131,235,255,252,125, 97, 91,120,
/* 0x0dd0 */ 78,128, 0, 32
}; };
+13 -13
View File
@@ -32,8 +32,8 @@
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_SIZE 9090 #define STUB_POWERPC_LINUX_KERNEL_VMLINUX_SIZE 9090
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_ADLER32 0x179626d2 #define STUB_POWERPC_LINUX_KERNEL_VMLINUX_ADLER32 0x07ef2789
#define STUB_POWERPC_LINUX_KERNEL_VMLINUX_CRC32 0xc029750b #define STUB_POWERPC_LINUX_KERNEL_VMLINUX_CRC32 0x4e7e9b33
unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = { unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -43,9 +43,9 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
/* 0x0040 */ 0, 0, 0, 0, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191, /* 0x0040 */ 0, 0, 0, 0, 40, 6, 0,208, 76,130, 0, 32, 84,132,240,191,
/* 0x0050 */ 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8, /* 0x0050 */ 77,130, 0, 32, 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8,
/* 0x0060 */ 124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, 56, 99,255,252, /* 0x0060 */ 124, 4, 3,120, 56,165, 1, 32,124,103, 27,120, 56, 99,255,252,
/* 0x0070 */ 124,137, 3,166, 72, 0, 0, 28, 84, 75, 2,186,125, 99, 88, 80, /* 0x0070 */ 124,137, 3,166, 72, 0, 0, 28, 85, 96, 2,186,124, 3, 0, 80,
/* 0x0080 */ 125,107, 58, 20, 81, 98, 1,186,144, 67, 0, 0, 78, 64, 0, 32, /* 0x0080 */ 124, 0, 58, 20, 80, 11, 1,186,145, 99, 0, 0, 78, 64, 0, 32,
/* 0x0090 */ 132, 67, 0, 4, 84, 75, 85,190,124, 11, 40, 64, 65,162,255,220, /* 0x0090 */ 133, 99, 0, 4, 85, 96, 85,190,124, 0, 40, 64, 65,162,255,220,
/* 0x00a0 */ 66, 0,255,240, 78,128, 0, 32,124, 0, 41,236,125,168, 2,166, /* 0x00a0 */ 66, 0,255,240, 78,128, 0, 32,124, 0, 41,236,125,168, 2,166,
/* 0x00b0 */ 40, 7, 0, 2, 64,130, 0,228,144,166, 0, 0,124,132, 26, 20, /* 0x00b0 */ 40, 7, 0, 2, 64,130, 0,228,144,166, 0, 0,124,132, 26, 20,
/* 0x00c0 */ 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255, 56,165,255,255, /* 0x00c0 */ 60, 0,128, 0, 61, 32,128, 0, 56, 99,255,255, 56,165,255,255,
@@ -54,11 +54,11 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
/* 0x00f0 */ 124, 9, 0, 64,125, 41, 73, 20, 78,128, 0, 32,141, 3, 0, 1, /* 0x00f0 */ 124, 9, 0, 64,125, 41, 73, 20, 78,128, 0, 32,141, 3, 0, 1,
/* 0x0100 */ 157, 5, 0, 1, 75,255,255,213, 65,129,255,244, 56,224, 0, 1, /* 0x0100 */ 157, 5, 0, 1, 75,255,255,213, 65,129,255,244, 56,224, 0, 1,
/* 0x0110 */ 75,255,255,201,124,231, 57, 21, 75,255,255,193, 65,160,255,244, /* 0x0110 */ 75,255,255,201,124,231, 57, 21, 75,255,255,193, 65,160,255,244,
/* 0x0120 */ 52,231,255,253, 57, 0, 0, 0, 65,128, 0, 20,140, 67, 0, 1, /* 0x0120 */ 52,231,255,253, 57, 0, 0, 0, 65,128, 0, 20,141, 99, 0, 1,
/* 0x0130 */ 84,231, 64, 46,124,234, 16,249, 65,130, 0, 0, 75,255,255,157, /* 0x0130 */ 84,231, 64, 46,124,234, 88,249, 65,130, 0, 0, 75,255,255,157,
/* 0x0140 */ 125, 8, 65, 21, 75,255,255,149,125, 8, 65, 21, 56,224, 0, 1, /* 0x0140 */ 125, 8, 65, 21, 75,255,255,149,125, 8, 65, 21, 56,224, 0, 1,
/* 0x0150 */ 64,130, 0, 28, 56,224, 0, 3, 57, 0, 0, 1, 75,255,255,125, /* 0x0150 */ 64,130, 0, 28, 56,224, 0, 3, 57, 0, 0, 1, 75,255,255,125,
/* 0x0160 */ 125, 8, 65, 21, 75,255,255,117, 65,160,255,244, 32, 74,242,255, /* 0x0160 */ 125, 8, 65, 21, 75,255,255,117, 65,160,255,244, 33,106,242,255,
/* 0x0170 */ 125, 8, 57, 20,124,234, 42, 20,125, 9, 3,166,141, 7, 0, 1, /* 0x0170 */ 125, 8, 57, 20,124,234, 42, 20,125, 9, 3,166,141, 7, 0, 1,
/* 0x0180 */ 157, 5, 0, 1, 66, 0,255,248, 56,224, 1, 0,124, 7, 41,236, /* 0x0180 */ 157, 5, 0, 1, 66, 0,255,248, 56,224, 1, 0,124, 7, 41,236,
/* 0x0190 */ 124, 7, 26, 44, 75,255,255,112,124, 0, 41,236,125,168, 2,166, /* 0x0190 */ 124, 7, 26, 44, 75,255,255,112,124, 0, 41,236,125,168, 2,166,
@@ -72,7 +72,7 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
/* 0x0210 */ 124,231, 57, 21,125, 41, 72, 21, 65,162,255,177,124,231, 57, 21, /* 0x0210 */ 124,231, 57, 21,125, 41, 72, 21, 65,162,255,177,124,231, 57, 21,
/* 0x0220 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161, 65,160,255,216, /* 0x0220 */ 124, 9, 0, 64,125, 41, 74, 20, 65,162,255,161, 65,160,255,216,
/* 0x0230 */ 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24, /* 0x0230 */ 57, 0, 0, 0, 52,231,255,253, 84,231, 64, 46, 65,128, 0, 24,
/* 0x0240 */ 140, 67, 0, 1,124,234, 16,249,125, 74, 14,112, 65,130, 0, 0, /* 0x0240 */ 141, 99, 0, 1,124,234, 88,249,125, 74, 14,112, 65,130, 0, 0,
/* 0x0250 */ 72, 0, 0, 12,125, 41, 72, 21, 65,162,255,113,125, 8, 65, 21, /* 0x0250 */ 72, 0, 0, 12,125, 41, 72, 21, 65,162,255,113,125, 8, 65, 21,
/* 0x0260 */ 125, 41, 72, 21, 65,162,255,101,125, 8, 65, 21, 64,130, 0, 40, /* 0x0260 */ 125, 41, 72, 21, 65,162,255,101,125, 8, 65, 21, 64,130, 0, 40,
/* 0x0270 */ 57, 0, 0, 1,125, 41, 72, 21, 65,162,255, 81,125, 8, 65, 21, /* 0x0270 */ 57, 0, 0, 1,125, 41, 72, 21, 65,162,255, 81,125, 8, 65, 21,
@@ -90,8 +90,8 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
/* 0x0330 */ 56,231,255,255,125, 41, 72, 21, 65,162,255,189,124,231, 57, 20, /* 0x0330 */ 56,231,255,255,125, 41, 72, 21, 65,162,255,189,124,231, 57, 20,
/* 0x0340 */ 125, 41, 72, 21, 65,162,255,177,124,231, 57, 20,124, 9, 0, 64, /* 0x0340 */ 125, 41, 72, 21, 65,162,255,177,124,231, 57, 20,124, 9, 0, 64,
/* 0x0350 */ 125, 41, 74, 20, 65,162,255,161, 65,160,255,216, 57, 0, 0, 0, /* 0x0350 */ 125, 41, 74, 20, 65,162,255,161, 65,160,255,216, 57, 0, 0, 0,
/* 0x0360 */ 52,231,255,253, 84,231, 64, 46, 65,128, 0, 32,140, 67, 0, 1, /* 0x0360 */ 52,231,255,253, 84,231, 64, 46, 65,128, 0, 32,141, 99, 0, 1,
/* 0x0370 */ 124,234, 16,249,125, 74, 14,112, 65,130, 0, 0,112, 66, 0, 1, /* 0x0370 */ 124,234, 88,249,125, 74, 14,112, 65,130, 0, 0,113,107, 0, 1,
/* 0x0380 */ 65,162, 0, 80, 72, 0, 0, 20,124, 9, 0, 64,125, 41, 74, 20, /* 0x0380 */ 65,162, 0, 80, 72, 0, 0, 20,124, 9, 0, 64,125, 41, 74, 20,
/* 0x0390 */ 65,162,255,101, 65,161, 0, 60, 57, 0, 0, 1,124, 9, 0, 64, /* 0x0390 */ 65,162,255,101, 65,161, 0, 60, 57, 0, 0, 1,124, 9, 0, 64,
/* 0x03a0 */ 125, 41, 74, 20, 65,162,255, 81, 65,161, 0, 40,125, 41, 72, 21, /* 0x03a0 */ 125, 41, 74, 20, 65,162,255, 81, 65,161, 0, 40,125, 41, 72, 21,
@@ -107,13 +107,13 @@ unsigned char stub_powerpc_linux_kernel_vmlinux[9090] = {
/* 0x0440 */ 124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32, 40, 7, 0, 14, /* 0x0440 */ 124, 0, 4,172, 76, 0, 1, 44, 78,128, 0, 32, 40, 7, 0, 14,
/* 0x0450 */ 64,130, 0, 36,148, 33,255,232,124, 8, 2,166,124,201, 51,120, /* 0x0450 */ 64,130, 0, 36,148, 33,255,232,124, 8, 2,166,124,201, 51,120,
/* 0x0460 */ 129, 6, 0, 0,124,167, 43,120, 56,164,255,254, 56,131, 0, 2, /* 0x0460 */ 129, 6, 0, 0,124,167, 43,120, 56,164,255,254, 56,131, 0, 2,
/* 0x0470 */ 144, 1, 0, 8,136, 3, 0, 0, 84, 11,232,254, 84, 2, 7,126, /* 0x0470 */ 144, 1, 0, 8,136, 3, 0, 0, 84, 11,232,254, 84, 12, 7,126,
/* 0x0480 */ 56, 96,250, 0,124, 99, 88, 48, 56, 99,241,124,124, 38, 11,120, /* 0x0480 */ 56, 96,250, 0,124, 99, 88, 48, 56, 99,241,124,124, 38, 11,120,
/* 0x0490 */ 124, 33, 26, 20, 84, 33, 0, 52, 56, 0, 0, 0,124,195, 51,120, /* 0x0490 */ 124, 33, 26, 20, 84, 33, 0, 52, 56, 0, 0, 0,124,195, 51,120,
/* 0x04a0 */ 144, 9, 0, 0,148, 3,255,252,124, 1, 24, 64, 65,128,255,248, /* 0x04a0 */ 144, 9, 0, 0,148, 3,255,252,124, 1, 24, 64, 65,128,255,248,
/* 0x04b0 */ 144,193, 0, 0,136, 4,255,255,144,225, 0, 8, 56,193, 0, 16, /* 0x04b0 */ 144,193, 0, 0,136, 4,255,255,144,225, 0, 8, 56,193, 0, 16,
/* 0x04c0 */ 145, 33, 0, 12, 56, 97, 0, 20, 84, 11,225, 62, 84, 0, 7, 62, /* 0x04c0 */ 145, 33, 0, 12, 56, 97, 0, 20, 84, 11,225, 62, 84, 0, 7, 62,
/* 0x04d0 */ 152, 67, 0, 2,153, 99, 0, 1,152, 3, 0, 0,124, 8, 2,166, /* 0x04d0 */ 153,131, 0, 2,153, 99, 0, 1,152, 3, 0, 0,124, 8, 2,166,
/* 0x04e0 */ 148, 33,255,160,189,193, 0, 24, 59, 32, 0, 0,125, 40, 3,166, /* 0x04e0 */ 148, 33,255,160,189,193, 0, 24, 59, 32, 0, 0,125, 40, 3,166,
/* 0x04f0 */ 124,206, 51,120,124,147, 35,120,144, 1, 0,100,124,245, 59,120, /* 0x04f0 */ 124,206, 51,120,124,147, 35,120,144, 1, 0,100,124,245, 59,120,
/* 0x0500 */ 125, 20, 67,120,137, 67, 0, 2, 59, 3, 0, 4, 59,224, 0, 0, /* 0x0500 */ 125, 20, 67,120,137, 67, 0, 2, 59, 3, 0, 4, 59,224, 0, 0,
File diff suppressed because it is too large Load Diff
+153 -153
View File
@@ -1,5 +1,5 @@
/* powerpc64-linux.elf-fold.h /* powerpc64-linux.elf-fold.h
created from powerpc64-linux.elf-fold.bin, 2536 (0x9e8) bytes created from powerpc64-linux.elf-fold.bin, 2544 (0x9f0) bytes
This file is part of the UPX executable compressor. This file is part of the UPX executable compressor.
@@ -31,168 +31,168 @@
*/ */
#define STUB_POWERPC64_LINUX_ELF_FOLD_SIZE 2536 #define STUB_POWERPC64_LINUX_ELF_FOLD_SIZE 2544
#define STUB_POWERPC64_LINUX_ELF_FOLD_ADLER32 0x3bda8ef9 #define STUB_POWERPC64_LINUX_ELF_FOLD_ADLER32 0x58a37e98
#define STUB_POWERPC64_LINUX_ELF_FOLD_CRC32 0xe5f29d29 #define STUB_POWERPC64_LINUX_ELF_FOLD_CRC32 0x6314121a
unsigned char stub_powerpc64_linux_elf_fold[2536] = { unsigned char stub_powerpc64_linux_elf_fold[2544] = {
/* 0x0000 */ 127, 69, 76, 70, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0000 */ 127, 69, 76, 70, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0010 */ 0, 2, 0, 21, 0, 0, 0, 1, 0, 0, 0, 0, 0, 16, 9,152, /* 0x0010 */ 0, 2, 0, 21, 0, 0, 0, 1, 0, 0, 0, 0, 0, 16, 9,160,
/* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0020 */ 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0030 */ 0, 0, 0, 1, 0, 64, 0, 56, 0, 2, 0, 0, 0, 0, 0, 0, /* 0x0030 */ 0, 0, 0, 1, 0, 64, 0, 56, 0, 2, 0, 0, 0, 0, 0, 0,
/* 0x0040 */ 0, 0, 0, 1, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0040 */ 0, 0, 0, 1, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x0050 */ 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, /* 0x0050 */ 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0,
/* 0x0060 */ 0, 0, 0, 0, 0, 0, 9,148, 0, 0, 0, 0, 0, 0, 9,148, /* 0x0060 */ 0, 0, 0, 0, 0, 0, 9,156, 0, 0, 0, 0, 0, 0, 9,156,
/* 0x0070 */ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 6, /* 0x0070 */ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 6,
/* 0x0080 */ 0, 0, 0, 0, 0, 0, 9,152, 0, 0, 0, 0, 0, 16, 9,152, /* 0x0080 */ 0, 0, 0, 0, 0, 0, 9,160, 0, 0, 0, 0, 0, 16, 9,160,
/* 0x0090 */ 0, 0, 0, 0, 0, 16, 9,152, 0, 0, 0, 0, 0, 0, 0, 80, /* 0x0090 */ 0, 0, 0, 0, 0, 16, 9,160, 0, 0, 0, 0, 0, 0, 0, 80,
/* 0x00a0 */ 0, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 0, 0, 1, 0, 0, /* 0x00a0 */ 0, 0, 0, 0, 0, 0, 0, 88, 0, 0, 0, 0, 0, 1, 0, 0,
/* 0x00b0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0,125, /* 0x00b0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0,125,
/* 0x00c0 */ 40, 6, 0,208, 76,194, 0, 32, 84,132,240,191, 77,194, 0, 32, /* 0x00c0 */ 40, 6, 0,208, 76,194, 0, 32, 84,132,240,191, 77,194, 0, 32,
/* 0x00d0 */ 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8,124, 4, 3,120, /* 0x00d0 */ 60, 0, 0, 16,124, 4, 0, 64, 65,128, 0, 8,124, 4, 3,120,
/* 0x00e0 */ 56,165, 1, 32,124,103, 27,120, 56, 99,255,252,124,137, 3,166, /* 0x00e0 */ 56,165, 1, 32,124,103, 27,120, 56, 99,255,252,124,137, 3,166,
/* 0x00f0 */ 72, 0, 0, 28, 84, 75, 2,186,125, 99, 88, 80,125,107, 58, 20, /* 0x00f0 */ 72, 0, 0, 28, 84, 11, 2,186,125, 99, 88, 80,125,107, 58, 20,
/* 0x0100 */ 81, 98, 1,186,144, 67, 0, 0, 79, 64, 0, 32,132, 67, 0, 4, /* 0x0100 */ 81, 96, 1,186,144, 3, 0, 0, 79, 64, 0, 32,132, 3, 0, 4,
/* 0x0110 */ 84, 75, 85,190,124, 11, 40, 64, 65,194,255,220, 67, 32,255,240, /* 0x0110 */ 84, 11, 85,190,124, 11, 40, 64, 65,194,255,220, 67, 32,255,240,
/* 0x0120 */ 78,128, 0, 32,232, 73, 0, 0, 57, 41, 0, 8, 43,162, 0, 0, /* 0x0120 */ 78,128, 0, 32,232, 9, 0, 0, 57, 41, 0, 8, 43,160, 0, 0,
/* 0x0130 */ 64,254,255,244, 78,128, 0, 32,125, 8, 2,166,233, 33, 0, 48, /* 0x0130 */ 64,254,255,244, 78,128, 0, 32,125, 8, 2,166,233, 33, 0,112,
/* 0x0140 */ 75,255,255,229, 75,255,255,225, 57, 65, 1, 40,248, 74, 0, 0, /* 0x0140 */ 75,255,255,229, 75,255,255,225, 57, 65, 1,104,248, 10, 0, 0,
/* 0x0150 */ 56, 33,248, 0,128,159,255,248, 85, 30, 0, 38,127,164,248, 80, /* 0x0150 */ 56, 33,248, 0,128,159,255,248,121, 30, 3,228,127,164,248, 80,
/* 0x0160 */ 127,231,251,120, 59,189,255,248,124,154, 32, 80,124,125,210, 20, /* 0x0160 */ 59,189,255,248,127,231,251,120,124,125,210, 20,124,154, 32, 80,
/* 0x0170 */ 56,161, 0, 48,128,195, 0, 0,248,225, 0, 24, 56,225, 0, 24, /* 0x0170 */ 56,161, 0,112,128,195, 0, 0,248,225, 0, 24, 56,225, 0, 24,
/* 0x0180 */ 249, 1, 0, 32, 57, 1, 0, 32, 72, 0, 5,229,232, 1, 9, 40, /* 0x0180 */ 249, 1, 0, 32, 57, 1, 0, 32,124,128, 0, 8, 72, 0, 5,233,
/* 0x0190 */ 232, 67, 0, 8,124, 66, 2, 20,232, 99, 0, 0,124, 99, 2, 20, /* 0x0190 */ 232, 1, 9,104,232, 67, 0, 8,124, 66, 2, 20,232, 99, 0, 0,
/* 0x01a0 */ 124,127, 27,120,127,163,235,120,124,157,240, 80, 72, 0, 0,205, /* 0x01a0 */ 124, 99, 2, 20,124,127, 27,120,127,163,235,120,124,157,240, 80,
/* 0x01b0 */ 127,232, 3,166,232, 97, 8, 64,232,129, 8, 72,232,161, 8, 80, /* 0x01b0 */ 72, 0, 0,181,127,232, 3,166,232, 65, 8,120,232, 97, 8,128,
/* 0x01c0 */ 232,193, 8, 88,232,225, 8, 96,233, 1, 8,104,233, 33, 8,112, /* 0x01c0 */ 232,129, 8,136,232,161, 8,144,232,193, 8,152,232,225, 8,160,
/* 0x01d0 */ 233, 65, 8,120,233, 97, 8,128,233,129, 8,136,233,161, 8,144, /* 0x01d0 */ 233, 1, 8,168,233, 33, 8,176,233, 65, 8,184,233, 97, 8,192,
/* 0x01e0 */ 233,193, 8,152,233,225, 8,160,234, 1, 8,168,234, 33, 8,176, /* 0x01e0 */ 233,129, 8,200,233,161, 8,208,233,193, 8,216,233,225, 8,224,
/* 0x01f0 */ 234, 65, 8,184,234, 97, 8,192,234,129, 8,200,234,161, 8,208, /* 0x01f0 */ 234, 1, 8,232,234, 33, 8,240,234, 65, 8,248,234, 97, 9, 0,
/* 0x0200 */ 234,193, 8,216,234,225, 8,224,235, 1, 8,232,235, 33, 8,240, /* 0x0200 */ 234,129, 9, 8,234,161, 9, 16,234,193, 9, 24,234,225, 9, 32,
/* 0x0210 */ 235, 65, 8,248,235, 97, 9, 0,235,129, 9, 8,235,161, 9, 16, /* 0x0210 */ 235, 1, 9, 40,235, 33, 9, 48,235, 65, 9, 56,235, 97, 9, 64,
/* 0x0220 */ 235,193, 9, 24,235,225, 9, 32,232, 33, 8, 48, 56, 0, 0, 0, /* 0x0220 */ 235,129, 9, 72,235,161, 9, 80,235,193, 9, 88,235,225, 9, 96,
/* 0x0230 */ 124, 15,241, 32,124, 9, 3,166, 78,128, 0, 32, 56, 0, 0, 90, /* 0x0230 */ 232, 33, 8,112, 56, 0, 0, 0,124, 15,241, 32,124, 9, 3,166,
/* 0x0240 */ 68, 0, 0, 2, 64,227, 0, 8, 56, 96,255,255, 78,128, 0, 32, /* 0x0240 */ 78,128, 0, 32, 56, 0, 0, 1, 72, 0, 0, 8, 56, 0, 0, 45,
/* 0x0250 */ 56, 0, 0, 1, 75,255,255,236, 56, 0, 0, 3, 75,255,255,228, /* 0x0250 */ 72, 0, 0, 8, 56, 0, 0, 6, 72, 0, 0, 8, 56, 0, 0, 5,
/* 0x0260 */ 56, 0, 0, 5, 75,255,255,220, 56, 0, 0, 6, 75,255,255,212, /* 0x0260 */ 72, 0, 0, 8, 56, 0, 0, 91, 72, 0, 0, 8, 56, 0, 0,125,
/* 0x0270 */ 56, 0, 0,125, 75,255,255,204, 56, 0, 0, 91, 75,255,255,196, /* 0x0270 */ 72, 0, 0, 8, 56, 0, 0, 3, 72, 0, 0, 8, 56, 0, 0, 90,
/* 0x0280 */ 56, 0, 0, 45, 75,255,255,188, 44, 35, 0, 0, 77,130, 0, 32, /* 0x0280 */ 68, 0, 0, 2, 64,227, 0, 8, 56, 96,255,255, 78,128, 0, 32,
/* 0x0290 */ 47, 36, 0, 0,233, 67, 0, 0,127,170, 32, 64, 64,158, 0, 16, /* 0x0290 */ 44, 35, 0, 0, 77,130, 0, 32, 47, 36, 0, 0,233, 67, 0, 0,
/* 0x02a0 */ 248,131, 0, 0,248,163, 0, 8, 78,128, 0, 32, 43,170, 0, 1, /* 0x02a0 */ 127,170, 32, 64, 64,158, 0, 16,248,131, 0, 0,248,163, 0, 8,
/* 0x02b0 */ 64,158, 0, 8, 64,154,255,236, 56, 99, 0, 16, 75,255,255,216, /* 0x02b0 */ 78,128, 0, 32, 43,170, 0, 1, 64,158, 0, 8, 64,154,255,236,
/* 0x02c0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,233, 67, 0, 0, /* 0x02c0 */ 56, 99, 0, 16, 75,255,255,216, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x02d0 */ 233, 3, 0, 8, 56,229, 0, 1, 57, 32, 0, 0,124,233, 3,166, /* 0x02d0 */ 0, 0, 0, 0,233, 67, 0, 0,233, 3, 0, 8, 56,229, 0, 1,
/* 0x02e0 */ 127,170, 40, 64, 64,252, 0, 28,124, 8, 2,166, 56, 96, 0,127, /* 0x02e0 */ 57, 32, 0, 0,124,233, 3,166,127,170, 40, 64, 64,252, 0, 28,
/* 0x02f0 */ 248, 1, 0, 16,248, 33,255,145, 75,255,255, 89, 96, 0, 0, 0, /* 0x02f0 */ 124, 8, 2,166, 56, 96, 0,127,248, 1, 0, 16,248, 33,255,145,
/* 0x0300 */ 66, 64, 0, 20,125, 72, 72,174,125, 68, 73,174, 57, 41, 0, 1, /* 0x0300 */ 75,255,255, 69, 96, 0, 0, 0, 66, 64, 0, 20,125, 72, 72,174,
/* 0x0310 */ 75,255,255,240,233, 67, 0, 8,125, 74, 74, 20,249, 67, 0, 8, /* 0x0310 */ 125, 68, 73,174, 57, 41, 0, 1, 75,255,255,240,233, 67, 0, 8,
/* 0x0320 */ 233, 67, 0, 0,125, 41, 80, 80,249, 35, 0, 0, 78,128, 0, 32, /* 0x0320 */ 125, 74, 74, 20,249, 67, 0, 8,233, 67, 0, 0,125, 41, 80, 80,
/* 0x0330 */ 0, 0, 0, 0, 0, 0, 0, 1,128, 0, 0, 0,125,128, 0, 38, /* 0x0330 */ 249, 35, 0, 0, 78,128, 0, 32, 0, 0, 0, 0, 0, 0, 0, 1,
/* 0x0340 */ 124, 8, 2,166,145,129, 0, 8, 72, 0, 5,225,248, 33,255, 81, /* 0x0340 */ 128, 0, 0, 0,125,128, 0, 38,124, 8, 2,166,145,129, 0, 8,
/* 0x0350 */ 124,126, 27,120,124,159, 35,120,124,189, 43,120,124,220, 51,120, /* 0x0350 */ 72, 0, 5,225,248, 33,255, 81,124,126, 27,120,124,159, 35,120,
/* 0x0360 */ 46, 38, 0, 0,233, 63, 0, 0, 47,169, 0, 0, 65,158, 1, 64, /* 0x0360 */ 124,189, 43,120,124,220, 51,120, 46, 38, 0, 0,233, 63, 0, 0,
/* 0x0370 */ 127,195,243,120, 56,129, 0,112, 56,160, 0, 12, 75,255,255, 81, /* 0x0370 */ 47,169, 0, 0, 65,158, 1, 64,127,195,243,120, 56,129, 0,112,
/* 0x0380 */ 129, 65, 0,112,129, 33, 0,116, 47,170, 0, 0, 64,158, 0, 32, /* 0x0380 */ 56,160, 0, 12, 75,255,255, 81,129, 65, 0,112,129, 33, 0,116,
/* 0x0390 */ 109, 37, 33, 88, 47,133, 80, 85, 64,158, 0, 28,233, 62, 0, 0, /* 0x0390 */ 47,170, 0, 0, 64,158, 0, 32,109, 37, 33, 88, 47,133, 80, 85,
/* 0x03a0 */ 47,169, 0, 0, 65,254, 1, 8, 72, 0, 0, 12,121, 41, 0, 33, /* 0x03a0 */ 64,158, 0, 28,233, 62, 0, 0, 47,169, 0, 0, 65,254, 1, 8,
/* 0x03b0 */ 64,226, 0, 16, 56, 96, 0,127, 75,255,254,153, 96, 0, 0, 0, /* 0x03b0 */ 72, 0, 0, 12,121, 41, 0, 33, 64,226, 0, 16, 56, 96, 0,127,
/* 0x03c0 */ 127, 9, 80, 64, 65,217,255,240,233, 31, 0, 0,127,170, 64, 64, /* 0x03c0 */ 75,255,254,133, 96, 0, 0, 0,127, 9, 80, 64, 65,217,255,240,
/* 0x03d0 */ 65,221,255,228,232,191, 0, 8, 64,152, 0,164,125, 36, 75,120, /* 0x03d0 */ 233, 31, 0, 0,127,170, 64, 64, 65,221,255,228,232,191, 0, 8,
/* 0x03e0 */ 233, 61, 0, 0,232,126, 0, 8, 56,193, 0,128,249, 65, 0,128, /* 0x03e0 */ 64,152, 0,164,125, 36, 75,120,233, 61, 0, 0,232,126, 0, 8,
/* 0x03f0 */ 248, 65, 0, 40,136,225, 0,120,233,125, 0, 16,125, 41, 3,166, /* 0x03f0 */ 56,193, 0,128,249, 65, 0,128,248, 65, 0, 40,136,225, 0,120,
/* 0x0400 */ 232, 93, 0, 8, 78,128, 4, 33,232, 65, 0, 40, 47,163, 0, 0, /* 0x0400 */ 233,125, 0, 16,125, 41, 3,166,232, 93, 0, 8, 78,128, 4, 33,
/* 0x0410 */ 64,222,255,164,232,129, 0,128,129, 33, 0,112,127,164, 72, 0, /* 0x0410 */ 232, 65, 0, 40, 47,163, 0, 0, 64,222,255,164,232,129, 0,128,
/* 0x0420 */ 64,222,255,148,136,193, 0,121, 47,166, 0, 0, 65,158, 0, 48, /* 0x0420 */ 129, 33, 0,112,127,164, 72, 0, 64,222,255,148,136,193, 0,121,
/* 0x0430 */ 65,146, 0, 44,232,127, 0, 8,136,161, 0,122,120,132, 0, 32, /* 0x0430 */ 47,166, 0, 0, 65,158, 0, 48, 65,146, 0, 44,232,127, 0, 8,
/* 0x0440 */ 248, 65, 0, 40,233, 60, 0, 0,233,124, 0, 16,125, 41, 3,166, /* 0x0440 */ 136,161, 0,122,120,132, 0, 32,248, 65, 0, 40,233, 60, 0, 0,
/* 0x0450 */ 232, 92, 0, 8, 78,128, 4, 33,232, 65, 0, 40,129, 1, 0,116, /* 0x0450 */ 233,124, 0, 16,125, 41, 3,166,232, 92, 0, 8, 78,128, 4, 33,
/* 0x0460 */ 233, 94, 0, 8,233, 62, 0, 0,125, 74, 66, 20,125, 40, 72, 80, /* 0x0460 */ 232, 65, 0, 40,129, 1, 0,116,233, 94, 0, 8,233, 62, 0, 0,
/* 0x0470 */ 249, 94, 0, 8,249, 62, 0, 0, 72, 0, 0, 20,124,164, 43,120, /* 0x0470 */ 125, 74, 66, 20,125, 40, 72, 80,249, 94, 0, 8,249, 62, 0, 0,
/* 0x0480 */ 127,195,243,120,125, 37, 75,120, 75,255,254, 69,129, 1, 0,112, /* 0x0480 */ 72, 0, 0, 20,124,164, 43,120,127,195,243,120,125, 37, 75,120,
/* 0x0490 */ 233, 95, 0, 8,233, 63, 0, 0,125, 74, 66, 20,125, 40, 72, 80, /* 0x0490 */ 75,255,254, 69,129, 1, 0,112,233, 95, 0, 8,233, 63, 0, 0,
/* 0x04a0 */ 249, 95, 0, 8,249, 63, 0, 0, 75,255,254,188, 56, 33, 0,176, /* 0x04a0 */ 125, 74, 66, 20,125, 40, 72, 80,249, 95, 0, 8,249, 63, 0, 0,
/* 0x04b0 */ 129,129, 0, 8,125,144,129, 32, 72, 0, 4,192, 0, 0, 0, 0, /* 0x04b0 */ 75,255,254,188, 56, 33, 0,176,129,129, 0, 8,125,144,129, 32,
/* 0x04c0 */ 0, 0, 0, 3,128, 4, 0, 0,124, 8, 2,166,125,128, 0, 38, /* 0x04c0 */ 72, 0, 4,192, 0, 0, 0, 0, 0, 0, 0, 3,128, 4, 0, 0,
/* 0x04d0 */ 72, 0, 4, 33,125, 58, 75,120,161, 35, 0, 16,235,163, 0, 32, /* 0x04d0 */ 124, 8, 2,166,125,128, 0, 38, 72, 0, 4, 33,125, 58, 75,120,
/* 0x04e0 */ 124,215, 51,120,124,123, 27,120,124,153, 35,120, 47,137, 0, 3, /* 0x04e0 */ 161, 35, 0, 16,235,163, 0, 32,124,215, 51,120,124,123, 27,120,
/* 0x04f0 */ 145,129, 0, 8,248, 33,254,241,124,184, 43,120,124,246, 59,120, /* 0x04f0 */ 124,153, 35,120, 47,137, 0, 3,145,129, 0, 8,248, 33,254,241,
/* 0x0500 */ 125, 21, 67,120,127,163,234, 20, 56,192, 0, 16, 64,158, 0, 8, /* 0x0500 */ 124,184, 43,120,124,246, 59,120,125, 21, 67,120,127,163,234, 20,
/* 0x0510 */ 56,192, 0, 0,161, 59, 0, 56, 56,198, 8, 34,127,168,235,120, /* 0x0510 */ 56,192, 0, 16, 64,158, 0, 8, 56,192, 0, 0,161, 59, 0, 56,
/* 0x0520 */ 57, 64, 0, 0, 59,192,255,255, 57, 41, 0, 1,125, 41, 3,166, /* 0x0520 */ 56,198, 8, 34,127,168,235,120, 57, 64, 0, 0, 59,192,255,255,
/* 0x0530 */ 66, 64, 0, 60,129, 40, 0, 0, 47,137, 0, 1, 64,158, 0, 40, /* 0x0530 */ 57, 41, 0, 1,125, 41, 3,166, 66, 64, 0, 60,129, 40, 0, 0,
/* 0x0540 */ 232,232, 0, 16,127,190, 56, 64, 64,157, 0, 8,124,254, 59,120, /* 0x0540 */ 47,137, 0, 1, 64,158, 0, 40,232,232, 0, 16,127,190, 56, 64,
/* 0x0550 */ 233, 40, 0, 40,125, 39, 74, 20,127,170, 72, 64, 64,156, 0, 8, /* 0x0550 */ 64,157, 0, 8,124,254, 59,120,233, 40, 0, 40,125, 39, 74, 20,
/* 0x0560 */ 125, 42, 75,120, 57, 8, 0, 56, 75,255,255,200, 61, 74, 0, 1, /* 0x0560 */ 127,170, 72, 64, 64,156, 0, 8,125, 42, 75,120, 57, 8, 0, 56,
/* 0x0570 */ 123,222, 3,228, 57, 74,255,255,127,195,243,120,124,158, 80, 80, /* 0x0570 */ 75,255,255,200, 61, 74, 0, 1,123,222, 3,228, 57, 74,255,255,
/* 0x0580 */ 56,160, 0, 0,120,132, 3,228,124,198, 7,180, 56,224,255,255, /* 0x0580 */ 127,195,243,120,124,158, 80, 80, 56,160, 0, 0,120,132, 3,228,
/* 0x0590 */ 57, 0, 0, 0, 75,255,252,169, 96, 0, 0, 0, 62, 64,115, 81, /* 0x0590 */ 124,198, 7,180, 56,224,255,255, 57, 0, 0, 0, 75,255,252,225,
/* 0x05a0 */ 58,128, 0, 0, 46, 57, 0, 0, 98, 82, 98, 64,127,222, 24, 80, /* 0x05a0 */ 96, 0, 0, 0, 62, 64,115, 81, 58,128, 0, 0, 46, 57, 0, 0,
/* 0x05b0 */ 58, 32, 0, 0,161, 59, 0, 56,127,137,160, 0, 64,157, 1,128, /* 0x05b0 */ 98, 82, 98, 64,127,222, 24, 80, 58, 32, 0, 0,161, 59, 0, 56,
/* 0x05c0 */ 129, 61, 0, 0, 65,146, 0, 36, 47,137, 0, 6, 64,158, 0, 28, /* 0x05c0 */ 127,137,160, 0, 64,157, 1,128,129, 61, 0, 0, 65,146, 0, 36,
/* 0x05d0 */ 232,189, 0, 16,126,227,187,120, 56,128, 0, 3,124,190, 42, 20, /* 0x05d0 */ 47,137, 0, 6, 64,158, 0, 28,232,189, 0, 16,126,227,187,120,
/* 0x05e0 */ 75,255,252,169, 72, 0, 1, 72, 47,137, 0, 1, 64,158, 1, 64, /* 0x05e0 */ 56,128, 0, 3,124,190, 42, 20, 75,255,252,169, 72, 0, 1, 72,
/* 0x05f0 */ 129,253, 0, 4,235,157, 0, 16,235,253, 0, 32,234,125, 0, 40, /* 0x05f0 */ 47,137, 0, 1, 64,158, 1, 64,129,253, 0, 4,235,157, 0, 16,
/* 0x0600 */ 85,239, 22,250,127,158,226, 20,251,225, 0,112,126, 79,124, 48, /* 0x0600 */ 235,253, 0, 32,234,125, 0, 40, 85,239, 22,250,127,158,226, 20,
/* 0x0610 */ 123,137, 4, 32,251,129, 0,120,126,124,154, 20,127,233,250, 20, /* 0x0610 */ 251,225, 0,112,126, 79,124, 48,123,137, 4, 32,251,129, 0,120,
/* 0x0620 */ 123,156, 3,228, 85,240, 7,126, 64,146, 0, 12, 56,160, 0, 0, /* 0x0620 */ 126,124,154, 20,127,233,250, 20,123,156, 3,228, 85,240, 7,126,
/* 0x0630 */ 72, 0, 0, 8, 56,160, 0, 2,124,165,131,120,124,165, 7,180, /* 0x0630 */ 64,146, 0, 12, 56,160, 0, 0, 72, 0, 0, 8, 56,160, 0, 2,
/* 0x0640 */ 64,146, 0, 16,127, 7,195,120, 56,192, 0, 18, 72, 0, 0, 12, /* 0x0640 */ 124,165,131,120,124,165, 7,180, 64,146, 0, 16,127, 7,195,120,
/* 0x0650 */ 56,192, 0, 50, 56,224,255,255,233, 29, 0, 8,127,131,227,120, /* 0x0650 */ 56,192, 0, 18, 72, 0, 0, 12, 56,192, 0, 50, 56,224,255,255,
/* 0x0660 */ 127,228,251,120,125, 9, 64, 80, 75,255,251,213, 96, 0, 0, 0, /* 0x0660 */ 233, 29, 0, 8,127,131,227,120,127,228,251,120,125, 9, 64, 80,
/* 0x0670 */ 127,188, 24, 0, 65,254, 0, 16, 56, 96, 0,127, 75,255,251,213, /* 0x0670 */ 75,255,252, 13, 96, 0, 0, 0,127,188, 24, 0, 65,254, 0, 16,
/* 0x0680 */ 96, 0, 0, 0, 65,146, 0, 24,127, 35,203,120, 56,129, 0,112, /* 0x0680 */ 56, 96, 0,127, 75,255,251,193, 96, 0, 0, 0, 65,146, 0, 24,
/* 0x0690 */ 126,197,179,120,126,166,171,120, 75,255,252,165,125,223, 0,208, /* 0x0690 */ 127, 35,203,120, 56,129, 0,112,126,197,179,120,126,166,171,120,
/* 0x06a0 */ 121,233,255,227,121,206, 4, 32, 64,130, 0, 12, 64,146, 0, 44, /* 0x06a0 */ 75,255,252,165,125,223, 0,208,121,233,255,227,121,206, 4, 32,
/* 0x06b0 */ 72, 0, 0, 68, 47,174, 0, 0, 65,158,255,244,125,201, 3,166, /* 0x06b0 */ 64,130, 0, 12, 64,146, 0, 44, 72, 0, 0, 68, 47,174, 0, 0,
/* 0x06c0 */ 125, 92,250, 20, 57, 32, 0, 0,126, 42, 73,174, 57, 41, 0, 1, /* 0x06c0 */ 65,158,255,244,125,201, 3,166,125, 92,250, 20, 57, 32, 0, 0,
/* 0x06d0 */ 66, 0,255,248, 75,255,255,216,127,131,227,120,127,228,251,120, /* 0x06d0 */ 126, 42, 73,174, 57, 41, 0, 1, 66, 0,255,248, 75,255,255,216,
/* 0x06e0 */ 126, 5, 7,180, 75,255,251,141, 96, 0, 0, 0, 47,163, 0, 0, /* 0x06e0 */ 127,131,227,120,127,228,251,120,126, 5, 7,180, 75,255,251,129,
/* 0x06f0 */ 64,222,255,136,127,238,250, 20,127,252,250, 20,127,191,152, 64, /* 0x06f0 */ 96, 0, 0, 0, 47,163, 0, 0, 64,222,255,136,127,238,250, 20,
/* 0x0700 */ 64,156, 0, 44,127,227,251,120,124,159,152, 80,126, 5, 7,180, /* 0x0700 */ 127,252,250, 20,127,191,152, 64, 64,156, 0, 44,127,227,251,120,
/* 0x0710 */ 56,192, 0, 50, 56,224,255,255, 57, 0, 0, 0, 75,255,251, 33, /* 0x0710 */ 124,159,152, 80,126, 5, 7,180, 56,192, 0, 50, 56,224,255,255,
/* 0x0720 */ 96, 0, 0, 0,127,191, 24, 0, 64,222,255, 80, 58,148, 0, 1, /* 0x0720 */ 57, 0, 0, 0, 75,255,251, 89, 96, 0, 0, 0,127,191, 24, 0,
/* 0x0730 */ 59,189, 0, 56,126,148, 7,180, 75,255,254,124, 47,186, 0, 0, /* 0x0730 */ 64,222,255, 80, 58,148, 0, 1, 59,189, 0, 56,126,148, 7,180,
/* 0x0740 */ 65,158, 0, 8,251,218, 0, 0, 56, 33, 1, 16,232,123, 0, 24, /* 0x0740 */ 75,255,254,124, 47,186, 0, 0, 65,158, 0, 8,251,218, 0, 0,
/* 0x0750 */ 124,126, 26, 20,129,129, 0, 8,125,144,129, 32, 72, 0, 1,228, /* 0x0750 */ 56, 33, 1, 16,232,123, 0, 24,124,126, 26, 20,129,129, 0, 8,
/* 0x0760 */ 0, 0, 0, 0, 0, 0, 0, 3,128, 18, 0, 0,124, 8, 2,166, /* 0x0760 */ 125,144,129, 32, 72, 0, 1,228, 0, 0, 0, 0, 0, 0, 0, 3,
/* 0x0770 */ 56,192, 0, 0, 72, 0, 1,173,248, 33,255, 33,124,191, 43,120, /* 0x0770 */ 128, 18, 0, 0,124, 8, 2,166, 56,192, 0, 0, 72, 0, 1,173,
/* 0x0780 */ 125, 62, 75,120,125, 91, 83,120,129, 35, 0, 0, 59,165, 0, 64, /* 0x0780 */ 248, 33,255, 33,124,191, 43,120,125, 62, 75,120,125, 91, 83,120,
/* 0x0790 */ 248, 97, 0,152,248,129, 0,144,248,161, 0,136,249, 33, 0,128, /* 0x0790 */ 129, 35, 0, 0, 59,165, 0, 64,248, 97, 0,152,248,129, 0,144,
/* 0x07a0 */ 124,229, 59,120,248,225, 0,160,249, 1, 0,168, 56, 97, 0,144, /* 0x07a0 */ 248,161, 0,136,249, 33, 0,128,124,229, 59,120,248,225, 0,160,
/* 0x07b0 */ 56,129, 0,128,233, 65, 0,144,233, 97, 0,152,249, 65, 0,112, /* 0x07b0 */ 249, 1, 0,168, 56, 97, 0,144, 56,129, 0,128,233, 65, 0,144,
/* 0x07c0 */ 249, 97, 0,120, 75,255,251,121,127,195,243,120, 56,128, 0, 3, /* 0x07c0 */ 233, 97, 0,152,249, 65, 0,112,249, 97, 0,120, 75,255,251,121,
/* 0x07d0 */ 232,191, 0, 80, 56,165, 0, 64, 75,255,250,177,160,191, 0, 56, /* 0x07d0 */ 127,195,243,120, 56,128, 0, 3,232,191, 0, 80, 56,165, 0, 64,
/* 0x07e0 */ 127,195,243,120, 56,128, 0, 5, 75,255,250,161,128,191, 0, 28, /* 0x07e0 */ 75,255,250,177,160,191, 0, 56,127,195,243,120, 56,128, 0, 5,
/* 0x07f0 */ 127,195,243,120, 56,128, 0, 9, 75,255,250,145,232,225, 0,160, /* 0x07f0 */ 75,255,250,161,128,191, 0, 28,127,195,243,120, 56,128, 0, 9,
/* 0x0800 */ 233, 1, 0,168,127,198,243,120, 56,129, 0,112, 56,160, 0, 0, /* 0x0800 */ 75,255,250,145,232,225, 0,160,233, 1, 0,168,127,198,243,120,
/* 0x0810 */ 127,105,219,120,127,227,251,120, 75,255,252,177, 56,128, 0, 9, /* 0x0810 */ 56,129, 0,112, 56,160, 0, 0,127,105,219,120,127,227,251,120,
/* 0x0820 */ 124,124, 27,120,127,195,243,120,127,133,227,120, 59,192, 0, 0, /* 0x0820 */ 75,255,252,177, 56,128, 0, 9,124,124, 27,120,127,195,243,120,
/* 0x0830 */ 75,255,250, 89,161, 31, 0, 56,127,136,240, 0, 64,157, 0,156, /* 0x0830 */ 127,133,227,120, 59,192, 0, 0, 75,255,250, 89,161, 31, 0, 56,
/* 0x0840 */ 129, 61, 0, 0, 47,137, 0, 3, 64,158, 0,128,232,125, 0, 16, /* 0x0840 */ 127,136,240, 0, 64,157, 0,156,129, 61, 0, 0, 47,137, 0, 3,
/* 0x0850 */ 233, 59, 0, 0, 56,128, 0, 0, 56,160, 0, 0,124, 99, 74, 20, /* 0x0850 */ 64,158, 0,128,232,125, 0, 16,233, 59, 0, 0, 56,128, 0, 0,
/* 0x0860 */ 75,255,250, 1, 96, 0, 0, 0, 47,131, 0, 0,124,122, 27,120, /* 0x0860 */ 56,160, 0, 0,124, 99, 74, 20, 75,255,249,245, 96, 0, 0, 0,
/* 0x0870 */ 64,252, 0, 16, 56, 96, 0,127, 75,255,249,217, 96, 0, 0, 0, /* 0x0870 */ 47,131, 0, 0,124,122, 27,120, 64,252, 0, 16, 56, 96, 0,127,
/* 0x0880 */ 127,228,251,120, 56,160, 4, 0, 75,255,249,209, 96, 0, 0, 0, /* 0x0880 */ 75,255,249,197, 96, 0, 0, 0,127,228,251,120, 56,160, 4, 0,
/* 0x0890 */ 47,163, 4, 0, 64,222,255,224,127,227,251,120, 56,128, 0, 0, /* 0x0890 */ 75,255,249,229, 96, 0, 0, 0, 47,163, 4, 0, 64,222,255,224,
/* 0x08a0 */ 127, 69,211,120, 56,192, 0, 0, 56,224, 0, 0, 57, 0, 0, 0, /* 0x08a0 */ 127,227,251,120, 56,128, 0, 0,127, 69,211,120, 56,192, 0, 0,
/* 0x08b0 */ 127,105,219,120, 75,255,252, 21,124,124, 27,120,127, 67,211,120, /* 0x08b0 */ 56,224, 0, 0, 57, 0, 0, 0,127,105,219,120, 75,255,252, 21,
/* 0x08c0 */ 75,255,249,169, 96, 0, 0, 0, 59,222, 0, 1, 59,189, 0, 56, /* 0x08c0 */ 124,124, 27,120,127, 67,211,120, 75,255,249,141, 96, 0, 0, 0,
/* 0x08d0 */ 127,222, 7,180, 75,255,255, 96, 56, 33, 0,224,127,131,227,120, /* 0x08d0 */ 59,222, 0, 1, 59,189, 0, 56,127,222, 7,180, 75,255,255, 96,
/* 0x08e0 */ 72, 0, 0,144, 0, 0, 0, 0, 0, 0, 0, 1,128, 6, 0, 0, /* 0x08e0 */ 56, 33, 0,224,127,131,227,120, 72, 0, 0,144, 0, 0, 0, 0,
/* 0x08f0 */ 249,193,255,112,249,225,255,120,250, 1,255,128,250, 33,255,136, /* 0x08f0 */ 0, 0, 0, 1,128, 6, 0, 0,249,193,255,112,249,225,255,120,
/* 0x0900 */ 250, 65,255,144,250, 97,255,152,250,129,255,160,250,161,255,168, /* 0x0900 */ 250, 1,255,128,250, 33,255,136,250, 65,255,144,250, 97,255,152,
/* 0x0910 */ 250,193,255,176,250,225,255,184,251, 1,255,192,251, 33,255,200, /* 0x0910 */ 250,129,255,160,250,161,255,168,250,193,255,176,250,225,255,184,
/* 0x0920 */ 251, 65,255,208,251, 97,255,216,251,129,255,224,251,161,255,232, /* 0x0920 */ 251, 1,255,192,251, 33,255,200,251, 65,255,208,251, 97,255,216,
/* 0x0930 */ 251,193,255,240,251,225,255,248,248, 1, 0, 16, 78,128, 0, 32, /* 0x0930 */ 251,129,255,224,251,161,255,232,251,193,255,240,251,225,255,248,
/* 0x0940 */ 233,193,255,112,233,225,255,120,234, 1,255,128,234, 33,255,136, /* 0x0940 */ 248, 1, 0, 16, 78,128, 0, 32,233,193,255,112,233,225,255,120,
/* 0x0950 */ 234, 65,255,144,234, 97,255,152,234,129,255,160,234,161,255,168, /* 0x0950 */ 234, 1,255,128,234, 33,255,136,234, 65,255,144,234, 97,255,152,
/* 0x0960 */ 234,193,255,176,234,225,255,184,235, 1,255,192,235, 33,255,200, /* 0x0960 */ 234,129,255,160,234,161,255,168,234,193,255,176,234,225,255,184,
/* 0x0970 */ 235, 65,255,208,235, 97,255,216,235,129,255,224,232, 1, 0, 16, /* 0x0970 */ 235, 1,255,192,235, 33,255,200,235, 65,255,208,235, 97,255,216,
/* 0x0980 */ 235,161,255,232,124, 8, 3,166,235,193,255,240,235,225,255,248, /* 0x0980 */ 235,129,255,224,232, 1, 0, 16,235,161,255,232,124, 8, 3,166,
/* 0x0990 */ 78,128, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 2,136, /* 0x0990 */ 235,193,255,240,235,225,255,248, 78,128, 0, 32, 0, 0, 0, 0,
/* 0x09a0 */ 0, 0, 0, 0, 0, 16,137,152, 0, 0, 0, 0, 0, 16, 2,204, /* 0x09a0 */ 0, 0, 0, 0, 0, 16, 2,144, 0, 0, 0, 0, 0, 16,137,160,
/* 0x09b0 */ 0, 0, 0, 0, 0, 16,137,152, 0, 0, 0, 0, 0, 16, 3, 60, /* 0x09b0 */ 0, 0, 0, 0, 0, 16, 2,212, 0, 0, 0, 0, 0, 16,137,160,
/* 0x09c0 */ 0, 0, 0, 0, 0, 16,137,152, 0, 0, 0, 0, 0, 16, 4,200, /* 0x09c0 */ 0, 0, 0, 0, 0, 16, 3, 68, 0, 0, 0, 0, 0, 16,137,160,
/* 0x09d0 */ 0, 0, 0, 0, 0, 16,137,152, 0, 0, 0, 0, 0, 16, 7,108, /* 0x09d0 */ 0, 0, 0, 0, 0, 16, 4,208, 0, 0, 0, 0, 0, 16,137,160,
/* 0x09e0 */ 0, 0, 0, 0, 0, 16,137,152 /* 0x09e0 */ 0, 0, 0, 0, 0, 16, 7,116, 0, 0, 0, 0, 0, 16,137,160
}; };
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+7 -7
View File
@@ -32,23 +32,23 @@
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_SIZE 6504 #define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_SIZE 6504
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_ADLER32 0x5a4ec4ac #define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_ADLER32 0x4cfac192
#define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_CRC32 0x2bc0f08d #define STUB_POWERPC64LE_DARWIN_MACHO_FOLD_CRC32 0xbbb133f9
unsigned char stub_powerpc64le_darwin_macho_fold[6504] = { unsigned char stub_powerpc64le_darwin_macho_fold[6504] = {
/* 0x0000 */ 105, 0, 0, 72,208, 0, 6, 40, 32, 0,194, 76,191,240,132, 84, /* 0x0000 */ 105, 0, 0, 72,208, 0, 6, 40, 32, 0,194, 76,191,240,132, 84,
/* 0x0010 */ 32, 0,194, 77, 16, 0, 0, 60, 64, 0, 4,124, 8, 0,128, 65, /* 0x0010 */ 32, 0,194, 77, 16, 0, 0, 60, 64, 0, 4,124, 8, 0,128, 65,
/* 0x0020 */ 120, 3, 4,124, 32, 1,165, 56,120, 27,103,124,252,255, 99, 56, /* 0x0020 */ 120, 3, 4,124, 32, 1,165, 56,120, 27,103,124,252,255, 99, 56,
/* 0x0030 */ 166, 3,137,124, 28, 0, 0, 72,186, 2, 75, 84, 80, 88, 99,125, /* 0x0030 */ 166, 3,137,124, 28, 0, 0, 72,186, 2, 96, 85, 80, 0, 3,124,
/* 0x0040 */ 20, 58,107,125,186, 1, 98, 81, 0, 0, 67,144, 32, 0, 64, 79, /* 0x0040 */ 20, 58, 0,124,186, 1, 11, 80, 0, 0, 99,145, 32, 0, 64, 79,
/* 0x0050 */ 4, 0, 67,132,190, 85, 75, 84, 64, 40, 11,124,220,255,194, 65, /* 0x0050 */ 4, 0, 99,133,190, 85, 96, 85, 64, 40, 0,124,220,255,194, 65,
/* 0x0060 */ 240,255, 32, 67, 32, 0,128, 78, 24, 0, 33, 56, 0, 0, 32, 57, /* 0x0060 */ 240,255, 32, 67, 32, 0,128, 78, 24, 0, 33, 56, 0, 0, 32, 57,
/* 0x0070 */ 252,255, 33,149,120, 11, 41,124,166, 2, 8,125,248,255,159,128, /* 0x0070 */ 252,255, 33,149,120, 11, 41,124,166, 2, 8,125,248,255,159,128,
/* 0x0080 */ 80,248,100,124, 24, 0,195,128, 0, 8, 6, 40, 8, 0,129, 65, /* 0x0080 */ 80,248,100,124, 24, 0,195,128, 0, 8, 6, 40, 8, 0,129, 65,
/* 0x0090 */ 0, 8,192, 56,120, 11, 61,124, 80, 8, 38,124,120, 11, 37,124, /* 0x0090 */ 0, 8,192, 56,120, 11, 61,124, 80, 8, 38,124,120, 11, 37,124,
/* 0x00a0 */ 232,255, 33, 56,120,251,231,127,105, 6, 0, 72,120,235,161,127, /* 0x00a0 */ 232,255, 33, 56,120,251,231,127,105, 6, 0, 72,120,235,161,127,
/* 0x00b0 */ 0, 0, 67,128,166, 3, 73,124,136, 0, 67,128, 32,241, 79,124, /* 0x00b0 */ 0, 0, 3,128,166, 3, 9,124,136, 0, 3,128, 32,241, 15,124,
/* 0x00c0 */ 140, 0, 67,128,166, 3, 65,124,144, 0, 67,128,166, 3, 72,124, /* 0x00c0 */ 140, 0, 3,128,166, 3, 1,124,144, 0, 3,128,166, 3, 8,124,
/* 0x00d0 */ 24, 0,131,184, 8, 0, 3,128, 16, 0, 67,128, 20, 0, 99,128, /* 0x00d0 */ 24, 0,131,184, 8, 0, 3,128, 16, 0, 67,128, 20, 0, 99,128,
/* 0x00e0 */ 32, 4,128, 78,120, 51,199,124, 0, 0,192, 56,153, 0, 0, 56, /* 0x00e0 */ 32, 4,128, 78,120, 51,199,124, 0, 0,192, 56,153, 0, 0, 56,
/* 0x00f0 */ 16, 0, 0, 72,120, 67, 9,125, 0, 0, 0, 57,197, 0, 0, 56, /* 0x00f0 */ 16, 0, 0, 72,120, 67, 9,125, 0, 0, 0, 57,197, 0, 0, 56,
File diff suppressed because it is too large Load Diff
+144 -144
View File
@@ -32,8 +32,8 @@
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_SIZE 2491 #define STUB_POWERPC64LE_LINUX_ELF_FOLD_SIZE 2491
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_ADLER32 0x110180cf #define STUB_POWERPC64LE_LINUX_ELF_FOLD_ADLER32 0x55bb6e59
#define STUB_POWERPC64LE_LINUX_ELF_FOLD_CRC32 0x65fadd7d #define STUB_POWERPC64LE_LINUX_ELF_FOLD_CRC32 0xdab47725
unsigned char stub_powerpc64le_linux_elf_fold[2491] = { unsigned char stub_powerpc64le_linux_elf_fold[2491] = {
/* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* 0x0000 */ 127, 69, 76, 70, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -42,7 +42,7 @@ unsigned char stub_powerpc64le_linux_elf_fold[2491] = {
/* 0x0030 */ 1, 0, 0, 0, 64, 0, 56, 0, 2, 0, 0, 0, 0, 0, 0, 0, /* 0x0030 */ 1, 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, /* 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, /* 0x0050 */ 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0,
/* 0x0060 */ 108, 9, 0, 0, 0, 0, 0, 0,108, 9, 0, 0, 0, 0, 0, 0, /* 0x0060 */ 112, 9, 0, 0, 0, 0, 0, 0,112, 9, 0, 0, 0, 0, 0, 0,
/* 0x0070 */ 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 6, 0, 0, 0, /* 0x0070 */ 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 6, 0, 0, 0,
/* 0x0080 */ 112, 9, 0, 0, 0, 0, 0, 0,112, 9, 16, 0, 0, 0, 0, 0, /* 0x0080 */ 112, 9, 0, 0, 0, 0, 0, 0,112, 9, 16, 0, 0, 0, 0, 0,
/* 0x0090 */ 112, 9, 16, 0, 0, 0, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, /* 0x0090 */ 112, 9, 16, 0, 0, 0, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0,
@@ -51,145 +51,145 @@ unsigned char stub_powerpc64le_linux_elf_fold[2491] = {
/* 0x00c0 */ 208, 0, 6, 40, 32, 0,194, 76,191,240,132, 84, 32, 0,194, 77, /* 0x00c0 */ 208, 0, 6, 40, 32, 0,194, 76,191,240,132, 84, 32, 0,194, 77,
/* 0x00d0 */ 16, 0, 0, 60, 64, 0, 4,124, 8, 0,128, 65,120, 3, 4,124, /* 0x00d0 */ 16, 0, 0, 60, 64, 0, 4,124, 8, 0,128, 65,120, 3, 4,124,
/* 0x00e0 */ 32, 1,165, 56,120, 27,103,124,252,255, 99, 56,166, 3,137,124, /* 0x00e0 */ 32, 1,165, 56,120, 27,103,124,252,255, 99, 56,166, 3,137,124,
/* 0x00f0 */ 28, 0, 0, 72,186, 2, 75, 84, 80, 88, 99,125, 20, 58,107,125, /* 0x00f0 */ 28, 0, 0, 72,186, 2, 11, 84, 80, 88, 99,125, 20, 58,107,125,
/* 0x0100 */ 186, 1, 98, 81, 0, 0, 67,144, 32, 0, 64, 79, 4, 0, 67,132, /* 0x0100 */ 186, 1, 96, 81, 0, 0, 3,144, 32, 0, 64, 79, 4, 0, 3,132,
/* 0x0110 */ 190, 85, 75, 84, 64, 40, 11,124,220,255,194, 65,240,255, 32, 67, /* 0x0110 */ 190, 85, 11, 84, 64, 40, 11,124,220,255,194, 65,240,255, 32, 67,
/* 0x0120 */ 32, 0,128, 78, 0, 0, 73,232, 8, 0, 41, 57, 0, 0,162, 43, /* 0x0120 */ 32, 0,128, 78, 0, 0, 9,232, 8, 0, 41, 57, 0, 0,160, 43,
/* 0x0130 */ 244,255,254, 64, 32, 0,128, 78,166, 2, 8,125, 48, 0, 33,233, /* 0x0130 */ 244,255,254, 64, 32, 0,128, 78,166, 2, 8,125,112, 0, 33,233,
/* 0x0140 */ 229,255,255, 75,225,255,255, 75, 40, 1, 65, 57, 0, 0, 74,248, /* 0x0140 */ 229,255,255, 75,225,255,255, 75,104, 1, 65, 57, 0, 0, 10,248,
/* 0x0150 */ 0,248, 33, 56,248,255,159,128, 38, 0, 30, 85, 80,248,164,127, /* 0x0150 */ 0,248, 33, 56,248,255,159,128,228, 3, 30,121, 80,248,164,127,
/* 0x0160 */ 120,251,231,127,248,255,189, 59, 80, 32,154,124, 20,210,125,124, /* 0x0160 */ 248,255,189, 59,120,251,231,127, 20,210,125,124, 80, 32,154,124,
/* 0x0170 */ 48, 0,161, 56, 0, 0,195,128,213, 5, 0, 72,120, 27,127,124, /* 0x0170 */ 112, 0,161, 56, 0, 0,195,128, 8, 0,128,124,213, 5, 0, 72,
/* 0x0180 */ 120,235,163,127, 80,240,157,124,209, 0, 0, 72,166, 3,232,127, /* 0x0180 */ 120, 27,127,124,120,235,163,127, 80,240,157,124,181, 0, 0, 72,
/* 0x0190 */ 56, 8, 65,232, 64, 8, 97,232, 72, 8,129,232, 80, 8,161,232, /* 0x0190 */ 166, 3,232,127,120, 8, 65,232,128, 8, 97,232,136, 8,129,232,
/* 0x01a0 */ 88, 8,193,232, 96, 8,225,232,104, 8, 1,233,112, 8, 33,233, /* 0x01a0 */ 144, 8,161,232,152, 8,193,232,160, 8,225,232,168, 8, 1,233,
/* 0x01b0 */ 120, 8, 65,233,128, 8, 97,233,136, 8,129,233,144, 8,161,233, /* 0x01b0 */ 176, 8, 33,233,184, 8, 65,233,192, 8, 97,233,200, 8,129,233,
/* 0x01c0 */ 152, 8,193,233,160, 8,225,233,168, 8, 1,234,176, 8, 33,234, /* 0x01c0 */ 208, 8,161,233,216, 8,193,233,224, 8,225,233,232, 8, 1,234,
/* 0x01d0 */ 184, 8, 65,234,192, 8, 97,234,200, 8,129,234,208, 8,161,234, /* 0x01d0 */ 240, 8, 33,234,248, 8, 65,234, 0, 9, 97,234, 8, 9,129,234,
/* 0x01e0 */ 216, 8,193,234,224, 8,225,234,232, 8, 1,235,240, 8, 33,235, /* 0x01e0 */ 16, 9,161,234, 24, 9,193,234, 32, 9,225,234, 40, 9, 1,235,
/* 0x01f0 */ 248, 8, 65,235, 0, 9, 97,235, 8, 9,129,235, 16, 9,161,235, /* 0x01f0 */ 48, 9, 33,235, 56, 9, 65,235, 64, 9, 97,235, 72, 9,129,235,
/* 0x0200 */ 24, 9,193,235, 32, 9,225,235, 48, 8, 33,232, 0, 0, 0, 56, /* 0x0200 */ 80, 9,161,235, 88, 9,193,235, 96, 9,225,235,112, 8, 33,232,
/* 0x0210 */ 32,241, 15,124,166, 3, 9,124, 32, 0,128, 78, 90, 0, 0, 56, /* 0x0210 */ 0, 0, 0, 56, 32,241, 15,124,166, 3, 9,124, 32, 0,128, 78,
/* 0x0220 */ 2, 0, 0, 68, 8, 0,227, 64,255,255, 96, 56, 32, 0,128, 78, /* 0x0220 */ 1, 0, 0, 56, 8, 0, 0, 72, 45, 0, 0, 56, 8, 0, 0, 72,
/* 0x0230 */ 1, 0, 0, 56,236,255,255, 75, 3, 0, 0, 56,228,255,255, 75, /* 0x0230 */ 6, 0, 0, 56, 8, 0, 0, 72, 5, 0, 0, 56, 8, 0, 0, 72,
/* 0x0240 */ 5, 0, 0, 56,220,255,255, 75, 6, 0, 0, 56,212,255,255, 75, /* 0x0240 */ 91, 0, 0, 56, 8, 0, 0, 72,125, 0, 0, 56, 8, 0, 0, 72,
/* 0x0250 */ 125, 0, 0, 56,204,255,255, 75, 91, 0, 0, 56,196,255,255, 75, /* 0x0250 */ 3, 0, 0, 56, 8, 0, 0, 72, 90, 0, 0, 56, 2, 0, 0, 68,
/* 0x0260 */ 45, 0, 0, 56,188,255,255, 75, 0, 0, 35, 44, 32, 0,130, 77, /* 0x0260 */ 8, 0,227, 64,255,255, 96, 56, 32, 0,128, 78, 0, 0, 35, 44,
/* 0x0270 */ 0, 0, 36, 47, 0, 0, 67,233, 64, 32,170,127, 16, 0,158, 64, /* 0x0270 */ 32, 0,130, 77, 0, 0, 36, 47, 0, 0, 67,233, 64, 32,170,127,
/* 0x0280 */ 0, 0,131,248, 8, 0,163,248, 32, 0,128, 78, 1, 0,170, 43, /* 0x0280 */ 16, 0,158, 64, 0, 0,131,248, 8, 0,163,248, 32, 0,128, 78,
/* 0x0290 */ 8, 0,158, 64,236,255,154, 64, 16, 0, 99, 56,216,255,255, 75, /* 0x0290 */ 1, 0,170, 43, 8, 0,158, 64,236,255,154, 64, 16, 0, 99, 56,
/* 0x02a0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67,233, /* 0x02a0 */ 216,255,255, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* 0x02b0 */ 8, 0, 3,233, 1, 0,229, 56, 0, 0, 32, 57,166, 3,233,124, /* 0x02b0 */ 0, 0, 67,233, 8, 0, 3,233, 1, 0,229, 56, 0, 0, 32, 57,
/* 0x02c0 */ 64, 40,170,127, 28, 0,252, 64,166, 2, 8,124,127, 0, 96, 56, /* 0x02c0 */ 166, 3,233,124, 64, 40,170,127, 28, 0,252, 64,166, 2, 8,124,
/* 0x02d0 */ 16, 0, 1,248,145,255, 33,248, 89,255,255, 75, 0, 0, 0, 96, /* 0x02d0 */ 127, 0, 96, 56, 16, 0, 1,248,145,255, 33,248, 69,255,255, 75,
/* 0x02e0 */ 20, 0, 64, 66,174, 72, 72,125,174, 73, 68,125, 1, 0, 41, 57, /* 0x02e0 */ 0, 0, 0, 96, 20, 0, 64, 66,174, 72, 72,125,174, 73, 68,125,
/* 0x02f0 */ 240,255,255, 75, 8, 0, 67,233, 20, 74, 74,125, 8, 0, 67,249, /* 0x02f0 */ 1, 0, 41, 57,240,255,255, 75, 8, 0, 67,233, 20, 74, 74,125,
/* 0x0300 */ 0, 0, 67,233, 80, 80, 41,125, 0, 0, 35,249, 32, 0,128, 78, /* 0x0300 */ 8, 0, 67,249, 0, 0, 67,233, 80, 80, 41,125, 0, 0, 35,249,
/* 0x0310 */ 0, 0, 0, 0, 0, 0, 0, 1,128, 0, 0, 0, 38, 0,128,125, /* 0x0310 */ 32, 0,128, 78, 0, 0, 0, 0, 0, 0, 0, 1,128, 0, 0, 0,
/* 0x0320 */ 166, 2, 8,124, 8, 0,129,145,217, 5, 0, 72, 81,255, 33,248, /* 0x0320 */ 38, 0,128,125,166, 2, 8,124, 8, 0,129,145,217, 5, 0, 72,
/* 0x0330 */ 120, 27,126,124,120, 35,159,124,120, 43,189,124,120, 51,220,124, /* 0x0330 */ 81,255, 33,248,120, 27,126,124,120, 35,159,124,120, 43,189,124,
/* 0x0340 */ 0, 0, 38, 46, 0, 0, 63,233, 0, 0,169, 47, 64, 1,158, 65, /* 0x0340 */ 120, 51,220,124, 0, 0, 38, 46, 0, 0, 63,233, 0, 0,169, 47,
/* 0x0350 */ 120,243,195,127,112, 0,129, 56, 12, 0,160, 56, 81,255,255, 75, /* 0x0350 */ 64, 1,158, 65,120,243,195,127,112, 0,129, 56, 12, 0,160, 56,
/* 0x0360 */ 112, 0, 65,129,116, 0, 33,129, 0, 0,170, 47, 32, 0,158, 64, /* 0x0360 */ 81,255,255, 75,112, 0, 65,129,116, 0, 33,129, 0, 0,170, 47,
/* 0x0370 */ 88, 33, 37,109, 85, 80,133, 47, 28, 0,158, 64, 0, 0, 62,233, /* 0x0370 */ 32, 0,158, 64, 88, 33, 37,109, 85, 80,133, 47, 28, 0,158, 64,
/* 0x0380 */ 0, 0,169, 47, 8, 1,254, 65, 12, 0, 0, 72, 33, 0, 41,121, /* 0x0380 */ 0, 0, 62,233, 0, 0,169, 47, 8, 1,254, 65, 12, 0, 0, 72,
/* 0x0390 */ 16, 0,226, 64,127, 0, 96, 56,153,254,255, 75, 0, 0, 0, 96, /* 0x0390 */ 33, 0, 41,121, 16, 0,226, 64,127, 0, 96, 56,133,254,255, 75,
/* 0x03a0 */ 64, 80, 9,127,240,255,217, 65, 0, 0, 31,233, 64, 64,170,127, /* 0x03a0 */ 0, 0, 0, 96, 64, 80, 9,127,240,255,217, 65, 0, 0, 31,233,
/* 0x03b0 */ 228,255,221, 65, 8, 0,191,232,164, 0,152, 64,120, 75, 36,125, /* 0x03b0 */ 64, 64,170,127,228,255,221, 65, 8, 0,191,232,164, 0,152, 64,
/* 0x03c0 */ 0, 0, 61,233, 8, 0,126,232,128, 0,193, 56,128, 0, 65,249, /* 0x03c0 */ 120, 75, 36,125, 0, 0, 61,233, 8, 0,126,232,128, 0,193, 56,
/* 0x03d0 */ 40, 0, 65,248,120, 0,225,136, 16, 0,125,233,166, 3, 41,125, /* 0x03d0 */ 128, 0, 65,249, 40, 0, 65,248,120, 0,225,136, 16, 0,125,233,
/* 0x03e0 */ 8, 0, 93,232, 33, 4,128, 78, 40, 0, 65,232, 0, 0,163, 47, /* 0x03e0 */ 166, 3, 41,125, 8, 0, 93,232, 33, 4,128, 78, 40, 0, 65,232,
/* 0x03f0 */ 164,255,222, 64,128, 0,129,232,112, 0, 33,129, 0, 72,164,127, /* 0x03f0 */ 0, 0,163, 47,164,255,222, 64,128, 0,129,232,112, 0, 33,129,
/* 0x0400 */ 148,255,222, 64,121, 0,193,136, 0, 0,166, 47, 48, 0,158, 65, /* 0x0400 */ 0, 72,164,127,148,255,222, 64,121, 0,193,136, 0, 0,166, 47,
/* 0x0410 */ 44, 0,146, 65, 8, 0,127,232,122, 0,161,136, 32, 0,132,120, /* 0x0410 */ 48, 0,158, 65, 44, 0,146, 65, 8, 0,127,232,122, 0,161,136,
/* 0x0420 */ 40, 0, 65,248, 0, 0, 60,233, 16, 0,124,233,166, 3, 41,125, /* 0x0420 */ 32, 0,132,120, 40, 0, 65,248, 0, 0, 60,233, 16, 0,124,233,
/* 0x0430 */ 8, 0, 92,232, 33, 4,128, 78, 40, 0, 65,232,116, 0, 1,129, /* 0x0430 */ 166, 3, 41,125, 8, 0, 92,232, 33, 4,128, 78, 40, 0, 65,232,
/* 0x0440 */ 8, 0, 94,233, 0, 0, 62,233, 20, 66, 74,125, 80, 72, 40,125, /* 0x0440 */ 116, 0, 1,129, 8, 0, 94,233, 0, 0, 62,233, 20, 66, 74,125,
/* 0x0450 */ 8, 0, 94,249, 0, 0, 62,249, 20, 0, 0, 72,120, 43,164,124, /* 0x0450 */ 80, 72, 40,125, 8, 0, 94,249, 0, 0, 62,249, 20, 0, 0, 72,
/* 0x0460 */ 120,243,195,127,120, 75, 37,125, 69,254,255, 75,112, 0, 1,129, /* 0x0460 */ 120, 43,164,124,120,243,195,127,120, 75, 37,125, 69,254,255, 75,
/* 0x0470 */ 8, 0, 95,233, 0, 0, 63,233, 20, 66, 74,125, 80, 72, 40,125, /* 0x0470 */ 112, 0, 1,129, 8, 0, 95,233, 0, 0, 63,233, 20, 66, 74,125,
/* 0x0480 */ 8, 0, 95,249, 0, 0, 63,249,188,254,255, 75,176, 0, 33, 56, /* 0x0480 */ 80, 72, 40,125, 8, 0, 95,249, 0, 0, 63,249,188,254,255, 75,
/* 0x0490 */ 8, 0,129,129, 32,129,144,125,184, 4, 0, 72, 0, 0, 0, 0, /* 0x0490 */ 176, 0, 33, 56, 8, 0,129,129, 32,129,144,125,184, 4, 0, 72,
/* 0x04a0 */ 0, 0, 0, 3,128, 4, 0, 0,166, 2, 8,124, 38, 0,128,125, /* 0x04a0 */ 0, 0, 0, 0, 0, 0, 0, 3,128, 4, 0, 0,166, 2, 8,124,
/* 0x04b0 */ 25, 4, 0, 72,120, 75, 58,125, 16, 0, 35,161, 32, 0,163,235, /* 0x04b0 */ 38, 0,128,125, 25, 4, 0, 72,120, 75, 58,125, 16, 0, 35,161,
/* 0x04c0 */ 120, 51,215,124,120, 27,123,124,120, 35,153,124, 3, 0,137, 47, /* 0x04c0 */ 32, 0,163,235,120, 51,215,124,120, 27,123,124,120, 35,153,124,
/* 0x04d0 */ 8, 0,129,145,241,254, 33,248,120, 43,184,124,120, 59,246,124, /* 0x04d0 */ 3, 0,137, 47, 8, 0,129,145,241,254, 33,248,120, 43,184,124,
/* 0x04e0 */ 120, 67, 21,125, 20,234,163,127, 16, 0,192, 56, 8, 0,158, 64, /* 0x04e0 */ 120, 59,246,124,120, 67, 21,125, 20,234,163,127, 16, 0,192, 56,
/* 0x04f0 */ 0, 0,192, 56, 56, 0, 59,161, 34, 8,198, 56,120,235,168,127, /* 0x04f0 */ 8, 0,158, 64, 0, 0,192, 56, 56, 0, 59,161, 34, 8,198, 56,
/* 0x0500 */ 0, 0, 64, 57,255,255,192, 59, 1, 0, 41, 57,166, 3, 41,125, /* 0x0500 */ 120,235,168,127, 0, 0, 64, 57,255,255,192, 59, 1, 0, 41, 57,
/* 0x0510 */ 60, 0, 64, 66, 0, 0, 40,129, 1, 0,137, 47, 40, 0,158, 64, /* 0x0510 */ 166, 3, 41,125, 60, 0, 64, 66, 0, 0, 40,129, 1, 0,137, 47,
/* 0x0520 */ 16, 0,232,232, 64, 56,190,127, 8, 0,157, 64,120, 59,254,124, /* 0x0520 */ 40, 0,158, 64, 16, 0,232,232, 64, 56,190,127, 8, 0,157, 64,
/* 0x0530 */ 40, 0, 40,233, 20, 74, 39,125, 64, 72,170,127, 8, 0,156, 64, /* 0x0530 */ 120, 59,254,124, 40, 0, 40,233, 20, 74, 39,125, 64, 72,170,127,
/* 0x0540 */ 120, 75, 42,125, 56, 0, 8, 57,200,255,255, 75, 1, 0, 74, 61, /* 0x0540 */ 8, 0,156, 64,120, 75, 42,125, 56, 0, 8, 57,200,255,255, 75,
/* 0x0550 */ 228, 3,222,123,255,255, 74, 57,120,243,195,127, 80, 80,158,124, /* 0x0550 */ 1, 0, 74, 61,228, 3,222,123,255,255, 74, 57,120,243,195,127,
/* 0x0560 */ 0, 0,160, 56,228, 3,132,120,180, 7,198,124,255,255,224, 56, /* 0x0560 */ 80, 80,158,124, 0, 0,160, 56,228, 3,132,120,180, 7,198,124,
/* 0x0570 */ 0, 0, 0, 57,169,252,255, 75, 0, 0, 0, 96, 81,115, 64, 62, /* 0x0570 */ 255,255,224, 56, 0, 0, 0, 57,225,252,255, 75, 0, 0, 0, 96,
/* 0x0580 */ 0, 0,128, 58, 0, 0, 57, 46, 64, 98, 82, 98, 80, 24,222,127, /* 0x0580 */ 81,115, 64, 62, 0, 0,128, 58, 0, 0, 57, 46, 64, 98, 82, 98,
/* 0x0590 */ 0, 0, 32, 58, 56, 0, 59,161, 0,160,137,127,128, 1,157, 64, /* 0x0590 */ 80, 24,222,127, 0, 0, 32, 58, 56, 0, 59,161, 0,160,137,127,
/* 0x05a0 */ 0, 0, 61,129, 36, 0,146, 65, 6, 0,137, 47, 28, 0,158, 64, /* 0x05a0 */ 128, 1,157, 64, 0, 0, 61,129, 36, 0,146, 65, 6, 0,137, 47,
/* 0x05b0 */ 16, 0,189,232,120,187,227,126, 3, 0,128, 56, 20, 42,190,124, /* 0x05b0 */ 28, 0,158, 64, 16, 0,189,232,120,187,227,126, 3, 0,128, 56,
/* 0x05c0 */ 169,252,255, 75, 72, 1, 0, 72, 1, 0,137, 47, 64, 1,158, 64, /* 0x05c0 */ 20, 42,190,124,169,252,255, 75, 72, 1, 0, 72, 1, 0,137, 47,
/* 0x05d0 */ 4, 0,253,129, 16, 0,157,235, 32, 0,253,235, 40, 0,125,234, /* 0x05d0 */ 64, 1,158, 64, 4, 0,253,129, 16, 0,157,235, 32, 0,253,235,
/* 0x05e0 */ 250, 22,239, 85, 20,226,158,127,112, 0,225,251, 48,124, 79,126, /* 0x05e0 */ 40, 0,125,234,250, 22,239, 85, 20,226,158,127,112, 0,225,251,
/* 0x05f0 */ 32, 4,137,123,120, 0,129,251, 20,154,124,126, 20,250,233,127, /* 0x05f0 */ 48,124, 79,126, 32, 4,137,123,120, 0,129,251, 20,154,124,126,
/* 0x0600 */ 228, 3,156,123,126, 7,240, 85, 12, 0,146, 64, 0, 0,160, 56, /* 0x0600 */ 20,250,233,127,228, 3,156,123,126, 7,240, 85, 12, 0,146, 64,
/* 0x0610 */ 8, 0, 0, 72, 2, 0,160, 56,120,131,165,124,180, 7,165,124, /* 0x0610 */ 0, 0,160, 56, 8, 0, 0, 72, 2, 0,160, 56,120,131,165,124,
/* 0x0620 */ 16, 0,146, 64,120,195, 7,127, 18, 0,192, 56, 12, 0, 0, 72, /* 0x0620 */ 180, 7,165,124, 16, 0,146, 64,120,195, 7,127, 18, 0,192, 56,
/* 0x0630 */ 50, 0,192, 56,255,255,224, 56, 8, 0, 29,233,120,227,131,127, /* 0x0630 */ 12, 0, 0, 72, 50, 0,192, 56,255,255,224, 56, 8, 0, 29,233,
/* 0x0640 */ 120,251,228,127, 80, 64, 9,125,213,251,255, 75, 0, 0, 0, 96, /* 0x0640 */ 120,227,131,127,120,251,228,127, 80, 64, 9,125, 13,252,255, 75,
/* 0x0650 */ 0, 24,188,127, 16, 0,254, 65,127, 0, 96, 56,213,251,255, 75, /* 0x0650 */ 0, 0, 0, 96, 0, 24,188,127, 16, 0,254, 65,127, 0, 96, 56,
/* 0x0660 */ 0, 0, 0, 96, 24, 0,146, 65,120,203, 35,127,112, 0,129, 56, /* 0x0660 */ 193,251,255, 75, 0, 0, 0, 96, 24, 0,146, 65,120,203, 35,127,
/* 0x0670 */ 120,179,197,126,120,171,166,126,165,252,255, 75,208, 0,223,125, /* 0x0670 */ 112, 0,129, 56,120,179,197,126,120,171,166,126,165,252,255, 75,
/* 0x0680 */ 227,255,233,121, 32, 4,206,121, 12, 0,130, 64, 44, 0,146, 64, /* 0x0680 */ 208, 0,223,125,227,255,233,121, 32, 4,206,121, 12, 0,130, 64,
/* 0x0690 */ 68, 0, 0, 72, 0, 0,174, 47,244,255,158, 65,166, 3,201,125, /* 0x0690 */ 44, 0,146, 64, 68, 0, 0, 72, 0, 0,174, 47,244,255,158, 65,
/* 0x06a0 */ 20,250, 92,125, 0, 0, 32, 57,174, 73, 42,126, 1, 0, 41, 57, /* 0x06a0 */ 166, 3,201,125, 20,250, 92,125, 0, 0, 32, 57,174, 73, 42,126,
/* 0x06b0 */ 248,255, 0, 66,216,255,255, 75,120,227,131,127,120,251,228,127, /* 0x06b0 */ 1, 0, 41, 57,248,255, 0, 66,216,255,255, 75,120,227,131,127,
/* 0x06c0 */ 180, 7, 5,126,141,251,255, 75, 0, 0, 0, 96, 0, 0,163, 47, /* 0x06c0 */ 120,251,228,127,180, 7, 5,126,129,251,255, 75, 0, 0, 0, 96,
/* 0x06d0 */ 136,255,222, 64, 20,250,238,127, 20,250,252,127, 64,152,191,127, /* 0x06d0 */ 0, 0,163, 47,136,255,222, 64, 20,250,238,127, 20,250,252,127,
/* 0x06e0 */ 44, 0,156, 64,120,251,227,127, 80,152,159,124,180, 7, 5,126, /* 0x06e0 */ 64,152,191,127, 44, 0,156, 64,120,251,227,127, 80,152,159,124,
/* 0x06f0 */ 50, 0,192, 56,255,255,224, 56, 0, 0, 0, 57, 33,251,255, 75, /* 0x06f0 */ 180, 7, 5,126, 50, 0,192, 56,255,255,224, 56, 0, 0, 0, 57,
/* 0x0700 */ 0, 0, 0, 96, 0, 24,191,127, 80,255,222, 64, 1, 0,148, 58, /* 0x0700 */ 89,251,255, 75, 0, 0, 0, 96, 0, 24,191,127, 80,255,222, 64,
/* 0x0710 */ 56, 0,189, 59,180, 7,148,126,124,254,255, 75, 0, 0,186, 47, /* 0x0710 */ 1, 0,148, 58, 56, 0,189, 59,180, 7,148,126,124,254,255, 75,
/* 0x0720 */ 8, 0,158, 65, 0, 0,218,251, 16, 1, 33, 56, 24, 0,123,232, /* 0x0720 */ 0, 0,186, 47, 8, 0,158, 65, 0, 0,218,251, 16, 1, 33, 56,
/* 0x0730 */ 20, 26,126,124, 8, 0,129,129, 32,129,144,125,220, 1, 0, 72, /* 0x0730 */ 24, 0,123,232, 20, 26,126,124, 8, 0,129,129, 32,129,144,125,
/* 0x0740 */ 0, 0, 0, 0, 0, 0, 0, 3,128, 18, 0, 0,166, 2, 8,124, /* 0x0740 */ 220, 1, 0, 72, 0, 0, 0, 0, 0, 0, 0, 3,128, 18, 0, 0,
/* 0x0750 */ 0, 0,192, 56,165, 1, 0, 72, 33,255, 33,248,120, 43,191,124, /* 0x0750 */ 166, 2, 8,124, 0, 0,192, 56,165, 1, 0, 72, 33,255, 33,248,
/* 0x0760 */ 120, 75, 62,125, 64, 0,165, 59, 0, 0, 35,129,120, 83, 91,125, /* 0x0760 */ 120, 43,191,124,120, 75, 62,125, 64, 0,165, 59, 0, 0, 35,129,
/* 0x0770 */ 152, 0, 97,248,144, 0,129,248,136, 0,161,248,128, 0, 33,249, /* 0x0770 */ 120, 83, 91,125,152, 0, 97,248,144, 0,129,248,136, 0,161,248,
/* 0x0780 */ 120, 59,229,124,112, 0,129,248,120, 0, 97,248,160, 0,225,248, /* 0x0780 */ 128, 0, 33,249,120, 59,229,124,112, 0,129,248,120, 0, 97,248,
/* 0x0790 */ 168, 0, 1,249,144, 0, 97, 56,128, 0,129, 56,129,251,255, 75, /* 0x0790 */ 160, 0,225,248,168, 0, 1,249,144, 0, 97, 56,128, 0,129, 56,
/* 0x07a0 */ 80, 0,191,232,120,243,195,127, 3, 0,128, 56, 64, 0,165, 56, /* 0x07a0 */ 129,251,255, 75, 80, 0,191,232,120,243,195,127, 3, 0,128, 56,
/* 0x07b0 */ 185,250,255, 75, 56, 0,191,160,120,243,195,127, 5, 0,128, 56, /* 0x07b0 */ 64, 0,165, 56,185,250,255, 75, 56, 0,191,160,120,243,195,127,
/* 0x07c0 */ 169,250,255, 75, 24, 0,191,128,120,243,195,127, 9, 0,128, 56, /* 0x07c0 */ 5, 0,128, 56,169,250,255, 75, 24, 0,191,128,120,243,195,127,
/* 0x07d0 */ 153,250,255, 75,160, 0,225,232,168, 0, 1,233,120,243,198,127, /* 0x07d0 */ 9, 0,128, 56,153,250,255, 75,160, 0,225,232,168, 0, 1,233,
/* 0x07e0 */ 112, 0,129, 56, 0, 0,160, 56,120,219,105,127,120,251,227,127, /* 0x07e0 */ 120,243,198,127,112, 0,129, 56, 0, 0,160, 56,120,219,105,127,
/* 0x07f0 */ 185,252,255, 75, 9, 0,128, 56,120, 27,124,124,120,243,195,127, /* 0x07f0 */ 120,251,227,127,185,252,255, 75, 9, 0,128, 56,120, 27,124,124,
/* 0x0800 */ 120,227,133,127, 0, 0,192, 59, 97,250,255, 75, 56, 0, 31,161, /* 0x0800 */ 120,243,195,127,120,227,133,127, 0, 0,192, 59, 97,250,255, 75,
/* 0x0810 */ 0,240,136,127,156, 0,157, 64, 0, 0, 61,129, 3, 0,137, 47, /* 0x0810 */ 56, 0, 31,161, 0,240,136,127,156, 0,157, 64, 0, 0, 61,129,
/* 0x0820 */ 128, 0,158, 64, 16, 0,125,232, 0, 0, 59,233, 0, 0,128, 56, /* 0x0820 */ 3, 0,137, 47,128, 0,158, 64, 16, 0,125,232, 0, 0, 59,233,
/* 0x0830 */ 0, 0,160, 56, 20, 74, 99,124, 9,250,255, 75, 0, 0, 0, 96, /* 0x0830 */ 0, 0,128, 56, 0, 0,160, 56, 20, 74, 99,124,253,249,255, 75,
/* 0x0840 */ 0, 0,131, 47,120, 27,122,124, 16, 0,252, 64,127, 0, 96, 56, /* 0x0840 */ 0, 0, 0, 96, 0, 0,131, 47,120, 27,122,124, 16, 0,252, 64,
/* 0x0850 */ 225,249,255, 75, 0, 0, 0, 96,120,251,228,127, 0, 4,160, 56, /* 0x0850 */ 127, 0, 96, 56,205,249,255, 75, 0, 0, 0, 96,120,251,228,127,
/* 0x0860 */ 217,249,255, 75, 0, 0, 0, 96, 0, 4,163, 47,224,255,222, 64, /* 0x0860 */ 0, 4,160, 56,237,249,255, 75, 0, 0, 0, 96, 0, 4,163, 47,
/* 0x0870 */ 120,251,227,127, 0, 0,128, 56,120,211, 69,127, 0, 0,192, 56, /* 0x0870 */ 224,255,222, 64,120,251,227,127, 0, 0,128, 56,120,211, 69,127,
/* 0x0880 */ 0, 0,224, 56, 0, 0, 0, 57,120,219,105,127, 29,252,255, 75, /* 0x0880 */ 0, 0,192, 56, 0, 0,224, 56, 0, 0, 0, 57,120,219,105,127,
/* 0x0890 */ 120, 27,124,124,120,211, 67,127,177,249,255, 75, 0, 0, 0, 96, /* 0x0890 */ 29,252,255, 75,120, 27,124,124,120,211, 67,127,149,249,255, 75,
/* 0x08a0 */ 1, 0,222, 59, 56, 0,189, 59,180, 7,222,127, 96,255,255, 75, /* 0x08a0 */ 0, 0, 0, 96, 1, 0,222, 59, 56, 0,189, 59,180, 7,222,127,
/* 0x08b0 */ 224, 0, 33, 56,120,227,131,127,144, 0, 0, 72, 0, 0, 0, 0, /* 0x08b0 */ 96,255,255, 75,224, 0, 33, 56,120,227,131,127,144, 0, 0, 72,
/* 0x08c0 */ 0, 0, 0, 1,128, 6, 0, 0,112,255,193,249,120,255,225,249, /* 0x08c0 */ 0, 0, 0, 0, 0, 0, 0, 1,128, 6, 0, 0,112,255,193,249,
/* 0x08d0 */ 128,255, 1,250,136,255, 33,250,144,255, 65,250,152,255, 97,250, /* 0x08d0 */ 120,255,225,249,128,255, 1,250,136,255, 33,250,144,255, 65,250,
/* 0x08e0 */ 160,255,129,250,168,255,161,250,176,255,193,250,184,255,225,250, /* 0x08e0 */ 152,255, 97,250,160,255,129,250,168,255,161,250,176,255,193,250,
/* 0x08f0 */ 192,255, 1,251,200,255, 33,251,208,255, 65,251,216,255, 97,251, /* 0x08f0 */ 184,255,225,250,192,255, 1,251,200,255, 33,251,208,255, 65,251,
/* 0x0900 */ 224,255,129,251,232,255,161,251,240,255,193,251,248,255,225,251, /* 0x0900 */ 216,255, 97,251,224,255,129,251,232,255,161,251,240,255,193,251,
/* 0x0910 */ 16, 0, 1,248, 32, 0,128, 78,112,255,193,233,120,255,225,233, /* 0x0910 */ 248,255,225,251, 16, 0, 1,248, 32, 0,128, 78,112,255,193,233,
/* 0x0920 */ 128,255, 1,234,136,255, 33,234,144,255, 65,234,152,255, 97,234, /* 0x0920 */ 120,255,225,233,128,255, 1,234,136,255, 33,234,144,255, 65,234,
/* 0x0930 */ 160,255,129,234,168,255,161,234,176,255,193,234,184,255,225,234, /* 0x0930 */ 152,255, 97,234,160,255,129,234,168,255,161,234,176,255,193,234,
/* 0x0940 */ 192,255, 1,235,200,255, 33,235,208,255, 65,235,216,255, 97,235, /* 0x0940 */ 184,255,225,234,192,255, 1,235,200,255, 33,235,208,255, 65,235,
/* 0x0950 */ 224,255,129,235, 16, 0, 1,232,232,255,161,235,166, 3, 8,124, /* 0x0950 */ 216,255, 97,235,224,255,129,235, 16, 0, 1,232,232,255,161,235,
/* 0x0960 */ 240,255,193,235,248,255,225,235, 32, 0,128, 78, 0, 0, 0, 0, /* 0x0960 */ 166, 3, 8,124,240,255,193,235,248,255,225,235, 32, 0,128, 78,
/* 0x0970 */ 104, 2, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0, /* 0x0970 */ 108, 2, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0,
/* 0x0980 */ 172, 2, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0, /* 0x0980 */ 176, 2, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0,
/* 0x0990 */ 28, 3, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0, /* 0x0990 */ 32, 3, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0,
/* 0x09a0 */ 168, 4, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0, /* 0x09a0 */ 172, 4, 16, 0, 0, 0, 0, 0,112,137, 16, 0, 0, 0, 0, 0,
/* 0x09b0 */ 76, 7, 16, 0, 0, 0, 0, 0,112,137, 16 /* 0x09b0 */ 80, 7, 16, 0, 0, 0, 0, 0,112,137, 16
}; };
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -301,7 +301,7 @@ ERR_LAB
// brk(v_brk); // SIGSEGV when is_big [unmaps ourself!] // brk(v_brk); // SIGSEGV when is_big [unmaps ourself!]
} }
} }
if (0!=p_reloc) { if (p_reloc) {
*p_reloc = reloc; *p_reloc = reloc;
} }
return ehdr->e_entry + reloc; return ehdr->e_entry + reloc;
+8 -8
View File
@@ -49,16 +49,16 @@ L5:
mtctr len # count of words mtctr len # count of words
b L20 b L20
L10: L10:
rlwinm t1,t0,0,6+W_CTO,31-2 # the displacement field in position rlwinm r0,t1,0,6+W_CTO,31-2 # the displacement field in position
subf t1,ptr,t1 # raw distance subf r0,ptr,r0 # raw distance
add t1,t1,ptr0 # relative to virtual address of base add r0,r0,ptr0 # relative to virtual address of base
rlwimi t0,t1,0,6 ,31-2 # unfiltered instruction rlwimi t1,r0,0,6 ,31-2 # unfiltered instruction
stw t0,0(ptr) # replace in memory stw t1,0(ptr) # replace in memory
bdzlr- # if (0==--ctr) return; // extremely unlikely bdzlr- # if (0==--ctr) return; // extremely unlikely
L20: L20:
lwzu t0,4(ptr) # t0= *++ptr; lwzu t1,4(ptr) # t1= *++ptr;
rlwinm t1,t0,6+W_CTO,32-(6+W_CTO),31 # t1= top (6+W_CTO) bits of t0 rlwinm r0,t1,6+W_CTO,32-(6+W_CTO),31 # r0= top (6+W_CTO) bits of t1
cmplw cr0,t1,cto8; beq- cr0,L10 # unconditional branch marked with cto8; unlikely cmplw cr0,r0,cto8; beq- cr0,L10 # unconditional branch marked with cto8; unlikely
bdnz+ L20 # if (0!=--ctr) goto L20; // likely bdnz+ L20 # if (0!=--ctr) goto L20; // likely
ret ret
+2 -2
View File
@@ -64,7 +64,7 @@ retaddr = 2*4 // (sp,cr,pc, xx,yy,zz) save area per calling convention
stw r0,retaddr(sp) // save return address in linkage area stw r0,retaddr(sp) // save return address in linkage area
lbz r0,0(src) // first byte, replaces LzmaDecodeProperties() lbz r0,0(src) // first byte, replaces LzmaDecodeProperties()
rlwinm t1,r0,32-3,3,31 // t1= (r0>>3)==(lit_context-bits + lit_pos_bits) rlwinm t1,r0,32-3,3,31 // t1= (r0>>3)==(lit_context-bits + lit_pos_bits)
rlwinm t0,r0,0,32-3,31 // t0= (7& t0)==pos_bits rlwinm t2,r0,0,32-3,31 // t2= (7& t2)==pos_bits
#define LZMA_BASE_SIZE 1846 #define LZMA_BASE_SIZE 1846
#define LZMA_LIT_SIZE 768 #define LZMA_LIT_SIZE 768
@@ -94,7 +94,7 @@ retaddr = 2*4 // (sp,cr,pc, xx,yy,zz) save area per calling convention
la a0,4*4+szSizeT(sp) // &CLzmaDecoderState la a0,4*4+szSizeT(sp) // &CLzmaDecoderState
rlwinm t1,r0,32-4,4,31 // t1= (r0>>4)==lit_pos_bits rlwinm t1,r0,32-4,4,31 // t1= (r0>>4)==lit_pos_bits
rlwinm r0,r0,0,32-4,31 // r0= (0xf& r0)==lit_context_bits rlwinm r0,r0,0,32-4,31 // r0= (0xf& r0)==lit_context_bits
stb t0,2(a0) // pos_bits stb t2,2(a0) // pos_bits
stb t1,1(a0) // lit_pos_bits stb t1,1(a0) // lit_pos_bits
stb r0,0(a0) // lit_context_bits stb r0,0(a0) // lit_context_bits
+7 -7
View File
@@ -74,9 +74,9 @@ get1:
// fetch 4 bytes unaligned and LITTLE ENDIAN // fetch 4 bytes unaligned and LITTLE ENDIAN
#if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */ #if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */
lbz bits,1(src) // lo8 lbz bits,1(src) // lo8
lbz t0,2(src); rlwimi bits,t0, 8,16,23 lbz t1,2(src); rlwimi bits,t1, 8,16,23
lbz t0,3(src); rlwimi bits,t0,16, 8,15 lbz t1,3(src); rlwimi bits,t1,16, 8,15
lbzu t0,4(src); rlwimi bits,t0,24, 0, 7 lbzu t1,4(src); rlwimi bits,t1,24, 0, 7
#else /*}{ pray for no unalignment trap or slowdown */ #else /*}{ pray for no unalignment trap or slowdown */
li bits,1 // compensate for 'lbzu' li bits,1 // compensate for 'lbzu'
lwbrx bits,bits,src // bits= fetch_le32(bits+src) lwbrx bits,bits,src // bits= fetch_le32(bits+src)
@@ -102,9 +102,9 @@ offmore_n2b:
addic. off,off,-3 // CArry set [and ignored], but no 'addi.' addic. off,off,-3 // CArry set [and ignored], but no 'addi.'
li len,0 li len,0
blt- offprev_n2b blt- offprev_n2b
lbzu t0,1(src) lbzu t1,1(src)
rlwinm off,off,8,0,31-8 // off<<=8; slwi off,off,8 // off<<=8;
nor. disp,off,t0 // disp = -(1+ (off|t0)); nor. disp,off,t1 // disp = -(1+ (off|t1));
beq- eof_nrv beq- eof_nrv
offprev_n2b: // In: 0==len offprev_n2b: // In: 0==len
@@ -116,7 +116,7 @@ lenmore_n2b:
getnextb(len) getnextb(len)
jnextb0n lenmore_n2b jnextb0n lenmore_n2b
gotlen_n2b: gotlen_n2b:
subfic t0,disp,(~0)+(-0xd00) // want CArry only subfic t1,disp,(~0)+(-0xd00) // want CArry only
adde len,len,off // len += off + (disp < -0xd00); adde len,len,off // len += off + (disp < -0xd00);
copy: copy:
+5 -5
View File
@@ -71,9 +71,9 @@ get32d:
// fetch 4 bytes unaligned and LITTLE ENDIAN // fetch 4 bytes unaligned and LITTLE ENDIAN
#if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */ #if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */
lbz bits,1(src) // lo8 lbz bits,1(src) // lo8
lbz t0,2(src); rlwimi bits,t0, 8,16,23 lbz t1,2(src); rlwimi bits,t1, 8,16,23
lbz t0,3(src); rlwimi bits,t0,16, 8,15 lbz t1,3(src); rlwimi bits,t1,16, 8,15
lbzu t0,4(src); rlwimi bits,t0,24, 0, 7 lbzu t1,4(src); rlwimi bits,t1,24, 0, 7
#else /*}{ pray for no unalignment trap or slowdown */ #else /*}{ pray for no unalignment trap or slowdown */
li bits,1 // compensate for 'lbzu' li bits,1 // compensate for 'lbzu'
lwbrx bits,bits,src // bits= fetch_le32(bits+src) lwbrx bits,bits,src // bits= fetch_le32(bits+src)
@@ -106,8 +106,8 @@ getoff_n2d:
addic. off,off,-3 // CArry set [and ignored], but no 'addi.' addic. off,off,-3 // CArry set [and ignored], but no 'addi.'
rlwinm off,off,8,0,31-8 // off<<=8; rlwinm off,off,8,0,31-8 // off<<=8;
blt- offprev_n2d blt- offprev_n2d
lbzu t0,1(src) lbzu t1,1(src)
nor. disp,off,t0 // disp = -(1+ (off|t0)); nor. disp,off,t1 // disp = -(1+ (off|t1));
srawi disp,disp,1 // shift off low bit (sets CArry) srawi disp,disp,1 // shift off low bit (sets CArry)
beq- eof_nrv // test the 'nor' beq- eof_nrv // test the 'nor'
b len_n2d -4 // CHEAT [getnextb ends "adde. len,len,len"]: bit from srawi b len_n2d -4 // CHEAT [getnextb ends "adde. len,len,len"]: bit from srawi
+7 -7
View File
@@ -71,9 +71,9 @@ get32:
// fetch 4 bytes unaligned and LITTLE ENDIAN // fetch 4 bytes unaligned and LITTLE ENDIAN
#if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */ #if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */
lbz bits,1(src) // lo8 lbz bits,1(src) // lo8
lbz t0,2(src); rlwimi bits,t0, 8,16,23 lbz t1,2(src); rlwimi bits,t1, 8,16,23
lbz t0,3(src); rlwimi bits,t0,16, 8,15 lbz t1,3(src); rlwimi bits,t1,16, 8,15
lbzu t0,4(src); rlwimi bits,t0,24, 0, 7 lbzu t1,4(src); rlwimi bits,t1,24, 0, 7
#else /*}{ pray for no unalignment trap or slowdown */ #else /*}{ pray for no unalignment trap or slowdown */
li bits,1 // compensate for 'lbzu' li bits,1 // compensate for 'lbzu'
lwbrx bits,bits,src // bits= fetch_le32(bits+src) lwbrx bits,bits,src // bits= fetch_le32(bits+src)
@@ -104,13 +104,13 @@ getoff_n2e:
li len,0 li len,0
addic. off,off,-3 // CArry set [and ignored], but no 'addi.' addic. off,off,-3 // CArry set [and ignored], but no 'addi.'
rlwinm off,off,8,0,31-8 // off<<=8; slwi off,off,8 // off<<=8;
blt- offprev_n2e blt- offprev_n2e
lbzu t0,1(src) lbzu t1,1(src)
nor. disp,off,t0 // disp = -(1+ (off|t0)); nor. disp,off,t1 // disp = -(1+ (off|t1));
srawi disp,disp,1 // shift off low bit (sets CArry; ignored) srawi disp,disp,1 // shift off low bit (sets CArry; ignored)
beq- eof_nrv beq- eof_nrv
andi. t0,t0,1 // complement of low bit of unshifted disp andi. t1,t1,1 // complement of low bit of unshifted disp
beq+ lenlast_n2e // low bit was 1 beq+ lenlast_n2e // low bit was 1
b lenmore_n2e // low bit was 0 b lenmore_n2e // low bit was 0
+24 -2
View File
@@ -4,7 +4,29 @@
#define r0 0 #define r0 0
#define r1 1 #define r1 1
#define r2 2 #define r2 2
#define r3 3
#define r4 4
#define r5 5
#define r6 6
#define r7 7
#define r8 8
#define r9 9
#define r10 10
#define r11 11
#define r12 12
#define r13 13
#define r14 14
#define r15 15
#define r16 16
#define r17 17
#define r18 18
#define r19 19
#define r20 20
#define r21 21
#define r22 22
#define r23 23
#define r24 24
#define r25 25
#define r26 26 #define r26 26
#define r27 27 #define r27 27
#define r28 28 #define r28 28
@@ -26,7 +48,7 @@
#define a7 10 #define a7 10
/* Scratch (temporary) registers; not saved by callee */ /* Scratch (temporary) registers; not saved by callee */
#define t0 2 //#define t0 2
#define t1 11 #define t1 11
#define t2 12 #define t2 12
#define t3 13 #define t3 13
+1
View File
@@ -0,0 +1 @@
#include ../64le/Makefile
@@ -0,0 +1,71 @@
# How to transform from source code in src/stub/src/c/lzma_d_c.c
# to the pieces for use in UPX runtime decompression stub.
#
MAKEFLAGS += -rR
.SUFFIXES:
.SECONDEXPANSION:
ifndef top_srcdir
__dir_list = . .. ../.. ../../.. ../../../.. ../../../../..
__dir_list += ../../../../../.. ../../../../../../.. ../../../../../../../..
__dir_search = $(firstword $(foreach v,$1,$(if $(wildcard $v/$2),$v)) $3)
top_srcdir := $(call __dir_search,$(__dir_list),src/bele.h,NOT_FOUND)
endif
include $(wildcard $(top_srcdir)/Makevars.global ./Makevars.local)
vpath %.c $(top_srcdir)/src/stub/src/c
STUBS =
include $(top_srcdir)/src/stub/src/c/Makevars.lzma
ifneq ($(UPX_LZMA_VERSION),)
STUBS += lzma_d_cf.S lzma_d_cs.S
endif
default.targets = all
ifeq ($(strip $(STUBS)),)
STUBS = NO_STUBS
all.targets =
endif
include $(top_srcdir)/src/stub/Makefile
# /***********************************************************************
# // method-lzma
# ************************************************************************/
lzma_d_c%.S : tc_list = method-lzma powerpc64-linux.elf default
lzma_d_c%.S : tc_bfdname = elf64-powerpc
c := tc.method-lzma.gcc
$c = /usr/bin/powerpc64-linux-gnu-gcc
$c += -fPIC
$c += -fomit-frame-pointer
$c += -fno-unit-at-a-time
$c += -ffunction-sections
$c += -fwrapv
$c += -DWITH_LZMA=$(UPX_LZMA_VERSION)
$c += -I$(UPX_LZMADIR)
$c += -I$(top_srcdir)/src
$c += -Wno-error
lzma_d_c%.S : lzma_d_c.c
$(call tc,gcc) $(PP_FLAGS) -S $< -o tmp/$T.s
sed < tmp/$T.s > tmp/$T.S \
-e '/^[ \t]*\.section[ \t]*"\.text"/d' \
-e '/^[ \t]*\.section[ \t]*"\.toc"/d' \
-e '/^[ \t]*\.section[ \t]*\.note/d' \
-e '/^[ \t]*\.section[ \t]*\.text\.[^L]/d' \
-e '/^[ \t]*\.section[ \t]*\.text\.LzmaDecodeProperties/,/^[ \t]*\.size[ \t]*LzmaDecodeProperties/d' \
-e '/^[ \t]*\.section[ \t]*"\.opd"/,/^[ \t]*\.previous/d' \
-e 's/\.L\.//g' \
-e "/b *_restgpr0_/a\
#include \"stub/src/arch/powerpc/64/ppc_regs.h\"\n\
#include \"stub/src/powerpc64-savegpr0.S\""
$(call tc,gcc) $(PP_FLAGS) -c tmp/$T.S -o tmp/$T.o # assemble big-endian
$(call tc,f-objstrip,tmp/$T.o)
$(call tc,objcopy) -O binary tmp/$T.o tmp/$T.bin
head -c-4 tmp/$T.bin > tmp/$T.out
$(call tc,objdump) -b binary -m powerpc -D tmp/$T.out | $(RTRIM) > tmp/$T.out.disasm
$(call tc,bin2h) --mode=gas tmp/$T.out $@
lzma_d_cf.% : PP_FLAGS = -DFAST -O2
lzma_d_cs.% : PP_FLAGS = -DSMALL -Os
+20
View File
@@ -0,0 +1,20 @@
// This file exists so that the LZMA_DEC10 and LZMA_DEC20 sections
// can contain endian-dependent code in the "64" and "64le" directories,
// but otherwise use lzma_d-common.S
#define BIG_ENDIAN 1
#include "../64le/lzma_d-common.S"
section LZMA_DEC10
#include "lzma_d_cs.S"
section LZMA_DEC20
teq r0,r0
bl lzma_dec20
b eof_dec20
lzma_dec20:
#include "lzma_d_cf.S"
eof_dec20:
// vi:ts=8:et
+343
View File
@@ -0,0 +1,343 @@
/* 0x0000 */ .byte 124, 8, 2,166,250, 65,255,144,250,129,255,160,125, 18, 67,120
/* 0x0010 */ .byte 250,193,255,176,251, 1,255,192,124,246, 59,120,251,161,255,232
/* 0x0020 */ .byte 251,193,255,240,124,189, 43,120,124,158, 35,120,251,225,255,248
/* 0x0030 */ .byte 249,193,255,112,249,225,255,120,250, 1,255,128,248, 1, 0, 16
/* 0x0040 */ .byte 250, 33,255,136,250, 97,255,152,250,161,255,168,250,225,255,184
/* 0x0050 */ .byte 251, 33,255,200,251, 65,255,208,251, 97,255,216,251,129,255,224
/* 0x0060 */ .byte 248, 33,254, 81,248, 97, 1,224,248,193, 1,248,249, 33, 2, 16
/* 0x0070 */ .byte 72, 0, 0, 29, 76,122,109, 97, 68,101, 99,111,100,101, 32,105
/* 0x0080 */ .byte 110, 61, 40, 37,112, 44, 32, 37,120, 41, 10, 0,124,104, 2,166
/* 0x0090 */ .byte 72, 0, 16, 49,233, 65, 1,224, 57, 32, 0, 1, 56,128, 0, 9
/* 0x00a0 */ .byte 72, 0, 0, 21, 76, 90, 37,100, 32, 33, 79, 85, 84, 95, 82, 69
/* 0x00b0 */ .byte 65, 68, 10, 0,124,104, 2,166,138,138, 0, 2,137, 74, 0, 1
/* 0x00c0 */ .byte 125, 52,160, 48,125, 41, 80, 48,233, 65, 1,224, 58,148,255,255
/* 0x00d0 */ .byte 57, 41,255,255,121, 41, 0, 32,122,148, 0, 32,139,234, 0, 0
/* 0x00e0 */ .byte 249, 33, 0,168,250,129, 0,128, 72, 0, 15,217,233, 65, 1,248
/* 0x00f0 */ .byte 57, 32, 0, 0,127,232, 7,180,145, 42, 0, 0,233, 65, 2, 16
/* 0x0100 */ .byte 249, 1, 0,136,145, 42, 0, 0,233, 65, 1,224, 57, 32, 3, 0
/* 0x0110 */ .byte 59, 10, 0, 4,137, 74, 0, 1,125, 74,250, 20,125, 42, 80, 48
/* 0x0120 */ .byte 47,138,248,202, 65,158, 0, 40,233, 1, 1,224, 57, 74, 7, 53
/* 0x0130 */ .byte 121, 74, 15,200,125, 88, 82, 20, 57, 40, 0, 2, 57, 0, 4, 0
/* 0x0140 */ .byte 181, 9, 0, 2,127,170, 72, 64, 64,158,255,248,127,190,234, 20
/* 0x0150 */ .byte 127,190,232, 64, 65,158, 0,108, 59,126,255,255, 57,222, 0, 5
/* 0x0160 */ .byte 127,220,243,120, 59,224, 0, 0, 72, 0, 0, 21, 76, 90,114,101
/* 0x0170 */ .byte 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0,127, 72, 2,166
/* 0x0180 */ .byte 140,187, 0, 1,124,158,224, 80,127, 67,211,120, 59,156, 0, 1
/* 0x0190 */ .byte 87,255, 64, 46, 72, 0, 15, 45,137, 91, 0, 0,127,188,112, 64
/* 0x01a0 */ .byte 126,189,224, 64,125, 95,251,120,123,255, 0, 32, 65,158, 0,116
/* 0x01b0 */ .byte 64,150,255,208, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x01c0 */ .byte 56, 96, 0, 1, 56, 33, 1,176,232, 1, 0, 16,233,193,255,112
/* 0x01d0 */ .byte 233,225,255,120,234, 1,255,128,234, 33,255,136,234, 65,255,144
/* 0x01e0 */ .byte 234, 97,255,152,234,129,255,160,234,161,255,168,234,193,255,176
/* 0x01f0 */ .byte 234,225,255,184,235, 1,255,192,124, 8, 3,166,235, 33,255,200
/* 0x0200 */ .byte 235, 65,255,208,235, 97,255,216,235,129,255,224,235,161,255,232
/* 0x0210 */ .byte 235,193,255,240,235,225,255,248, 78,128, 0, 32, 96, 66, 0, 0
/* 0x0220 */ .byte 126, 70,147,120, 56,160, 0, 0, 56,128, 0, 10, 72, 0, 0, 33
/* 0x0230 */ .byte 76, 90, 37,100, 32,110,111,119, 80,111,115, 61, 37,120, 32, 32
/* 0x0240 */ .byte 111,117,116, 83,105,122,101, 61, 37,120, 10, 0,124,104, 2,166
/* 0x0250 */ .byte 72, 0, 14,113, 47,178, 0, 0, 65,158, 14, 48, 72, 0, 0, 53
/* 0x0260 */ .byte 76, 90, 49, 49, 32,110,111,119, 80,111,115, 61, 37,120, 32, 32
/* 0x0270 */ .byte 112,114,111, 98, 61, 37,112, 32, 32,115,116, 97,116,101, 61, 37
/* 0x0280 */ .byte 120, 32, 32,112,111,115, 83,116, 97,116,101, 61, 37,120, 10, 0
/* 0x0290 */ .byte 125, 40, 2,166, 57, 64, 0, 1, 57, 0, 0, 1,249, 33, 0,144
/* 0x02a0 */ .byte 57, 32, 0, 1, 57,224,255,255, 72, 0, 0, 21, 76, 90,114,101
/* 0x02b0 */ .byte 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0,126,168, 2,166
/* 0x02c0 */ .byte 249, 1, 0,176,249, 65, 0,120, 63,128, 0,255,121,239, 0, 32
/* 0x02d0 */ .byte 72, 0, 0, 21, 76, 90, 49, 51, 32, 66,105,116, 49, 32, 37,120
/* 0x02e0 */ .byte 10, 0, 0, 0,125, 8, 2,166,249, 33, 0,192,249, 65, 0,112
/* 0x02f0 */ .byte 59, 32, 0, 0, 58,128, 0, 0,250,161, 0,160,250,161, 0,152
/* 0x0300 */ .byte 59, 64, 0, 0, 99,156,255,255,250,161, 0,200,250,161, 0,216
/* 0x0310 */ .byte 126,183,171,120,250,161, 0,208,250,161, 0,248,250,161, 0,232
/* 0x0320 */ .byte 250,161, 0,240,249, 1, 0,184,233, 33, 0,128, 87, 59, 32, 54
/* 0x0330 */ .byte 232, 97, 0,144,127, 38,203,120,127,123, 7,180,127, 68,211,120
/* 0x0340 */ .byte 125, 51,208, 56,126,103, 7,180,127,123, 58, 20,123,123, 15,164
/* 0x0350 */ .byte 127,101, 14,116, 72, 0, 13,109,127,143,224, 64, 65,157, 0, 52
/* 0x0360 */ .byte 127,189,112, 64, 65,158,254, 92,136,174, 0, 0,124,158,112, 80
/* 0x0370 */ .byte 126,163,171,120, 87,255, 64, 46,121,239, 64, 40, 57,206, 0, 1
/* 0x0380 */ .byte 72, 0, 13, 65,137, 78,255,255,125, 95,251,120,123,255, 0, 32
/* 0x0390 */ .byte 124,152,218, 46, 85,231,170,254,124,228, 57,214,127,159, 56, 64
/* 0x03a0 */ .byte 120,240, 0, 32, 64,156, 1,108, 72, 0, 0, 21, 76, 90, 49, 50
/* 0x03b0 */ .byte 32, 66,105,116, 48, 32, 37,120, 10, 0, 0, 0,124,104, 2,166
/* 0x03c0 */ .byte 72, 0, 13, 1,233, 33, 0,136,233, 65, 0,168,124,216,218, 46
/* 0x03d0 */ .byte 47,153, 0, 6, 33, 9, 0, 8,125, 71,208, 56,126,139, 70, 48
/* 0x03e0 */ .byte 124,231, 72, 48,124,231, 90, 20, 32,166, 8, 0, 84,232, 64, 46
/* 0x03f0 */ .byte 84,231, 80, 42,124,232, 56, 80,124,168, 46,112,120,231, 0, 32
/* 0x0400 */ .byte 124,200, 50, 20, 56,231, 7, 54,120,231, 15,164,124,216,219, 46
/* 0x0410 */ .byte 125,248, 58, 20, 65,157, 5, 76, 59, 96, 0, 1, 72, 0, 0, 21
/* 0x0420 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x0430 */ .byte 126,136, 2,166, 72, 0, 0, 32, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0440 */ .byte 124,123, 7,180,124,207,155, 46,124,176, 43,120, 47,155, 0,255
/* 0x0450 */ .byte 65,157, 0,152,127,144,224, 64,126,189,112, 64,124,158,112, 80
/* 0x0460 */ .byte 126,131,163,120,123,115, 15,164, 65,157, 0, 40, 65,150,253, 84
/* 0x0470 */ .byte 136,174, 0, 0, 57,206, 0, 1, 87,255, 64, 46,122, 16, 64, 40
/* 0x0480 */ .byte 72, 0, 12, 65,137, 14,255,255,125, 31,251,120,123,255, 0, 32
/* 0x0490 */ .byte 124,207,154, 46, 86, 8,170,254, 87, 99, 8, 60,125, 6, 65,214
/* 0x04a0 */ .byte 32,166, 8, 0, 84,196,217,126,124,165, 46,112,124,132, 48, 80
/* 0x04b0 */ .byte 124,197, 50, 20,127,159, 64, 64,121, 5, 0, 32, 65,156,255,132
/* 0x04c0 */ .byte 87,123, 8, 60,125, 72,128, 80,124,143,155, 46, 59,123, 0, 1
/* 0x04d0 */ .byte 127,232,248, 80,127,123, 7,180,121, 80, 0, 32, 47,155, 0,255
/* 0x04e0 */ .byte 123,255, 0, 32, 64,157,255,112, 47,153, 0, 3, 56,250, 0, 1
/* 0x04f0 */ .byte 87,116, 6, 62,120,231, 0, 32,126, 15,131,120,126,150,209,174
/* 0x0500 */ .byte 124,250, 59,120, 65,157, 5,128, 59, 32, 0, 0, 72, 0, 7,116
/* 0x0510 */ .byte 232, 97, 0,184,248,225, 1, 0, 72, 0, 11,169,232,225, 1, 0
/* 0x0520 */ .byte 124,184,218, 46,125, 7,120, 80, 84,170,217,126,127,136,224, 64
/* 0x0530 */ .byte 124,170, 40, 80,126,135,248, 80, 57, 89, 0,192,121, 15, 0, 32
/* 0x0540 */ .byte 122,159, 0, 32,124,184,219, 46,121, 80, 15,164, 65,157, 0, 72
/* 0x0550 */ .byte 127,174,232, 64, 65,158,252,108,136,174, 0, 0,124,158,112, 80
/* 0x0560 */ .byte 121, 15, 64, 40, 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64
/* 0x0570 */ .byte 37,120, 32, 32, 37,120, 10, 0,124,104, 2,166, 57,206, 0, 1
/* 0x0580 */ .byte 72, 0, 11, 65,139,238,255,255, 86,135, 64, 46,127,231, 59,120
/* 0x0590 */ .byte 120,255, 0, 32,124,184,130, 46, 85,231,170,254,124,133, 57,214
/* 0x05a0 */ .byte 127,159, 32, 64,120,148, 0, 32, 64,156, 4,248, 33, 5, 8, 0
/* 0x05b0 */ .byte 47,153, 0, 6,233, 65, 1,224,125, 8, 46,112,127, 48, 16, 38
/* 0x05c0 */ .byte 87, 57,247,254,125, 8, 42, 20, 59,106, 6,104,125, 24,131, 46
/* 0x05d0 */ .byte 233, 1, 0,112,127, 57, 0,208,123, 57, 7,160,249, 1, 0,224
/* 0x05e0 */ .byte 127,148,224, 64, 65,157, 0, 52,127,174,232, 64, 65,158,251,212
/* 0x05f0 */ .byte 136,174, 0, 0,232, 97, 0,208,124,158,112, 80, 87,255, 64, 46
/* 0x0600 */ .byte 122,148, 64, 40, 57,206, 0, 1, 72, 0, 10,185,137, 78,255,255
/* 0x0610 */ .byte 125, 95,251,120,123,255, 0, 32,160,219, 0, 0, 86,138,170,254
/* 0x0620 */ .byte 125, 70, 81,214,127,159, 80, 64,121, 79, 0, 32, 64,156, 6,228
/* 0x0630 */ .byte 33, 70, 8, 0, 57, 0, 0, 3,125, 74, 46,112, 86,107, 24, 56
/* 0x0640 */ .byte 125, 74, 50, 20,249, 1, 0,120,125,107, 7,180, 57,107, 0, 2
/* 0x0650 */ .byte 58, 32, 0, 0,177, 91, 0, 0,121,107, 15,164,126, 27, 90, 20
/* 0x0660 */ .byte 234,129, 0,120, 59, 96, 0, 1, 72, 0, 0, 32, 96, 66, 0, 0
/* 0x0670 */ .byte 56,212,255,255,176,243, 0, 0,124,123, 7,180,124,212, 7,181
/* 0x0680 */ .byte 124,175, 43,120, 65,130, 0,160,127,143,224, 64,123,115, 15,164
/* 0x0690 */ .byte 126,174,232, 64,124,158,112, 80,126,227,187,120,126,112,154, 20
/* 0x06a0 */ .byte 65,157, 0, 40, 65,150,251, 28,136,174, 0, 0, 57,206, 0, 1
/* 0x06b0 */ .byte 87,255, 64, 46,121,239, 64, 40, 72, 0, 10, 9,137, 78,255,255
/* 0x06c0 */ .byte 125, 95,251,120,123,255, 0, 32,160,243, 0, 0, 85,234,170,254
/* 0x06d0 */ .byte 87, 99, 8, 60,125, 71, 81,214, 32,167, 8, 0, 84,228,217,126
/* 0x06e0 */ .byte 124,165, 46,112,124,132, 56, 80,124,229, 58, 20,127,159, 80, 64
/* 0x06f0 */ .byte 121, 69, 0, 32, 65,156,255,124, 56,212,255,255, 87,123, 8, 60
/* 0x0700 */ .byte 176,147, 0, 0,124,212, 7,181,125, 10,120, 80,127,234,248, 80
/* 0x0710 */ .byte 59,123, 0, 1,121, 15, 0, 32,123,255, 0, 32,127,123, 7,180
/* 0x0720 */ .byte 64,130,255,104,233, 1, 0,120, 47,153, 0, 3, 57, 64, 0, 1
/* 0x0730 */ .byte 125, 74, 64, 48,125, 74,136, 80,126,138,218, 20, 65,157, 4,200
/* 0x0740 */ .byte 47,148, 0, 3,126,138,163,120, 65,157, 7,200, 85, 74, 48, 50
/* 0x0750 */ .byte 58, 0, 0, 6,125, 74, 7,180, 59, 96, 0, 1, 56, 10, 1,176
/* 0x0760 */ .byte 120, 0, 15,164, 72, 0, 0, 36, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0770 */ .byte 58, 16,255,255,124,248,155, 46,124,155, 7,180,122, 16, 0, 33
/* 0x0780 */ .byte 124,207, 51,120, 65,130, 0,168,127,143,224, 64,123,115, 15,164
/* 0x0790 */ .byte 232, 97, 0,160,126,174,232, 64,124,158,112, 80,126,115, 2, 20
/* 0x07a0 */ .byte 65,157, 0, 48, 65,150,250, 28,136,174, 0, 0, 57,206, 0, 1
/* 0x07b0 */ .byte 248, 1, 1, 16, 87,255, 64, 46,121,239, 64, 40, 72, 0, 9, 5
/* 0x07c0 */ .byte 137, 78,255,255,232, 1, 1, 16,125, 95,251,120,123,255, 0, 32
/* 0x07d0 */ .byte 124,248,154, 46, 85,234,170,254, 87,100, 8, 60,125, 71, 81,214
/* 0x07e0 */ .byte 32,199, 8, 0, 84,229,217,126,124,198, 46,112,124,165, 56, 80
/* 0x07f0 */ .byte 124,230, 58, 20,127,159, 80, 64,121, 70, 0, 32, 65,156,255,116
/* 0x0800 */ .byte 58, 16,255,255, 87,123, 8, 60,124,184,155, 46,122, 16, 0, 33
/* 0x0810 */ .byte 125, 10,120, 80,127,234,248, 80, 59,123, 0, 1,121, 15, 0, 32
/* 0x0820 */ .byte 123,255, 0, 32,127,123, 7,180, 64,130,255, 96, 59,123,255,192
/* 0x0830 */ .byte 47,155, 0, 3,127,106, 7,180, 64,157, 3,176, 47,155, 0, 13
/* 0x0840 */ .byte 123,107, 7,224, 97,107, 0, 2,127,123, 14,112,121,115, 0, 32
/* 0x0850 */ .byte 65,157, 7, 84, 59,123,255,255, 33, 74, 2,176,125,107,216, 48
/* 0x0860 */ .byte 127,123, 7,180,125, 74, 90, 20,121, 74, 15,164, 56, 10,255,254
/* 0x0870 */ .byte 124, 24, 2, 20, 58, 96, 0, 1, 56,192, 0, 1, 72, 0, 0, 36
/* 0x0880 */ .byte 176,240, 0, 0,124,115, 7,180,124,175, 43,120, 59,123,255,255
/* 0x0890 */ .byte 84,198, 8, 60,127,123, 7,181,124,198, 7,180, 65,130, 3, 80
/* 0x08a0 */ .byte 127,143,224, 64,122,112, 15,164,232, 97, 0,152,126,174,232, 64
/* 0x08b0 */ .byte 124,158,112, 80,126, 0,130, 20, 65,157, 0, 64, 65,150,249, 4
/* 0x08c0 */ .byte 136,174, 0, 0, 57,206, 0, 1,248, 1, 1, 16, 87,255, 64, 46
/* 0x08d0 */ .byte 248,193, 1, 8,249, 97, 1, 0,121,239, 64, 40, 72, 0, 7,229
/* 0x08e0 */ .byte 137, 78,255,255,233, 97, 1, 0,232,193, 1, 8,232, 1, 1, 16
/* 0x08f0 */ .byte 125, 95,251,120,123,255, 0, 32,160,240, 0, 0, 85,234,170,254
/* 0x0900 */ .byte 86, 99, 8, 60,125, 71, 81,214, 32,167, 8, 0, 84,228,217,126
/* 0x0910 */ .byte 124,165, 46,112,124,132, 56, 80,124,229, 58, 20,127,159, 80, 64
/* 0x0920 */ .byte 121, 69, 0, 32, 65,156,255, 92, 86,115, 8, 60,124,203, 91,120
/* 0x0930 */ .byte 176,144, 0, 0,125, 10,120, 80,127,234,248, 80, 58,115, 0, 1
/* 0x0940 */ .byte 121, 15, 0, 32,123,255, 0, 32,126,115, 7,180,121,107, 0, 32
/* 0x0950 */ .byte 75,255,255, 60, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0960 */ .byte 233, 65, 0,112, 59, 96, 0, 1, 72, 0, 0, 21, 76, 90,114,101
/* 0x0970 */ .byte 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0,126,136, 2,166
/* 0x0980 */ .byte 125, 10,208, 80,121, 8, 0, 32,126, 54, 64,174, 72, 0, 0, 28
/* 0x0990 */ .byte 124,207,155, 46,127,123, 7,180,125, 80, 83,120, 64,154, 0,192
/* 0x09a0 */ .byte 47,155, 0,255, 65,157, 0,204, 86, 43, 8, 60,127,144,224, 64
/* 0x09b0 */ .byte 85,108, 5,238,126,174,232, 64,125,140, 7,180,124,158,112, 80
/* 0x09c0 */ .byte 58,108, 1, 0,126,131,163,120,126,115,218, 20,125,113, 7,180
/* 0x09d0 */ .byte 122,115, 15,164, 65,157, 0, 48, 65,150,247,232,136,174, 0, 0
/* 0x09e0 */ .byte 57,206, 0, 1,249,129, 1, 0, 87,255, 64, 46,122, 16, 64, 40
/* 0x09f0 */ .byte 72, 0, 6,209,137, 14,255,255,233,129, 1, 0,125, 31,251,120
/* 0x0a00 */ .byte 123,255, 0, 32,124,143,154, 46, 86, 8,170,254, 87,101, 8, 60
/* 0x0a10 */ .byte 47, 44, 0, 0,124,187, 43,120, 56,165, 0, 1,125, 4, 65,214
/* 0x0a20 */ .byte 32,196, 8, 0, 84,131,217,126,124,198, 46,112,124,198, 34, 20
/* 0x0a30 */ .byte 124,131, 32, 80,126,159, 64, 64,125,136,128, 80,124,104,248, 80
/* 0x0a40 */ .byte 121, 10, 0, 32, 65,148,255, 76,124,143,155, 46,124,187, 7,180
/* 0x0a50 */ .byte 121,144, 0, 32,120,127, 0, 32, 64,154,255, 72, 47,155, 0,255
/* 0x0a60 */ .byte 64,157,249,188, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0a70 */ .byte 87,116, 6, 62, 56,250, 0, 1,126, 15,131,120,126,150,209,174
/* 0x0a80 */ .byte 120,250, 0, 32, 47,153, 0, 9, 65,157, 4,120, 59, 57,255,253
/* 0x0a90 */ .byte 127, 57, 7,180, 72, 0, 1,236, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0aa0 */ .byte 124,196,120, 80, 84,168,217,126,127,134,224, 64,125, 8, 40, 80
/* 0x0ab0 */ .byte 124,228,248, 80,120,212, 0, 32,120,255, 0, 32,125, 24,131, 46
/* 0x0ac0 */ .byte 57,240, 0, 24, 65,157, 0, 80,127,174,232, 64, 65,158,246,244
/* 0x0ad0 */ .byte 136,174, 0, 0,124,158,112, 80,248,225, 1, 0,120,212, 64, 40
/* 0x0ae0 */ .byte 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32
/* 0x0af0 */ .byte 37,120, 10, 0,124,104, 2,166, 57,206, 0, 1, 72, 0, 5,197
/* 0x0b00 */ .byte 232,225, 1, 0,139,238,255,255, 84,231, 64, 46,127,255, 59,120
/* 0x0b10 */ .byte 123,255, 0, 32,124,184,122, 46, 86,134,170,254,124,197, 49,214
/* 0x0b20 */ .byte 127,159, 48, 64,120,199, 0, 32, 64,156, 2,136, 33, 69, 8, 0
/* 0x0b30 */ .byte 127,134,224, 64,125, 74, 46,112, 59,123, 1,224,125, 74, 42, 20
/* 0x0b40 */ .byte 125, 88,123, 46, 65,157, 0, 60,127,174,232, 64, 65,158,246,116
/* 0x0b50 */ .byte 136,174, 0, 0,232, 97, 0,240,120,199, 64, 40,124,158,112, 80
/* 0x0b60 */ .byte 87,255, 64, 46, 57,206, 0, 1,248,225, 1, 0, 72, 0, 5, 85
/* 0x0b70 */ .byte 137, 78,255,255,232,225, 1, 0,125, 95,251,120,123,255, 0, 32
/* 0x0b80 */ .byte 124,216,218, 46, 84,234,170,254,125, 70, 81,214,127,159, 80, 64
/* 0x0b90 */ .byte 121, 79, 0, 32, 64,156, 3,132, 33, 70, 8, 0, 47,186, 0, 0
/* 0x0ba0 */ .byte 125, 74, 46,112,124,202, 50, 20,124,216,219, 46, 65,158, 4,180
/* 0x0bb0 */ .byte 233, 33, 0,112, 47,153, 0, 6, 56,250, 0, 1,127, 48, 16, 38
/* 0x0bc0 */ .byte 87, 57,247,254,125, 73,208, 80,121, 74, 0, 32,127, 57, 0,208
/* 0x0bd0 */ .byte 126,150, 80,174, 87, 57, 7,188, 59, 57, 0, 9,126,150,209,174
/* 0x0be0 */ .byte 120,250, 0, 32, 72, 0, 0,156,123,107, 0, 32, 57,107, 0, 1
/* 0x0bf0 */ .byte 121,104, 0, 33,249, 1, 0,112, 65,130, 0,152, 59, 57, 0, 7
/* 0x0c00 */ .byte 127, 57, 7,180,233, 33, 0,112,127,137,208, 64, 65,157, 4,132
/* 0x0c10 */ .byte 233, 1, 0,112, 56,218, 0, 1,127, 69,211,120,124,230,162, 20
/* 0x0c20 */ .byte 125, 72,208, 80,124,232, 56, 80,121, 74, 0, 32,124,234, 56, 80
/* 0x0c30 */ .byte 120,231, 0, 32, 56,231, 0, 1,124,233, 3,166, 72, 0, 0, 20
/* 0x0c40 */ .byte 127, 69,211,120,121, 74, 0, 32, 64,157, 0, 72, 56,218, 0, 1
/* 0x0c50 */ .byte 126,150, 80,174,127,146, 48, 64, 57, 74, 0, 1,120,218, 0, 32
/* 0x0c60 */ .byte 126,150, 41,174, 66, 0,255,220,233, 33, 0,176,233, 65, 0,192
/* 0x0c70 */ .byte 233, 1, 0,224,249, 33, 0,120,249, 65, 0,176,249, 1, 0,192
/* 0x0c80 */ .byte 127,146,208, 64, 65,253,246,164, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0c90 */ .byte 61, 64, 0,255, 97, 74,255,255,127,143, 80, 64, 65,221, 0, 52
/* 0x0ca0 */ .byte 127,174,232, 64, 65,158,245, 28,136,174, 0, 0,124,158,112, 80
/* 0x0cb0 */ .byte 57,206, 0, 1, 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64
/* 0x0cc0 */ .byte 37,120, 32, 32, 37,120, 10, 0,124,104, 2,166, 72, 0, 3,245
/* 0x0cd0 */ .byte 233, 65, 1,248,125, 62,112, 80, 56,128, 0, 1, 72, 0, 0, 17
/* 0x0ce0 */ .byte 76, 90, 37,100, 32, 79, 75, 10, 0, 0, 0, 0,124,104, 2,166
/* 0x0cf0 */ .byte 145, 42, 0, 0,233, 33, 2, 16,147, 73, 0, 0, 72, 0, 3,197
/* 0x0d00 */ .byte 56, 96, 0, 0, 75,255,244,192, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0d10 */ .byte 124,234,160, 80, 84,200,217,126,127,135,224, 64,124,200, 48, 80
/* 0x0d20 */ .byte 126, 10,248, 80,120,244, 0, 32,122, 31, 0, 32,176,219, 0, 0
/* 0x0d30 */ .byte 65,157, 0, 52,127,174,232, 64, 65,158,244,136,136,174, 0, 0
/* 0x0d40 */ .byte 232, 97, 0,216,124,158,112, 80,120,244, 64, 40, 57,206, 0, 1
/* 0x0d50 */ .byte 72, 0, 3,113,139,238,255,255, 86, 10, 64, 46,127,234, 83,120
/* 0x0d60 */ .byte 121, 95, 0, 32,160,251, 0, 2, 86,138,170,254,125, 71, 81,214
/* 0x0d70 */ .byte 127,159, 80, 64,121, 79, 0, 32, 64,156, 1, 88, 32,199, 8, 0
/* 0x0d80 */ .byte 86,106, 24, 56,124,198, 46,112,125, 74, 7,180,124,230, 58, 20
/* 0x0d90 */ .byte 57, 74, 0,130, 57, 32, 0, 3,121, 74, 15,164,176,251, 0, 2
/* 0x0da0 */ .byte 126, 27, 82, 20, 58, 32, 0, 8,249, 33, 0,120, 75,255,248,180
/* 0x0db0 */ .byte 125,102,160, 80, 84,167,217,126,127,139,224, 64,124,167, 40, 80
/* 0x0dc0 */ .byte 126,134,248, 80,121,123, 0, 32,122,159, 0, 32,124,184,123, 46
/* 0x0dd0 */ .byte 56, 16, 0, 48, 65,157, 0, 60,127,174,232, 64, 65,158,243,228
/* 0x0de0 */ .byte 136,174, 0, 0,232, 97, 0,232,124,158,112, 80,248, 1, 1, 16
/* 0x0df0 */ .byte 121,123, 64, 40, 57,206, 0, 1, 72, 0, 2,201,139,238,255,255
/* 0x0e00 */ .byte 86,134, 64, 46,232, 1, 1, 16,127,230, 51,120,120,223, 0, 32
/* 0x0e10 */ .byte 124,216, 2, 46, 87,104,170,254,125, 6, 65,214,127,159, 64, 64
/* 0x0e20 */ .byte 121, 20, 0, 32, 65,156, 1, 76,124,232,216, 80, 84,197,217,126
/* 0x0e30 */ .byte 127,135,224, 64,124,197, 48, 80,127,104,248, 80,120,239, 0, 32
/* 0x0e40 */ .byte 123,127, 0, 32,124,216, 3, 46, 58, 16, 0, 72, 65,157, 0, 52
/* 0x0e50 */ .byte 127,174,232, 64, 65,158,243,108,136,174, 0, 0,232, 97, 0,248
/* 0x0e60 */ .byte 124,158,112, 80,120,239, 64, 40, 57,206, 0, 1, 72, 0, 2, 85
/* 0x0e70 */ .byte 139,238,255,255, 87,104, 64, 46,127,232, 67,120,121, 31, 0, 32
/* 0x0e80 */ .byte 124,216,130, 46, 85,232,170,254,125, 6, 65,214,127,159, 64, 64
/* 0x0e90 */ .byte 121, 20, 0, 32, 64,156, 1,156, 33, 6, 8, 0,233, 33, 0,176
/* 0x0ea0 */ .byte 233, 65, 0,120,125, 8, 46,112,124,200, 50, 20,233, 1, 0,112
/* 0x0eb0 */ .byte 249, 65, 0,176,249, 33, 0,112,124,216,131, 46,249, 1, 0,224
/* 0x0ec0 */ .byte 72, 0, 0,140, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x0ed0 */ .byte 84,232,217,126,127,234,248, 80,124,232, 56, 80,125, 10,160, 80
/* 0x0ee0 */ .byte 57, 64, 0, 8,123,255, 0, 32,176,251, 0, 2, 58, 27, 2, 4
/* 0x0ef0 */ .byte 121, 15, 0, 32, 58, 32, 0, 16,249, 65, 0,120, 75,255,247,100
/* 0x0f00 */ .byte 59, 57,255,250,127, 57, 7,180, 75,255,253,120, 96, 66, 0, 0
/* 0x0f10 */ .byte 57, 64, 0, 3, 75,255,248, 56, 84,200,217,126,124,234, 56, 80
/* 0x0f20 */ .byte 233, 33, 0,120,124,200, 48, 80,127,234,248, 80,233, 1, 0,176
/* 0x0f30 */ .byte 233, 65, 0,192,120,244, 0, 32,123,255, 0, 32,124,216,219, 46
/* 0x0f40 */ .byte 249, 33, 0,176,249, 65, 0,224,249, 1, 0,192, 47,153, 0, 6
/* 0x0f50 */ .byte 233, 65, 1,224,127, 48, 16, 38, 87, 57,247,254, 59,106, 10,108
/* 0x0f60 */ .byte 127, 57, 0,208,123, 57, 7,160, 59, 57, 0, 8, 75,255,246,116
/* 0x0f70 */ .byte 33, 70, 8, 0,233, 1, 0,192,233, 33, 0,176,125, 74, 46,112
/* 0x0f80 */ .byte 124,202, 50, 20,233, 65, 0,112,249, 33, 0,192,249, 1, 0,112
/* 0x0f90 */ .byte 124,216, 3, 46,249, 65, 0,224,233, 65, 0,120,249, 65, 0,176
/* 0x0fa0 */ .byte 75,255,255,172, 59,123,255,251,127,123, 7,180, 96, 66, 0, 0
/* 0x0fb0 */ .byte 127,143,224, 64,126,174,232, 64,232, 97, 0,200,124,158,112, 80
/* 0x0fc0 */ .byte 65,157, 0, 40, 65,150,241,252,136,174, 0, 0, 57,206, 0, 1
/* 0x0fd0 */ .byte 87,255, 64, 46,121,239, 64, 40, 72, 0, 0,233,137, 78,255,255
/* 0x0fe0 */ .byte 125, 95,251,120,123,255, 0, 32, 85,234,248,126, 59,123,255,255
/* 0x0ff0 */ .byte 127,123, 7,181,127,159, 80, 64, 86,107, 8, 60,121,115, 0, 32
/* 0x1000 */ .byte 121, 79, 0, 32, 65,156, 0, 20,127,234,248, 80, 97,107, 0, 1
/* 0x1010 */ .byte 123,255, 0, 32,121,115, 0, 32, 64,130,255,152,233, 65, 1,224
/* 0x1020 */ .byte 122,107, 32, 40, 59, 96, 0, 4, 56, 10, 6, 72, 75,255,248, 72
/* 0x1030 */ .byte 84,199,217,126,127,232,248, 80,233, 33, 0,120,124,199, 48, 80
/* 0x1040 */ .byte 124,232,120, 80,233, 1, 0,112,123,255, 0, 32,120,244, 0, 32
/* 0x1050 */ .byte 124,216,131, 46,249, 33, 0,112,249, 1, 0,224, 75,255,254,240
/* 0x1060 */ .byte 56,128, 0, 3, 72, 0, 0, 21, 76, 90, 37,100, 32, 68, 65, 84
/* 0x1070 */ .byte 69, 82, 82, 10, 0, 0, 0, 0,124,104, 2,166, 72, 0, 0, 69
/* 0x1080 */ .byte 56, 96, 0, 1, 75,255,241, 64, 59, 64, 0, 0, 75,255,252, 68
/* 0x1090 */ .byte 56,128, 0, 2, 72, 0, 0, 21, 76, 90, 37,100, 32, 68, 65, 84
/* 0x10a0 */ .byte 69, 82, 82, 10, 0, 0, 0, 0,124,104, 2,166, 72, 0, 0, 21
/* 0x10b0 */ .byte 75,255,241, 16, 0, 0, 0, 0, 0, 0, 0, 1,128, 18, 0, 0
/* 0x10c0 */ .byte 124, 8, 2,166,250,225,255,184,251, 1,255,192, 57, 96, 0, 0
/* 0x10d0 */ .byte 251, 33,255,200,251, 65,255,208, 47, 43, 0, 0, 59, 64, 0, 48
/* 0x10e0 */ .byte 251, 97,255,216,251,129,255,224, 59, 32, 0,120, 59, 0, 0, 45
/* 0x10f0 */ .byte 127,112, 32, 38, 87,123,192, 6,251,161,255,232,251,193,255,240
/* 0x1100 */ .byte 63,160,204,204, 59,192, 0, 0,251,225,255,248,250,193,255,176
/* 0x1110 */ .byte 124,127, 27,120, 99,189,204,205,248, 1, 0, 16,248, 33,255, 33
/* 0x1120 */ .byte 248,129, 1, 24,248,161, 1, 32, 58,225, 1, 24, 59,129, 0,112
/* 0x1130 */ .byte 248,193, 1, 40,248,225, 1, 48,249, 1, 1, 56,249, 33, 1, 64
/* 0x1140 */ .byte 249, 65, 1, 72,137, 63, 0, 0, 58,223, 0, 1, 46,169, 0, 0
/* 0x1150 */ .byte 64,150, 1,100, 65,154, 1,224, 56, 0, 0, 4, 56, 96, 0, 2
/* 0x1160 */ .byte 56,139,255,255,124,171,176, 80, 68, 0, 0, 2,124, 99,242, 20
/* 0x1170 */ .byte 124,126, 7,180, 65,150, 1,192,137, 63, 0, 1, 59,255, 0, 2
/* 0x1180 */ .byte 47,137, 0,112, 65,158, 2, 12, 43,137, 0,112, 65,157, 1, 68
/* 0x1190 */ .byte 47,137, 0, 0, 65,158, 1,160, 47,137, 0,100, 64,158, 1,212
/* 0x11a0 */ .byte 233, 87, 0, 6, 58,247, 0, 8, 47,138, 0, 0, 65,156, 2,196
/* 0x11b0 */ .byte 127,136,227,120, 56,160, 0, 1, 57, 96, 0, 0,121, 74, 0, 32
/* 0x11c0 */ .byte 43,138, 0, 99, 64,157, 2,200, 57, 32, 0, 10, 72, 0, 0, 20
/* 0x11d0 */ .byte 96, 0, 0, 0, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x11e0 */ .byte 85, 40, 8, 60, 85, 41, 24, 56,125, 40, 74, 20,125, 10, 75,150
/* 0x11f0 */ .byte 121, 41, 0, 32, 43,136, 0, 9, 65,157,255,232,124,234, 75,150
/* 0x1200 */ .byte 57, 11, 0, 1,125, 6, 7,180,124,105,232, 22,124,129, 90, 20
/* 0x1210 */ .byte 125, 7, 73,214, 56,231, 0, 48,120,105,232,226,152,228, 0,112
/* 0x1220 */ .byte 125, 72, 80, 80, 43,138, 0, 9,121, 74, 0, 32, 64,157, 0, 60
/* 0x1230 */ .byte 124,203, 51,120,124,234, 75,150, 57, 11, 0, 1,125, 6, 7,180
/* 0x1240 */ .byte 124,105,232, 22,124,129, 90, 20,125, 7, 73,214, 56,231, 0, 48
/* 0x1250 */ .byte 120,105,232,226,152,228, 0,112,125, 72, 80, 80, 43,138, 0, 9
/* 0x1260 */ .byte 121, 74, 0, 32, 65,157,255,204, 57,107, 0, 2,125, 28, 50, 20
/* 0x1270 */ .byte 125,101, 7,180, 57, 74, 0, 48, 56, 0, 0, 4,153, 72, 0, 0
/* 0x1280 */ .byte 56, 96, 0, 2,127,132,227,120, 68, 0, 0, 2, 87,123, 64, 62
/* 0x1290 */ .byte 127,112, 33, 32, 87,123,192, 62,137, 63, 0, 0,124, 99,242, 20
/* 0x12a0 */ .byte 57, 96, 0, 0,124,126, 7,180, 58,223, 0, 1, 46,169, 0, 0
/* 0x12b0 */ .byte 65,150,254,164, 43,137, 0, 37, 65,158, 0, 88, 65,154, 1,164
/* 0x12c0 */ .byte 126,223,179,120, 75,255,254,128, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x12d0 */ .byte 47,137, 0,117, 65,158, 0,220, 47,137, 0,120, 64,158, 0,148
/* 0x12e0 */ .byte 232,119, 0, 6,155, 65, 0,112,127,132,227,120,153, 33, 0,113
/* 0x12f0 */ .byte 72, 0, 1,225, 58,247, 0, 8, 56, 0, 0, 4,124,101, 27,120
/* 0x1300 */ .byte 75,255,255,128, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x1310 */ .byte 65,154,254,104, 56, 0, 0, 4, 56, 96, 0, 2, 56,139,255,255
/* 0x1320 */ .byte 124,171,176, 80, 68, 0, 0, 2,124, 99,242, 20,124,126, 7,180
/* 0x1330 */ .byte 64,150,254, 72, 56, 33, 0,224,127,195,243,120,232, 1, 0, 16
/* 0x1340 */ .byte 234,193,255,176,234,225,255,184,235, 1,255,192,235, 33,255,200
/* 0x1350 */ .byte 235, 65,255,208,235, 97,255,216,235,129,255,224,235,161,255,232
/* 0x1360 */ .byte 235,193,255,240,235,225,255,248,124, 8, 3,166, 78,128, 0, 32
/* 0x1370 */ .byte 56, 0, 0, 4, 56, 96, 0, 2,126,196,179,120, 56,160, 0, 1
/* 0x1380 */ .byte 75,255,255, 8, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x1390 */ .byte 127,132,227,120,232,119, 0, 0,155, 65, 0,112,155, 33, 0,113
/* 0x13a0 */ .byte 75,255,255, 80, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x13b0 */ .byte 129, 87, 0, 4, 58,247, 0, 8, 43,138, 0, 99, 64,157, 0,228
/* 0x13c0 */ .byte 57, 32, 0, 10, 72, 0, 0, 28, 96, 0, 0, 0, 96, 0, 0, 0
/* 0x13d0 */ .byte 96, 0, 0, 0, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x13e0 */ .byte 85, 40, 8, 60, 85, 41, 24, 56,125, 40, 74, 20,125, 10, 75,150
/* 0x13f0 */ .byte 121, 41, 0, 32, 43,136, 0, 9, 65,157,255,232, 56,160, 0, 0
/* 0x1400 */ .byte 72, 0, 0, 20, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x1410 */ .byte 124,197, 51,120,124,234, 75,150, 57, 5, 0, 1,125, 6, 7,180
/* 0x1420 */ .byte 124,105,232, 22,124,129, 42, 20,125, 7, 73,214, 56,231, 0, 48
/* 0x1430 */ .byte 120,105,232,226,152,228, 0,112,125, 72, 80, 80, 43,138, 0, 9
/* 0x1440 */ .byte 121, 74, 0, 32, 65,157,255,204, 56,165, 0, 2,125, 28, 50, 20
/* 0x1450 */ .byte 124,165, 7,180, 75,255,254, 32, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x1460 */ .byte 126,203,179,120, 47, 54, 0, 0,126,223,179,120, 75,255,252,216
/* 0x1470 */ .byte 125, 74, 0,208,155, 1, 0,112, 57, 1, 0,113,125, 74, 7,180
/* 0x1480 */ .byte 56,160, 0, 2, 57, 96, 0, 1, 75,255,253, 52, 43,138, 0, 9
/* 0x1490 */ .byte 57, 32, 0, 10, 64,253,253,224, 75,255,253,156, 96, 66, 0, 0
/* 0x14a0 */ .byte 43,138, 0, 9,127,136,227,120, 56,160, 0, 1, 64,253,253,200
/* 0x14b0 */ .byte 57, 32, 0, 10, 75,255,255, 72, 0, 0, 0, 0, 0, 0, 0, 1
/* 0x14c0 */ .byte 128, 10, 0, 0, 96, 0, 0, 0, 96, 0, 0, 0, 96, 66, 0, 0
/* 0x14d0 */ .byte 57, 0, 0, 15, 56,224,255,255,125, 9, 3,166,120,231, 0,196
/* 0x14e0 */ .byte 124,105, 56, 57, 57, 40,255,255, 64,130, 0, 28,121, 40, 0, 32
/* 0x14f0 */ .byte 120,231,225, 2, 66, 0,255,236, 47,167, 0, 0, 56,160, 0, 2
/* 0x1500 */ .byte 65,158, 0, 88,121, 8, 16, 40, 57, 96, 0, 2, 96, 66, 0, 0
/* 0x1510 */ .byte 124,105, 68, 54,120,231,225, 2,121, 38, 7, 32, 46,167, 0, 0
/* 0x1520 */ .byte 43,134, 0, 9, 56,171, 0, 1,124,165, 7,180, 57, 8,255,252
/* 0x1530 */ .byte 125, 48, 16, 38, 85, 41,247,254,121, 8, 0, 32,125, 73, 0,208
/* 0x1540 */ .byte 113, 73, 0, 39, 57, 41, 0, 48,125, 38, 74, 20,125, 36, 89,174
/* 0x1550 */ .byte 124,171, 43,120, 64,150,255,188,124,163, 43,120, 78,128, 0, 32
/* 0x1560 */ .byte 0, 0, 0, 0, 0, 0, 0, 0
+296
View File
@@ -0,0 +1,296 @@
/* 0x0000 */ .byte 124, 8, 2,166, 72, 0, 0, 1,248, 33,254, 97,124,117, 27,120
/* 0x0010 */ .byte 124,243, 59,120,124,158, 35,120,124,189, 43,120, 72, 0, 0, 29
/* 0x0020 */ .byte 76,122,109, 97, 68,101, 99,111,100,101, 32,105,110, 61, 40, 37
/* 0x0030 */ .byte 112, 44, 32, 37,120, 41, 10, 0,124,104, 2,166, 59,245, 0, 4
/* 0x0040 */ .byte 249, 1, 1,248,248,193, 1,232,249, 33, 2, 0, 72, 0, 15,221
/* 0x0050 */ .byte 137, 85, 0, 2, 57, 32, 0, 1,139,149, 0, 0, 56,128, 0, 9
/* 0x0060 */ .byte 72, 0, 0, 21, 76, 90, 37,100, 32, 33, 79, 85, 84, 95, 82, 69
/* 0x0070 */ .byte 65, 68, 10, 0,124,104, 2,166,125, 42, 80, 48, 57, 74,255,255
/* 0x0080 */ .byte 121, 74, 0, 32,249, 65, 0,136,137, 85, 0, 1,125, 41, 80, 48
/* 0x0090 */ .byte 57, 41,255,255,121, 41, 0, 32,249, 33, 0,144,127,137, 7,180
/* 0x00a0 */ .byte 249, 33, 0,128, 72, 0, 15,133,233, 65, 1,232, 57, 32, 0, 0
/* 0x00b0 */ .byte 57, 21, 0, 2, 56,224, 4, 0,145, 42, 0, 0,233, 65, 2, 0
/* 0x00c0 */ .byte 145, 42, 0, 0, 57, 64, 3, 0,137, 53, 0, 1,125, 41,226, 20
/* 0x00d0 */ .byte 125, 73, 72, 48, 57, 41, 7, 54,121, 41, 0, 32, 47,137, 0, 0
/* 0x00e0 */ .byte 57, 73, 0, 1, 64,254, 0, 8, 57, 64, 0, 1, 44, 42, 0, 1
/* 0x00f0 */ .byte 57, 74,255,255, 65,130, 0, 12,180,232, 0, 2, 75,255,255,240
/* 0x0100 */ .byte 127,190,234, 20, 58, 30, 0, 5,127,220,243,120, 58, 64, 0, 0
/* 0x0110 */ .byte 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32
/* 0x0120 */ .byte 37,120, 10, 0,127,104, 2,166,127,189,224, 64, 65,158, 1,216
/* 0x0130 */ .byte 136,188, 0, 0,124,158,224, 80, 59,156, 0, 1,127, 99,219,120
/* 0x0140 */ .byte 72, 0, 14,233,137, 28,255,255,127,188,128, 64, 86, 73, 64, 46
/* 0x0150 */ .byte 125, 9, 75,120,121, 50, 0, 32, 64,158,255,208,232,193, 1,248
/* 0x0160 */ .byte 56,160, 0, 0, 56,128, 0, 10, 72, 0, 0, 33, 76, 90, 37,100
/* 0x0170 */ .byte 32,110,111,119, 80,111,115, 61, 37,120, 32, 32,111,117,116, 83
/* 0x0180 */ .byte 105,122,101, 61, 37,120, 10, 0,124,104, 2,166, 57,224,255,255
/* 0x0190 */ .byte 63, 32, 0,255, 72, 0, 14,149, 57, 32, 0, 1,121,239, 0, 32
/* 0x01a0 */ .byte 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32
/* 0x01b0 */ .byte 37,120, 10, 0,126,200, 2,166,249, 33, 0,112, 58,224, 0, 1
/* 0x01c0 */ .byte 58,128, 0, 1,250,193, 0,168, 72, 0, 0, 53, 76, 90, 49, 49
/* 0x01d0 */ .byte 32,110,111,119, 80,111,115, 61, 37,120, 32, 32,112,114,111, 98
/* 0x01e0 */ .byte 61, 37,112, 32, 32,115,116, 97,116,101, 61, 37,120, 32, 32,112
/* 0x01f0 */ .byte 111,115, 83,116, 97,116,101, 61, 37,120, 10, 0,125, 72, 2,166
/* 0x0200 */ .byte 72, 0, 0, 21, 76, 90, 49, 51, 32, 66,105,116, 49, 32, 37,120
/* 0x0210 */ .byte 10, 0, 0, 0,125, 40, 2,166, 59, 0, 0, 1, 57,192, 0, 0
/* 0x0220 */ .byte 249, 65, 0,152,249, 33, 0,160, 58, 32, 0, 0, 59, 96, 0, 0
/* 0x0230 */ .byte 250,193, 0,176,250,193, 0,184, 99, 57,255,255,250,193, 0,192
/* 0x0240 */ .byte 250,193, 0,200,250,193, 0,208,250,193, 0,216,250,193, 0,224
/* 0x0250 */ .byte 250,193, 0,232, 72, 0, 2, 72,124,232,120, 80, 84,164,217,126
/* 0x0260 */ .byte 127,135,200, 64,124,164, 40, 80,125,232,144, 80,120,241, 0, 32
/* 0x0270 */ .byte 121,242, 0, 32,124,191,227, 46, 56, 28, 0, 24, 64,157, 4,128
/* 0x0280 */ .byte 124,191, 2, 46, 86, 40,170,254,125, 5, 65,214,127,146, 64, 64
/* 0x0290 */ .byte 121, 7, 0, 32, 64,156, 5, 84, 32,197, 8, 0,127,136,200, 64
/* 0x02a0 */ .byte 124,198, 46,112, 59, 90, 1,224,124,166, 42, 20,124,191, 3, 46
/* 0x02b0 */ .byte 64,157, 4,156,124,191,210, 46, 84,230,170,254,124,197, 49,214
/* 0x02c0 */ .byte 127,146, 48, 64,120,207, 0, 32, 64,156, 4,244, 32,229, 8, 0
/* 0x02d0 */ .byte 47,187, 0, 0,124,231, 46,112,124,167, 42, 20,124,191,211, 46
/* 0x02e0 */ .byte 64,158, 4,168, 56,128, 0, 3, 72, 0, 0, 21, 76, 90, 37,100
/* 0x02f0 */ .byte 32, 68, 65, 84, 69, 82, 82, 10, 0, 0, 0, 0,124,104, 2,166
/* 0x0300 */ .byte 72, 0, 13, 41, 56, 96, 0, 1, 72, 0, 11,248,233, 65, 0,136
/* 0x0310 */ .byte 85,218, 32, 54,232, 97, 0,152,125,198,115,120,127, 90, 7,180
/* 0x0320 */ .byte 127,100,219,120,127,106, 80, 56,125, 71, 7,180,127, 90, 58, 20
/* 0x0330 */ .byte 145, 65, 0,120,123, 90, 15,164,127, 69, 14,116, 72, 0, 12,237
/* 0x0340 */ .byte 127,143,200, 64, 64,157, 1,104,124,159,210, 46, 85,231,170,254
/* 0x0350 */ .byte 127,132, 57,214,124,132, 7,180,127,146,224, 64,123,133, 0, 32
/* 0x0360 */ .byte 64,156, 2,200,248,161, 0,240, 72, 0, 0, 21, 76, 90, 49, 50
/* 0x0370 */ .byte 32, 66,105,116, 48, 32, 37,120, 10, 0, 0, 0,124,104, 2,166
/* 0x0380 */ .byte 72, 0, 12,169,125, 31,210, 46,233, 65, 0,128,233, 33, 0,144
/* 0x0390 */ .byte 47,142, 0, 6,232,161, 0,240, 32,232, 8, 0, 35,138, 0, 8
/* 0x03a0 */ .byte 124,231, 46,112,126, 60,230, 48,125, 7, 66, 20,125, 31,211, 46
/* 0x03b0 */ .byte 127,122, 72, 56,127, 90, 80, 48,127, 90,226, 20, 59,128, 0, 1
/* 0x03c0 */ .byte 31, 90, 3, 0,123, 90, 0, 32, 59, 90, 7, 54,123, 90, 15,164
/* 0x03d0 */ .byte 127, 95,210, 20, 64,157, 1, 56,125, 24,216, 80,124,175, 43,120
/* 0x03e0 */ .byte 121, 8, 0, 32, 59,128, 0, 1, 72, 0, 0, 21, 76, 90,114,101
/* 0x03f0 */ .byte 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0,125,136, 2,166
/* 0x0400 */ .byte 126, 51, 64,174, 86, 39, 8, 60,127,143,200, 64,124,241, 7,180
/* 0x0410 */ .byte 84,231, 5,238,124,231, 7,180, 56,199, 1, 0,124,198,226, 20
/* 0x0420 */ .byte 120,198, 15,164, 64,157, 1, 8,124,122, 50, 46, 85,228,170,254
/* 0x0430 */ .byte 87,156, 8, 60, 47,167, 0, 0,124,131, 33,214,126,146, 32, 64
/* 0x0440 */ .byte 120,133, 0, 32, 64,148, 0,156, 33, 3, 8, 0,127,156, 7,180
/* 0x0450 */ .byte 125, 8, 46,112,124,104, 26, 20,124,122, 51, 46, 64,158, 0,176
/* 0x0460 */ .byte 124,175, 43,120, 47,156, 0,255, 64,157,255,156, 47,142, 0, 3
/* 0x0470 */ .byte 87,145, 6, 62, 56,251, 0, 1,120,231, 0, 32,126, 51,217,174
/* 0x0480 */ .byte 64,157, 10, 4, 47,142, 0, 9, 57,110,255,253, 64,157, 0, 8
/* 0x0490 */ .byte 57,110,255,250,125,110, 7,180,124,251, 59,120,233, 65, 1,248
/* 0x04a0 */ .byte 127,155, 80, 64, 65,156,254,104, 72, 0, 9,228,127,176,232, 64
/* 0x04b0 */ .byte 65,158,254, 84,136,176, 0, 0,124,158,128, 80,126,195,179,120
/* 0x04c0 */ .byte 121,239, 64, 40, 58, 16, 0, 1, 72, 0, 11, 97,136,240,255,255
/* 0x04d0 */ .byte 86, 73, 64, 46,124,233, 75,120,121, 50, 0, 32, 75,255,254,108
/* 0x04e0 */ .byte 84,101,217,126,125, 4,120, 80,124,101, 24, 80,125, 36,144, 80
/* 0x04f0 */ .byte 59,156, 0, 1,121, 15, 0, 32,121, 50, 0, 32,124,122, 51, 46
/* 0x0500 */ .byte 127,156, 7,180, 64,158,255, 96,125,229,123,120,124,175, 43,120
/* 0x0510 */ .byte 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32
/* 0x0520 */ .byte 37,120, 10, 0,126, 40, 2,166, 72, 0, 0,144,127,176,232, 64
/* 0x0530 */ .byte 65,158,253,212,136,176, 0, 0,124,158,128, 80,125,131, 99,120
/* 0x0540 */ .byte 248,193, 0,240,248,225, 1, 8,249,129, 0,248,121,239, 64, 40
/* 0x0550 */ .byte 58, 16, 0, 1, 72, 0, 10,213,136,176,255,255, 86, 73, 64, 46
/* 0x0560 */ .byte 233,129, 0,248,232,225, 1, 8,232,193, 0,240,124,169, 75,120
/* 0x0570 */ .byte 121, 50, 0, 32, 75,255,254,180,127,143,200, 64,123,135, 15,164
/* 0x0580 */ .byte 64,157, 0, 68,124,154, 58, 46, 85,229,170,254, 87,156, 8, 60
/* 0x0590 */ .byte 124,164, 41,214,127,146, 40, 64,120,163, 0, 32, 64,156, 0,100
/* 0x05a0 */ .byte 33, 4, 8, 0,127,156, 7,180,125, 8, 46,112,124,136, 34, 20
/* 0x05b0 */ .byte 124,154, 59, 46,124,111, 27,120, 47,156, 0,255, 64,157,255,188
/* 0x05c0 */ .byte 75,255,254,172,127,176,232, 64, 65,158,253, 60,136,176, 0, 0
/* 0x05d0 */ .byte 124,158,128, 80,126, 35,139,120,248,225, 1, 8,121,239, 64, 40
/* 0x05e0 */ .byte 58, 16, 0, 1, 72, 0, 10, 69,136,176,255,255, 86, 73, 64, 46
/* 0x05f0 */ .byte 232,225, 1, 8,124,169, 75,120,121, 50, 0, 32, 75,255,255,136
/* 0x0600 */ .byte 125, 5,120, 80,125, 37,144, 80, 84,133,217,126, 59,156, 0, 1
/* 0x0610 */ .byte 124,133, 32, 80,121, 50, 0, 32,127,156, 7,180,121, 3, 0, 32
/* 0x0620 */ .byte 124,154, 59, 46, 75,255,255,144,232, 97, 0,160,126, 60,144, 80
/* 0x0630 */ .byte 122, 50, 0, 32, 72, 0, 9,245,124,159,210, 46,125, 28,120, 80
/* 0x0640 */ .byte 57,142, 0,192,127,136,200, 64,121, 15, 0, 32,121,156, 15,164
/* 0x0650 */ .byte 84,133,217,126,124,165, 32, 80,124,191,211, 46, 65,157, 0, 72
/* 0x0660 */ .byte 127,176,232, 64, 65,158,252,160,136,176, 0, 0,124,158,128, 80
/* 0x0670 */ .byte 121, 15, 64, 40, 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64
/* 0x0680 */ .byte 37,120, 32, 32, 37,120, 10, 0,124,104, 2,166, 58, 16, 0, 1
/* 0x0690 */ .byte 72, 0, 9,153,137, 48,255,255, 86, 39, 64, 46,125, 39, 59,120
/* 0x06a0 */ .byte 120,242, 0, 32,124,191,226, 46, 85,232,170,254,125, 5, 65,214
/* 0x06b0 */ .byte 127,146, 64, 64,121, 17, 0, 32, 64,156,251,160, 47,142, 0, 7
/* 0x06c0 */ .byte 33, 5, 8, 0,250,225, 0,112,125, 8, 46,112,126,151,163,120
/* 0x06d0 */ .byte 125,208, 16, 38, 85,206,239,254,124,168, 42, 20, 59, 85, 6,104
/* 0x06e0 */ .byte 127, 20,195,120,124,191,227, 46,125,110, 0,208,121,110,240, 66
/* 0x06f0 */ .byte 121,206, 16, 0, 57,206, 0, 3, 72, 0, 2, 92,127,176,232, 64
/* 0x0700 */ .byte 65,158,252, 4,136,176, 0, 0,124,158,128, 80,248, 1, 1, 0
/* 0x0710 */ .byte 120,241, 64, 40, 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64
/* 0x0720 */ .byte 37,120, 32, 32, 37,120, 10, 0,124,104, 2,166, 58, 16, 0, 1
/* 0x0730 */ .byte 72, 0, 8,249,137, 48,255,255, 85,232, 64, 46,232, 1, 1, 0
/* 0x0740 */ .byte 125, 40, 67,120,121, 18, 0, 32, 75,255,251, 56,127,176,232, 64
/* 0x0750 */ .byte 65,158,251,180,136,176, 0, 0,232, 97, 0,232,121, 7, 64, 40
/* 0x0760 */ .byte 124,158,128, 80, 58, 16, 0, 1,248,225, 1, 8, 72, 0, 8,189
/* 0x0770 */ .byte 137, 16,255,255, 86, 73, 64, 46,232,225, 1, 8,125, 9, 75,120
/* 0x0780 */ .byte 121, 50, 0, 32, 75,255,251, 48, 47,142, 0, 7,124,248,216, 80
/* 0x0790 */ .byte 120,231, 0, 32,125,208, 16, 38, 85,206,239,254,126, 51, 56,174
/* 0x07a0 */ .byte 56,251, 0, 1,120,231, 0, 32,125,110, 0,208,121,110, 7,164
/* 0x07b0 */ .byte 126, 51,217,174, 57,206, 0, 11, 75,255,252,224, 84,168,217,126
/* 0x07c0 */ .byte 124,230, 56, 80,124,168, 40, 80,125, 38,144, 80,126,232,187,120
/* 0x07d0 */ .byte 120,241, 0, 32,127, 23,195,120,121, 50, 0, 32,124,191,211, 46
/* 0x07e0 */ .byte 126,152,163,120, 72, 0, 0,140,124,232,136, 80, 84,164,217,126
/* 0x07f0 */ .byte 127,135,200, 64,124,164, 40, 80,126, 40,144, 80,120,239, 0, 32
/* 0x0800 */ .byte 122, 50, 0, 32,124,191, 3, 46, 59, 92, 0, 48, 65,157, 0, 52
/* 0x0810 */ .byte 127,176,232, 64, 65,158,250,240,136,176, 0, 0,232, 97, 0,224
/* 0x0820 */ .byte 124,158,128, 80,120,239, 64, 40, 58, 16, 0, 1, 72, 0, 7,253
/* 0x0830 */ .byte 137, 48,255,255, 86, 40, 64, 46,125, 40, 67,120,121, 18, 0, 32
/* 0x0840 */ .byte 124,191,210, 46, 85,232,170,254,125, 5, 65,214,127,146, 64, 64
/* 0x0850 */ .byte 121, 17, 0, 32, 64,156, 0, 36, 33, 5, 8, 0,125, 8, 46,112
/* 0x0860 */ .byte 124,168, 42, 20,126,232,187,120,126,151,163,120,124,191,211, 46
/* 0x0870 */ .byte 125, 20, 67,120, 72, 0, 0,176,124,232,120, 80, 84,164,217,126
/* 0x0880 */ .byte 127,135,200, 64,124,164, 40, 80,126, 40,144, 80,120,239, 0, 32
/* 0x0890 */ .byte 124,191,211, 46,122, 50, 0, 32, 59, 92, 0, 72, 65,157, 0, 52
/* 0x08a0 */ .byte 127,176,232, 64, 65,158,250, 96,136,176, 0, 0,232, 97, 0,216
/* 0x08b0 */ .byte 124,158,128, 80,120,239, 64, 40, 58, 16, 0, 1, 72, 0, 7,109
/* 0x08c0 */ .byte 137, 48,255,255, 86, 40, 64, 46,125, 40, 67,120,121, 18, 0, 32
/* 0x08d0 */ .byte 124,191,210, 46, 85,232,170,254,125, 5, 65,214,127,146, 64, 64
/* 0x08e0 */ .byte 121, 17, 0, 32, 64,156, 0, 24, 33, 5, 8, 0,125, 8, 46,112
/* 0x08f0 */ .byte 124,168, 42, 20,124,191,211, 46, 72, 0, 0, 44,124,232,120, 80
/* 0x0900 */ .byte 125, 40,144, 80, 84,168,217,126,121, 50, 0, 32,124,168, 40, 80
/* 0x0910 */ .byte 126,232,187,120,234,225, 0,112,120,241, 0, 32,124,191,211, 46
/* 0x0920 */ .byte 249, 1, 0,112, 47,142, 0, 7,127, 8,195,120, 59, 85, 10,108
/* 0x0930 */ .byte 126,248,187,120,125,208, 16, 38, 85,206,239,254,126,151,163,120
/* 0x0940 */ .byte 125, 20, 67,120,125,110, 0,208,121,110,240, 66,121,206, 16, 0
/* 0x0950 */ .byte 57,206, 0, 11,127,145,200, 64, 65,157, 0, 52,127,176,232, 64
/* 0x0960 */ .byte 65,158,249,164,136,176, 0, 0,232, 97, 0,208,124,158,128, 80
/* 0x0970 */ .byte 122, 49, 64, 40, 58, 16, 0, 1, 72, 0, 6,177,137, 16,255,255
/* 0x0980 */ .byte 86, 73, 64, 46,125, 9, 75,120,121, 50, 0, 32,160,154, 0, 0
/* 0x0990 */ .byte 86, 37,170,254,124,164, 41,214,127,146, 40, 64,120,175, 0, 32
/* 0x09a0 */ .byte 64,156, 0, 52,129, 33, 0,120, 32,228, 8, 0, 58, 32, 0, 0
/* 0x09b0 */ .byte 124,231, 46,112,124,135, 34, 20, 85, 60, 24, 56,127,156, 7,180
/* 0x09c0 */ .byte 176,154, 0, 0, 59,156, 0, 2,123,156, 15,164,127, 90,226, 20
/* 0x09d0 */ .byte 72, 0, 0,156,124,229,136, 80,125,229,144, 80,127,135,200, 64
/* 0x09e0 */ .byte 84,133,217,126,124,133, 32, 80,120,241, 0, 32,121,242, 0, 32
/* 0x09f0 */ .byte 176,154, 0, 0, 65,157, 0, 52,127,176,232, 64, 65,158,249, 8
/* 0x0a00 */ .byte 136,176, 0, 0,232, 97, 0,200,124,158,128, 80,120,241, 64, 40
/* 0x0a10 */ .byte 58, 16, 0, 1, 72, 0, 6, 21,137, 48,255,255, 85,229, 64, 46
/* 0x0a20 */ .byte 125, 37, 43,120,120,178, 0, 32,160,186, 0, 2, 86, 39,170,254
/* 0x0a30 */ .byte 124,229, 57,214,127,146, 56, 64,120,239, 0, 32, 64,156, 0, 56
/* 0x0a40 */ .byte 129, 65, 0,120, 32,229, 8, 0, 58, 32, 0, 8,124,231, 46,112
/* 0x0a50 */ .byte 124,167, 42, 20, 85, 92, 24, 56,127,156, 7,180,176,186, 0, 2
/* 0x0a60 */ .byte 59,156, 0,130,123,156, 15,164,127, 90,226, 20, 56, 0, 0, 3
/* 0x0a70 */ .byte 72, 0, 0, 44,125, 7,136, 80,125, 39,144, 80, 84,167,217,126
/* 0x0a80 */ .byte 121, 50, 0, 32,124,167, 40, 80, 59, 90, 2, 4,121, 15, 0, 32
/* 0x0a90 */ .byte 58, 32, 0, 16,176,186,253,254, 56, 0, 0, 8,124, 7, 3,120
/* 0x0aa0 */ .byte 59,128, 0, 1,127,143,200, 64,123,134, 15,164,124,218, 50, 20
/* 0x0ab0 */ .byte 65,157, 0, 76,127,176,232, 64, 65,158,248, 76,136,176, 0, 0
/* 0x0ac0 */ .byte 232, 97, 0,168,124,158,128, 80,248, 1, 1, 0,121,239, 64, 40
/* 0x0ad0 */ .byte 248,193, 0,240,248,225, 1, 8, 58, 16, 0, 1, 72, 0, 5, 77
/* 0x0ae0 */ .byte 136,176,255,255, 86, 73, 64, 46,232,225, 1, 8,232,193, 0,240
/* 0x0af0 */ .byte 232, 1, 1, 0,124,169, 75,120,121, 50, 0, 32,160,134, 0, 0
/* 0x0b00 */ .byte 85,229,170,254, 87,156, 8, 60,124,164, 41,214,127,146, 40, 64
/* 0x0b10 */ .byte 120,163, 0, 32, 64,156, 0, 32, 33, 4, 8, 0,127,156, 7,180
/* 0x0b20 */ .byte 125, 8, 46,112,124,111, 27,120,124,136, 34, 20,176,134, 0, 0
/* 0x0b30 */ .byte 72, 0, 0, 40,125, 5,120, 80,125, 37,144, 80, 84,133,217,126
/* 0x0b40 */ .byte 59,156, 0, 1,124,133, 32, 80,121, 15, 0, 32,121, 50, 0, 32
/* 0x0b50 */ .byte 127,156, 7,180,176,134, 0, 0, 56,231,255,255,124,231, 7,181
/* 0x0b60 */ .byte 64,130,255, 68, 47,142, 0, 3, 56,224, 0, 1,124,224, 0, 48
/* 0x0b70 */ .byte 125,128,136, 80,127,140,226, 20, 65,157, 2,156, 47,156, 0, 3
/* 0x0b80 */ .byte 127,135,227,120, 64,157, 0, 8, 56,224, 0, 3, 84,231, 48, 50
/* 0x0b90 */ .byte 58, 32, 0, 6,124,231, 7,180, 59, 0, 0, 1, 56,231, 1,176
/* 0x0ba0 */ .byte 120,250, 15,164,127,143,200, 64,123, 0, 15,164,124, 0,210, 20
/* 0x0bb0 */ .byte 65,157, 0, 60,127,176,232, 64, 65,158,247, 76,136,176, 0, 0
/* 0x0bc0 */ .byte 232, 97, 0,176,124,158,128, 80,248, 1, 1, 0,121,239, 64, 40
/* 0x0bd0 */ .byte 58, 16, 0, 1, 72, 0, 4, 85,136,240,255,255, 86, 73, 64, 46
/* 0x0be0 */ .byte 232, 1, 1, 0,124,233, 75,120,121, 50, 0, 32,124,159, 2, 46
/* 0x0bf0 */ .byte 85,229,170,254, 87, 24, 8, 60,124,164, 41,214,127,146, 40, 64
/* 0x0c00 */ .byte 120,163, 0, 32, 64,156, 0, 32, 33, 4, 8, 0,127, 24, 7,180
/* 0x0c10 */ .byte 125, 8, 46,112,124,111, 27,120,124,136, 34, 20,124,159, 3, 46
/* 0x0c20 */ .byte 72, 0, 0, 40, 84,135,217,126,125, 5,120, 80,124,135, 32, 80
/* 0x0c30 */ .byte 125, 37,144, 80, 59, 24, 0, 1,121, 15, 0, 32,124,159, 3, 46
/* 0x0c40 */ .byte 121, 50, 0, 32,127, 24, 7,180, 56,209,255,255,120,209, 0, 33
/* 0x0c50 */ .byte 64,130,255, 84, 56,248,255,192, 47,135, 0, 3,124,250, 7,180
/* 0x0c60 */ .byte 64,157, 1,156, 47,135, 0, 13,120,248, 7,224, 99, 5, 0, 2
/* 0x0c70 */ .byte 124,230, 14,112,120,184, 0, 32, 65,157, 0, 40, 59, 6,255,255
/* 0x0c80 */ .byte 35, 90, 2,176,127, 17, 7,180,124,184,192, 48,127, 90,194, 20
/* 0x0c90 */ .byte 123, 90, 15,164, 59, 90,255,254,127, 95,210, 20, 72, 0, 0,132
/* 0x0ca0 */ .byte 59, 70,255,251,127, 90, 7,180,127,143,200, 64, 65,157, 0, 52
/* 0x0cb0 */ .byte 127,176,232, 64, 65,158,246, 80,136,176, 0, 0,232, 97, 0,192
/* 0x0cc0 */ .byte 124,158,128, 80,121,239, 64, 40, 58, 16, 0, 1, 72, 0, 3, 93
/* 0x0cd0 */ .byte 136,240,255,255, 86, 73, 64, 46,124,233, 75,120,121, 50, 0, 32
/* 0x0ce0 */ .byte 85,231,248,126, 87, 6, 8, 60,127,146, 56, 64,120,239, 0, 32
/* 0x0cf0 */ .byte 120,216, 0, 32, 65,156, 0, 20,125, 39,144, 80, 96,216, 0, 1
/* 0x0d00 */ .byte 121, 50, 0, 32,123, 24, 0, 32, 59, 90,255,255,127, 90, 7,181
/* 0x0d10 */ .byte 64,130,255,152, 59, 85, 6, 72,123, 24, 32, 40, 58, 32, 0, 4
/* 0x0d20 */ .byte 56,224, 0, 1, 56, 0, 0, 1,127,143,200, 64,120,236, 15,164
/* 0x0d30 */ .byte 125,154, 98, 20, 65,157, 0, 76,127,176,232, 64, 65,158,245,200
/* 0x0d40 */ .byte 136,176, 0, 0,232, 97, 0,184,124,158,128, 80,248, 1, 1, 0
/* 0x0d50 */ .byte 121,239, 64, 40,248,225, 1, 8,249,129, 0,248, 58, 16, 0, 1
/* 0x0d60 */ .byte 72, 0, 2,201,136,176,255,255, 86, 73, 64, 46,233,129, 0,248
/* 0x0d70 */ .byte 232,225, 1, 8,232, 1, 1, 0,124,169, 75,120,121, 50, 0, 32
/* 0x0d80 */ .byte 160,140, 0, 0, 85,229,170,254, 84,231, 8, 60,124,164, 41,214
/* 0x0d90 */ .byte 127,146, 40, 64,120,163, 0, 32, 64,156, 0, 32, 33, 4, 8, 0
/* 0x0da0 */ .byte 124,231, 7,180,125, 8, 46,112,124,111, 27,120,124,136, 34, 20
/* 0x0db0 */ .byte 176,140, 0, 0, 72, 0, 0, 48,125, 5,120, 80,125, 37,144, 80
/* 0x0dc0 */ .byte 84,133,217,126, 56,231, 0, 1,124,133, 32, 80,124, 24,195,120
/* 0x0dd0 */ .byte 121, 15, 0, 32,121, 50, 0, 32,176,140, 0, 0,124,231, 7,180
/* 0x0de0 */ .byte 123, 24, 0, 32, 56,209,255,255, 84, 0, 8, 60,124,209, 7,181
/* 0x0df0 */ .byte 124, 0, 7,180, 64,130,255, 52, 72, 0, 0, 8,120,248, 0, 32
/* 0x0e00 */ .byte 59, 24, 0, 1,123, 24, 0, 33, 65,130, 0,132, 57,110, 0, 7
/* 0x0e10 */ .byte 125,110, 7,180,127,155,192, 64, 59,156, 0, 2,127,156, 7,180
/* 0x0e20 */ .byte 64,156, 0, 36, 72, 0, 0, 21, 76, 90, 37,100, 32, 68, 65, 84
/* 0x0e30 */ .byte 69, 82, 82, 10, 0, 0, 0, 0,124,104, 2,166, 56,128, 0, 2
/* 0x0e40 */ .byte 75,255,244,192, 59,156,255,255,123,156, 0, 32, 59,156, 0, 1
/* 0x0e50 */ .byte 127,137, 3,166,124,248,216, 80, 56,219, 0, 1,120,231, 0, 32
/* 0x0e60 */ .byte 126, 51, 56,174,120,199, 0, 32,126, 51,217,174, 66, 64,246, 44
/* 0x0e70 */ .byte 233, 65, 1,248,124,251, 59,120,127,138, 48, 64, 65,157,255,216
/* 0x0e80 */ .byte 75,255,246, 24, 57,192, 0, 0, 75,255,246, 16, 61, 32, 0,255
/* 0x0e90 */ .byte 97, 41,255,255,127,143, 72, 64, 65,157, 0, 52,127,176,232, 64
/* 0x0ea0 */ .byte 65,158,244,100,136,176, 0, 0,124,158,128, 80, 58, 16, 0, 1
/* 0x0eb0 */ .byte 72, 0, 0, 21, 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32
/* 0x0ec0 */ .byte 37,120, 10, 0,124,104, 2,166, 72, 0, 1, 97,233, 65, 1,232
/* 0x0ed0 */ .byte 233, 33, 2, 0,127,222,128, 80, 56,128, 0, 1, 72, 0, 0, 17
/* 0x0ee0 */ .byte 76, 90, 37,100, 32, 79, 75, 10, 0, 0, 0, 0,124,104, 2,166
/* 0x0ef0 */ .byte 147,202, 0, 0,147,105, 0, 0, 72, 0, 1, 49, 56, 96, 0, 0
/* 0x0f00 */ .byte 56, 33, 1,160, 72, 0, 0, 0,249,193,255,112,249,225,255,120
/* 0x0f10 */ .byte 250, 1,255,128,250, 33,255,136,250, 65,255,144,250, 97,255,152
/* 0x0f20 */ .byte 250,129,255,160,250,161,255,168,250,193,255,176,250,225,255,184
/* 0x0f30 */ .byte 251, 1,255,192,251, 33,255,200,251, 65,255,208,251, 97,255,216
/* 0x0f40 */ .byte 251,129,255,224,251,161,255,232,251,193,255,240,251,225,255,248
/* 0x0f50 */ .byte 248, 1, 0, 16, 78,128, 0, 32,233,193,255,112,233,225,255,120
/* 0x0f60 */ .byte 234, 1,255,128,234, 33,255,136,234, 65,255,144,234, 97,255,152
/* 0x0f70 */ .byte 234,129,255,160,234,161,255,168,234,193,255,176,234,225,255,184
/* 0x0f80 */ .byte 235, 1,255,192,235, 33,255,200,235, 65,255,208,235, 97,255,216
/* 0x0f90 */ .byte 235,129,255,224,232, 1, 0, 16,235,161,255,232,124, 8, 3,166
/* 0x0fa0 */ .byte 235,193,255,240,235,225,255,248, 78,128, 0, 32, 0, 0, 0, 0
/* 0x0fb0 */ .byte 0, 0, 0, 1,128, 18, 0, 0, 57, 32, 0, 10,125, 67, 75,150
/* 0x0fc0 */ .byte 43,138, 0, 9, 64,157, 0, 16, 29, 41, 0, 10,121, 41, 0, 32
/* 0x0fd0 */ .byte 75,255,255,236, 56,224, 0, 10, 43,131, 0, 9, 57, 5, 0, 1
/* 0x0fe0 */ .byte 64,157, 0, 44,125, 67, 75,150,124,201, 81,214,125, 41, 59,150
/* 0x0ff0 */ .byte 57, 74, 0, 48,125, 68, 41,174,125, 5, 7,180,124,102, 24, 80
/* 0x1000 */ .byte 120, 99, 0, 32,121, 41, 0, 32, 75,255,255,208, 56, 99, 0, 48
/* 0x1010 */ .byte 124,100, 41,174,125, 3, 7,180, 78,128, 0, 32, 0, 0, 0, 0
/* 0x1020 */ .byte 0, 0, 0, 0, 0, 0, 0, 0,124, 8, 2,166, 72, 0, 0, 1
/* 0x1030 */ .byte 248, 33,255, 33,124,124, 27,120, 59,224, 0, 0, 59, 32, 0, 48
/* 0x1040 */ .byte 59, 0, 0,120, 58,224, 0, 45,248,129, 1, 24,248,193, 1, 40
/* 0x1050 */ .byte 59,193, 1, 24, 59,161, 0,112,248,225, 1, 48,249, 1, 1, 56
/* 0x1060 */ .byte 249, 33, 1, 64,249, 65, 1, 72,248,161, 1, 32, 56,160, 0, 0
/* 0x1070 */ .byte 137, 60, 0, 0, 59,124, 0, 1, 46,165, 0, 0, 47, 41, 0, 0
/* 0x1080 */ .byte 64,154, 0, 12, 64,150, 0, 48, 72, 0, 1, 72, 43,137, 0, 37
/* 0x1090 */ .byte 65,158, 0, 32, 65,150, 0, 16,127,122,219,120,127, 92,211,120
/* 0x10a0 */ .byte 75,255,255,208,127,101,219,120,127,122,219,120, 75,255,255,240
/* 0x10b0 */ .byte 65,150, 0, 36, 56,133,255,255, 56, 0, 0, 4, 56, 96, 0, 2
/* 0x10c0 */ .byte 124,165,216, 80, 68, 0, 0, 2,124, 99,250, 20,124,127, 7,180
/* 0x10d0 */ .byte 65,154, 1, 0,137, 60, 0, 1, 59, 92, 0, 2, 47,137, 0,112
/* 0x10e0 */ .byte 65,158, 0,152, 43,137, 0,112, 65,157, 0, 24, 47,137, 0, 0
/* 0x10f0 */ .byte 65,158, 0,224, 47,137, 0,100, 65,158, 0, 76, 72, 0, 0, 20
/* 0x1100 */ .byte 47,137, 0,117, 65,158, 0, 44, 47,137, 0,120, 65,158, 0,132
/* 0x1110 */ .byte 56, 0, 0, 4, 56, 96, 0, 2,127,100,219,120, 56,160, 0, 1
/* 0x1120 */ .byte 68, 0, 0, 2,124, 99,250, 20,124,127, 7,180, 72, 0, 0,156
/* 0x1130 */ .byte 59,158, 0, 8, 56,160, 0, 0,128,126, 0, 4,127,164,235,120
/* 0x1140 */ .byte 72, 0, 0, 48,232,126, 0, 6, 59,158, 0, 8, 56,160, 0, 0
/* 0x1150 */ .byte 47,131, 0, 0, 64,156, 0, 20,154,225, 0,112,124, 99, 0,208
/* 0x1160 */ .byte 56,160, 0, 1,124, 99, 7,180,127,164,235,120,120, 99, 0, 32
/* 0x1170 */ .byte 75,255,254, 73, 72, 0, 0, 52,155, 33, 0,112,155, 1, 0,113
/* 0x1180 */ .byte 59,158, 0, 8,127,164,235,120,232,126, 0, 0, 72, 0, 0, 24
/* 0x1190 */ .byte 232,126, 0, 6,155, 33, 0,112, 59,158, 0, 8,127,164,235,120
/* 0x11a0 */ .byte 153, 33, 0,113, 72, 0, 0, 69,124,101, 27,120, 56, 0, 0, 4
/* 0x11b0 */ .byte 56, 96, 0, 2,127,164,235,120, 68, 0, 0, 2,124, 99,250, 20
/* 0x11c0 */ .byte 127,158,227,120,124,127, 7,180, 56,160, 0, 0, 75,255,254,208
/* 0x11d0 */ .byte 56, 33, 0,224,127,227,251,120, 72, 0, 0, 0, 0, 0, 0, 0
/* 0x11e0 */ .byte 0, 0, 0, 1,128, 9, 0, 0, 57, 32, 0, 15, 56,224,255,255
/* 0x11f0 */ .byte 125, 41, 3,166,120,231, 0,196,124,106, 56, 57, 65,130, 0, 16
/* 0x1200 */ .byte 121, 41, 16, 40, 56,192, 0, 2, 72, 0, 0, 24, 57, 41,255,255
/* 0x1210 */ .byte 120,231,225, 2,121, 41, 0, 32, 66, 0,255,224, 75,255,255,228
/* 0x1220 */ .byte 47,167, 0, 0, 65,158, 0, 68,124,106, 76, 54, 57,102, 0, 1
/* 0x1230 */ .byte 121, 69, 7, 32, 57, 41,255,252, 43,133, 0, 9,120,231,225, 2
/* 0x1240 */ .byte 121, 41, 0, 32,125, 80, 16, 38, 85, 74,247,254,125, 10, 0,208
/* 0x1250 */ .byte 113, 10, 0, 39, 57, 74, 0, 48,125, 69, 82, 20,125, 68, 49,174
/* 0x1260 */ .byte 125,102, 7,180, 75,255,255,188,124,195, 51,120, 78,128, 0, 32
/* 0x1270 */ .byte 0, 0, 0, 0, 0, 0, 0, 0
+5 -5
View File
@@ -49,15 +49,15 @@ L5:
mtctr len # count of words mtctr len # count of words
b L20 b L20
L10: L10:
rlwinm t1,t0,0,6+W_CTO,31-2 # the displacement field in position rlwinm t1,r0,0,6+W_CTO,31-2 # the displacement field in position
subf t1,ptr,t1 # raw distance subf t1,ptr,t1 # raw distance
add t1,t1,ptr0 # relative to virtual address of base add t1,t1,ptr0 # relative to virtual address of base
rlwimi t0,t1,0,6 ,31-2 # unfiltered instruction rlwimi r0,t1,0,6 ,31-2 # unfiltered instruction
stw t0,0(ptr) # replace in memory stw r0,0(ptr) # replace in memory
bdzlr- # if (0==--ctr) return; // extremely unlikely bdzlr- # if (0==--ctr) return; // extremely unlikely
L20: L20:
lwzu t0,4(ptr) # t0= *++ptr; lwzu r0,4(ptr) # r0= *++ptr;
rlwinm t1,t0,6+W_CTO,32-(6+W_CTO),31 # t1= top (6+W_CTO) bits of t0 rlwinm t1,r0,6+W_CTO,32-(6+W_CTO),31 # t1= top (6+W_CTO) bits of r0
cmplw cr0,t1,cto8; beq- cr0,L10 # unconditional branch marked with cto8; unlikely cmplw cr0,t1,cto8; beq- cr0,L10 # unconditional branch marked with cto8; unlikely
bdnz+ L20 # if (0!=--ctr) goto L20; // likely bdnz+ L20 # if (0!=--ctr) goto L20; // likely
ret ret
@@ -0,0 +1,121 @@
/*
; lzma_d.S -- 32-bit PowerPC assembly
;
; This file is part of the UPX executable compressor.
;
; Copyright (C) 2006-2017 Markus Franz Xaver Johannes Oberhumer
; All Rights Reserved.
;
; UPX and the UCL library are free software; you can redistribute them
; and/or modify them under the terms of the GNU General Public License as
; published by the Free Software Foundation; either version 2 of
; the License, or (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; see the file COPYING.
; If not, write to the Free Software Foundation, Inc.,
; 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
;
; Markus F.X.J. Oberhumer
; <markus@oberhumer.com>
; http://www.oberhumer.com/opensource/upx/
;
*/
#include "ppc_regs.h"
// http://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi.html#STACK
SZ_LINK= 6*8 // (sp,cr,lr, xx,yy,zz) save area per calling convention
SZ_PSAV= 8*8 // for spilling a0-a7 if necesary
retaddr = 2*8 // lr === pc
#define section .section
section LZMA_ELF00
//decompress: // (uchar const *src, size_t lsrc, uchar *dst, u32 &ldst, uint method)
/* Arguments according to calling convention */
#define src a0
#define lsrc a1
#define dst a2
#define ldst a3 /* Out: actually a reference: &len_dst */
#define meth a4
//// teq r0,r0 // debugging
#define M_LZMA 14
cmplwi cr0,meth,M_LZMA
bne cr0,not_lzma
stdu sp,-(SZ_LINK+SZ_PSAV)(sp) // defend against callers who omit the linkage area
mflr r0
//Prepare for call to:
//LzmaDecode( // from lzmaSDK/C/7zip/Compress/LZMA_C/LzmaDecode.h
// a0= &CLzmaDecoderState,
// a1= inp, a2= inSize, a3= &inSizeProcessed,
// a4= outp, a5= outSize, a6= &outSizeProcessed
//)
mr a6,ldst // &outSizeProcessed
lwz a5,0(ldst) // outSize 32 BITS
mr a4,dst // outp
addi a2,lsrc,-2 // inSize
la a1,2(src) // inp
lbz t2,0(src) // first byte, replaces LzmaDecodeProperties()
std r0,retaddr(sp) // save return address in caller's frame
rldicl t1,t2,64-3,3 // t1= (t2>>3)==(lit_context-bits + lit_pos_bits)
clrldi t2,t2,64-3 // t2= (7& t2)==pos_bits
#define LZMA_BASE_SIZE 1846
#define LZMA_LIT_SIZE 768
#define szSizeT 8
li a0,-2*LZMA_LIT_SIZE
sld a0,a0,t1 // -2*LZMA_LIT_SIZE << (lit_context_bits + lit_pos_bits)
addi a0,a0,-4*8 -(szSizeT +8) - 2*LZMA_BASE_SIZE
// alloca{sp,ra,orig_dst,&outSizeProcessed, inSizeProcessed,*_bits, CLzmaDecoderState}
mr a3,sp
add sp,sp,a0
rldicr sp,sp,0,64-6 // (1<<6) byte align
li r0,0
mr a0,a3 // old sp
stw r0,0(a6) // outSizeProcessed= 0;
1:
stdu r0,-8(a0) // clear CLZmaDecoderState on stack
cmpld cr0,sp,a0 // compare logical ==> compare unsigned
blt cr0,1b
std a3,0(sp) // frame chain
lbz r0,-1(a1) // second byte, replaces LzmaDecodeProperties()
la a3,4*8 (sp) // &inSizeProcessed
la a0,4*8+szSizeT(sp) // &CLzmaDecoderState
stb t2,2(a0) // pos_bits
std a4,2*8(sp) // outp
std a6,3*8(sp) // &outSizeProcessed
rldicl t1,r0,64-4,4 // t1= (r0>>4)==lit_pos_bits
clrldi r0,r0,64-4 // r0= (0xf& r0)==lit_context_bits
stb t1,1(a0) // lit_pos_bits
stb r0,0(a0) // lit_context_bits
stdu sp,-(SZ_LINK+SZ_PSAV)(sp) // defend against callers who omit the linkage area
section LZMA_DEC30 // Out: a0= retval; a2= &hi stored; a4= &lo stored; lr= retaddr
la sp,SZ_LINK+SZ_PSAV(sp) // restore sp
ld a2,3*8(sp) // &outSizeProcessed
ld a4,2*8(sp) // &lowest byte stored
ld a2,0(a2) // outSizeProcessed
ld sp,0(sp) // old sp
add a2,a2,a4 // &next byte to store
ld r0,retaddr(sp)
addi a2,a2,-1 // &highest byte stored
ld sp,0(sp) // un-defend
mtlr r0
not_lzma:
// vi:ts=8:et
+4 -114
View File
@@ -1,103 +1,8 @@
/* // This file exists so that the LZMA_DEC10 and LZMA_DEC20 sections
; lzma_d.S -- 32-bit PowerPC assembly // can contain endian-dependent code in the "64" and "64le" directories,
; // but otherwise use lzma_d-common.S
; This file is part of the UPX executable compressor.
;
; Copyright (C) 2006-2017 Markus Franz Xaver Johannes Oberhumer
; All Rights Reserved.
;
; UPX and the UCL library are free software; you can redistribute them
; and/or modify them under the terms of the GNU General Public License as
; published by the Free Software Foundation; either version 2 of
; the License, or (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; see the file COPYING.
; If not, write to the Free Software Foundation, Inc.,
; 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
;
; Markus F.X.J. Oberhumer
; <markus@oberhumer.com>
; http://www.oberhumer.com/opensource/upx/
;
*/
#include "ppc_regs.h" #include "lzma_d-common.S"
retaddr = 2*8 // (sp,cr,pc, xx,yy,zz) save area per calling convention
#define section .section
section LZMA_ELF00
//decompress: // (uchar const *src, size_t lsrc, uchar *dst, u32 &ldst, uint method)
/* Arguments according to calling convention */
#define src a0
#define lsrc a1
#define dst a2
#define ldst a3 /* Out: actually a reference: &len_dst */
#define meth a4
//// teq r0,r0 // debugging
#define M_LZMA 14
cmplwi cr0,meth,M_LZMA
bne cr0,not_lzma
stdu sp,-6*8(sp) // defend against callers who omit the linkage area
mflr r0
//LzmaDecode( // from lzmaSDK/C/7zip/Compress/LZMA_C/LzmaDecode.h
// a0= &CLzmaDecoderState,
// a1= inp, a2= inSize, a3= &inSizeProcessed,
// a4= outp, a5= outSize, a6= &outSizeProcessed
//)
mr a6,ldst // &outSizeProcessed
lwz a5,0(ldst) // outSize
mr a4,dst // outp
addi a2,lsrc,-2 // inSize
la a1,2(src) // inp
std r0,retaddr(sp) // save return address in caller's frame
lbz r0,0(src) // first byte, replaces LzmaDecodeProperties()
rldicl t1,r0,64-3,3 // t1= (r0>>3)==(lit_context-bits + lit_pos_bits)
clrldi t0,r0,64-3 // t0= (7& t0)==pos_bits
#define LZMA_BASE_SIZE 1846
#define LZMA_LIT_SIZE 768
#define szSizeT 8
li a0,-2*LZMA_LIT_SIZE
sld a0,a0,t1 // -2*LZMA_LIT_SIZE << (lit_context_bits + lit_pos_bits)
addi a0,a0,-4*8 -(szSizeT +8) - 2*LZMA_BASE_SIZE
// alloca{sp,ra,orig_dst,&outSizeProcessed, inSizeProcessed,*_bits, CLzmaDecoderState}
mr a3,sp
add sp,sp,a0
rldicr sp,sp,0,64-6 // (1<<6) byte align
li r0,0
mr a0,a3 // old sp
std r0,0(a6) // outSizeProcessed= 0;
1:
stdu r0,-8(a0) // clear CLZmaDecoderState on stack
cmpld cr0,sp,a0 // compare logical ==> compare unsigned
blt cr0,1b
std a3,0(sp) // frame chain
lbz r0,-1(a1) // second byte, replaces LzmaDecodeProperties()
la a3,4*8 (sp) // &inSizeProcessed
la a0,4*8+szSizeT(sp) // &CLzmaDecoderState
std a4,2*8(sp) // outp
std a6,3*8(sp) // &outSizeProcessed
rldicl t1,r0,64-4,4 // t1= (r0>>4)==lit_pos_bits
clrldi r0,r0,64-4 // r0= (0xf& r0)==lit_context_bits
stb t0,2(a0) // pos_bits
stb t1,1(a0) // lit_pos_bits
stb r0,0(a0) // lit_context_bits
stdu sp,-6*8(sp) // defend against callers who omit the linkage area
section LZMA_DEC10 section LZMA_DEC10
#include "lzma_d_cs.S" #include "lzma_d_cs.S"
@@ -109,19 +14,4 @@ lzma_dec20:
#include "lzma_d_cf.S" #include "lzma_d_cf.S"
eof_dec20: eof_dec20:
section LZMA_DEC30 // Out: a0= retval; a2= &hi stored; a4= &lo stored; lr= retaddr
la sp,6*8(sp) // restore sa
ld a2,3*8(sp) // &outSizeProcessed
ld a4,2*8(sp) // &lowest byte stored
ld a2,0(a2) // outSizeProcessed
ld sp,0(sp) // old sp
add a2,a2,a4 // &next byte to store
ld r0,retaddr(sp)
addi a2,a2,-1 // &highest byte stored
ld sp,0(sp) // un-defend
mtlr r0
not_lzma:
// vi:ts=8:et // vi:ts=8:et
+266 -188
View File
@@ -1,188 +1,266 @@
/* 0x0000 */ .byte 166, 2, 8,124, 1, 0, 64, 57, 1, 0, 0, 72, 2, 0, 99,137 /* 0x0000 */ .byte 166, 2, 8,124, 1, 0, 0, 72, 97,254, 33,248,120, 27,118,124
/* 0x0010 */ .byte 4, 0, 99, 59, 48, 88, 75,125,255,255,107, 57, 32, 0,107,121 /* 0x0010 */ .byte 120, 59,244,124,248, 1, 1,249,120, 35,158,124,120, 43,189,124
/* 0x0020 */ .byte 96,255, 97,249, 1, 0, 99,137, 2, 0,227, 59, 48, 88, 74,125 /* 0x0020 */ .byte 232, 1,193,248, 0, 2, 33,249, 29, 0, 0, 72, 76,122,109, 97
/* 0x0030 */ .byte 255,255, 74, 57, 0, 0, 96, 57, 32, 0, 74,121,166, 3, 72,125 /* 0x0030 */ .byte 68,101, 99,111,100,101, 32,105,110, 61, 40, 37,112, 44, 32, 37
/* 0x0040 */ .byte 0, 0, 67,137, 0, 0,102,145, 0, 0,105,145,180, 7, 84,125 /* 0x0040 */ .byte 120, 41, 10, 0,166, 2,104,124, 1, 0, 0, 72, 2, 0, 86,137
/* 0x0050 */ .byte 1, 0, 99,137, 0, 4, 0, 56, 20, 82, 75,125, 0, 3, 96, 57 /* 0x0050 */ .byte 1, 0, 32, 57, 48, 80, 42,125,255,255, 74, 57, 32, 0, 74,121
/* 0x0060 */ .byte 48, 80,106,125, 54, 7, 74, 57, 32, 0, 74,121, 0, 0,138, 47 /* 0x0060 */ .byte 128, 0, 65,249, 1, 0, 86,137, 0, 0,150,139, 48, 80, 41,125
/* 0x0070 */ .byte 1, 0,106, 57, 8, 0,190, 64, 1, 0, 96, 57,255,255,107, 53 /* 0x0070 */ .byte 255,255, 41, 57, 32, 0, 41,121,136, 0, 33,249, 9, 0,128, 56
/* 0x0080 */ .byte 12, 0,130, 65, 2, 0, 31,180,244,255,255, 75, 5, 0, 0, 56 /* 0x0080 */ .byte 180, 7,137,127,120, 0, 33,249, 21, 0, 0, 72, 76, 90, 37,100
/* 0x0090 */ .byte 166, 3, 9,124, 20, 42,164,124, 5, 0,100, 57,120, 35,159,124 /* 0x0090 */ .byte 32, 33, 79, 85, 84, 95, 82, 69, 65, 68, 10, 0,166, 2,104,124
/* 0x00a0 */ .byte 0, 0, 64, 57, 64, 40,191,127, 12, 0,190, 64, 1, 0, 96, 56 /* 0x00a0 */ .byte 1, 0, 0, 72,232, 1, 65,233, 0, 0, 32, 57, 0, 0, 42,145
/* 0x00b0 */ .byte 88, 10, 0, 72, 1, 0,255, 59,255,255, 31,136, 46, 64, 74, 85 /* 0x00b0 */ .byte 0, 2, 65,233, 4, 0,246, 59, 0, 0, 42,145, 0, 3, 64, 57
/* 0x00c0 */ .byte 120, 83, 10,124, 32, 0, 74,121,220,255, 0, 66,255,255, 0, 56 /* 0x00c0 */ .byte 1, 0, 54,137, 2, 0, 22, 57, 20,226, 41,125, 48, 72, 73,125
/* 0x00d0 */ .byte 255, 0, 32, 63, 32, 0, 0,120, 1, 0,160, 58, 1, 0, 0, 59 /* 0x00d0 */ .byte 54, 7, 41, 57, 32, 0, 41,121, 0, 0,137, 47, 0, 4,224, 56
/* 0x00e0 */ .byte 1, 0,192, 58, 1, 0,160, 59, 0, 0,128, 57, 0, 0,192, 59 /* 0x00e0 */ .byte 1, 0, 73, 57, 8, 0,190, 64, 1, 0, 64, 57,255,255, 74, 53
/* 0x00f0 */ .byte 0, 0, 64, 59,255,255, 57, 99, 1, 0, 96, 58, 8, 0, 84, 34 /* 0x00f0 */ .byte 12, 0,130, 65, 2, 0,232,180,244,255,255, 75, 20,234,190,127
/* 0x0100 */ .byte 64, 64,154,127,216, 9,156, 64, 96,255,225,235, 54, 32,156, 85 /* 0x0100 */ .byte 5, 0,222, 57,120,243,220,127, 0, 0,224, 57, 21, 0, 0, 72
/* 0x0110 */ .byte 56,248, 87,127, 64,200,128,127,180, 7,241,126,180, 7,156,127 /* 0x0110 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x0120 */ .byte 20,226,145,127,164, 15,145,123, 36, 0,157, 65, 64, 40,171,127 /* 0x0120 */ .byte 166, 2,104,127, 64,232,188,127,176, 2,158, 65, 0, 0,188,136
/* 0x0130 */ .byte 124,255,190, 65, 0, 0,235,139, 46, 64, 74, 85,120, 83,234,127 /* 0x0130 */ .byte 80,224,158,124,120,219, 99,127, 1, 0,156, 59, 1, 0, 0, 72
/* 0x0140 */ .byte 40, 64, 0,120, 32, 0, 74,121, 1, 0,107, 57, 46,138,251,125 /* 0x0140 */ .byte 255,255, 28,137, 64,112,188,127, 46, 64,233, 85,120, 75, 9,125
/* 0x0150 */ .byte 254,170, 16, 84,214,121, 16,126, 64,128,138,127, 32, 0, 28,122 /* 0x0150 */ .byte 32, 0, 47,121,208,255,158, 64,248, 1,193,232, 10, 0,128, 56
/* 0x0160 */ .byte 228, 1,156, 64, 0, 8,239, 35,112, 46,255,127,166, 2, 8,124 /* 0x0160 */ .byte 0, 0,160, 56,255,255, 32, 58,255, 0, 32, 63, 33, 0, 0, 72
/* 0x0170 */ .byte 20,122,255,127, 46,139,251,127, 48,150,223,127, 56, 0, 94,127 /* 0x0170 */ .byte 76, 90, 37,100, 32,110,111,119, 80,111,115, 61, 37,120, 32, 32
/* 0x0180 */ .byte 48,160,222,127, 20,242,223,127, 0, 3,222, 31, 6, 0,140, 47 /* 0x0180 */ .byte 111,117,116, 83,105,122,101, 61, 37,120, 10, 0,166, 2,104,124
/* 0x0190 */ .byte 32, 0,222,123, 54, 7,222, 59,164, 15,222,123, 20,242,219,127 /* 0x0190 */ .byte 32, 0, 49,122, 1, 0, 0, 72, 1, 0, 64, 58, 53, 0, 0, 72
/* 0x01a0 */ .byte 16, 0,157, 65, 1, 0,224, 59,120,227,128,127, 12, 1, 0, 72 /* 0x01a0 */ .byte 76, 90, 49, 49, 32,110,111,119, 80,111,115, 61, 37,120, 32, 32
/* 0x01b0 */ .byte 80,208, 29,124, 32, 0, 0,120,174, 0,231,125, 1, 0,224, 59 /* 0x01b0 */ .byte 112,114,111, 98, 61, 37,112, 32, 32,115,116, 97,116,101, 61, 37
/* 0x01c0 */ .byte 60, 8,247, 85,180, 7,239,126,238, 5,247, 86,180, 7,247,126 /* 0x01c0 */ .byte 120, 32, 32,112,111,115, 83,116, 97,116,101, 61, 37,120, 10, 0
/* 0x01d0 */ .byte 64,200,156,127, 0, 1, 55, 58, 20,250, 49,126,164, 15, 49,122 /* 0x01d0 */ .byte 166, 2, 40,125, 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64
/* 0x01e0 */ .byte 36, 0,157, 65, 64, 40,171,127,196,254,190, 65, 0, 0, 11,136 /* 0x01e0 */ .byte 37,120, 32, 32, 37,120, 10, 0,166, 2, 72,125,144, 0, 33,249
/* 0x01f0 */ .byte 46, 64, 74, 85,120, 83, 10,124, 40, 64,156,123, 32, 0, 74,121 /* 0x01f0 */ .byte 152, 0, 65,249, 21, 0, 0, 72, 76, 90, 49, 51, 32, 66,105,116
/* 0x0200 */ .byte 1, 0,107, 57, 46,138, 30,126,254,170,128, 87,214,129, 0,124 /* 0x0200 */ .byte 49, 32, 37,120, 10, 0, 0, 0,166, 2, 40,125, 21, 0, 0, 72
/* 0x0210 */ .byte 60, 8,255, 87, 64, 0, 10,127, 32, 0, 14,120, 0, 0,183, 47 /* 0x0210 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x0220 */ .byte 36, 0,152, 64, 0, 8, 16, 32,112, 46, 0,124, 20,130, 0,126 /* 0x0220 */ .byte 166, 2, 72,125,160, 0, 33,249,168, 0, 65,249, 21, 0, 0, 72
/* 0x0230 */ .byte 46,139, 30,126,180, 7,255,127,120,115,220,125, 48, 0,190, 65 /* 0x0230 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x0240 */ .byte 104,255,255, 75, 80,224,128,127, 80, 80, 64,125,126,217, 0, 86 /* 0x0240 */ .byte 166, 2, 40,125, 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64
/* 0x0250 */ .byte 80,128, 0,126, 1, 0,255, 59, 32, 0,156,123, 32, 0, 74,121 /* 0x0250 */ .byte 37,120, 32, 32, 37,120, 10, 0,166, 2, 72,125,176, 0, 33,249
/* 0x0260 */ .byte 46,139, 30,126,180, 7,255,127, 64,255,190, 65,255, 0,159, 47 /* 0x0260 */ .byte 184, 0, 65,249, 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64
/* 0x0270 */ .byte 80,255,157, 64, 52,255,255, 75, 64,200,128,127,164, 15,241,123 /* 0x0270 */ .byte 37,120, 32, 32, 37,120, 10, 0,166, 2, 40,125, 21, 0, 0, 72
/* 0x0280 */ .byte 68, 0,157, 64, 46,138,254,126,254,170, 28, 84,214,185,156,127 /* 0x0280 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x0290 */ .byte 60, 8,255, 87, 64,224,138,127, 32, 0,144,123, 76, 0,156, 64 /* 0x0290 */ .byte 166, 2, 72,125,192, 0, 33,249,200, 0, 65,249, 21, 0, 0, 72
/* 0x02a0 */ .byte 0, 8,151, 35,112, 46,156,127, 20,186,156,127, 46,139,158,127 /* 0x02a0 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x02b0 */ .byte 180, 7,255,127,120,131, 0,126,255, 0,159, 47,188,255,157, 64 /* 0x02b0 */ .byte 166, 2, 40,125, 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64
/* 0x02c0 */ .byte 80, 0, 0, 72, 64, 40,171,127,228,253,190, 65, 0, 0,139,139 /* 0x02c0 */ .byte 37,120, 32, 32, 37,120, 10, 0,166, 2, 72,125,208, 0, 33,249
/* 0x02d0 */ .byte 46, 64, 74, 85,120, 83,138,127, 40, 64, 0,120, 32, 0, 74,121 /* 0x02d0 */ .byte 216, 0, 65,249, 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64
/* 0x02e0 */ .byte 1, 0,107, 57,160,255,255, 75, 80, 0, 28,124, 80, 80, 92,125 /* 0x02e0 */ .byte 37,120, 32, 32, 37,120, 10, 0,166, 2, 40,125, 21, 0, 0, 72
/* 0x02f0 */ .byte 126,217,252, 86, 80,184,156,127, 1, 0,255, 59, 32, 0, 74,121 /* 0x02f0 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x0300 */ .byte 46,139,158,127,180, 7,255,127, 32, 0, 16,120,168,255,255, 75 /* 0x0300 */ .byte 166, 2, 72,125, 1, 0,224, 58, 1, 0,160, 58, 1, 0, 0, 59
/* 0x0310 */ .byte 3, 0,140, 47, 32, 6,254,123, 1, 0,154, 59, 32, 0,156,123 /* 0x0310 */ .byte 0, 0, 0, 58, 0, 0,128, 59, 0, 0, 96, 59,255,255, 57, 99
/* 0x0320 */ .byte 174,209,199,127,172, 7,157, 64, 9, 0,140, 47, 12, 0,157, 65 /* 0x0320 */ .byte 224, 0, 33,249,232, 0, 65,249,216, 1, 0, 72, 80,136,136,124
/* 0x0330 */ .byte 253,255,140, 57, 8, 0, 0, 72,250,255,140, 57,180, 7,140,125 /* 0x0330 */ .byte 64,200,132,127,126,217,167, 84, 80,120, 8,125, 80, 40,231,124
/* 0x0340 */ .byte 148, 7, 0, 72, 80, 0, 16,124, 64,200,128,127,126,217,255, 85 /* 0x0340 */ .byte 32, 0,145,120, 32, 0, 15,121, 46,155,255,124, 24, 0,147, 59
/* 0x0350 */ .byte 80, 80, 16,126, 80,120,255,127,192, 0,204, 59, 32, 0, 28,120 /* 0x0350 */ .byte 116, 4,157, 64, 46,226, 31,125,254,170, 37, 86,214, 65,165,124
/* 0x0360 */ .byte 32, 0, 10,122, 46,139,251,127,164, 15,222,123, 36, 0,157, 65 /* 0x0360 */ .byte 64, 40,143,127, 32, 0,167,120, 72, 5,156, 64, 0, 8,200, 32
/* 0x0370 */ .byte 64, 40,171,127, 56,253,190, 65, 0, 0, 75,137, 46, 64, 16, 86 /* 0x0370 */ .byte 64,200,133,127,112, 46,198,124, 20, 66, 6,125, 46,227, 31,125
/* 0x0380 */ .byte 120,131, 74,125, 40, 64, 28,120, 32, 0, 74,121, 1, 0,107, 57 /* 0x0380 */ .byte 224, 1, 90, 59,144, 4,157, 64, 46,210,191,124,254,170,230, 84
/* 0x0390 */ .byte 46,242, 27,124,254,170,159, 87,214, 1, 31,126, 64,128,138,127 /* 0x0390 */ .byte 214, 41,198,124, 64, 48,143,127, 32, 0,209,120,232, 4,156, 64
/* 0x03a0 */ .byte 32, 0, 31,122, 68, 0,156, 64, 7, 0,140, 47, 0, 8,128, 35 /* 0x03a0 */ .byte 0, 8,229, 32, 0, 0,187, 47,112, 46,231,124, 20, 42,167,124
/* 0x03b0 */ .byte 112, 46,156,127, 38, 0,128,125,254,239,140, 85, 20, 2, 28,124 /* 0x03b0 */ .byte 46,211,191,124,156, 4,190, 64, 3, 0,128, 56, 21, 0, 0, 72
/* 0x03c0 */ .byte 208, 0,140,125, 66,240,140,121, 0, 16,140,121, 46,243, 27,124 /* 0x03c0 */ .byte 76, 90, 37,100, 32, 68, 65, 84, 69, 82, 82, 10, 0, 0, 0, 0
/* 0x03d0 */ .byte 120,195, 21,127, 3, 0,140, 57,120,179,216,126,104, 6,195, 59 /* 0x03d0 */ .byte 166, 2,104,124, 1, 0, 0, 72, 1, 0, 96, 56, 12, 12, 0, 72
/* 0x03e0 */ .byte 120,235,182,127,124, 2, 0, 72, 80,224,240,125, 64,200,143,127 /* 0x03e0 */ .byte 128, 0, 33,233, 54, 32, 26, 86, 56, 72,105,127,180, 7, 39,125
/* 0x03f0 */ .byte 80, 80,240,127,126,217, 16, 84, 80, 0, 16,124, 32, 0,252,121 /* 0x03f0 */ .byte 180, 7, 90,127, 20,210, 71,127,164, 15, 90,123,144, 0, 97,232
/* 0x0400 */ .byte 32, 0,234,123, 46,243, 27,124, 24, 0, 30, 58, 36, 0,157, 65 /* 0x0400 */ .byte 120,219,100,127,116, 14, 69,127,120,131, 6,126,112, 0, 33,145
/* 0x0410 */ .byte 64, 40,171,127,152,252,190, 65, 0, 0, 11,136, 46, 64,234, 87 /* 0x0410 */ .byte 1, 0, 0, 72, 64,200,145,127,248, 0,157, 64, 46,210,159,124
/* 0x0420 */ .byte 120, 83, 10,124, 40, 64,252,121, 32, 0, 74,121, 1, 0,107, 57 /* 0x0420 */ .byte 254,170, 38, 86,214, 33,102,126,180, 7,132,124, 64,152,143,127
/* 0x0430 */ .byte 46,130,251,125,254,170,128, 87,214,121, 0,124, 64, 0,138,127 /* 0x0430 */ .byte 32, 0,103,122,188, 2,156, 64, 8, 1,225,248, 21, 0, 0, 72
/* 0x0440 */ .byte 32, 0, 31,120,208, 0,156, 64, 0, 8,207, 35, 64,200,128,127 /* 0x0440 */ .byte 76, 90, 49, 50, 32, 66,105,116, 48, 32, 37,120, 10, 0, 0, 0
/* 0x0450 */ .byte 112, 46,222,127, 20,122,254,125, 46,131,251,125,224, 1,145, 59 /* 0x0450 */ .byte 166, 2,104,124, 1, 0, 0, 72, 46,210, 31,125,120, 0, 65,233
/* 0x0460 */ .byte 36, 0,157, 65, 64, 40,171,127, 68,252,190, 65, 40, 64, 31,120 /* 0x0460 */ .byte 0, 8,200, 32,112, 46,198,124,136, 0, 33,233, 20, 66, 6,125
/* 0x0470 */ .byte 0, 0, 11,136, 46, 64, 74, 85,120, 83, 10,124, 32, 0, 74,121 /* 0x0470 */ .byte 46,211, 31,125, 8, 0, 74, 35, 56, 72,104,127, 48,214,154,127
/* 0x0480 */ .byte 1, 0,107, 57, 46,226, 59,126,254,170,254, 87,214,137,222,127 /* 0x0480 */ .byte 48, 80, 8,125, 20, 66, 90,127, 0, 3, 90, 31, 6, 0,144, 47
/* 0x0490 */ .byte 64,240,138,127, 32, 0,192,123, 80, 0,156, 64, 0, 8,241, 35 /* 0x0490 */ .byte 32, 0, 90,123, 54, 7, 90, 59,164, 15, 90,123, 20,210, 95,127
/* 0x04a0 */ .byte 0, 0,186, 47,112, 46,255,127, 20,138, 63,126, 46,227, 59,126 /* 0x04a0 */ .byte 8, 1,225,232,160, 0,157, 65, 1, 0,128, 59,120, 59,241,124
/* 0x04b0 */ .byte 252,251,190, 65, 7, 0,140, 47, 80,208,253,127, 32, 0,255,123 /* 0x04b0 */ .byte 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32
/* 0x04c0 */ .byte 38, 0,128,125,254,239,140, 85,174,248,199,127,208, 0,140,125 /* 0x04c0 */ .byte 37,120, 10, 0,166, 2,104,126,255, 0,156, 47,128, 1,189, 64
/* 0x04d0 */ .byte 164, 7,140,121, 1, 0,154, 59, 11, 0,140, 57, 32, 0,156,123 /* 0x04d0 */ .byte 3, 0,144, 47, 32, 6,156,123, 1, 0,251, 56, 32, 0,231,120
/* 0x04e0 */ .byte 174,209,199,127,240, 5, 0, 72,126,217, 32, 86, 80,136, 32,126 /* 0x04e0 */ .byte 174,217,148,127,136, 10,157, 64, 9, 0,144, 47,253,255,112, 57
/* 0x04f0 */ .byte 80,248,254,127, 80, 80, 94,125,120,195, 0,127, 32, 0,255,123 /* 0x04f0 */ .byte 8, 0,157, 64,250,255,112, 57,180, 7,112,125,120, 59,251,124
/* 0x0500 */ .byte 120,235,184,127, 32, 0, 74,121, 46,227, 59,126,120,179,221,126 /* 0x0500 */ .byte 248, 1, 65,233, 64, 80,155,127,216,254,156, 65,104, 10, 0, 72
/* 0x0510 */ .byte 124, 0, 0, 72, 80,224,128,127, 64,200,156,127,126,217,255, 85 /* 0x0510 */ .byte 64,232,174,127,196,254,190, 65, 0, 0,174,136,152, 0, 97,232
/* 0x0520 */ .byte 80, 80, 0,124, 80,120,255,127, 46,131,251,127, 32, 0,145,123 /* 0x0520 */ .byte 80,112,158,124, 1, 0, 0, 72, 0, 0,238,136, 46, 64,233, 85
/* 0x0530 */ .byte 32, 0, 10,120, 48, 0, 30, 58, 36, 0,157, 65, 64, 40,171,127 /* 0x0530 */ .byte 120, 75,233,124, 40, 64, 49,122, 32, 0, 47,121, 1, 0,206, 57
/* 0x0540 */ .byte 108,251,190, 65, 0, 0, 75,137, 46, 64, 0, 84,120, 3, 74,125 /* 0x0540 */ .byte 220,254,255, 75, 80,216, 24,125, 32, 0, 8,121,174, 64,116,126
/* 0x0550 */ .byte 40, 64,145,123, 32, 0, 74,121, 1, 0,107, 57, 46,130, 27,124 /* 0x0550 */ .byte 1, 0,128, 59, 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64
/* 0x0560 */ .byte 254,170, 63, 86,214, 1,255,125, 64,120,138,127, 32, 0,255,121 /* 0x0560 */ .byte 37,120, 32, 32, 37,120, 10, 0,166, 2, 40,126, 60, 8,104, 86
/* 0x0570 */ .byte 36, 0,156, 64, 0, 8,192, 35,112, 46,222,127, 20, 2, 30,124 /* 0x0570 */ .byte 180, 7, 19,125,238, 5, 8, 85,180, 7, 8,125, 64,200,135,127
/* 0x0580 */ .byte 46,131, 27,124,120,195, 0,127,120,179,216,126,120, 3, 22,124 /* 0x0580 */ .byte 0, 1,200, 56, 20,226,198,124,164, 15,198,120, 76, 0,157, 65
/* 0x0590 */ .byte 160, 0, 0, 72, 80,136, 47,126, 64,200,145,127, 80, 80,239,127 /* 0x0590 */ .byte 64,232,174,127, 68,254,190, 65, 0, 0,174,136, 40, 64,231,120
/* 0x05a0 */ .byte 126,217, 15, 84, 80, 0, 15,124, 32, 0, 60,122, 32, 0,234,123 /* 0x05a0 */ .byte 80,112,158,124,120,139, 35,126, 0, 1,193,248, 8, 1,225,248
/* 0x05b0 */ .byte 46,131, 27,124, 72, 0,222, 59, 36, 0,157, 65, 64, 40,171,127 /* 0x05b0 */ .byte 240, 0, 1,249, 1, 0, 0, 72, 0, 0,174,136, 46, 64,233, 85
/* 0x05c0 */ .byte 236,250,190, 65, 0, 0, 11,136, 46, 64,234, 87,120, 83, 10,124 /* 0x05c0 */ .byte 120, 75,169,124,240, 0, 1,233, 8, 1,225,232, 0, 1,193,232
/* 0x05d0 */ .byte 40, 64, 60,122, 32, 0, 74,121, 1, 0,107, 57, 46,242, 59,126 /* 0x05d0 */ .byte 32, 0, 47,121, 1, 0,206, 57, 46, 50,154,124,254,170,229, 84
/* 0x05e0 */ .byte 254,170,128, 87,214,137, 0,124, 64, 0,138,127, 32, 0, 31,120 /* 0x05e0 */ .byte 214, 33,165,124, 60, 8,156, 87, 64, 40, 15,127, 32, 0,163,120
/* 0x05f0 */ .byte 24, 0,156, 64, 0, 8, 17, 32,112, 46, 0,124, 20,138, 0,124 /* 0x05f0 */ .byte 0, 0,168, 47, 36, 0,152, 64, 0, 8,164, 32,112, 46,165,124
/* 0x0600 */ .byte 46,243, 27,124, 44, 0, 0, 72, 80,224,224,127, 80, 80, 64,125 /* 0x0600 */ .byte 20, 34,165,124, 46, 51,186,124,180, 7,156,127,120, 27,103,124
/* 0x0610 */ .byte 126,217, 32, 86, 80,136, 0,124, 46,243, 27,124,120,195, 0,127 /* 0x0610 */ .byte 48, 0,190, 65,152,254,255, 75, 80, 56,229,124, 80,120, 37,125
/* 0x0620 */ .byte 32, 0, 74,121,120,171,184,126, 32, 0,255,123,120, 3, 21,124 /* 0x0620 */ .byte 126,217,133, 84, 80, 32,165,124, 1, 0,156, 59, 32, 0,231,120
/* 0x0630 */ .byte 7, 0,140, 47,120,235,160,127,108, 10,195, 59, 38, 0,128,125 /* 0x0630 */ .byte 32, 0, 47,121, 46, 51,186,124,180, 7,156,127,112,254,190, 65
/* 0x0640 */ .byte 254,239,140, 85,120,195, 29,127,208, 0,140,125, 66,240,140,121 /* 0x0640 */ .byte 255, 0,156, 47, 40,255,157, 64,100,254,255, 75, 64,200,145,127
/* 0x0650 */ .byte 0, 16,140,121,120,179,216,126, 11, 0,140, 57,120, 3, 22,124 /* 0x0650 */ .byte 164, 15,135,123, 60, 0,157, 65, 64,232,174,127,124,253,190, 65
/* 0x0660 */ .byte 64,200,159,127, 36, 0,157, 65, 64, 40,171,127, 64,250,190, 65 /* 0x0660 */ .byte 0, 0,174,136, 80,112,158,124,120,155, 99,126, 8, 1,225,248
/* 0x0670 */ .byte 0, 0, 11,136, 46, 64, 74, 85,120, 83, 10,124, 40, 64,255,123 /* 0x0670 */ .byte 1, 0, 0, 72, 0, 0,174,136, 46, 64,233, 85,120, 75,169,124
/* 0x0680 */ .byte 32, 0, 74,121, 1, 0,107, 57, 0, 0, 30,162,254,170,252, 87 /* 0x0680 */ .byte 8, 1,225,232, 40, 64, 49,122, 32, 0, 47,121, 1, 0,206, 57
/* 0x0690 */ .byte 214,129,156,127, 64,224,138,127, 32, 0,128,123, 48, 0,156, 64 /* 0x0690 */ .byte 46, 58,154,124,254,170, 37, 86,214, 33,165,124, 60, 8,156, 87
/* 0x06a0 */ .byte 56, 24,247, 86, 0, 8,240, 35,180, 7,247,126,112, 46,255,127 /* 0x06a0 */ .byte 64, 40,143,127, 32, 0,163,120, 28, 0,156, 64, 0, 8,164, 32
/* 0x06b0 */ .byte 2, 0,247, 58, 20,130, 31,126,164, 15,247,122, 0, 0, 30,178 /* 0x06b0 */ .byte 112, 46,165,124, 20, 34,165,124, 46, 59,186,124,180, 7,156,127
/* 0x06c0 */ .byte 0, 0,192, 57, 20,186,222,127,136, 0, 0, 72, 80,248,252,127 /* 0x06c0 */ .byte 40, 0, 0, 72, 80,136, 5,125, 80,120, 37,125,126,217,133, 84
/* 0x06d0 */ .byte 64,200,159,127,126,217, 0, 86, 80, 80,156,127, 80,128, 0,126 /* 0x06d0 */ .byte 80, 32,165,124, 1, 0,156, 59, 46, 59,186,124, 32, 0, 47,121
/* 0x06e0 */ .byte 32, 0,241,123, 32, 0,138,123, 0, 0, 30,178, 36, 0,157, 65 /* 0x06e0 */ .byte 180, 7,156,127, 32, 0, 3,121,120, 27,113,124,220,253,255, 75
/* 0x06f0 */ .byte 64, 40,171,127,184,249,190, 65, 0, 0, 75,137, 46, 64,156, 87 /* 0x06f0 */ .byte 160, 0, 97,232, 80,120,147,127, 1, 0, 0, 72, 80,136, 19,125
/* 0x0700 */ .byte 120,227, 74,125, 40, 64,241,123, 32, 0, 74,121, 1, 0,107, 57 /* 0x0700 */ .byte 46,210,255,124, 64,200,136,127,126,217,229, 84, 80, 56,229,124
/* 0x0710 */ .byte 2, 0,158,163,254,170, 63, 86,214,225,255,127, 64,248,138,127 /* 0x0710 */ .byte 192, 0,144, 57, 32, 0, 17,121, 32, 0,143,123, 46,211,255,124
/* 0x0720 */ .byte 32, 0,224,123, 52, 0,156, 64, 56, 24,247, 86, 0, 8,252, 35 /* 0x0720 */ .byte 164, 15,147,121, 72, 0,157, 65, 64,232,174,127,172,252,190, 65
/* 0x0730 */ .byte 180, 7,247,126,112, 46,255,127,130, 0,247, 58, 20,226,255,127 /* 0x0730 */ .byte 0, 0,174,136, 80,112,158,124, 40, 64, 17,121, 21, 0, 0, 72
/* 0x0740 */ .byte 164, 15,247,122, 2, 0,254,179, 8, 0,192, 57, 20,186,222,127 /* 0x0740 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x0750 */ .byte 3, 0,224, 57, 44, 0, 0, 72, 80,136, 31,124, 80, 80, 95,125 /* 0x0750 */ .byte 166, 2,104,124, 1, 0, 0, 72, 0, 0, 46,137, 46, 64,134, 87
/* 0x0760 */ .byte 126,217,159, 87, 80,224,255,127, 2, 0,254,179, 32, 0, 74,121 /* 0x0760 */ .byte 120, 51, 41,125, 32, 0, 47,121, 1, 0,206, 57, 46,154,191,124
/* 0x0770 */ .byte 4, 2,222, 59, 32, 0, 0,120, 16, 0,192, 57, 8, 0,224, 57 /* 0x0770 */ .byte 254,170, 40, 86,214, 41, 8,125, 64, 64,143,127, 32, 0, 28,121
/* 0x0780 */ .byte 255,255,143, 59, 32, 0,156,123, 1, 0,156, 59,166, 3,137,127 /* 0x0780 */ .byte 172,251,188, 64, 7, 0,144, 47, 0, 8, 5, 33,112, 46, 8,125
/* 0x0790 */ .byte 1, 0,224, 59, 64,200,128,127,164, 15,240,123, 20,130, 30,126 /* 0x0790 */ .byte 38, 0, 0,126,254,239, 16, 86, 20, 42,168,124,208, 0,112,125
/* 0x07a0 */ .byte 36, 0,157, 65, 64, 40,171,127, 4,249,190, 65, 0, 0,139,139 /* 0x07a0 */ .byte 66,240,112,121, 0, 16, 16,122,120,187,242,126, 46,155,191,124
/* 0x07b0 */ .byte 46, 64, 74, 85,120, 83,138,127, 40, 64, 0,120, 32, 0, 74,121 /* 0x07b0 */ .byte 120,171,183,126, 3, 0, 16, 58,104, 6, 86, 59,120,195, 21,127
/* 0x07c0 */ .byte 1, 0,107, 57, 0, 0, 48,162,254,170, 23, 84,214,137,247,126 /* 0x07c0 */ .byte 100, 2, 0, 72, 64,232,174,127, 16,252,190, 65, 0, 0,174,136
/* 0x07d0 */ .byte 60, 8,255, 87, 64,184,138,127, 32, 0,252,122, 32, 0,156, 64 /* 0x07d0 */ .byte 40, 64,145,120, 80,112,158,124,240, 0, 1,249, 21, 0, 0, 72
/* 0x07e0 */ .byte 0, 8, 17, 32,112, 46, 0,124, 20,138, 32,126, 0, 0, 48,178 /* 0x07e0 */ .byte 76, 90,114,101, 97,100, 32, 64, 37,120, 32, 32, 37,120, 10, 0
/* 0x07f0 */ .byte 180, 7,255,127,120,227,128,127, 40, 0, 0, 72,126,217, 60, 86 /* 0x07f0 */ .byte 166, 2,104,124, 1, 0, 0, 72,240, 0, 1,233, 0, 0, 46,137
/* 0x0800 */ .byte 80,136, 60,126, 80, 0, 23,124, 80, 80, 87,125, 1, 0,255, 59 /* 0x0800 */ .byte 46, 64, 8, 85,120, 67, 41,125, 32, 0, 47,121, 1, 0,206, 57
/* 0x0810 */ .byte 0, 0, 48,178, 32, 0, 0,120, 32, 0, 74,121,180, 7,255,127 /* 0x0810 */ .byte 68,251,255, 75, 64,232,174,127,192,251,190, 65, 40, 64,167,120
/* 0x0820 */ .byte 116,255, 0, 66, 3, 0,140, 47, 48,120,111,126, 80,112,239,125 /* 0x0820 */ .byte 232, 0, 97,232, 0, 0,174,136, 80,112,158,124, 8, 1,225,248
/* 0x0830 */ .byte 20,250,143,127, 80, 2,157, 65, 3, 0,156, 47,120,227,159,127 /* 0x0830 */ .byte 1, 0, 0, 72, 0, 0, 14,137, 46, 64,233, 85,120, 75, 9,125
/* 0x0840 */ .byte 8, 0,157, 64, 3, 0,224, 59, 6, 0,192, 59, 50, 48,255, 87 /* 0x0840 */ .byte 32, 0, 47,121, 1, 0,206, 57, 8, 1,225,232, 60,251,255, 75
/* 0x0850 */ .byte 166, 3,201,127,180, 7,255,127,176, 1,255, 59,164, 15,253,123 /* 0x0850 */ .byte 7, 0,144, 47, 80,216,248,124, 32, 0,231,120, 38, 0, 0,126
/* 0x0860 */ .byte 1, 0,224, 59, 64,200,128,127,164, 15,241,123, 20,234, 49,126 /* 0x0860 */ .byte 254,239, 16, 86,174, 56,148,127,208, 0,112,125,164, 7,112,121
/* 0x0870 */ .byte 36, 0,157, 65, 64, 40,171,127, 52,248,190, 65, 0, 0,203,139 /* 0x0870 */ .byte 1, 0,251, 56, 11, 0, 16, 58, 32, 0,231,120,174,217,148,127
/* 0x0880 */ .byte 46, 64, 74, 85,120, 83,202,127, 40, 64, 0,120, 32, 0, 74,121 /* 0x0880 */ .byte 124,252,255, 75,126,217,168, 84, 80, 40, 8,125, 80, 56,230,124
/* 0x0890 */ .byte 1, 0,107, 57, 46,138,251,126,254,170, 30, 84,214,185,222,127 /* 0x0890 */ .byte 80,120, 38,125, 46,211, 31,125, 32, 0,252,120,120,187,232,126
/* 0x08a0 */ .byte 60, 8,255, 87, 64,240,138,127, 32, 0,208,123, 32, 0,156, 64 /* 0x08a0 */ .byte 32, 0, 47,121,120,195, 23,127,120,171,184,126,148, 0, 0, 72
/* 0x08b0 */ .byte 0, 8,215, 35,112, 46,222,127, 20,186,222,127, 46,139,219,127 /* 0x08b0 */ .byte 80,136,229,124, 64,200,135,127, 80,120, 69,127,126,217, 5, 85
/* 0x08c0 */ .byte 180, 7,255,127,120,131, 0,126, 40, 0, 0, 72, 80, 0, 30,124 /* 0x08c0 */ .byte 80, 64, 5,125, 46,227, 31,125, 32, 0,241,120, 32, 0, 79,123
/* 0x08d0 */ .byte 80, 80, 94,125,126,217,254, 86, 80,184,222,127, 1, 0,255, 59 /* 0x08d0 */ .byte 48, 0, 19, 57, 60, 0,157, 65, 64,232,174,127,252,250,190, 65
/* 0x08e0 */ .byte 46,139,219,127, 32, 0, 0,120, 32, 0, 74,121,180, 7,255,127 /* 0x08e0 */ .byte 0, 0,174,136,224, 0, 97,232, 80,112,158,124,240, 0, 1,249
/* 0x08f0 */ .byte 116,255, 0, 66,192,255,223, 59, 3, 0,158, 47,180, 7,215,127 /* 0x08f0 */ .byte 40, 64,241,120, 1, 0, 0, 72, 0, 0, 46,137, 46, 64, 90, 87
/* 0x0900 */ .byte 108, 1,157, 64, 13, 0,158, 47,254, 7,223, 87, 2, 0,240, 99 /* 0x0900 */ .byte 120,211, 41,125,240, 0, 1,233, 32, 0, 47,121, 1, 0,206, 57
/* 0x0910 */ .byte 112, 14,221,127, 32, 0, 17,122, 40, 0,157, 65,255,255,221, 59 /* 0x0910 */ .byte 46, 66,159,124,254,170, 37, 86,214, 33,165,124, 64, 40,143,127
/* 0x0920 */ .byte 48,240, 31,126,180, 7,221,127,176, 2,215, 35, 20,250,222,127 /* 0x0920 */ .byte 32, 0,188,120, 36, 0,156, 64, 0, 8,164, 32,112, 46,165,124
/* 0x0930 */ .byte 164, 15,222,123,254,255,222, 59, 20,242,219,127,116, 0, 0, 72 /* 0x0930 */ .byte 20, 34,165,124, 46, 67,191,124,120,187,232,126,120,171,183,126
/* 0x0940 */ .byte 250,255,221, 59, 32, 0,222,123, 1, 0,222, 59,166, 3,201,127 /* 0x0940 */ .byte 120, 67, 21,125,176, 0, 0, 72, 80,136,101,124, 64,200,131,127
/* 0x0950 */ .byte 64,200,128,127, 36, 0,157, 65, 64, 40,171,127, 80,247,190, 65 /* 0x0950 */ .byte 80,120,133,127,126,217,133, 84, 80, 32,165,124, 32, 0,113,120
/* 0x0960 */ .byte 0, 0,235,139, 46, 64, 74, 85,120, 83,234,127, 40, 64, 0,120 /* 0x0960 */ .byte 32, 0,143,123, 46, 67,191,124, 72, 0, 83, 59, 52, 0,157, 65
/* 0x0970 */ .byte 32, 0, 74,121, 1, 0,107, 57,126,248, 29, 84, 64,232,138,127 /* 0x0970 */ .byte 64,232,174,127,100,250,190, 65, 0, 0,174,136, 40, 64,113,120
/* 0x0980 */ .byte 60, 8, 63, 86, 32, 0,160,123, 32, 0,241,123, 20, 0,156, 65 /* 0x0980 */ .byte 216, 0, 97,232, 80,112,158,124, 1, 0, 0, 72, 0, 0, 46,137
/* 0x0990 */ .byte 80, 80, 93,125, 1, 0,255, 99, 32, 0, 74,121, 32, 0,241,123 /* 0x0990 */ .byte 46, 64,133, 87,120, 43, 41,125, 32, 0, 47,121, 1, 0,206, 57
/* 0x09a0 */ .byte 176,255, 0, 66, 72, 6,195, 59, 40, 32, 63,122, 4, 0,160, 59 /* 0x09a0 */ .byte 46,210,191,124,254,170, 40, 86,214, 41, 8,125, 64, 64,143,127
/* 0x09b0 */ .byte 255,255,189, 59, 32, 0,189,123, 1, 0,189, 59,166, 3,169,127 /* 0x09b0 */ .byte 32, 0, 28,121, 24, 0,156, 64, 0, 8, 5, 33,112, 46, 8,125
/* 0x09c0 */ .byte 1, 0,224, 58, 1, 0,224, 57, 64,200,128,127,164, 15,241,122 /* 0x09c0 */ .byte 20, 42, 8,125, 46,211, 31,125, 44, 0, 0, 72, 80,136,232,124
/* 0x09d0 */ .byte 20,138, 62,126, 36, 0,157, 65, 64, 40,171,127,208,246,190, 65 /* 0x09d0 */ .byte 80,120, 40,125,126,217,168, 84, 80, 40, 8,125, 46,211, 31,125
/* 0x09e0 */ .byte 0, 0,171,139, 46, 64, 74, 85,120, 83,170,127, 40, 64, 0,120 /* 0x09e0 */ .byte 120,187,232,126, 32, 0, 47,121,120,147, 87,126, 32, 0,252,120
/* 0x09f0 */ .byte 32, 0, 74,121, 1, 0,107, 57, 0, 0, 17,162,254,170, 29, 84 /* 0x09f0 */ .byte 120, 67, 18,125, 7, 0,144, 47,120,195, 8,127,108, 10, 86, 59
/* 0x0a00 */ .byte 214,129,189,127, 60, 8,247, 86, 64,232,138,127, 32, 0,174,123 /* 0x0a00 */ .byte 38, 0, 0,126,254,239, 16, 86,120,187,248,126,208, 0,112,125
/* 0x0a10 */ .byte 32, 0,156, 64, 0, 8, 16, 32,112, 46, 0,124, 20,130, 0,126 /* 0x0a10 */ .byte 66,240,112,121, 0, 16, 16,122,120,171,183,126, 11, 0, 16, 58
/* 0x0a20 */ .byte 0, 0, 17,178,180, 7,247,126,120,115,192,125, 48, 0, 0, 72 /* 0x0a20 */ .byte 120, 67, 21,125, 64,200,156,127, 52, 0,157, 65, 64,232,174,127
/* 0x0a30 */ .byte 80, 0, 29,124, 80, 80, 93,125,126,217, 29, 86, 80,128, 29,126 /* 0x0a30 */ .byte 168,249,190, 65, 0, 0,174,136,208, 0, 97,232, 80,112,158,124
/* 0x0a40 */ .byte 1, 0,247, 58,120,251,255,125, 0, 0, 17,178, 32, 0, 0,120 /* 0x0a40 */ .byte 1, 0, 0, 72, 0, 0, 14,137, 46, 64,233, 85,120, 75, 9,125
/* 0x0a50 */ .byte 32, 0, 74,121,180, 7,247,126, 32, 0,255,123, 60, 8,239, 85 /* 0x0a50 */ .byte 40, 64,156,123, 32, 0, 47,121, 1, 0,206, 57, 0, 0,154,160
/* 0x0a60 */ .byte 180, 7,239,125,100,255, 0, 66, 8, 0, 0, 72, 32, 0,223,123 /* 0x0a60 */ .byte 254,170,133, 87,214, 33,165,124, 64, 40,143,127, 32, 0,177,120
/* 0x0a70 */ .byte 1, 0,255, 59, 33, 0,253,123,100, 0,130, 65, 7, 0,140, 57 /* 0x0a70 */ .byte 52, 0,156, 64,112, 0, 65,129, 0, 8,164, 32, 56, 24, 92, 85
/* 0x0a80 */ .byte 180, 7,140,125, 64,208,157,127, 2, 0,252, 59,180, 7,255,127 /* 0x0a80 */ .byte 180, 7,156,127,112, 46,165,124, 2, 0,156, 59, 20, 34,165,124
/* 0x0a90 */ .byte 28,246,189, 65,255,255,255, 59, 32, 0,255,123, 1, 0,255, 59 /* 0x0a90 */ .byte 164, 15,156,123, 0, 0,186,176, 0, 0,224, 56, 20,226, 90,127
/* 0x0aa0 */ .byte 166, 3,233,127, 80,208,253,127, 32, 0,255,123,174,248,199,127 /* 0x0aa0 */ .byte 156, 0, 0, 72, 80,224,229,124, 64,200,135,127, 80,120, 37,126
/* 0x0ab0 */ .byte 1, 0,250, 59, 32, 0,252,123,174,209,199,127, 24, 0, 64, 66 /* 0x0ab0 */ .byte 126,217,133, 84, 80, 32,165,124, 32, 0,252,120, 32, 0, 47,122
/* 0x0ac0 */ .byte 64, 64,159,127,120,227,154,127,220,255,156, 65, 8, 0, 0, 72 /* 0x0ac0 */ .byte 0, 0,186,176, 52, 0,157, 65, 64,232,174,127, 12,249,190, 65
/* 0x0ad0 */ .byte 0, 0,128, 57,120,227,154,127, 40,246,255, 75,255, 0, 64, 61 /* 0x0ad0 */ .byte 0, 0,174,136,200, 0, 97,232, 80,112,158,124, 40, 64,252,120
/* 0x0ae0 */ .byte 255,255, 74, 97, 64, 80,128,127, 16, 0,157, 65, 64, 40,171,127 /* 0x0ae0 */ .byte 1, 0, 0, 72, 0, 0, 46,137, 46, 64, 37, 86,120, 43, 41,125
/* 0x0af0 */ .byte 188,245,190, 65, 1, 0,107, 57, 80, 88,132,124, 0, 0,134,144 /* 0x0af0 */ .byte 32, 0, 47,121, 1, 0,206, 57, 2, 0,186,160,254,170,135, 87
/* 0x0b00 */ .byte 0, 0, 73,147, 0, 0, 96, 56, 0, 0, 0, 72,112,255,193,249 /* 0x0b00 */ .byte 214, 41,231,124, 64, 56,143,127, 32, 0,241,120, 56, 0,156, 64
/* 0x0b10 */ .byte 120,255,225,249,128,255, 1,250,136,255, 33,250,144,255, 65,250 /* 0x0b10 */ .byte 112, 0, 33,129, 0, 8,229, 32, 56, 24, 60, 85,180, 7,156,127
/* 0x0b20 */ .byte 152,255, 97,250,160,255,129,250,168,255,161,250,176,255,193,250 /* 0x0b20 */ .byte 112, 46,231,124,130, 0,156, 59, 20, 42,231,124,164, 15,156,123
/* 0x0b30 */ .byte 184,255,225,250,192,255, 1,251,200,255, 33,251,208,255, 65,251 /* 0x0b30 */ .byte 2, 0,250,176, 20,226, 90,127, 8, 0,224, 56, 3, 0, 0, 56
/* 0x0b40 */ .byte 216,255, 97,251,224,255,129,251,232,255,161,251,240,255,193,251 /* 0x0b40 */ .byte 44, 0, 0, 72, 80,224, 7,125, 80,120, 39,125,126,217,167, 84
/* 0x0b50 */ .byte 248,255,225,251, 16, 0, 1,248, 32, 0,128, 78,112,255,193,233 /* 0x0b50 */ .byte 80, 40,231,124, 2, 0,250,176, 32, 0, 47,121, 4, 2, 90, 59
/* 0x0b60 */ .byte 120,255,225,233,128,255, 1,234,136,255, 33,234,144,255, 65,234 /* 0x0b60 */ .byte 32, 0, 17,121, 16, 0,224, 56, 8, 0, 0, 56,120, 3, 6,124
/* 0x0b70 */ .byte 152,255, 97,234,160,255,129,234,168,255,161,234,176,255,193,234 /* 0x0b70 */ .byte 1, 0,128, 59, 64,200,145,127,164, 15,140,123, 20, 98,154,125
/* 0x0b80 */ .byte 184,255,225,234,192,255, 1,235,200,255, 33,235,208,255, 65,235 /* 0x0b80 */ .byte 84, 0,157, 65, 64,232,174,127, 80,248,190, 65, 0, 0,174,136
/* 0x0b90 */ .byte 216,255, 97,235,224,255,129,235, 16, 0, 1,232,232,255,161,235 /* 0x0b90 */ .byte 168, 0, 97,232, 80,112,158,124,248, 0, 1,248, 0, 1,193,248
/* 0x0ba0 */ .byte 166, 3, 8,124,240,255,193,235,248,255,225,235, 32, 0,128, 78 /* 0x0ba0 */ .byte 8, 1,225,248,240, 0,129,249, 1, 0, 0, 72, 0, 0,174,136
/* 0x0bb0 */ .byte 0, 0, 0, 0, 0, 0, 0, 1 /* 0x0bb0 */ .byte 46, 64,233, 85,120, 75,169,124,240, 0,129,233, 8, 1,225,232
/* 0x0bc0 */ .byte 0, 1,193,232,248, 0, 1,232, 40, 64, 49,122, 32, 0, 47,121
/* 0x0bd0 */ .byte 1, 0,206, 57, 0, 0,140,160,254,170, 37, 86,214, 33,165,124
/* 0x0be0 */ .byte 60, 8,156, 87, 64, 40,143,127, 32, 0,163,120, 32, 0,156, 64
/* 0x0bf0 */ .byte 0, 8,164, 32,112, 46,165,124, 20, 34,165,124, 0, 0,172,176
/* 0x0c00 */ .byte 180, 7,156,127,120, 27,113,124, 40, 0, 0, 72, 80,136, 5,125
/* 0x0c10 */ .byte 80,120, 37,125,126,217,133, 84, 80, 32,165,124, 1, 0,156, 59
/* 0x0c20 */ .byte 0, 0,172,176, 32, 0, 17,121, 32, 0, 47,121,180, 7,156,127
/* 0x0c30 */ .byte 255,255,198, 56,181, 7,198,124, 60,255,130, 64, 1, 0,192, 56
/* 0x0c40 */ .byte 3, 0,144, 47, 48, 0,192,124, 80, 56,224,124, 20,226,135,127
/* 0x0c50 */ .byte 172, 2,157, 65, 3, 0,156, 47,120,227,154,127, 8, 0,157, 64
/* 0x0c60 */ .byte 3, 0, 64, 59, 50, 48, 90, 87,180, 7, 90,127,176, 1, 90, 59
/* 0x0c70 */ .byte 164, 15, 90,123, 6, 0,192, 56, 1, 0, 0, 59, 64,200,145,127
/* 0x0c80 */ .byte 164, 15, 0,123, 20,210, 0,124, 68, 0,157, 65, 64,232,174,127
/* 0x0c90 */ .byte 72,247,190, 65, 0, 0,174,136,176, 0, 97,232, 80,112,158,124
/* 0x0ca0 */ .byte 248, 0, 1,248, 0, 1,193,248, 1, 0, 0, 72, 0, 0,238,136
/* 0x0cb0 */ .byte 46, 64,233, 85,120, 75,233,124, 0, 1,193,232,248, 0, 1,232
/* 0x0cc0 */ .byte 40, 64, 49,122, 32, 0, 47,121, 1, 0,206, 57, 46, 2,255,124
/* 0x0cd0 */ .byte 254,170, 37, 86,214, 57,165,124, 60, 8, 24, 87, 64, 40,143,127
/* 0x0ce0 */ .byte 32, 0,164,120, 32, 0,156, 64, 0, 8,167, 32,112, 46,165,124
/* 0x0cf0 */ .byte 20, 58,165,124, 46, 3,191,124,180, 7, 24,127,120, 35,145,124
/* 0x0d00 */ .byte 40, 0, 0, 72, 80,136, 5,125, 80,120, 37,125,126,217,229, 84
/* 0x0d10 */ .byte 80, 56,165,124, 1, 0, 24, 59, 46, 3,191,124, 32, 0, 17,121
/* 0x0d20 */ .byte 32, 0, 47,121,180, 7, 24,127,255,255,198, 56, 33, 0,198,120
/* 0x0d30 */ .byte 76,255,130, 64,192,255,248, 56, 3, 0,135, 47,180, 7,250,124
/* 0x0d40 */ .byte 164, 1,157, 64, 13, 0,135, 47,254, 7,248, 84, 2, 0, 5, 99
/* 0x0d50 */ .byte 112, 14,230,124, 32, 0,184,120, 40, 0,157, 65,255,255, 6, 59
/* 0x0d60 */ .byte 180, 7, 6,127,176, 2, 90, 35, 48,192,184,124, 20,194, 90,127
/* 0x0d70 */ .byte 164, 15, 90,123,254,255, 90, 59, 20,210, 95,127,132, 0, 0, 72
/* 0x0d80 */ .byte 251,255, 70, 59,180, 7, 90,127, 64,200,145,127, 52, 0,157, 65
/* 0x0d90 */ .byte 64,232,174,127, 68,246,190, 65, 0, 0,174,136,192, 0, 97,232
/* 0x0da0 */ .byte 80,112,158,124, 1, 0, 0, 72, 0, 0,238,136, 46, 64,233, 85
/* 0x0db0 */ .byte 120, 75,233,124, 40, 64, 49,122, 32, 0, 47,121, 1, 0,206, 57
/* 0x0dc0 */ .byte 126,248, 39, 86, 64, 56,143,127, 60, 8, 6, 87, 32, 0,241,120
/* 0x0dd0 */ .byte 32, 0,216,120, 20, 0,156, 65, 80,120, 39,125, 1, 0,216, 96
/* 0x0de0 */ .byte 32, 0, 47,121, 32, 0, 24,123,255,255, 90, 59,181, 7, 90,127
/* 0x0df0 */ .byte 152,255,130, 64, 72, 6, 86, 59, 40, 32, 24,123, 4, 0,192, 56
/* 0x0e00 */ .byte 1, 0,224, 56, 1, 0, 0, 56, 64,200,145,127,164, 15,236,120
/* 0x0e10 */ .byte 20, 98,154,125, 84, 0,157, 65, 64,232,174,127,188,245,190, 65
/* 0x0e20 */ .byte 0, 0,174,136,184, 0, 97,232, 80,112,158,124,248, 0, 1,248
/* 0x0e30 */ .byte 0, 1,193,248, 8, 1,225,248,240, 0,129,249, 1, 0, 0, 72
/* 0x0e40 */ .byte 0, 0,174,136, 46, 64,233, 85,120, 75,169,124,240, 0,129,233
/* 0x0e50 */ .byte 8, 1,225,232, 0, 1,193,232,248, 0, 1,232, 40, 64, 49,122
/* 0x0e60 */ .byte 32, 0, 47,121, 1, 0,206, 57, 0, 0,140,160,254,170, 37, 86
/* 0x0e70 */ .byte 214, 33,165,124, 60, 8,231, 84, 64, 40,143,127, 32, 0,163,120
/* 0x0e80 */ .byte 32, 0,156, 64, 0, 8,164, 32,112, 46,165,124, 20, 34,165,124
/* 0x0e90 */ .byte 0, 0,172,176,180, 7,231,124,120, 27,113,124, 48, 0, 0, 72
/* 0x0ea0 */ .byte 80,136, 5,125, 80,120, 37,125,126,217,133, 84, 80, 32,165,124
/* 0x0eb0 */ .byte 1, 0,231, 56,120,195, 24,124, 0, 0,172,176, 32, 0, 17,121
/* 0x0ec0 */ .byte 32, 0, 47,121,180, 7,231,124, 32, 0, 24,123,255,255,198, 56
/* 0x0ed0 */ .byte 181, 7,198,124, 60, 8, 0, 84,180, 7, 0,124, 44,255,130, 64
/* 0x0ee0 */ .byte 8, 0, 0, 72, 32, 0,248,120, 1, 0, 24, 59, 33, 0, 24,123
/* 0x0ef0 */ .byte 132, 0,130, 65, 7, 0,112, 57,180, 7,112,125, 64,216,152,127
/* 0x0f00 */ .byte 2, 0,156, 59,180, 7,156,127, 36, 0,189, 64, 21, 0, 0, 72
/* 0x0f10 */ .byte 76, 90, 37,100, 32, 68, 65, 84, 69, 82, 82, 10, 0, 0, 0, 0
/* 0x0f20 */ .byte 166, 2,104,124, 2, 0,128, 56,172,244,255, 75,255,255,156, 59
/* 0x0f30 */ .byte 32, 0,156,123, 1, 0,156, 59,166, 3,137,127, 80,216,248,124
/* 0x0f40 */ .byte 32, 0,231,120,174, 56,148,127, 1, 0,219, 56, 32, 0,199,120
/* 0x0f50 */ .byte 174,217,148,127,168,245, 64, 66,248, 1, 65,233,120, 59,251,124
/* 0x0f60 */ .byte 64, 80,134,127,216,255,156, 65,148,245,255, 75, 0, 0, 0, 58
/* 0x0f70 */ .byte 140,245,255, 75,255, 0, 32, 61,255,255, 41, 97, 64, 72,145,127
/* 0x0f80 */ .byte 52, 0,157, 65, 64,232,174,127, 80,244,190, 65, 0, 0,174,136
/* 0x0f90 */ .byte 80,112,158,124, 21, 0, 0, 72, 76, 90,114,101, 97,100, 32, 64
/* 0x0fa0 */ .byte 37,120, 32, 32, 37,120, 10, 0,166, 2,104,124, 1, 0,206, 57
/* 0x0fb0 */ .byte 1, 0, 0, 72,232, 1, 65,233, 0, 2, 33,233, 80,112,222,127
/* 0x0fc0 */ .byte 0, 0,202,147, 0, 0,105,147, 1, 0,128, 56, 17, 0, 0, 72
/* 0x0fd0 */ .byte 76, 90, 37,100, 32, 79, 75, 10, 0, 0, 0, 0,166, 2,104,124
/* 0x0fe0 */ .byte 1, 0, 0, 72, 0, 0, 96, 56,160, 1, 33, 56, 0, 0, 0, 72
/* 0x0ff0 */ .byte 112,255,193,249,120,255,225,249,128,255, 1,250,136,255, 33,250
/* 0x1000 */ .byte 144,255, 65,250,152,255, 97,250,160,255,129,250,168,255,161,250
/* 0x1010 */ .byte 176,255,193,250,184,255,225,250,192,255, 1,251,200,255, 33,251
/* 0x1020 */ .byte 208,255, 65,251,216,255, 97,251,224,255,129,251,232,255,161,251
/* 0x1030 */ .byte 240,255,193,251,248,255,225,251, 16, 0, 1,248, 32, 0,128, 78
/* 0x1040 */ .byte 112,255,193,233,120,255,225,233,128,255, 1,234,136,255, 33,234
/* 0x1050 */ .byte 144,255, 65,234,152,255, 97,234,160,255,129,234,168,255,161,234
/* 0x1060 */ .byte 176,255,193,234,184,255,225,234,192,255, 1,235,200,255, 33,235
/* 0x1070 */ .byte 208,255, 65,235,216,255, 97,235,224,255,129,235, 16, 0, 1,232
/* 0x1080 */ .byte 232,255,161,235,166, 3, 8,124,240,255,193,235,248,255,225,235
/* 0x1090 */ .byte 32, 0,128, 78, 0, 0, 0, 0, 0, 0, 0, 1
+16 -25
View File
@@ -40,9 +40,8 @@
add lsrc,lsrc,src // input eof add lsrc,lsrc,src // input eof
lis hibit,0x8000 // 0x80000000 for detecting next bit lis hibit,0x8000 // 0x80000000 for detecting next bit
rldicr hibit,hibit,32,31 // upper bits sldi hibit,hibit,32 // upper bits
lis bits,0x8000 // prepare for first load mr bits,hibit // prepare for first load
rldicr bits,bits,32,31 // upper bits
addi src,src,-1 // prepare for 'lbzu' addi src,src,-1 // prepare for 'lbzu'
addi dst,dst,-1 // prepare for 'stbu' addi dst,dst,-1 // prepare for 'stbu'
li disp,-1 // initial displacement li disp,-1 // initial displacement
@@ -67,21 +66,20 @@
/* rotate next bit into bottom bit of reg; set cr0 based on entire result reg */ /* rotate next bit into bottom bit of reg; set cr0 based on entire result reg */
#define getnextb(reg) call get1; adde. reg,reg,reg #define getnextb(reg) call get1; adde. reg,reg,reg
get2:
adde bits,bits,bits // shift in CArry from 'addc' below
sldi bits,bits,32-1 // left justify 33-bit result
get1: get1:
cmpld bits,hibit // cr0 for jnextb cmpld bits,hibit // cr0 for jnextb
addc bits,bits,bits // CArry for getnextb addc bits,bits,bits // CArry for getnextb
bnelr+ cr0 // return if reload not needed; likely 31/32 bnelr+ cr0 // return if reload not needed; likely 31/32
/* CArry has been set from adding 0x80000000 to itself; preserve for 'adde' */
li t2,0
adde t2,t2,t2 // CArry was set from adding 0x80000000 to itself
rldicr t2,t2,32,31
// fetch 4 bytes unaligned and LITTLE ENDIAN // fetch 4 bytes unaligned and LITTLE ENDIAN
#if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */ #if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */
lbz bits,1(src) // lo8 lbz bits,1(src) // lo8
lbz t0,2(src); rlwimi bits,t0, 8,16,23 lbz t1,2(src); rlwimi bits,t1, 8,16,23
lbz t0,3(src); rlwimi bits,t0,16, 8,15 lbz t1,3(src); rlwimi bits,t1,16, 8,15
lbzu t0,4(src); rlwimi bits,t0,24, 0, 7 lbzu t1,4(src); rlwimi bits,t1,24, 0, 7
#else /*}{ pray for no unalignment trap or slowdown */ #else /*}{ pray for no unalignment trap or slowdown */
li bits,1 // compensate for 'lbzu' li bits,1 // compensate for 'lbzu'
#if BIG_ENDIAN //{ #if BIG_ENDIAN //{
@@ -91,12 +89,7 @@ get1:
#endif //} #endif //}
addi src,src,4 addi src,src,4
#endif /*}*/ #endif /*}*/
b get2
rldicr bits,bits,32,31 // upper bits
cmpld bits,hibit // cr0 for jnextb
addc bits,bits,bits // CArry for getnextb; set lo bit from CarryIn
add bits,bits,t2
ret
lit_n2b: lit_n2b:
#define tmp len #define tmp len
@@ -113,12 +106,10 @@ offmore_n2b:
addic. off,off,-3 // CArry set [and ignored], but no 'addi.' addic. off,off,-3 // CArry set [and ignored], but no 'addi.'
li len,0 li len,0
blt- offprev_n2b blt- offprev_n2b
rlwinm off,off,8,0,31-8 // off<<=8; lbzu t1,1(src)
lbzu t0,1(src) slwi off,off,8 // off<<=8;
nor. disp,off,t0 // disp = -(1+ (off|t0)); nor disp,off,t1 // disp = -(1+ (off|t1));
li t2,-1 slwi. t1,disp,0 // t1= 0xffffffff & disp;
rldicr t2,t2,32,31 // 0xffffffff00000000 mask
cmpd disp,t2
beq- eof_nrv beq- eof_nrv
offprev_n2b: // In: 0==len offprev_n2b: // In: 0==len
@@ -130,7 +121,7 @@ lenmore_n2b:
getnextb(len) getnextb(len)
jnextb0n lenmore_n2b jnextb0n lenmore_n2b
gotlen_n2b: gotlen_n2b:
subfic t0,disp,(~0)+(-0xd00) // want CArry only subfic t1,disp,(~0)+(-0xd00) // want CArry only
adde len,len,off // len += off + (disp < -0xd00); adde len,len,off // len += off + (disp < -0xd00);
copy: copy:
+5 -5
View File
@@ -73,9 +73,9 @@ get32d:
// fetch 4 bytes unaligned and LITTLE ENDIAN // fetch 4 bytes unaligned and LITTLE ENDIAN
#if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */ #if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */
lbz bits,1(src) // lo8 lbz bits,1(src) // lo8
lbz t0,2(src); rlwimi bits,t0, 8,16,23 lbz r0,2(src); rlwimi bits,r0, 8,16,23
lbz t0,3(src); rlwimi bits,t0,16, 8,15 lbz r0,3(src); rlwimi bits,r0,16, 8,15
lbzu t0,4(src); rlwimi bits,t0,24, 0, 7 lbzu r0,4(src); rlwimi bits,r0,24, 0, 7
#else /*}{ pray for no unalignment trap or slowdown */ #else /*}{ pray for no unalignment trap or slowdown */
li bits,1 // compensate for 'lbzu' li bits,1 // compensate for 'lbzu'
#if BIG_ENDIAN //{ #if BIG_ENDIAN //{
@@ -115,8 +115,8 @@ getoff_n2d:
addic. off,off,-3 // CArry set [and ignored], but no 'addi.' addic. off,off,-3 // CArry set [and ignored], but no 'addi.'
rlwinm off,off,8,0,31-8 // off<<=8; rlwinm off,off,8,0,31-8 // off<<=8;
blt- offprev_n2d blt- offprev_n2d
lbzu t0,1(src) lbzu r0,1(src)
nor. disp,off,t0 // disp = -(1+ (off|t0)); nor. disp,off,r0 // disp = -(1+ (off|r0));
srawi disp,disp,1 // shift off low bit (sets CArry) srawi disp,disp,1 // shift off low bit (sets CArry)
cmpdi disp,0 // test result of srawi instead of nor. cmpdi disp,0 // test result of srawi instead of nor.
beq- eof_nrv // beq- eof_nrv //
+25 -34
View File
@@ -40,9 +40,8 @@
add lsrc,lsrc,src // input eof add lsrc,lsrc,src // input eof
lis hibit,0x8000 // 0x80000000 for detecting next bit lis hibit,0x8000 // 0x80000000 for detecting next bit
rldicr hibit,hibit,32,31 // upper bits sldi hibit,hibit,32 // upper bits
lis bits,0x8000 // prepare for first load mr bits,hibit // prepare for first load
rldicr bits,bits,32,31 // upper bits
addi src,src,-1 // prepare for 'lbzu' addi src,src,-1 // prepare for 'lbzu'
addi dst,dst,-1 // prepare for 'stbu' addi dst,dst,-1 // prepare for 'stbu'
li disp,-1 // initial displacement li disp,-1 // initial displacement
@@ -60,22 +59,22 @@
beql-: branch and link [call subroutine] if cr0 is eq, unlikely beql-: branch and link [call subroutine] if cr0 is eq, unlikely
*/ */
#define jnextb0y cmpld bits,hibit; add bits,bits,bits; beql- get32; blt+ #define jnextb0y cmpld bits,hibit; addc bits,bits,bits; beql- get32; blt+
#define jnextb0n cmpld bits,hibit; add bits,bits,bits; beql- get32; blt- #define jnextb0n cmpld bits,hibit; addc bits,bits,bits; beql- get32; blt-
#define jnextb1y cmpld bits,hibit; add bits,bits,bits; beql- get32; bgt+ #define jnextb1y cmpld bits,hibit; addc bits,bits,bits; beql- get32; bgt+
#define jnextb1n cmpld bits,hibit; add bits,bits,bits; beql- get32; bgt- #define jnextb1n cmpld bits,hibit; addc bits,bits,bits; beql- get32; bgt-
#undef getnextb #undef getnextb
/* rotate next bit into bottom bit of reg */ /* rotate next bit into bottom bit of reg */
#define getnextb(reg) addc. bits,bits,bits; beql- get32; adde reg,reg,reg #define getnextb(reg) addc. bits,bits,bits; beql- get32; adde reg,reg,reg
get32: get32: // IN: CArry set
// fetch 4 bytes unaligned and LITTLE ENDIAN // fetch 4 bytes unaligned and LITTLE ENDIAN
#if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */ #if 0 /*{ clean; but 4 instr larger, and 3 cycles longer */
lbz bits,1(src) // lo8 lbz bits,1(src) // lo8
lbz t0,2(src); rlwimi bits,t0, 8,16,23 lbz r0,2(src); rlwimi bits,r0, 8,16,23
lbz t0,3(src); rlwimi bits,t0,16, 8,15 lbz r0,3(src); rlwimi bits,r0,16, 8,15
lbzu t0,4(src); rlwimi bits,t0,24, 0, 7 lbzu r0,4(src); rlwimi bits,r0,24, 0, 7
#else /*}{ pray for no unalignment trap or slowdown */ #else /*}{ pray for no unalignment trap or slowdown */
li bits,1 // compensate for 'lbzu' li bits,1 // compensate for 'lbzu'
#if BIG_ENDIAN //{ #if BIG_ENDIAN //{
@@ -86,12 +85,10 @@ get32:
addi src,src,4 addi src,src,4
#endif /*}*/ #endif /*}*/
rldicr bits,bits,32,31 // upper bits adde bits,bits,bits // shift in CArry
cmpld bits,hibit // cr0 for jnextb sldi bits,bits,32-1 // left justify 33-bit result of 'adde'
addc bits,bits,bits // CArry for getnextb cmpld bits,hibit // cr0 for jnextb
li t2,1 addc bits,bits,bits // CArry for getnextb
rldicr t2,t2,32,31
or bits,bits,t2 // the flag bit
ret ret
lit_n2e: lit_n2e:
@@ -111,18 +108,16 @@ getoff_n2e:
getnextb(off) getnextb(off)
jnextb0n off_n2e jnextb0n off_n2e
li len,0
addic. off,off,-3 // CArry set [and ignored], but no 'addi.' addic. off,off,-3 // CArry set [and ignored], but no 'addi.'
rlwinm off,off,8,0,31-8 // off<<=8; li len,0
li t2,-1 blt- offprev_n2e // (off < 3) ==> (2==off) ==> use previous
rldicr t2,t2,32,31 // 0xffffffff00000000 mask lbzu t1,1(src)
or off,off,t2 // simulate 32bits extended to 64 bits sldi off,off,32+8
blt- offprev_n2e sradi off,off,32 // net: off<<=8, and sign extend 32==>64
lbzu t0,1(src) nor. disp,off,t1 // disp = -(1+ (off|t1));
nor. disp,off,t0 // disp = -(1+ (off|t0)); sradi disp,disp,1 // shift off low bit (sets CArry; ignored)
srawi disp,disp,1 // shift off low bit (sets CArry; ignored)
beq- eof_nrv beq- eof_nrv
andi. t0,t0,1 // complement of low bit of unshifted disp andi. t1,t1,1 // complement of low bit of unshifted disp
beq+ lenlast_n2e // low bit was 1 beq+ lenlast_n2e // low bit was 1
b lenmore_n2e // low bit was 0 b lenmore_n2e // low bit was 0
@@ -140,9 +135,7 @@ len_n2e:
lenlast_n2e: lenlast_n2e:
getnextb(len) // 0,1,2,3 getnextb(len) // 0,1,2,3
gotlen_n2e: gotlen_n2e:
#define tmp off subfic t1,disp,(~0)+(-0x500) // want CArry only
subfic tmp,disp,(~0)+(-0x500) // want CArry only
#undef tmp
addi len,len,2 addi len,len,2
addze len,len // len += (disp < -0x500); addze len,len // len += (disp < -0x500);
@@ -150,10 +143,8 @@ gotlen_n2e:
add back,disp,dst // point back to match in dst add back,disp,dst // point back to match in dst
mtctr len mtctr len
short_n2e: short_n2e:
#define tmp len lbzu t1,1(back)
lbzu tmp,1(back) stbu t1,1(dst)
stbu tmp,1(dst)
#undef tmp
bdnz+ short_n2e bdnz+ short_n2e
bot_n2e: bot_n2e:
/* This "prefetch for store" is simple, small, and effective. Matches /* This "prefetch for store" is simple, small, and effective. Matches
+1 -1
View File
@@ -48,7 +48,7 @@
#define a7 10 #define a7 10
/* Scratch (temporary) registers; not saved by callee */ /* Scratch (temporary) registers; not saved by callee */
#define t0 2 //#define t0 0 /* BEWARE: OVERLAPS r0 */
#define t1 11 #define t1 11
#define t2 12 #define t2 12
#define t3 13 #define t3 13
+2 -2
View File
@@ -146,7 +146,7 @@ sz_b_info= 12
// Decompress the rest of this loader, and jump to it. // Decompress the rest of this loader, and jump to it.
unfold: unfold:
pop esi; lodsd; push %eax // O_BINFO pop esi; lodsd; // push %eax // O_BINFO
push esi; pop ebx // &{ b_info:{sz_unc, sz_cpr, 4{byte}}, compressed_data...} push esi; pop ebx // &{ b_info:{sz_unc, sz_cpr, 4{byte}}, compressed_data...}
mov ecx,[sz_cpr + ebx] mov ecx,[sz_cpr + ebx]
lea esi,[ -1+ sz_b_info + ecx + ebx] // &hi_byte folded original lea esi,[ -1+ sz_b_info + ecx + ebx] // &hi_byte folded original
@@ -177,7 +177,7 @@ unfold:
main: main:
pop ebp // &decompress pop ebp // &decompress
call unfold call unfold
.long O_BINFO .long 0 // O_BINFO
// compressed fold_elf86 follows // compressed fold_elf86 follows
/* vim:set ts=8 sw=8 et: */ /* vim:set ts=8 sw=8 et: */
+18 -18
View File
@@ -153,9 +153,9 @@ SYS_munmap= 73
SYS_mprotect= 74 SYS_mprotect= 74
main2: main2:
//teq r0,r0 // debugging teq r0,r0 // debugging
stwu r2,-4*(1+ 32-a0)(sp) # retaddr stwu r2,-4*(1+ 32-a0)(sp) # retaddr
stmw a0,4*1(sp) stmw r3,4*1(sp)
mflr f_unc # f_unc= &decompress mflr f_unc # f_unc= &decompress
lwz t_h, -4*1(f_unc) # "call main" at _start lwz t_h, -4*1(f_unc) # "call main" at _start
lwz l_unm,-4*1+ _start - decompress(f_unc) # 4+ offset(_start) lwz l_unm,-4*1+ _start - decompress(f_unc) # 4+ offset(_start)
@@ -200,15 +200,15 @@ movup2: # descending copy [base, movup2)
add f_unc,a1,f_unc # relocated decompress add f_unc,a1,f_unc # relocated decompress
add f_uini,f_uini,a0 add f_uini,f_uini,a0
lwz t0,-4*3+ _start - decompress(f_unc) # offset(b_info) lwz t2,-4*3+ _start - decompress(f_unc) # offset(b_info)
add r_cpr,a1,t0 # &b_info add r_cpr,a1,t2 # &b_info
add r_unc,a0,t0 # &b_info add r_unc,a0,t2 # &b_info
addi r_unc,r_unc,-sz_l_info -sz_p_info addi r_unc,r_unc,-sz_l_info -sz_p_info
// skip compressed Mach headers // skip compressed Mach headers
lwz t0,sz_cpr(r_cpr) lwz t2,sz_cpr(r_cpr)
addi r_cpr,r_cpr,sz_b_info addi r_cpr,r_cpr,sz_b_info
add r_cpr,r_cpr,t0 add r_cpr,r_cpr,t2
dy_uncpr: dy_uncpr:
mr s_cpr,r_cpr mr s_cpr,r_cpr
mr s_unc,r_unc mr s_unc,r_unc
@@ -242,16 +242,16 @@ dy_done:
dy_done1: # escape hatch dy_done1: # escape hatch
sc # munmap sc # munmap
li a0,~0 # failure li a0,~0 # failure
lmw t0,0(sp); addi sp,sp,4*(32-t0) lmw r2,4*1(sp); addi sp,sp,4*(32-r2)
mtlr t0 # &continuation in dyld mtlr t2 # &continuation in dyld
bctr # goto user_init_function bctr # goto user_init_function
dy_done2: dy_done2:
li t0,(dy_done2 - dy_done1)/4 li t2,(dy_done2 - dy_done1)/4
mflr a0; la a0,dy_done2 - dy_done1(a0) mflr a0; la a0,dy_done2 - dy_done1(a0)
mtctr t0 mtctr t2
dy_done3: dy_done3:
lwzu t0,-4(a0) lwzu t2,-4(a0)
stwu t0,-4(s_unc) stwu t2,-4(s_unc)
bdnz+ dy_done3 bdnz+ dy_done3
mtlr s_unc mtlr s_unc
@@ -262,11 +262,11 @@ dy_done3:
blr # goto relocated dy_done1 blr # goto relocated dy_done1
get4: get4:
lbz t0,3(a0) lbz t2,3(a0)
lbz t1,2(a0); rlwimi t0,t1, 8,16,23 lbz t1,2(a0); rlwimi t2,t1, 8,16,23
lbz t1,1(a0); rlwimi t0,t1,16, 8,15 lbz t1,1(a0); rlwimi t2,t1,16, 8,15
lbz t1,0(a0); rlwimi t0,t1,24, 0, 7 lbz t1,0(a0); rlwimi t2,t1,24, 0, 7
mr. a0,t0 # set condition codes mr. a0,t2 # set condition codes
blr blr
unfilter: unfilter:
+12 -10
View File
@@ -28,6 +28,7 @@
#include "arch/powerpc/32/macros.S" #include "arch/powerpc/32/macros.S"
#include "arch/powerpc/32/ppc_regs.h" #include "arch/powerpc/32/ppc_regs.h"
LINKAREA= 6*4
section PPC32BXX section PPC32BXX
0: .int 9f - 0b 0: .int 9f - 0b
@@ -114,25 +115,25 @@ sz_b_info= 12
/* Decompress the rest of this loader, and jump to it. */ /* Decompress the rest of this loader, and jump to it. */
unfold: unfold:
mflr t0 # -2*4+ &{ b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} mflr t2 # -(L105-L100)+ &{ b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...}
# lwz t1,(t0) # O_BINFO # lwz t1,(t2) # O_BINFO
# stwu t1,-4(sp) # stwu t1,-4(sp)
lwz lsrc,2*4+sz_cpr(t0); mtctr lsrc # length to copy (and decompress) lwz lsrc,L105-L100+sz_cpr(t2); mtctr lsrc # length to copy (and decompress)
lwz ldst,2*4+sz_unc(t0) lwz ldst,L105-L100+sz_unc(t2)
lbz meth,2*4+b_method(t0) lbz meth,L105-L100+b_method(t2)
add dst,lsrc,t0; addi dst,dst,4+sz_b_info add dst,lsrc,t2; addi dst,dst,4+sz_b_info
add src,ldst,t0; addi src,src,GAP+64 # defend against prefetch and overlap add src,ldst,t2; addi src,src,GAP+64 # defend against prefetch and overlap
movup: # descending copy moves folded_loader to higher address movup: # descending copy moves folded_loader to higher address
lbzu r0,-1(dst) lbzu r0,-1(dst)
stbu r0,-1(src) stbu r0,-1(src)
bdnz+ movup # typical count is about 0x4cb(1227) bytes bdnz+ movup # typical count is about 0x4cb(1227) bytes
mtctr r31 # &decompress mtctr r31 # &decompress
addi dst,t0,GAP # &unfolded result addi dst,t2,GAP # &unfolded result
stw ldst,-4(sp) # LZMA needs for EOF stw ldst,-4(sp) # LZMA needs for EOF
la ldst,-4(sp) # &sz_result la ldst,-4(sp) # &sz_result
la sp,-6*4(sp) // (sp,cr,pc, xx,yy,zz) save area per calling convention la sp,-LINKAREA(sp) // (sp,cr,pc, xx,yy,zz) save area per calling convention
bctr # call decompress: branch to counter register, return to link register bctr # call decompress: branch to counter register, return to link register
main: main:
@@ -141,7 +142,8 @@ main:
call unfold call unfold
L100: GAP= 128 # > farthest_prefetch; must match ../p_mach.cpp L100: GAP= 128 # > farthest_prefetch; must match ../p_mach.cpp
b GAP+L100 # 'isync' has trouble on Macintosh G4? b GAP+L100 # 'isync' has trouble on Macintosh G4?
.long O_BINFO .long 0 // O_BINFO
L105:
/* { b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} */ /* { b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} */
/* vim:set ts=8 sw=8 et: */ /* vim:set ts=8 sw=8 et: */
+4 -4
View File
@@ -81,11 +81,11 @@ L100:
call upx_main # Out: a0= &Mach_ppc_thread_state of dyld call upx_main # Out: a0= &Mach_ppc_thread_state of dyld
movr sp,r29 # restore stack pointer movr sp,r29 # restore stack pointer
lwz t0, srr0(a0); mtctr t0 # entry address lwz r0, srr0(a0); mtctr r0 # entry address
/* Next 3 lines probably are not needed, but ... */ /* Next 3 lines probably are not needed, but ... */
lwz t0, reg_cr(a0); mtcr t0 # condition code lwz r0, reg_cr(a0); mtcr r0 # condition code
lwz t0,reg_xer(a0); mtxer t0 # extended error reg (CArry, etc.) lwz r0,reg_xer(a0); mtxer r0 # extended error reg (CArry, etc.)
lwz t0, reg_lr(a0); mtlr t0 # link register lwz r0, reg_lr(a0); mtlr r0 # link register
lmw 4,4*4+reg0(3) # reg 4 thru 31 lmw 4,4*4+reg0(3) # reg 4 thru 31
lwz 0,0*4+reg0(3) lwz 0,0*4+reg0(3)
+52 -28
View File
@@ -31,6 +31,7 @@
#include "arch/powerpc/32/macros.S" #include "arch/powerpc/32/macros.S"
#include "arch/powerpc/32/ppc_regs.h" #include "arch/powerpc/32/ppc_regs.h"
SZ_FRAME= (2 + 2)*4 // (sp,LR, 2 slots) 0 mod 16
sz_b_info= 12 sz_b_info= 12
sz_unc= 0 sz_unc= 0
@@ -147,17 +148,18 @@ die:
li 0,__NR_exit; sc li 0,__NR_exit; sc
zfind: zfind:
lwz t0,0(a0); addi a0,a0,4 lwz r0,0(a0); addi a0,a0,4
cmpi cr7,t0,0; bne+ cr7,zfind cmpi cr7,r0,0; bne+ cr7,zfind
ret ret
/* Decompress the rest of this loader, and jump to it. */ /* Decompress the rest of this loader, and jump to it. */
unfold: unfold:
mflr r30 // -4+ &{ b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} mflr r30 // LrUNF
lwz r26,0(r30) // O_BINFO lwz r24,-2*4(r31) // sz_pack2
sz_obinfo= 4 lwz r26,LOBINFO - LrUNF(r30) // O_BINFO
lwz r23,LLENU - LrUNF(r30)
la a0,32*4(sp) la a0,SZ_FRAME+32*4(sp)
call zfind // a0= envp call zfind // a0= envp
call zfind // a0= &Elf32_auxv call zfind // a0= &Elf32_auxv
mr r28,a0 // save for folded code mr r28,a0 // save for folded code
@@ -169,10 +171,10 @@ a_type= 0
a_val= 4 a_val= 4
sz_auxv= 2*4 sz_auxv= 2*4
1: 1:
lwz t0,a_type(a0) lwz r0,a_type(a0)
lwz a1,a_val(a0); addi a0,a0,sz_auxv lwz a1,a_val(a0); addi a0,a0,sz_auxv
cmpi cr0,t0,AT_PAGESZ; beq- 2f cmpi cr0,r0,AT_PAGESZ; beq- 2f
cmpi cr0,t0,AT_NULL; bne+ 1b cmpi cr0,r0,AT_NULL; bne+ 1b
li a1,PAGE_SIZE // not found; use default li a1,PAGE_SIZE // not found; use default
2: 2:
mr r27,a1 // save for folded code mr r27,a1 // save for folded code
@@ -181,27 +183,40 @@ sz_auxv= 2*4
li a4,-1 // fd; cater to *BSD for MAP_ANON li a4,-1 // fd; cater to *BSD for MAP_ANON
li a3,MAP_PRIVATE | MAP_ANONYMOUS li a3,MAP_PRIVATE | MAP_ANONYMOUS
li a2,PROT_READ | PROT_WRITE | PROT_EXEC // 'fold' will execute here li a2,PROT_READ | PROT_WRITE | PROT_EXEC // 'fold' will execute here
lwz a0,sz_obinfo + sz_cpr(r30) // sizeof(folded_loader) lwz a1,LLENM - LrUNF(r30)
addi a0,a0,sz_b_info lwz a0,LADRM - LrUNF(r30)
addi t0,a1,-1 // ~page_mask
add a0,a0,r30 // beyond folded_loader
add a0,a0,t0 // + page_size -1
and t0,t0,a0 // fragment above page boundary
sub a0,a0,t0 // next page boundary after folded code
li r0,__NR_mmap li r0,__NR_mmap
mr t4,a0 // save address being allocated mr t4,a0 // save address being allocated
sc sc
cmpl cr0,t4,a0; bne msg_SELinux cmpl cr0,t4,a0; bne msg_SELinux
lwz r0,LLENM - LrUNF(r30)
li r22,0 // slide= 0
cmpl cr0,r0,r27; ble L80 // only 1 page; no move required
mtctr r31 addi r24,r24,2*4
lwz r0,sz_obinfo + sz_unc(r30) sub r24,r31,r24 // ADRU
lbz meth,sz_obinfo + b_method(r30) sub r22,a0,r24 // (ADRM - ADRU) == relocation amount
la ldst,31*4(sp) // &slot on stack add r31,r31,r22 // update &decompress
stw r0,31*4(sp) // lzma uses for EOF add r25,r25,r22 // update ADRX
mr dst,a0 add r24,r24,r22 // update ADRU
mtlr a0 // &continuation at unfolded code addi r0,r0,7 // roundup (8, )
lwz lsrc,sz_obinfo + sz_cpr(r30) addi a1,a1,-4 // prepare for lwu
addi src,r30,sz_obinfo + sz_b_info srwi r0,r0,3 // number of 8-byte chunks
addi a0,a0,-4 // prepare for stwu
mtctr r0
0:
lwz t1,4(a1); lwzu t2,2*4(a1)
stw t1,4(a0); stwu t2,2*4(a0); bdnz 0b
L80:
mtctr r31 // &decompress
lwz r0,sz_unc + LBINFO - LrUNF(r30)
lbz meth,b_method + LBINFO - LrUNF(r30)
la ldst,SZ_FRAME+31*4(sp) // &slot on stack
stw r0,SZ_FRAME+31*4(sp) // lzma uses for EOF
mr dst,t4
mtlr t4 // &continuation at unfolded code
lwz lsrc,sz_cpr + LBINFO - LrUNF(r30)
la src,sz_b_info + LBINFO - LrUNF(r30)
bctr // goto decompress; continue at unfolded code on mmap'ed page bctr // goto decompress; continue at unfolded code on mmap'ed page
// Example code at entrypoint of C-language subroutine: // Example code at entrypoint of C-language subroutine:
@@ -217,12 +232,21 @@ sz_auxv= 2*4
// blr # goto return address // blr # goto return address
main: main:
//// teq r0,r0 // debugging teq r0,r0 // debugging
stwu r1,-32*4(sp) // allocate space (keeping 0 mod 16), save r1 stwu r1,-(SZ_FRAME+32*4)(sp) // allocate space (keeping 0 mod 16), save r1
stmw r2,4(sp) // save registers r2 thru r31 stmw r2, SZ_FRAME+2*4-4(sp) // save registers r2 thru r31
mflr r31 // &decompress mflr r31 // &decompress
call unfold call unfold
LrUNF:
LADRM:
.long ADRM
LLENM:
.long LENM
LLENU:
.long LENU
LOBINFO:
.long O_BINFO .long O_BINFO
LBINFO:
/* { b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} */ /* { b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} */
/* vim:set ts=8 sw=8 et: */ /* vim:set ts=8 sw=8 et: */
+41 -18
View File
@@ -44,35 +44,58 @@ sz_l_info= 12
sz_p_info= 12 sz_p_info= 12
OVERHEAD= 2048 OVERHEAD= 2048
LINKAREA= 6*4 // (sp,pc,cr, xx,yy.zz) save area per calling convention
// http://refspecs.linuxfoundation.org/elf/elfspec_ppc.pdf p.3-17 (pdf p.33)
// SZ_LINKA= (2 + max(0, #params - 8))*4 // (sp,lr, arg9,arg10, ... )
SZ_LINKA= (2 + 2)*4 // (sp,pc, arg9,arg10,... ) and 16-byte aligned
ARG9= 2*4
ARG10= 3*4
SZ_FRAME= SZ_LINKA
/* In: /* In:
r31= &decompress; also 8+ (char *)&(#bytes which preceed &-8(r31) r31= &decompress; also 2*4+ (char *)&(#bytes which preceed &-8(r31)
r30= reserved for &this page
r29= reserved for &our_Elf32_Ehdr
r28= &Elf32_auxv_t r28= &Elf32_auxv_t
r27= actual page size r27= actual page size (4K or 64K)
r26= o_binfo r26= o_binfo
r25= ADRX
r24= ADRU
r23= LENU
r22= slide
*/ */
fold_begin: fold_begin:
//// teq r0,r0 // debugging teq r0,r0 // debugging
call L90 call L90
#include "arch/powerpc/32/bxx.S" #include "arch/powerpc/32/bxx.S"
L90: L90:
li r0,0
r_reloc= 32 - 1 # use a slot in register save area
la a7,SZ_FRAME+r_reloc*4(sp) // &reloc
stw r22,0(a7) // reloc === slide
sub r0,r0,r27 // -pagesize == pagemask
mr a7,r27 // pagesize
mr a6,r28 // &Elf32_auxv_t
mflr a5 // &ppcbxx: f_unfilter mflr a5 // &ppcbxx: f_unfilter
mr a6,r28 // a6= &Elf32_auxv and r30,a5,r0 // r30= &this_page
lwz a1,-8(r31) // #bytes which preceed -8(r31)
rlwinm r30,a5,0,0,31-12 // r30= &this_page
mr a4,r31 // &decompress: f_expand mr a4,r31 // &decompress: f_expand
subf r29,a1,r31 // 8+ (char *)&our_Elf32_Ehdr
la a2,-OVERHEAD(sp) // &Elf32_Ehdr temporary space la sp,-OVERHEAD(sp) // -SZ_FRAME + &Elf32_Ehdr temporary space
addi r29,r29,-8 // &our_Elf32_Ehdr lwz a1,-2*4(r31) // sz_pack2 == #bytes which preceed -2*4(r31)
sub a1,a1,r26 // total_size subf r29,a1,r31 // 2*4+ (char *)&our_Elf32_Ehdr
addi r29,r29,-2*4 // &our_Elf32_Ehdr
stw r29,ARG9(sp) // reloc
add a0,r29,r26 // &b_info add a0,r29,r26 // &b_info
mr a7,r27 // pagesize sub a1,a1,r26 // total_size
addi sp,sp,-(LINKAREA+OVERHEAD) la a2,SZ_FRAME(sp) // &Elf32_Ehdr temporary space
lwz a3,sz_unc(a0) // sz_elf_headers lwz a3,sz_unc(a0) // sz_elf_headers
teq r0,r0
call upx_main // Out: a0= entry call upx_main // Out: a0= entry
/* entry= upx_main(b_info *a0, total_size a1, Elf32_Ehdr *a2, sz_ehdr a3, // entry= upx_main(b_info *a0, total_size a1, Elf32_Ehdr *a2, sz_ehdr a3,
f_decomp a4, f_unf a5, Elf32_auxv_t *a6, page_size a7) // f_exp a4, f_unf a5, Elf32_auxv_t *a6, page_size a7, reloc ARG9)
*/
mr r31,a0 // save &entry mr r31,a0 // save &entry
mr a0,r29 // &our_Elf32_Ehdr mr a0,r29 // &our_Elf32_Ehdr
@@ -80,8 +103,8 @@ L90:
call munmap // unmap compressed program; /proc/self/exe disappears call munmap // unmap compressed program; /proc/self/exe disappears
mtlr r31 // entry address mtlr r31 // entry address
lmw r2,4+LINKAREA+OVERHEAD(sp) // restore registers r2 thru r31 lmw r2,OVERHEAD+SZ_FRAME+2*4-4(sp) // restore registers r2 thru r31
lwz r1, LINKAREA+OVERHEAD(sp) // restore r1; deallocate space lwz sp,OVERHEAD(sp) // restore r1; deallocate space
ret // enter /lib/ld.so.1 ret // enter /lib/ld.so.1
SYS_exit= 1 SYS_exit= 1
+39 -24
View File
@@ -232,6 +232,7 @@ do_xmap(
Elf32_auxv_t *const av, Elf32_auxv_t *const av,
f_expand *const f_decompress, f_expand *const f_decompress,
f_unfilter *const f_unf, f_unfilter *const f_unf,
Elf32_Addr *p_reloc,
unsigned int PAGE_MASK unsigned int PAGE_MASK
) )
{ {
@@ -250,13 +251,11 @@ do_xmap(
unsigned const prot = PF_TO_PROT(phdr->p_flags); unsigned const prot = PF_TO_PROT(phdr->p_flags);
Extent xo; Extent xo;
size_t mlen = xo.size = phdr->p_filesz; size_t mlen = xo.size = phdr->p_filesz;
char *addr = xo.buf = (char *)phdr->p_vaddr; char *addr = xo.buf = reloc + (char *)phdr->p_vaddr;
char *haddr = phdr->p_memsz + addr; char *haddr = phdr->p_memsz + addr;
size_t frag = (int)addr &~ PAGE_MASK; size_t frag = (int)addr &~ PAGE_MASK;
mlen += frag; mlen += frag;
addr -= frag; addr -= frag;
addr += reloc;
haddr += reloc;
if (addr != mmap(addr, mlen, prot | (xi ? PROT_WRITE : 0), if (addr != mmap(addr, mlen, prot | (xi ? PROT_WRITE : 0),
MAP_FIXED | MAP_PRIVATE | (xi ? MAP_ANONYMOUS : 0), MAP_FIXED | MAP_PRIVATE | (xi ? MAP_ANONYMOUS : 0),
@@ -290,6 +289,9 @@ ERR_LAB
} }
} }
} }
if (p_reloc) {
*p_reloc = reloc;
}
return ehdr->e_entry + reloc; return ehdr->e_entry + reloc;
} }
@@ -306,42 +308,55 @@ void *upx_main(
f_expand *const f_decompress, f_expand *const f_decompress,
f_unfilter *const f_unf, f_unfilter *const f_unf,
Elf32_auxv_t *const av, Elf32_auxv_t *const av,
unsigned int page_size unsigned int page_size,
Elf32_Addr reloc // IN OUT; value result for ET_DYN
) )
{ {
Elf32_Phdr const *phdr = (Elf32_Phdr const *)(1+ ehdr);
Elf32_Addr entry;
int page_mask;
if ((page_size != 4096) && (page_size != 65536))
exit(232);
page_mask=-page_size;
Extent xi, xo, xi0;
xi.buf = CONST_CAST(char *, bi); // &b_info
xi.size = sz_compressed;
xo.buf = (char *)ehdr;
xo.size = bi->sz_unc;
xi0 = xi;
ACC_UNUSED(sz_ehdr); ACC_UNUSED(sz_ehdr);
int const page_mask = -page_size;
if ((page_size != 4096) && (page_size != 65536))
exit(232);
Elf32_Phdr *phdr = (Elf32_Phdr *)(1+ ehdr);
Extent xo, xi1, xi2;
xo.buf = (char *)ehdr;
xo.size = bi->sz_unc;
xi2.buf = CONST_CAST(char *, bi); xi2.size = sz_compressed;
xi1.buf = CONST_CAST(char *, bi); xi1.size = sz_compressed;
// ehdr = Uncompress Ehdr and Phdrs // ehdr = Uncompress Ehdr and Phdrs
unpackExtent(&xi, &xo, f_decompress, 0); // never filtered? unpackExtent(&xi2, &xo, f_decompress, 0); // never filtered?
// AT_PHDR.a_un.a_val is set again by do_xmap if PT_PHDR is present. // AT_PHDR.a_un.a_val is set again by do_xmap if PT_PHDR is present.
auxv_up(av, AT_PHDR , (unsigned)(1+(Elf32_Ehdr *)phdr->p_vaddr)); auxv_up(av, AT_PHDR , (unsigned)(1+(Elf32_Ehdr *)phdr->p_vaddr));
auxv_up(av, AT_PHNUM , ehdr->e_phnum); auxv_up(av, AT_PHNUM , ehdr->e_phnum);
auxv_up(av, AT_ENTRY , (unsigned)ehdr->e_entry);
//auxv_up(av, AT_PHENT , ehdr->e_phentsize); /* this can never change */ //auxv_up(av, AT_PHENT , ehdr->e_phentsize); /* this can never change */
//auxv_up(av, AT_PAGESZ, PAGE_SIZE); /* ld-linux.so.2 does not need this */ //auxv_up(av, AT_PAGESZ, PAGE_SIZE); /* ld-linux.so.2 does not need this */
entry = do_xmap(ehdr, &xi0, 0, av, f_decompress, f_unf, page_mask); unsigned const orig_e_type = ehdr->e_type;
if (ET_DYN==orig_e_type /*&& phdr->p_vaddr==0*/) { // -fpie /*FIXME: and not pre-linked*/
// Unpacked must start at same place as packed, so that brk(0) works.
ehdr->e_type = ET_EXEC;
auxv_up(av, AT_ENTRY, ehdr->e_entry + reloc);
phdr = (Elf32_Phdr *)(1+ ehdr);
unsigned j;
for (j=0; j < ehdr->e_phnum; ++phdr, ++j) {
phdr->p_vaddr += reloc;
phdr->p_paddr += reloc;
}
}
Elf32_Addr entry = do_xmap(ehdr, &xi1, 0, av, f_decompress, f_unf, &reloc, page_mask); // "rewind"
if (ET_DYN!=orig_e_type) {
auxv_up(av, AT_ENTRY , entry);
}
{ // Map PT_INTERP program interpreter { // Map PT_INTERP program interpreter
int j; int j;
for (j=0; j < ehdr->e_phnum; ++phdr, ++j) if (PT_INTERP==phdr->p_type) { for (j=0; j < ehdr->e_phnum; ++phdr, ++j) if (PT_INTERP==phdr->p_type) {
char const *const iname = (char const *)phdr->p_vaddr; char const *const iname = reloc + (char const *)phdr->p_vaddr;
int const fdi = open(iname, O_RDONLY, 0); int const fdi = open(iname, O_RDONLY, 0);
if (0 > fdi) { if (0 > fdi) {
err_exit(18); err_exit(18);
@@ -350,7 +365,7 @@ void *upx_main(
ERR_LAB ERR_LAB
err_exit(19); err_exit(19);
} }
entry = do_xmap(ehdr, 0, fdi, 0, 0, 0, page_mask); entry = do_xmap(ehdr, 0, fdi, 0, 0, 0, 0, page_mask);
close(fdi); close(fdi);
} }
} }
@@ -1 +1,2 @@
#define BIG_ENDIAN 1
#include "powerpc64le-darwin.dylib-entry.S" #include "powerpc64le-darwin.dylib-entry.S"
@@ -1 +1,2 @@
#define BIG_ENDIAN 1
#include "powerpc64le-darwin.macho-entry.S" #include "powerpc64le-darwin.macho-entry.S"
@@ -1 +1,2 @@
#define BIG_ENDIAN 1
#include "powerpc64le-darwin.macho-fold.S" #include "powerpc64le-darwin.macho-fold.S"
@@ -1 +1,2 @@
#define BIG_ENDIAN 1
#include "powerpc64le-darwin.macho-main.c" #include "powerpc64le-darwin.macho-main.c"
+1
View File
@@ -1 +1,2 @@
#define BIG_ENDIAN 1
#include "powerpc64le-linux.elf-main.c" #include "powerpc64le-linux.elf-main.c"
+4
View File
@@ -1,3 +1,6 @@
#ifndef __POWERPC64_SAVEGPR0_S //{
#define __POWERPC64_SAVEGPR0_S 1
_savegpr0_14: .globl _savegpr0_14 _savegpr0_14: .globl _savegpr0_14
std r14,-8*(32-14)(r1) std r14,-8*(32-14)(r1)
_savegpr0_15: .globl _savegpr0_15 _savegpr0_15: .globl _savegpr0_15
@@ -72,5 +75,6 @@ _restgpr0_29: .globl _restgpr0_29
ld r30,-8*(32-30)(r1) ld r30,-8*(32-30)(r1)
ld r31,-8*(32-31)(r1) ld r31,-8*(32-31)(r1)
blr # return to caller blr # return to caller
#endif //}
/* vim:set ts=8 sw=8 et: */ /* vim:set ts=8 sw=8 et: */
+20 -20
View File
@@ -230,15 +230,15 @@ movup2: # descending copy [base, movup2)
add f_unc,a1,f_unc # relocated decompress add f_unc,a1,f_unc # relocated decompress
add f_uini,f_uini,a0 add f_uini,f_uini,a0
lwz t0,-4*3+ _start - decompress(f_unc) # offset(b_info) lwz t1,-4*3+ _start - decompress(f_unc) # offset(b_info)
add r_cpr,a1,t0 # &b_info add r_cpr,a1,t1 # &b_info
add r_unc,a0,t0 # &b_info add r_unc,a0,t1 # &b_info
addi r_unc,r_unc,-sz_l_info -sz_p_info addi r_unc,r_unc,-sz_l_info -sz_p_info
// skip compressed Mach headers // skip compressed Mach headers
lwz t0,sz_cpr(r_cpr) lwz t1,sz_cpr(r_cpr)
addi r_cpr,r_cpr,sz_b_info addi r_cpr,r_cpr,sz_b_info
add r_cpr,r_cpr,t0 add r_cpr,r_cpr,t1
dy_uncpr: dy_uncpr:
mr s_cpr,r_cpr mr s_cpr,r_cpr
mr s_unc,r_unc mr s_unc,r_unc
@@ -278,7 +278,7 @@ dy_done:
dy_done1: # escape hatch dy_done1: # escape hatch
sc # munmap sc # munmap
li a0,~0 # failure li a0,~0 # failure
// lmw t0,0(sp) // lmw r0,0(sp)
ld 2,2*8-8*2(sp) ld 2,2*8-8*2(sp)
ld 3,3*8-8*2(sp) ld 3,3*8-8*2(sp)
ld 4,4*8-8*2(sp) ld 4,4*8-8*2(sp)
@@ -309,17 +309,17 @@ dy_done1: # escape hatch
ld 29,29*8-8*2(sp) ld 29,29*8-8*2(sp)
ld 30,30*8-8*2(sp) ld 30,30*8-8*2(sp)
ld 31,31*8-8*2(sp) ld 31,31*8-8*2(sp)
addi sp,sp,8*(32-t0) addi sp,sp,8*(32-r0)
mtlr t0 # &continuation in dyld mtlr r0 # &continuation in dyld
bctr # goto user_init_function bctr # goto user_init_function
dy_done2: dy_done2:
li t0,(dy_done2 - dy_done1)/4 li r0,(dy_done2 - dy_done1)/4
mflr a0 mflr a0
la a0,dy_done2 - dy_done1(a0) la a0,dy_done2 - dy_done1(a0)
mtctr t0 mtctr r0
dy_done3: dy_done3:
lwzu t0,-4(a0) lwzu r0,-4(a0)
stwu t0,-4(s_unc) stwu r0,-4(s_unc)
bdnz+ dy_done3 bdnz+ dy_done3
mtlr s_unc mtlr s_unc
@@ -330,14 +330,14 @@ dy_done3:
blr # goto relocated dy_done1 blr # goto relocated dy_done1
get4: get4:
lbz t0,3(a0) lbz t1,3(a0)
lbz t1,2(a0) lbz t2,2(a0)
rlwimi t0,t1, 8,16,23 rlwimi t1,t2, 8,16,23
lbz t1,1(a0) lbz t2,1(a0)
rlwimi t0,t1,16, 8,15 rlwimi t1,t2,16, 8,15
lbz t1,0(a0) lbz t2,0(a0)
rlwimi t0,t1,24, 0, 7 rlwimi t1,t2,24, 0, 7
mr. a0,t0 # set condition codes mr. a0,t1 # set condition codes
blr blr
unfilter: unfilter:
+14 -12
View File
@@ -28,6 +28,7 @@
#include "arch/powerpc/64le/macros.S" #include "arch/powerpc/64le/macros.S"
#include "arch/powerpc/64le/ppc_regs.h" #include "arch/powerpc/64le/ppc_regs.h"
LINKAREA= 6*8
section MACOS000 section MACOS000
_start: .globl _start _start: .globl _start
@@ -108,17 +109,17 @@ sz_b_info= 12
/* Decompress the rest of this loader, and jump to it. */ /* Decompress the rest of this loader, and jump to it. */
unfold: unfold:
mflr t0 # -2*4+ &{ b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} mflr t1 # -(L105-L100)+ &{ b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...}
lwz t1,4(t0) // O_BINFO //lwz t2,4(t1) // O_BINFO
stdu t1,-8(sp) //stdu t2,-8(sp)
lwz lsrc,2*4+sz_cpr(t0) lwz lsrc,L105-L100+sz_cpr(t1)
mtctr lsrc # length to copy (and decompress) mtctr lsrc # length to copy (and decompress)
lwz ldst,2*4+sz_unc(t0) lwz ldst,L105-L100+sz_unc(t1)
lbz meth,2*4+b_method(t0) lbz meth,L105-L100+b_method(t1)
add dst,lsrc,t0 add dst,lsrc,t1
addi dst,dst,2*4+sz_b_info addi dst,dst,L105-L100+sz_b_info
add src,ldst,t0 add src,ldst,t1
addi src,src,GAP+64 # defend against prefetch and overlap addi src,src,GAP+64 # defend against prefetch and overlap
movup: # descending copy moves folded_loader to higher address movup: # descending copy moves folded_loader to higher address
lbzu r0,-1(dst) lbzu r0,-1(dst)
@@ -126,10 +127,10 @@ movup: # descending copy moves folded_loader to higher address
bdnz+ movup # typical count is about 0x4cb(1227) bytes bdnz+ movup # typical count is about 0x4cb(1227) bytes
mtctr r31 # &decompress mtctr r31 # &decompress
addi dst,t0,GAP # &unfolded result addi dst,t1,GAP # &unfolded result
std ldst,-8(sp) # LZMA needs for EOF std ldst,-8(sp) # LZMA needs for EOF
la ldst,-8(sp) # &sz_result la ldst,-8(sp) # &sz_result
la sp,-6*8(sp) // (sp,cr,pc, xx,yy,zz) save area per calling convention la sp,-LINKAREA(sp) // (sp,cr,pc, xx,yy,zz) save area per calling convention
bctr # call decompress: branch to counter register, return to link register bctr # call decompress: branch to counter register, return to link register
main: main:
@@ -138,7 +139,8 @@ main:
call unfold call unfold
L100: GAP= 128 # > farthest_prefetch; must match ../p_mach.cpp L100: GAP= 128 # > farthest_prefetch; must match ../p_mach.cpp
b GAP+L100 # 'isync' has trouble on Macintosh G4? b GAP+L100 # 'isync' has trouble on Macintosh G4?
.long O_BINFO .long 0 // O_BINFO
L105:
/* { b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} */ /* { b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} */
/* vim:set ts=8 sw=8 et: */ /* vim:set ts=8 sw=8 et: */
+4 -4
View File
@@ -81,11 +81,11 @@ L100:
call upx_main # Out: a0= &Mach_ppc_thread_state of dyld call upx_main # Out: a0= &Mach_ppc_thread_state of dyld
movr sp,r29 # restore stack pointer movr sp,r29 # restore stack pointer
lwz t0, srr0(a0); mtctr t0 # entry address lwz r0, srr0(a0); mtctr r0 # entry address
/* Next 3 lines probably are not needed, but ... */ /* Next 3 lines probably are not needed, but ... */
lwz t0, reg_cr(a0); mtcr t0 # condition code lwz r0, reg_cr(a0); mtcr r0 # condition code
lwz t0,reg_xer(a0); mtxer t0 # extended error reg (CArry, etc.) lwz r0,reg_xer(a0); mtxer r0 # extended error reg (CArry, etc.)
lwz t0, reg_lr(a0); mtlr t0 # link register lwz r0, reg_lr(a0); mtlr r0 # link register
lmw 4,4*4+reg0(3) # reg 4 thru 31 lmw 4,4*4+reg0(3) # reg 4 thru 31
lwz 0,0*4+reg0(3) lwz 0,0*4+reg0(3)
+48 -52
View File
@@ -29,8 +29,15 @@
* <jreiser@users.sourceforge.net> * <jreiser@users.sourceforge.net>
*/ */
#ifndef BIG_ENDIAN
#define BIG_ENDIAN 0
#endif
#include "arch/powerpc/64le/macros.S" #include "arch/powerpc/64le/macros.S"
#include "arch/powerpc/64le/ppc_regs.h" #include "arch/powerpc/64le/ppc_regs.h"
SZ_LINK= 6*8
SZ_PSAV= 8*8
SZ_FRAME= SZ_LINK + SZ_PSAV
sz_b_info= 12 sz_b_info= 12
sz_unc= 0 sz_unc= 0
@@ -45,7 +52,7 @@ MAP_PRIVATE= 2
MAP_FIXED= 0x10 MAP_FIXED= 0x10
MAP_ANONYMOUS= 0x20 MAP_ANONYMOUS= 0x20
PAGE_SHIFT= 16 PAGE_SHIFT= 16 // 64KiB PAGE_SIZE
PAGE_SIZE = -(~0<<PAGE_SHIFT) PAGE_SIZE = -(~0<<PAGE_SHIFT)
/* /usr/include/asm-ppc/unistd.h */ /* /usr/include/asm-ppc/unistd.h */
@@ -90,7 +97,12 @@ SZ_DLINE=128 # size of data cache line in Apple G5
section NRV2B section NRV2B
#include "arch/powerpc/64le/nrv2b_d.S" #include "arch/powerpc/64le/nrv2b_d.S"
// lzma decoder is pre-assembled and endian-dependent
#if BIG_ENDIAN
#include "arch/powerpc/64/lzma_d.S"
#else
#include "arch/powerpc/64le/lzma_d.S" #include "arch/powerpc/64le/lzma_d.S"
#endif
section NRV_TAIL section NRV_TAIL
eof_nrv: eof_nrv:
@@ -160,10 +172,9 @@ unfold:
mflr r30 // -4+ &{ b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...} mflr r30 // -4+ &{ b_info={sz_unc, sz_cpr, {4 char}}, folded_loader...}
lwz r26,0(r30) // O_BINFO lwz r26,0(r30) // O_BINFO
sz_obinfo= 4 sz_obinfo= 4
lwz a0,sz_obinfo + sz_cpr(r30) // sz_cpr(fold) (< 1 Page) lwz a0,sz_obinfo + sz_cpr(r30) // sz_cpr(fold) (< 1 Page)
li a5,0 // off_t li a5,0 // off_t
lis a1,1 // PAGE_SIZE lis a1,1<<(PAGE_SHIFT - 16) // PAGE_SIZE 64KiB
li a4,-1 // fd; cater to *BSD for MAP_ANON li a4,-1 // fd; cater to *BSD for MAP_ANON
add a0,a0,r30 // beyond compressed fold add a0,a0,r30 // beyond compressed fold
li a3,MAP_PRIVATE | MAP_FIXED | MAP_ANONYMOUS li a3,MAP_PRIVATE | MAP_FIXED | MAP_ANONYMOUS
@@ -171,68 +182,53 @@ sz_obinfo= 4
li a2,PROT_READ | PROT_WRITE | PROT_EXEC li a2,PROT_READ | PROT_WRITE | PROT_EXEC
add a0,a0,a1 // across next page boundary add a0,a0,a1 // across next page boundary
li 0,__NR_mmap li 0,__NR_mmap
rlwinm a0,a0,0,0,31-PAGE_SHIFT // next page boundary after fold rldicr a0,a0,0,64 - PAGE_SHIFT // next page boundary after fold
sc; bso- msg_SELinux // Branch if SummaryOverflow (failure) sc; bso- msg_SELinux // Branch if SummaryOverflow (failure)
mtctr r31 mtctr r31
lwz r0,sz_obinfo + sz_unc(r30) // size uncompressed lwz r0,sz_obinfo + sz_unc(r30) // size uncompressed
lbz meth,sz_obinfo + b_method(r30) lbz meth,sz_obinfo + b_method(r30)
la ldst,31*8(sp) // &slot on stack la ldst,SZ_FRAME+31*8(sp) // &slot on stack
std r0,31*8(sp) // lzma uses for EOF stw r0,SZ_FRAME+31*8(sp) // lzma uses for EOF; BEWARE: 32 bits only
mr dst,a0 mr dst,a0
mtlr a0 // &continuation mtlr a0 // &continuation
lwz lsrc,sz_obinfo + sz_cpr(r30) // size of compressed lwz lsrc,sz_obinfo + sz_cpr(r30) // size of compressed
addi src,r30,sz_obinfo + sz_b_info addi src,r30,sz_obinfo + sz_b_info
LINKAREA= 6*8 // matches fold.S
la sp,-LINKAREA(sp) // (sp,cr,lr, xlc.tmp,ld.tmp,save.toc) save area per calling convention
bctr // goto decomrpess; return to link register (mmap'ed page) bctr // goto decomrpess; return to link register (mmap'ed page)
// Example 32-bit code at entrypoint of C-language subroutine:
// mflr r0 # r0= return address
// stwu sp,-96(sp) # allocate local frame; chain to previous frame
// stmw r14,24(sp) # save 18 regs r14,r15,...,r31; 4*18 == (96 - 24)
// stw r0,100(sp) # save return address into caller's frame (100 >= 96)
// Example 32-bit code at exit:
// lwz r0,100(sp) # r0= return address
// lmw r14,24(sp) # restore 18 regs r14,r15,...,r31
// mtlr r0 # prepare for indirect jump
// addi sp,sp,96 # de-allocate local frame
// blr # goto return address
main: main:
//// teq r0,r0 // debugging //// teq r0,r0 // debugging
stdu r1,-32*8(sp) // allocate space (keeping 0 mod 16), save r1 stdu r1,-(SZ_FRAME + 32*8)(sp) // allocate space (keeping 0 mod 16), save r1
// stm r2,8(sp) // save registers r2 thru r31 - 32bits save std 2,SZ_FRAME+ 2*8-8(sp)
std 2,2*8-8(sp) std 3,SZ_FRAME+ 3*8-8(sp)
std 3,3*8-8(sp) std 4,SZ_FRAME+ 4*8-8(sp)
std 4,4*8-8(sp) std 5,SZ_FRAME+ 5*8-8(sp)
std 5,5*8-8(sp) std 6,SZ_FRAME+ 6*8-8(sp)
std 6,6*8-8(sp) std 7,SZ_FRAME+ 7*8-8(sp)
std 7,7*8-8(sp) std 8,SZ_FRAME+ 8*8-8(sp)
std 8,8*8-8(sp) std 9,SZ_FRAME+ 9*8-8(sp)
std 9,9*8-8(sp) std 10,SZ_FRAME+10*8-8(sp)
std 10,10*8-8(sp) std 11,SZ_FRAME+11*8-8(sp)
std 11,11*8-8(sp) std 12,SZ_FRAME+12*8-8(sp)
std 12,12*8-8(sp) std 13,SZ_FRAME+13*8-8(sp)
std 13,13*8-8(sp) std 14,SZ_FRAME+14*8-8(sp)
std 14,14*8-8(sp) std 15,SZ_FRAME+15*8-8(sp)
std 15,15*8-8(sp) std 16,SZ_FRAME+16*8-8(sp)
std 16,16*8-8(sp) std 17,SZ_FRAME+17*8-8(sp)
std 17,17*8-8(sp) std 18,SZ_FRAME+18*8-8(sp)
std 18,18*8-8(sp) std 19,SZ_FRAME+19*8-8(sp)
std 19,19*8-8(sp) std 20,SZ_FRAME+20*8-8(sp)
std 20,20*8-8(sp) std 21,SZ_FRAME+21*8-8(sp)
std 21,21*8-8(sp) std 22,SZ_FRAME+22*8-8(sp)
std 22,22*8-8(sp) std 23,SZ_FRAME+23*8-8(sp)
std 23,23*8-8(sp) std 24,SZ_FRAME+24*8-8(sp)
std 24,24*8-8(sp) std 25,SZ_FRAME+25*8-8(sp)
std 25,25*8-8(sp) std 26,SZ_FRAME+26*8-8(sp)
std 26,26*8-8(sp) std 27,SZ_FRAME+27*8-8(sp)
std 27,27*8-8(sp) std 28,SZ_FRAME+28*8-8(sp)
std 28,28*8-8(sp) std 29,SZ_FRAME+29*8-8(sp)
std 29,29*8-8(sp) std 30,SZ_FRAME+30*8-8(sp)
std 30,30*8-8(sp) std 31,SZ_FRAME+31*8-8(sp)
std 31,31*8-8(sp)
mflr r31 // &decompress mflr r31 // &decompress
call unfold call unfold
.long O_BINFO // .int4 .long O_BINFO // .int4
+74 -66
View File
@@ -48,49 +48,60 @@ sz_l_info= 12
sz_p_info= 12 sz_p_info= 12
OVERHEAD= 2048 OVERHEAD= 2048
LINKAREA= 6*8 // (sp,cr,lr, tmp.xlc,tmp.ld,save.toc) save area per calling convention
// http://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi.html#STACK
SZ_LINK= 6*8 // (sp,cr,lr, tmp.xlc,tmp.ld,save.toc)
SZ_PSAV= 8*8 // for arg9, arg10, ...; and for spilling a0-a7 if necessary
// The parameter save area shall be allocated by the caller.
// It shall be doubleword aligned, and shall be at least 8 doublewords in length.
SZ_FRAME= SZ_LINK + SZ_PSAV
/* In: /* In:
r31= &decompress; also 8+ (char *)&(#bytes which preceed &-8(r31) r31= &decompress; also 8+ (char *)&(#bytes which preceed &-8(r31)
r28= &Elf64_auxv_t r28= &Elf64_auxv_t
r27= actual page size r27= actual page size
r26= o_binfo r26= o_binfo
sp/ LINKAREA,regsav(r1-31),&eof_src,argc,argv,0,env,0,auxv,0,chars sp/ SZ_FRAME,regsav(r1-31),&eof_src,argc,argv,0,env,0,auxv,0,chars
*/ */
fold_begin: fold_begin:
call L90 call L90
#include "arch/powerpc/64le/bxx.S" #include "arch/powerpc/64le/bxx.S"
zfind: zfind:
ld t0,0(a6) // parameters are 16byte aligned ld r0,0(a6) // parameters are 16byte aligned
addi a6,a6,8 addi a6,a6,8
cmpldi cr7,t0,0; bne+ cr7,zfind cmpldi cr7,r0,0; bne+ cr7,zfind
ret ret
L90: L90:
mflr a5 // &ppcbxx: f_unfilter mflr a5 // &ppcbxx: f_unfilter
ld a6,LINKAREA(sp) // sp from regsav at execve ld a6,SZ_FRAME(sp) // sp from regsav at execve
call zfind // a6= &env call zfind // a6= &env
call zfind // a6= &Elf64_auxv; t0= 0 call zfind // a6= &Elf64_auxv; r0= 0
la a7,LINKAREA+(32-1)*8(sp) // &reloc r_reloc= 32 - 1 # use a slot in register save area
std t0,0(a7) // reloc= 0 la a7,SZ_FRAME+r_reloc*8(sp) // &reloc
la sp,-OVERHEAD(sp) // -LINKAREA + &Elf64_Ehdr temporary space std r0,0(a7) // reloc= 0
lwz a1,-2*4(r31) // sz_pack2 == #bytes which preceed -8(r31)
rlwinm r30,a5,0,0,31-12 // r30= &this_page la sp,-OVERHEAD(sp) // -SZ_FRAME + &Elf64_Ehdr temporary space
subf r29,a1,r31 // 8+ (char *)&our_Elf64_Ehdr lwz a1,-2*4(r31) // sz_pack2 == #bytes which preceed -2*4(r31)
mr a4,r31 // &decompress: f_expand clrrdi r30,a5,16 // r30= &this_page
subf r29,a1,r31 // 2*4+ (char *)&our_Elf64_Ehdr
addi r29,r29,-2*4 // &our_Elf64_Ehdr addi r29,r29,-2*4 // &our_Elf64_Ehdr
sub a1,a1,r26 // total_size
mr a4,r31 // &decompress: f_expand
add a0,r29,r26 // &b_info add a0,r29,r26 // &b_info
la a2,LINKAREA(sp) // &Elf64_Ehdr temporary space sub a1,a1,r26 // total_size
la a2,SZ_FRAME(sp) // &Elf64_Ehdr temporary space
lwz a3,sz_unc(a0) // sz_elf_headers lwz a3,sz_unc(a0) // sz_elf_headers
#if BIG_ENDIAN //{ #if BIG_ENDIAN //{ setup indirection for entry to f_exp and f_unf
std a4,3*8(sp); la a4,3*8(sp) // use tmp.xlc std a4,3*8(sp); la a4,3*8(sp) // use tmp.xlc
std a5,4*8(sp); la a5,4*8(sp) // use tmp.ld std a5,4*8(sp); la a5,4*8(sp) // use tmp.ld
#endif //} #endif //}
teq r0,r0
call upx_main call upx_main
// a0=entry= upx_main(b_info *a0, total_size a1, Elf64_Ehdr *a2, sz_ehdr a3, // a0=entry= upx_main(b_info *a0, total_size a1, Elf64_Ehdr *a2, sz_ehdr a3,
// f_decomp a4, f_unf a5, Elf64_auxv_t *a6, void *a7=p_reloc) // f_decomp a4, f_unf a5, Elf64_auxv_t *a6, void *a7=p_reloc)
#if BIG_ENDIAN //{ #if BIG_ENDIAN //{
ld r0,LINKAREA+OVERHEAD +(32-1)*8(sp) // reloc for ET_DYN ld r0,SZ_FRAME+OVERHEAD +r_reloc*8(sp) // reloc for ET_DYN
ld r2,8(r3); add r2,r2,r0 // toc ld r2,8(r3); add r2,r2,r0 // toc
ld r3,0(r3); add r3,r3,r0 // .func ld r3,0(r3); add r3,r3,r0 // .func
#endif //} #endif //}
@@ -104,40 +115,38 @@ L90:
/* Restore Save Area */ /* Restore Save Area */
rest: rest:
#if !BIG_ENDIAN //{ ld 2, 2*8-8+SZ_FRAME+OVERHEAD(sp)
ld 2,2*8-8+LINKAREA+OVERHEAD(sp) ld 3, 3*8-8+SZ_FRAME+OVERHEAD(sp)
#endif //} ld 4, 4*8-8+SZ_FRAME+OVERHEAD(sp)
ld 3,3*8-8+LINKAREA+OVERHEAD(sp) ld 5, 5*8-8+SZ_FRAME+OVERHEAD(sp)
ld 4,4*8-8+LINKAREA+OVERHEAD(sp) ld 6, 6*8-8+SZ_FRAME+OVERHEAD(sp)
ld 5,5*8-8+LINKAREA+OVERHEAD(sp) ld 7, 7*8-8+SZ_FRAME+OVERHEAD(sp)
ld 6,6*8-8+LINKAREA+OVERHEAD(sp) ld 8, 8*8-8+SZ_FRAME+OVERHEAD(sp)
ld 7,7*8-8+LINKAREA+OVERHEAD(sp) ld 9, 9*8-8+SZ_FRAME+OVERHEAD(sp)
ld 8,8*8-8+LINKAREA+OVERHEAD(sp) ld 10,10*8-8+SZ_FRAME+OVERHEAD(sp)
ld 9,9*8-8+LINKAREA+OVERHEAD(sp) ld 11,11*8-8+SZ_FRAME+OVERHEAD(sp)
ld 10,10*8-8+LINKAREA+OVERHEAD(sp) ld 12,12*8-8+SZ_FRAME+OVERHEAD(sp)
ld 11,11*8-8+LINKAREA+OVERHEAD(sp) ld 13,13*8-8+SZ_FRAME+OVERHEAD(sp)
ld 12,12*8-8+LINKAREA+OVERHEAD(sp) ld 14,14*8-8+SZ_FRAME+OVERHEAD(sp)
ld 13,13*8-8+LINKAREA+OVERHEAD(sp) ld 15,15*8-8+SZ_FRAME+OVERHEAD(sp)
ld 14,14*8-8+LINKAREA+OVERHEAD(sp) ld 16,16*8-8+SZ_FRAME+OVERHEAD(sp)
ld 15,15*8-8+LINKAREA+OVERHEAD(sp) ld 17,17*8-8+SZ_FRAME+OVERHEAD(sp)
ld 16,16*8-8+LINKAREA+OVERHEAD(sp) ld 18,18*8-8+SZ_FRAME+OVERHEAD(sp)
ld 17,17*8-8+LINKAREA+OVERHEAD(sp) ld 19,19*8-8+SZ_FRAME+OVERHEAD(sp)
ld 18,18*8-8+LINKAREA+OVERHEAD(sp) ld 20,20*8-8+SZ_FRAME+OVERHEAD(sp)
ld 19,19*8-8+LINKAREA+OVERHEAD(sp) ld 21,21*8-8+SZ_FRAME+OVERHEAD(sp)
ld 20,20*8-8+LINKAREA+OVERHEAD(sp) ld 22,22*8-8+SZ_FRAME+OVERHEAD(sp)
ld 21,21*8-8+LINKAREA+OVERHEAD(sp) ld 23,23*8-8+SZ_FRAME+OVERHEAD(sp)
ld 22,22*8-8+LINKAREA+OVERHEAD(sp) ld 24,24*8-8+SZ_FRAME+OVERHEAD(sp)
ld 23,23*8-8+LINKAREA+OVERHEAD(sp) ld 25,25*8-8+SZ_FRAME+OVERHEAD(sp)
ld 24,24*8-8+LINKAREA+OVERHEAD(sp) ld 26,26*8-8+SZ_FRAME+OVERHEAD(sp)
ld 25,25*8-8+LINKAREA+OVERHEAD(sp) ld 27,27*8-8+SZ_FRAME+OVERHEAD(sp)
ld 26,26*8-8+LINKAREA+OVERHEAD(sp) ld 28,28*8-8+SZ_FRAME+OVERHEAD(sp)
ld 27,27*8-8+LINKAREA+OVERHEAD(sp) ld 29,29*8-8+SZ_FRAME+OVERHEAD(sp)
ld 28,28*8-8+LINKAREA+OVERHEAD(sp) ld 30,30*8-8+SZ_FRAME+OVERHEAD(sp)
ld 29,29*8-8+LINKAREA+OVERHEAD(sp) ld 31,31*8-8+SZ_FRAME+OVERHEAD(sp)
ld 30,30*8-8+LINKAREA+OVERHEAD(sp)
ld 31,31*8-8+LINKAREA+OVERHEAD(sp)
ld r1,LINKAREA+OVERHEAD(sp) // restore r1; deallocate space ld r1,SZ_FRAME+OVERHEAD(sp) // restore r1; deallocate space
li r0,0 li r0,0
mtcr r0 mtcr r0
mtctr r0 mtctr r0
@@ -155,8 +164,22 @@ SYS_mmap= 90
SYS_munmap= 91 SYS_munmap= 91
SYS_mprotect= 125 SYS_mprotect= 125
exit: .globl exit
li 0,SYS_exit; 0: b 0f
brk: .globl brk
li 0,SYS_brk; 0: b 0f
close: .globl close
li 0,SYS_close; 0: b 0f
open: .globl open
li 0,SYS_open; 0: b 0f
munmap: .globl munmap
li 0,SYS_munmap; 0: b 0f
mprotect: .globl mprotect
li 0,SYS_mprotect; 0: b 0f
read: .globl read
li 0,SYS_read; 0: b 0f
mmap: .globl mmap mmap: .globl mmap
li 0,SYS_mmap li 0,SYS_mmap; 0:
sysgo: sysgo:
sc sc
bns+ no_fail // 'bns': branch if No Summary[Overflow] bns+ no_fail // 'bns': branch if No Summary[Overflow]
@@ -164,19 +187,4 @@ sysgo:
no_fail: no_fail:
ret ret
exit: .globl exit
li 0,SYS_exit; b sysgo
read: .globl read
li 0,SYS_read; b sysgo
open: .globl open
li 0,SYS_open; b sysgo
close: .globl close
li 0,SYS_close; b sysgo
mprotect: .globl mprotect
li 0,SYS_mprotect; b sysgo
munmap: .globl munmap
li 0,SYS_munmap; b sysgo
brk: .globl brk
li 0,SYS_brk; b sysgo
/* vim:set ts=8 sw=8 et: */ /* vim:set ts=8 sw=8 et: */
@@ -171,7 +171,7 @@ Idx Name Size VMA LMA File off Algn Flags
166 CTBSWA11 00000005 00000000 00000000 00001ab3 2**0 CONTENTS, READONLY 166 CTBSWA11 00000005 00000000 00000000 00001ab3 2**0 CONTENTS, READONLY
167 CALLTR13 00000007 00000000 00000000 00001ab8 2**0 CONTENTS, RELOC, READONLY 167 CALLTR13 00000007 00000000 00000000 00001ab8 2**0 CONTENTS, RELOC, READONLY
168 LEXEC017 00000002 00000000 00000000 00001abf 2**0 CONTENTS, READONLY 168 LEXEC017 00000002 00000000 00000000 00001abf 2**0 CONTENTS, READONLY
169 LEXEC020 00000047 00000000 00000000 00001ac1 2**0 CONTENTS, RELOC, READONLY 169 LEXEC020 00000046 00000000 00000000 00001ac1 2**0 CONTENTS, READONLY
SYMBOL TABLE: SYMBOL TABLE:
00000000 l d I386BXX1 00000000 I386BXX1 00000000 l d I386BXX1 00000000 I386BXX1
00000000 l d N2BSMA10 00000000 N2BSMA10 00000000 l d N2BSMA10 00000000 N2BSMA10
@@ -351,7 +351,6 @@ SYMBOL TABLE:
00000000 *UND* 00000000 NMRU 00000000 *UND* 00000000 NMRU
00000000 *UND* 00000000 filter_length 00000000 *UND* 00000000 filter_length
00000000 *UND* 00000000 filter_cto 00000000 *UND* 00000000 filter_cto
00000000 *UND* 00000000 O_BINFO
RELOCATION RECORDS FOR [I386BXX0]: RELOCATION RECORDS FOR [I386BXX0]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -662,7 +661,3 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [CALLTR13]: RELOCATION RECORDS FOR [CALLTR13]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000006 R_386_PC8 CALLTR10 00000006 R_386_PC8 CALLTR10
RELOCATION RECORDS FOR [LEXEC020]:
OFFSET TYPE VALUE
00000043 R_386_32 O_BINFO
@@ -14,7 +14,7 @@ Idx Name Size VMA LMA File off Algn Flags
9 NRV_TAIL 0000001c 00000000 00000000 0000178c 2**0 CONTENTS, READONLY 9 NRV_TAIL 0000001c 00000000 00000000 0000178c 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 00000000 00000000 000017a8 2**0 CONTENTS, READONLY 10 CFLUSH 00000024 00000000 00000000 000017a8 2**0 CONTENTS, READONLY
11 ELFMAINY 00000000 00000000 00000000 000017cc 2**0 CONTENTS, READONLY 11 ELFMAINY 00000000 00000000 00000000 000017cc 2**0 CONTENTS, READONLY
12 ELFMAINZ 00000204 00000000 00000000 000017cc 2**0 CONTENTS, READONLY 12 ELFMAINZ 00000208 00000000 00000000 000017cc 2**0 CONTENTS, READONLY
SYMBOL TABLE: SYMBOL TABLE:
00000000 l d LZMA_DEC30 00000000 LZMA_DEC30 00000000 l d LZMA_DEC30 00000000 LZMA_DEC30
00000000 l d NRV_TAIL 00000000 NRV_TAIL 00000000 l d NRV_TAIL 00000000 NRV_TAIL
@@ -33,7 +33,7 @@ SYMBOL TABLE:
RELOCATION RECORDS FOR [MACOS000]: RELOCATION RECORDS FOR [MACOS000]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000004 R_PPC_REL24 ELFMAINZ+0x00000200 00000004 R_PPC_REL24 ELFMAINZ+0x00000204
RELOCATION RECORDS FOR [NRV2E]: RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -16,7 +16,7 @@ Idx Name Size VMA LMA File off Algn Flags
11 NRV_TAIL 0000001c 00000000 00000000 000017f0 2**0 CONTENTS, READONLY 11 NRV_TAIL 0000001c 00000000 00000000 000017f0 2**0 CONTENTS, READONLY
12 CFLUSH 00000020 00000000 00000000 0000180c 2**0 CONTENTS, READONLY 12 CFLUSH 00000020 00000000 00000000 0000180c 2**0 CONTENTS, READONLY
13 MACHMAINY 00000004 00000000 00000000 0000182c 2**0 CONTENTS, READONLY 13 MACHMAINY 00000004 00000000 00000000 0000182c 2**0 CONTENTS, READONLY
14 MACHMAINZ 00000058 00000000 00000000 00001830 2**0 CONTENTS, RELOC, READONLY 14 MACHMAINZ 00000058 00000000 00000000 00001830 2**0 CONTENTS, READONLY
SYMBOL TABLE: SYMBOL TABLE:
00000000 l d LZMA_DEC30 00000000 LZMA_DEC30 00000000 l d LZMA_DEC30 00000000 LZMA_DEC30
00000000 l d NRV_TAIL 00000000 NRV_TAIL 00000000 l d NRV_TAIL 00000000 NRV_TAIL
@@ -34,7 +34,6 @@ SYMBOL TABLE:
00000000 l d CFLUSH 00000000 CFLUSH 00000000 l d CFLUSH 00000000 CFLUSH
00000000 l d MACHMAINY 00000000 MACHMAINY 00000000 l d MACHMAINY 00000000 MACHMAINY
00000000 g MACMAINX 00000000 _start 00000000 g MACMAINX 00000000 _start
00000000 *UND* 00000000 O_BINFO
RELOCATION RECORDS FOR [MACMAINX]: RELOCATION RECORDS FOR [MACMAINX]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -55,7 +54,3 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [LZMA_ELF00]: RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000004 R_PPC_REL14 LZMA_DEC30+0x00000024 00000004 R_PPC_REL14 LZMA_DEC30+0x00000024
RELOCATION RECORDS FOR [MACHMAINZ]:
OFFSET TYPE VALUE
00000054 R_PPC_ADDR32 O_BINFO
+10 -4
View File
@@ -14,7 +14,7 @@ Idx Name Size VMA LMA File off Algn Flags
9 NRV_TAIL 0000001c 00000000 00000000 00001788 2**0 CONTENTS, READONLY 9 NRV_TAIL 0000001c 00000000 00000000 00001788 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 00000000 00000000 000017a4 2**0 CONTENTS, READONLY 10 CFLUSH 00000024 00000000 00000000 000017a4 2**0 CONTENTS, READONLY
11 ELFMAINY 00000022 00000000 00000000 000017c8 2**0 CONTENTS, RELOC, READONLY 11 ELFMAINY 00000022 00000000 00000000 000017c8 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 000000ec 00000000 00000000 000017ea 2**0 CONTENTS, RELOC, READONLY 12 ELFMAINZ 00000140 00000000 00000000 000017ea 2**0 CONTENTS, RELOC, READONLY
SYMBOL TABLE: SYMBOL TABLE:
00000000 l d LZMA_DEC30 00000000 LZMA_DEC30 00000000 l d LZMA_DEC30 00000000 LZMA_DEC30
00000000 l d NRV_TAIL 00000000 NRV_TAIL 00000000 l d NRV_TAIL 00000000 NRV_TAIL
@@ -30,11 +30,14 @@ SYMBOL TABLE:
00000000 l d LZMA_DEC20 00000000 LZMA_DEC20 00000000 l d LZMA_DEC20 00000000 LZMA_DEC20
00000000 l d CFLUSH 00000000 CFLUSH 00000000 l d CFLUSH 00000000 CFLUSH
00000000 g ELFMAINX 00000000 _start 00000000 g ELFMAINX 00000000 _start
00000000 *UND* 00000000 ADRM
00000000 *UND* 00000000 LENM
00000000 *UND* 00000000 LENU
00000000 *UND* 00000000 O_BINFO 00000000 *UND* 00000000 O_BINFO
RELOCATION RECORDS FOR [ELFMAINX]: RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000 R_PPC_REL24 ELFMAINZ+0x000000d8 00000000 R_PPC_REL24 ELFMAINZ+0x0000011c
RELOCATION RECORDS FOR [NRV2E]: RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -58,5 +61,8 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]: RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
000000ac R_PPC_REL14 ELFMAINY 000000a0 R_PPC_REL14 ELFMAINY
000000e8 R_PPC_ADDR32 O_BINFO 00000130 R_PPC_ADDR32 ADRM
00000134 R_PPC_ADDR32 LENM
00000138 R_PPC_ADDR32 LENU
0000013c R_PPC_ADDR32 O_BINFO
+18 -18
View File
@@ -9,30 +9,30 @@ Linker script and memory map
TARGET(elf32-powerpc) TARGET(elf32-powerpc)
0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc) 0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000100080 0xc5c .text 0x0000000000100080 0xd54
*(.text) *(.text)
.text 0x0000000000100080 0x10c tmp/powerpc-linux.elf-fold.o .text 0x0000000000100080 0x128 tmp/powerpc-linux.elf-fold.o
0x000000000010017c munmap 0x0000000000100198 munmap
0x0000000000100140 mmap 0x000000000010015c mmap
0x000000000010015c read 0x0000000000100178 read
0x0000000000100154 exit 0x0000000000100170 exit
0x0000000000100184 brk 0x00000000001001a0 brk
0x0000000000100164 open 0x0000000000100180 open
0x0000000000100174 mprotect 0x0000000000100190 mprotect
0x000000000010016c close 0x0000000000100188 close
.text 0x000000000010018c 0xb50 tmp/powerpc-linux.elf-main.o .text 0x00000000001001a8 0xc2c tmp/powerpc-linux.elf-main.o
0x0000000000100ab0 upx_main 0x0000000000100ad0 upx_main
*(.data) *(.data)
.data 0x0000000000100cdc 0x0 tmp/powerpc-linux.elf-fold.o .data 0x0000000000100dd4 0x0 tmp/powerpc-linux.elf-fold.o
.data 0x0000000000100cdc 0x0 tmp/powerpc-linux.elf-main.o .data 0x0000000000100dd4 0x0 tmp/powerpc-linux.elf-main.o
.data .data
.bss 0x0000000000100cdc 0x0 .bss 0x0000000000100dd4 0x0
.bss 0x0000000000100cdc 0x0 tmp/powerpc-linux.elf-fold.o .bss 0x0000000000100dd4 0x0 tmp/powerpc-linux.elf-fold.o
.bss 0x0000000000100cdc 0x0 tmp/powerpc-linux.elf-main.o .bss 0x0000000000100dd4 0x0 tmp/powerpc-linux.elf-main.o
.rela.dyn 0x0000000000100cdc 0x0 .rela.dyn 0x0000000000100dd4 0x0
.rela.text 0x0000000000000000 0x0 tmp/powerpc-linux.elf-fold.o .rela.text 0x0000000000000000 0x0 tmp/powerpc-linux.elf-fold.o
LOAD tmp/powerpc-linux.elf-fold.o LOAD tmp/powerpc-linux.elf-fold.o
LOAD tmp/powerpc-linux.elf-main.o LOAD tmp/powerpc-linux.elf-main.o
@@ -4,17 +4,17 @@ Sections:
Idx Name Size VMA LMA File off Algn Flags Idx Name Size VMA LMA File off Algn Flags
0 MACOS000 00000008 0000000000000000 0000000000000000 00000040 2**0 CONTENTS, RELOC, READONLY 0 MACOS000 00000008 0000000000000000 0000000000000000 00000040 2**0 CONTENTS, RELOC, READONLY
1 NRV_HEAD 00000000 0000000000000000 0000000000000000 00000048 2**0 CONTENTS, READONLY 1 NRV_HEAD 00000000 0000000000000000 0000000000000000 00000048 2**0 CONTENTS, READONLY
2 NRV2E 00000168 0000000000000000 0000000000000000 00000048 2**0 CONTENTS, RELOC, READONLY 2 NRV2E 00000154 0000000000000000 0000000000000000 00000048 2**0 CONTENTS, RELOC, READONLY
3 NRV2D 00000144 0000000000000000 0000000000000000 000001b0 2**0 CONTENTS, RELOC, READONLY 3 NRV2D 00000144 0000000000000000 0000000000000000 0000019c 2**0 CONTENTS, RELOC, READONLY
4 NRV2B 00000118 0000000000000000 0000000000000000 000002f4 2**0 CONTENTS, RELOC, READONLY 4 NRV2B 000000f8 0000000000000000 0000000000000000 000002e0 2**0 CONTENTS, RELOC, READONLY
5 LZMA_ELF00 00000094 0000000000000000 0000000000000000 0000040c 2**0 CONTENTS, RELOC, READONLY 5 LZMA_ELF00 00000094 0000000000000000 0000000000000000 000003d8 2**0 CONTENTS, RELOC, READONLY
6 LZMA_DEC10 00000bb8 0000000000000000 0000000000000000 000004a0 2**0 CONTENTS, READONLY 6 LZMA_DEC30 00000028 0000000000000000 0000000000000000 0000046c 2**0 CONTENTS, READONLY
7 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 00001058 2**0 CONTENTS, READONLY 7 LZMA_DEC10 0000109c 0000000000000000 0000000000000000 00000494 2**0 CONTENTS, READONLY
8 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00001c88 2**0 CONTENTS, READONLY 8 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 00001530 2**0 CONTENTS, READONLY
9 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00001cb0 2**0 CONTENTS, READONLY 9 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00002160 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 0000000000000000 0000000000000000 00001ccc 2**0 CONTENTS, READONLY 10 CFLUSH 00000024 0000000000000000 0000000000000000 0000217c 2**0 CONTENTS, READONLY
11 ELFMAINY 00000000 0000000000000000 0000000000000000 00001cf0 2**0 CONTENTS, READONLY 11 ELFMAINY 00000000 0000000000000000 0000000000000000 000021a0 2**0 CONTENTS, READONLY
12 ELFMAINZ 000002e8 0000000000000000 0000000000000000 00001cf0 2**0 CONTENTS, READONLY 12 ELFMAINZ 000002e8 0000000000000000 0000000000000000 000021a0 2**0 CONTENTS, READONLY
SYMBOL TABLE: SYMBOL TABLE:
0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30 0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30
0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL 0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL
@@ -37,7 +37,7 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [NRV2E]: RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000d4 R_PPC64_REL14 NRV_TAIL 00000000000000c0 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [NRV2D]: RELOCATION RECORDS FOR [NRV2D]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -45,7 +45,7 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [NRV2B]: RELOCATION RECORDS FOR [NRV2B]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000b8 R_PPC64_REL14 NRV_TAIL 0000000000000098 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [LZMA_ELF00]: RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -4,17 +4,17 @@ Sections:
Idx Name Size VMA LMA File off Algn Flags Idx Name Size VMA LMA File off Algn Flags
0 MACOS000 00000004 0000000000000000 0000000000000000 00000040 2**0 CONTENTS, RELOC, READONLY 0 MACOS000 00000004 0000000000000000 0000000000000000 00000040 2**0 CONTENTS, RELOC, READONLY
1 NRV_HEAD 00000000 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, READONLY 1 NRV_HEAD 00000000 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, READONLY
2 NRV2E 00000168 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, RELOC, READONLY 2 NRV2E 00000154 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, RELOC, READONLY
3 NRV2D 00000144 0000000000000000 0000000000000000 000001ac 2**0 CONTENTS, RELOC, READONLY 3 NRV2D 00000144 0000000000000000 0000000000000000 00000198 2**0 CONTENTS, RELOC, READONLY
4 NRV2B 00000118 0000000000000000 0000000000000000 000002f0 2**0 CONTENTS, RELOC, READONLY 4 NRV2B 000000f8 0000000000000000 0000000000000000 000002dc 2**0 CONTENTS, RELOC, READONLY
5 LZMA_ELF00 00000094 0000000000000000 0000000000000000 00000408 2**0 CONTENTS, RELOC, READONLY 5 LZMA_ELF00 00000094 0000000000000000 0000000000000000 000003d4 2**0 CONTENTS, RELOC, READONLY
6 LZMA_DEC10 00000bb8 0000000000000000 0000000000000000 0000049c 2**0 CONTENTS, READONLY 6 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00000468 2**0 CONTENTS, READONLY
7 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 00001054 2**0 CONTENTS, READONLY 7 LZMA_DEC10 0000109c 0000000000000000 0000000000000000 00000490 2**0 CONTENTS, READONLY
8 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00001c84 2**0 CONTENTS, READONLY 8 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 0000152c 2**0 CONTENTS, READONLY
9 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00001cac 2**0 CONTENTS, READONLY 9 NRV_TAIL 0000001c 0000000000000000 0000000000000000 0000215c 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 0000000000000000 0000000000000000 00001cc8 2**0 CONTENTS, READONLY 10 CFLUSH 00000024 0000000000000000 0000000000000000 00002178 2**0 CONTENTS, READONLY
11 ELFMAINY 00000000 0000000000000000 0000000000000000 00001cec 2**0 CONTENTS, READONLY 11 ELFMAINY 00000000 0000000000000000 0000000000000000 0000219c 2**0 CONTENTS, READONLY
12 ELFMAINZ 00000060 0000000000000000 0000000000000000 00001cec 2**0 CONTENTS, RELOC, READONLY 12 ELFMAINZ 00000058 0000000000000000 0000000000000000 0000219c 2**0 CONTENTS, READONLY
SYMBOL TABLE: SYMBOL TABLE:
0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30 0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30
0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL 0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL
@@ -30,15 +30,14 @@ SYMBOL TABLE:
0000000000000000 l d CFLUSH 0000000000000000 CFLUSH 0000000000000000 l d CFLUSH 0000000000000000 CFLUSH
0000000000000000 l d ELFMAINY 0000000000000000 ELFMAINY 0000000000000000 l d ELFMAINY 0000000000000000 ELFMAINY
0000000000000000 g MACOS000 0000000000000000 _start 0000000000000000 g MACOS000 0000000000000000 _start
0000000000000000 *UND* 0000000000000000 O_BINFO
RELOCATION RECORDS FOR [MACOS000]: RELOCATION RECORDS FOR [MACOS000]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
0000000000000000 R_PPC64_REL24 ELFMAINZ+0x0000000000000050 0000000000000000 R_PPC64_REL24 ELFMAINZ+0x0000000000000048
RELOCATION RECORDS FOR [NRV2E]: RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000d4 R_PPC64_REL14 NRV_TAIL 00000000000000c0 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [NRV2D]: RELOCATION RECORDS FOR [NRV2D]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -46,12 +45,8 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [NRV2B]: RELOCATION RECORDS FOR [NRV2B]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000b8 R_PPC64_REL14 NRV_TAIL 0000000000000098 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [LZMA_ELF00]: RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
0000000000000004 R_PPC64_REL14 LZMA_DEC30+0x0000000000000028 0000000000000004 R_PPC64_REL14 LZMA_DEC30+0x0000000000000028
RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE
000000000000005c R_PPC64_ADDR32 O_BINFO
@@ -4,17 +4,17 @@ Sections:
Idx Name Size VMA LMA File off Algn Flags Idx Name Size VMA LMA File off Algn Flags
0 ELFMAINX 00000004 0000000000000000 0000000000000000 00000040 2**0 CONTENTS, RELOC, READONLY 0 ELFMAINX 00000004 0000000000000000 0000000000000000 00000040 2**0 CONTENTS, RELOC, READONLY
1 NRV_HEAD 00000000 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, READONLY 1 NRV_HEAD 00000000 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, READONLY
2 NRV2E 00000168 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, RELOC, READONLY 2 NRV2E 00000154 0000000000000000 0000000000000000 00000044 2**0 CONTENTS, RELOC, READONLY
3 NRV2D 00000144 0000000000000000 0000000000000000 000001ac 2**0 CONTENTS, RELOC, READONLY 3 NRV2D 00000144 0000000000000000 0000000000000000 00000198 2**0 CONTENTS, RELOC, READONLY
4 NRV2B 00000118 0000000000000000 0000000000000000 000002f0 2**0 CONTENTS, RELOC, READONLY 4 NRV2B 000000f8 0000000000000000 0000000000000000 000002dc 2**0 CONTENTS, RELOC, READONLY
5 LZMA_ELF00 00000094 0000000000000000 0000000000000000 00000408 2**0 CONTENTS, RELOC, READONLY 5 LZMA_ELF00 00000094 0000000000000000 0000000000000000 000003d4 2**0 CONTENTS, RELOC, READONLY
6 LZMA_DEC10 00000bb8 0000000000000000 0000000000000000 0000049c 2**0 CONTENTS, READONLY 6 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00000468 2**0 CONTENTS, READONLY
7 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 00001054 2**0 CONTENTS, READONLY 7 LZMA_DEC10 0000109c 0000000000000000 0000000000000000 00000490 2**0 CONTENTS, READONLY
8 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00001c84 2**0 CONTENTS, READONLY 8 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 0000152c 2**0 CONTENTS, READONLY
9 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00001cac 2**0 CONTENTS, READONLY 9 NRV_TAIL 0000001c 0000000000000000 0000000000000000 0000215c 2**0 CONTENTS, READONLY
10 CFLUSH 00000024 0000000000000000 0000000000000000 00001cc8 2**0 CONTENTS, READONLY 10 CFLUSH 00000024 0000000000000000 0000000000000000 00002178 2**0 CONTENTS, READONLY
11 ELFMAINY 00000022 0000000000000000 0000000000000000 00001cec 2**0 CONTENTS, RELOC, READONLY 11 ELFMAINY 00000022 0000000000000000 0000000000000000 0000219c 2**0 CONTENTS, RELOC, READONLY
12 ELFMAINZ 00000110 0000000000000000 0000000000000000 00001d10 2**2 CONTENTS, RELOC, READONLY 12 ELFMAINZ 0000010c 0000000000000000 0000000000000000 000021c0 2**2 CONTENTS, RELOC, READONLY
SYMBOL TABLE: SYMBOL TABLE:
0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30 0000000000000000 l d LZMA_DEC30 0000000000000000 LZMA_DEC30
0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL 0000000000000000 l d NRV_TAIL 0000000000000000 NRV_TAIL
@@ -34,11 +34,11 @@ SYMBOL TABLE:
RELOCATION RECORDS FOR [ELFMAINX]: RELOCATION RECORDS FOR [ELFMAINX]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
0000000000000000 R_PPC64_REL24 ELFMAINZ+0x0000000000000088 0000000000000000 R_PPC64_REL24 ELFMAINZ+0x0000000000000084
RELOCATION RECORDS FOR [NRV2E]: RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000d4 R_PPC64_REL14 NRV_TAIL 00000000000000c0 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [NRV2D]: RELOCATION RECORDS FOR [NRV2D]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -46,7 +46,7 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [NRV2B]: RELOCATION RECORDS FOR [NRV2B]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000b8 R_PPC64_REL14 NRV_TAIL 0000000000000098 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [LZMA_ELF00]: RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -59,4 +59,4 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [ELFMAINZ]: RELOCATION RECORDS FOR [ELFMAINZ]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
0000000000000058 R_PPC64_REL14 ELFMAINY 0000000000000058 R_PPC64_REL14 ELFMAINY
000000000000010c R_PPC64_ADDR32 O_BINFO 0000000000000108 R_PPC64_ADDR32 O_BINFO
+23 -23
View File
@@ -9,36 +9,36 @@ Linker script and memory map
TARGET(elf64-powerpcle) TARGET(elf64-powerpcle)
0x00000000001000bc . = ((0x100000 + SIZEOF_HEADERS) + 0xc) 0x00000000001000bc . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x00000000001000bc 0x80c .text 0x00000000001000bc 0x810
*(.text) *(.text)
.text 0x00000000001000bc 0x1ac tmp/powerpc64le-linux.elf-fold.o .text 0x00000000001000bc 0x1b0 tmp/powerpc64le-linux.elf-fold.o
0x000000000010021c mmap 0x0000000000100220 exit
0x0000000000100230 exit 0x0000000000100228 brk
0x0000000000100238 read 0x0000000000100230 close
0x0000000000100240 open 0x0000000000100238 open
0x0000000000100248 close 0x0000000000100240 munmap
0x0000000000100250 mprotect 0x0000000000100248 mprotect
0x0000000000100258 munmap 0x0000000000100250 read
0x0000000000100260 brk 0x0000000000100258 mmap
.text 0x0000000000100268 0x660 tmp/powerpc64le-linux.elf-main.o .text 0x000000000010026c 0x660 tmp/powerpc64le-linux.elf-main.o
*(.data) *(.data)
.data 0x00000000001008c8 0x0 tmp/powerpc64le-linux.elf-fold.o .data 0x00000000001008cc 0x0 tmp/powerpc64le-linux.elf-fold.o
.data 0x00000000001008c8 0x0 tmp/powerpc64le-linux.elf-main.o .data 0x00000000001008cc 0x0 tmp/powerpc64le-linux.elf-main.o
.sfpr 0x00000000001008c8 0xa4 .sfpr 0x00000000001008cc 0xa4
.sfpr 0x00000000001008c8 0xa4 linker stubs .sfpr 0x00000000001008cc 0xa4 linker stubs
0x00000000001008c8 _savegpr0_14 0x00000000001008cc _savegpr0_14
0x00000000001008f8 _savegpr0_26 0x00000000001008fc _savegpr0_26
0x0000000000100900 _savegpr0_28 0x0000000000100904 _savegpr0_28
0x0000000000100918 _restgpr0_14 0x000000000010091c _restgpr0_14
0x0000000000100948 _restgpr0_26 0x000000000010094c _restgpr0_26
0x0000000000100950 _restgpr0_28 0x0000000000100954 _restgpr0_28
.glink 0x0000000000100970 0x0 .glink 0x0000000000100970 0x0
.glink 0x0000000000100970 0x0 linker stubs .glink 0x0000000000100970 0x0 linker stubs
.eh_frame 0x000000000010096c 0x0 .eh_frame 0x0000000000100970 0x0
.eh_frame 0x000000000010096c 0x0 linker stubs .eh_frame 0x0000000000100970 0x0 linker stubs
.rela.dyn 0x0000000000100970 0x0 .rela.dyn 0x0000000000100970 0x0
.rela.iplt 0x0000000000100970 0x0 linker stubs .rela.iplt 0x0000000000100970 0x0 linker stubs
@@ -6,17 +6,17 @@ Idx Name Size VMA LMA File off Algn
1 LINUX010 00000008 0000000000000000 0000000000000000 00000048 2**0 CONTENTS, RELOC, READONLY 1 LINUX010 00000008 0000000000000000 0000000000000000 00000048 2**0 CONTENTS, RELOC, READONLY
2 LINUX020 00000064 0000000000000000 0000000000000000 00000050 2**0 CONTENTS, READONLY 2 LINUX020 00000064 0000000000000000 0000000000000000 00000050 2**0 CONTENTS, READONLY
3 LINUX030 00000000 0000000000000000 0000000000000000 000000b4 2**0 CONTENTS, READONLY 3 LINUX030 00000000 0000000000000000 0000000000000000 000000b4 2**0 CONTENTS, READONLY
4 NRV2B 00000118 0000000000000000 0000000000000000 000000b4 2**0 CONTENTS, RELOC, READONLY 4 NRV2B 000000f8 0000000000000000 0000000000000000 000000b4 2**0 CONTENTS, RELOC, READONLY
5 NRV2D 00000144 0000000000000000 0000000000000000 000001cc 2**0 CONTENTS, RELOC, READONLY 5 NRV2D 00000144 0000000000000000 0000000000000000 000001ac 2**0 CONTENTS, RELOC, READONLY
6 NRV2E 00000168 0000000000000000 0000000000000000 00000310 2**0 CONTENTS, RELOC, READONLY 6 NRV2E 00000154 0000000000000000 0000000000000000 000002f0 2**0 CONTENTS, RELOC, READONLY
7 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00000478 2**0 CONTENTS, READONLY 7 NRV_TAIL 0000001c 0000000000000000 0000000000000000 00000444 2**0 CONTENTS, READONLY
8 CFLUSH 00000024 0000000000000000 0000000000000000 00000494 2**0 CONTENTS, READONLY 8 CFLUSH 00000024 0000000000000000 0000000000000000 00000460 2**0 CONTENTS, READONLY
9 LZMA 00000000 0000000000000000 0000000000000000 000004b8 2**0 CONTENTS, READONLY 9 LZMA 00000000 0000000000000000 0000000000000000 00000484 2**0 CONTENTS, READONLY
10 LZMA_ELF00 00000094 0000000000000000 0000000000000000 000004b8 2**0 CONTENTS, RELOC, READONLY 10 LZMA_ELF00 00000094 0000000000000000 0000000000000000 00000484 2**0 CONTENTS, RELOC, READONLY
11 LZMA_DEC10 00000bb8 0000000000000000 0000000000000000 0000054c 2**0 CONTENTS, READONLY 11 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00000518 2**0 CONTENTS, READONLY
12 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 00001104 2**0 CONTENTS, READONLY 12 LZMA_DEC10 0000109c 0000000000000000 0000000000000000 00000540 2**0 CONTENTS, READONLY
13 LZMA_DEC30 00000028 0000000000000000 0000000000000000 00001d34 2**0 CONTENTS, READONLY 13 LZMA_DEC20 00000c30 0000000000000000 0000000000000000 000015dc 2**0 CONTENTS, READONLY
14 UPX1HEAD 00000020 0000000000000000 0000000000000000 00001d5c 2**0 CONTENTS, READONLY 14 UPX1HEAD 00000020 0000000000000000 0000000000000000 0000220c 2**0 CONTENTS, READONLY
SYMBOL TABLE: SYMBOL TABLE:
0000000000000000 l d LINUX020 0000000000000000 LINUX020 0000000000000000 l d LINUX020 0000000000000000 LINUX020
0000000000000000 l d LINUX030 0000000000000000 LINUX030 0000000000000000 l d LINUX030 0000000000000000 LINUX030
@@ -48,7 +48,7 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [NRV2B]: RELOCATION RECORDS FOR [NRV2B]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000b8 R_PPC64_REL14 NRV_TAIL 0000000000000098 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [NRV2D]: RELOCATION RECORDS FOR [NRV2D]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
@@ -56,7 +56,7 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [NRV2E]: RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE OFFSET TYPE VALUE
00000000000000d4 R_PPC64_REL14 NRV_TAIL 00000000000000c0 R_PPC64_REL14 NRV_TAIL
RELOCATION RECORDS FOR [LZMA_ELF00]: RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE OFFSET TYPE VALUE