From cd4c18c1fb2d430edab503734f5ec76f43b3676e Mon Sep 17 00:00:00 2001 From: AlinTigaeru Date: Thu, 12 Jan 2023 12:49:38 +0000 Subject: [PATCH] add \proj structure --- MCUME_pico/picocpc/cpc.cpp | 0 MCUME_pico/picocpc/cpc.h | 0 MCUME_pico/picocpc/emuapi.cpp | 0 MCUME_pico/picocpc/emuapi.h | 0 MCUME_pico/picocpc/hello.c | 70 +- MCUME_pico/picocpc/hello.pio | 60 +- MCUME_pico/picocpc/picocpc.cpp | 0 MCUME_pico/picocpc/{ => processor}/Codes.h | 770 +-- MCUME_pico/picocpc/{ => processor}/CodesCB.h | 408 +- MCUME_pico/picocpc/{ => processor}/CodesED.h | 608 +-- MCUME_pico/picocpc/{ => processor}/CodesXCB.h | 128 +- MCUME_pico/picocpc/{ => processor}/CodesXX.h | 792 ++-- MCUME_pico/picocpc/{ => processor}/Tables.h | 894 ++-- MCUME_pico/picocpc/{ => processor}/Z80.c | 1496 +++--- MCUME_pico/picocpc/{ => processor}/Z80.h | 386 +- MCUME_pico/picocpc/{ => roms}/rom464.h | 4122 ++++++++--------- 16 files changed, 4867 insertions(+), 4867 deletions(-) create mode 100644 MCUME_pico/picocpc/cpc.cpp create mode 100644 MCUME_pico/picocpc/cpc.h create mode 100644 MCUME_pico/picocpc/emuapi.cpp create mode 100644 MCUME_pico/picocpc/emuapi.h create mode 100644 MCUME_pico/picocpc/picocpc.cpp rename MCUME_pico/picocpc/{ => processor}/Codes.h (97%) mode change 100755 => 100644 rename MCUME_pico/picocpc/{ => processor}/CodesCB.h (98%) mode change 100755 => 100644 rename MCUME_pico/picocpc/{ => processor}/CodesED.h (96%) mode change 100755 => 100644 rename MCUME_pico/picocpc/{ => processor}/CodesXCB.h (98%) mode change 100755 => 100644 rename MCUME_pico/picocpc/{ => processor}/CodesXX.h (97%) mode change 100755 => 100644 rename MCUME_pico/picocpc/{ => processor}/Tables.h (98%) rename MCUME_pico/picocpc/{ => processor}/Z80.c (96%) rename MCUME_pico/picocpc/{ => processor}/Z80.h (97%) rename MCUME_pico/picocpc/{ => roms}/rom464.h (98%) diff --git a/MCUME_pico/picocpc/cpc.cpp b/MCUME_pico/picocpc/cpc.cpp new file mode 100644 index 0000000..e69de29 diff --git a/MCUME_pico/picocpc/cpc.h b/MCUME_pico/picocpc/cpc.h new file mode 100644 index 0000000..e69de29 diff --git a/MCUME_pico/picocpc/emuapi.cpp b/MCUME_pico/picocpc/emuapi.cpp new file mode 100644 index 0000000..e69de29 diff --git a/MCUME_pico/picocpc/emuapi.h b/MCUME_pico/picocpc/emuapi.h new file mode 100644 index 0000000..e69de29 diff --git a/MCUME_pico/picocpc/hello.c b/MCUME_pico/picocpc/hello.c index 14b9d73..2e36002 100644 --- a/MCUME_pico/picocpc/hello.c +++ b/MCUME_pico/picocpc/hello.c @@ -1,36 +1,36 @@ -#include "pico/stdlib.h" -#include "hardware/pio.h" - -#include "hello.pio.h" - -int main() { -#ifndef PICO_DEFAULT_LED_PIN -#warning pio/hello_pio example requires a board with a regular LED -#else - // Choose which PIO instance to use (there are two instances) - PIO pio = pio0; - - // Our assembled program needs to be loaded into this PIO's instruction - // memory. This SDK function will find a location (offset) in the - // instruction memory where there is enough space for our program. We need - // to remember this location! - uint offset = pio_add_program(pio, &hello_program); - - // Find a free state machine on our chosen PIO (erroring if there are - // none). Configure it to run our program, and start it, using the - // helper function we included in our .pio file. - uint sm = pio_claim_unused_sm(pio, true); - hello_program_init(pio, sm, offset, PICO_DEFAULT_LED_PIN); - - // The state machine is now running. Any value we push to its TX FIFO will - // appear on the LED pin. - while (true) { - // Blink - pio_sm_put_blocking(pio, sm, 1); - sleep_ms(500); - // Blonk - pio_sm_put_blocking(pio, sm, 0); - sleep_ms(500); - } -#endif +#include "pico/stdlib.h" +#include "hardware/pio.h" + +#include "hello.pio.h" + +int main() { +#ifndef PICO_DEFAULT_LED_PIN +#warning pio/hello_pio example requires a board with a regular LED +#else + // Choose which PIO instance to use (there are two instances) + PIO pio = pio0; + + // Our assembled program needs to be loaded into this PIO's instruction + // memory. This SDK function will find a location (offset) in the + // instruction memory where there is enough space for our program. We need + // to remember this location! + uint offset = pio_add_program(pio, &hello_program); + + // Find a free state machine on our chosen PIO (erroring if there are + // none). Configure it to run our program, and start it, using the + // helper function we included in our .pio file. + uint sm = pio_claim_unused_sm(pio, true); + hello_program_init(pio, sm, offset, PICO_DEFAULT_LED_PIN); + + // The state machine is now running. Any value we push to its TX FIFO will + // appear on the LED pin. + while (true) { + // Blink + pio_sm_put_blocking(pio, sm, 1); + sleep_ms(500); + // Blonk + pio_sm_put_blocking(pio, sm, 0); + sleep_ms(500); + } +#endif } \ No newline at end of file diff --git a/MCUME_pico/picocpc/hello.pio b/MCUME_pico/picocpc/hello.pio index b21600a..d07c0ff 100644 --- a/MCUME_pico/picocpc/hello.pio +++ b/MCUME_pico/picocpc/hello.pio @@ -1,30 +1,30 @@ -.program hello - -; Repeatedly get one word of data from the TX FIFO, stalling when the FIFO is -; empty. Write the least significant bit to the OUT pin group. - -loop: - pull - out pins, 1 - jmp loop - -% c-sdk { -static inline void hello_program_init(PIO pio, uint sm, uint offset, uint pin) { - pio_sm_config c = hello_program_get_default_config(offset); - - // Map the state machine's OUT pin group to one pin, namely the 'pin' parameter to this function - sm_config_set_out_pins(&c, pin, 1); - - // Set this pin's GPIO function (connect PIO to the pad) - pio_gpio_init(pio, pin); - - // Set the pin direction to output at the PIO - pio_sm_set_consecutive_pindirs(pio, sm, pin, 1, true); - - // Load our configuration, and jump to the start of the program - pio_sm_init(pio, sm, offset, &c); - - // Set the state machine running - pio_sm_set_enabled(pio, sm, true); -} -%} +.program hello + +; Repeatedly get one word of data from the TX FIFO, stalling when the FIFO is +; empty. Write the least significant bit to the OUT pin group. + +loop: + pull + out pins, 1 + jmp loop + +% c-sdk { +static inline void hello_program_init(PIO pio, uint sm, uint offset, uint pin) { + pio_sm_config c = hello_program_get_default_config(offset); + + // Map the state machine's OUT pin group to one pin, namely the 'pin' parameter to this function + sm_config_set_out_pins(&c, pin, 1); + + // Set this pin's GPIO function (connect PIO to the pad) + pio_gpio_init(pio, pin); + + // Set the pin direction to output at the PIO + pio_sm_set_consecutive_pindirs(pio, sm, pin, 1, true); + + // Load our configuration, and jump to the start of the program + pio_sm_init(pio, sm, offset, &c); + + // Set the state machine running + pio_sm_set_enabled(pio, sm, true); +} +%} diff --git a/MCUME_pico/picocpc/picocpc.cpp b/MCUME_pico/picocpc/picocpc.cpp new file mode 100644 index 0000000..e69de29 diff --git a/MCUME_pico/picocpc/Codes.h b/MCUME_pico/picocpc/processor/Codes.h old mode 100755 new mode 100644 similarity index 97% rename from MCUME_pico/picocpc/Codes.h rename to MCUME_pico/picocpc/processor/Codes.h index ab5cc6e..2dcee81 --- a/MCUME_pico/picocpc/Codes.h +++ b/MCUME_pico/picocpc/processor/Codes.h @@ -1,385 +1,385 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** Codes.h **/ -/** **/ -/** This file contains implementation for the main table of **/ -/** Z80 commands. It is included from Z80.c. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ - -case JR_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; -case JR_NC: if(R->AF.B.l&C_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; -case JR_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; -case JR_C: if(R->AF.B.l&C_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; - -case JP_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_Z: if(R->AF.B.l&Z_FLAG) { M_JP; } else R->PC.W+=2; break; -case JP_C: if(R->AF.B.l&C_FLAG) { M_JP; } else R->PC.W+=2; break; -case JP_PE: if(R->AF.B.l&P_FLAG) { M_JP; } else R->PC.W+=2; break; -case JP_M: if(R->AF.B.l&S_FLAG) { M_JP; } else R->PC.W+=2; break; - -case RET_NZ: if(!(R->AF.B.l&Z_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_NC: if(!(R->AF.B.l&C_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_PO: if(!(R->AF.B.l&P_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_P: if(!(R->AF.B.l&S_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=6;M_RET; } break; -case RET_C: if(R->AF.B.l&C_FLAG) { R->ICount-=6;M_RET; } break; -case RET_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=6;M_RET; } break; -case RET_M: if(R->AF.B.l&S_FLAG) { R->ICount-=6;M_RET; } break; - -case CALL_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; -case CALL_C: if(R->AF.B.l&C_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; -case CALL_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; -case CALL_M: if(R->AF.B.l&S_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; - -case ADD_B: M_ADD(R->BC.B.h);break; -case ADD_C: M_ADD(R->BC.B.l);break; -case ADD_D: M_ADD(R->DE.B.h);break; -case ADD_E: M_ADD(R->DE.B.l);break; -case ADD_H: M_ADD(R->HL.B.h);break; -case ADD_L: M_ADD(R->HL.B.l);break; -case ADD_A: M_ADD(R->AF.B.h);break; -case ADD_xHL: I=RdZ80(R->HL.W);M_ADD(I);break; -case ADD_BYTE: I=OpZ80(R->PC.W++);M_ADD(I);break; - -case SUB_B: M_SUB(R->BC.B.h);break; -case SUB_C: M_SUB(R->BC.B.l);break; -case SUB_D: M_SUB(R->DE.B.h);break; -case SUB_E: M_SUB(R->DE.B.l);break; -case SUB_H: M_SUB(R->HL.B.h);break; -case SUB_L: M_SUB(R->HL.B.l);break; -case SUB_A: R->AF.B.h=0;R->AF.B.l=N_FLAG|Z_FLAG;break; -case SUB_xHL: I=RdZ80(R->HL.W);M_SUB(I);break; -case SUB_BYTE: I=OpZ80(R->PC.W++);M_SUB(I);break; - -case AND_B: M_AND(R->BC.B.h);break; -case AND_C: M_AND(R->BC.B.l);break; -case AND_D: M_AND(R->DE.B.h);break; -case AND_E: M_AND(R->DE.B.l);break; -case AND_H: M_AND(R->HL.B.h);break; -case AND_L: M_AND(R->HL.B.l);break; -case AND_A: M_AND(R->AF.B.h);break; -case AND_xHL: I=RdZ80(R->HL.W);M_AND(I);break; -case AND_BYTE: I=OpZ80(R->PC.W++);M_AND(I);break; - -case OR_B: M_OR(R->BC.B.h);break; -case OR_C: M_OR(R->BC.B.l);break; -case OR_D: M_OR(R->DE.B.h);break; -case OR_E: M_OR(R->DE.B.l);break; -case OR_H: M_OR(R->HL.B.h);break; -case OR_L: M_OR(R->HL.B.l);break; -case OR_A: M_OR(R->AF.B.h);break; -case OR_xHL: I=RdZ80(R->HL.W);M_OR(I);break; -case OR_BYTE: I=OpZ80(R->PC.W++);M_OR(I);break; - -case ADC_B: M_ADC(R->BC.B.h);break; -case ADC_C: M_ADC(R->BC.B.l);break; -case ADC_D: M_ADC(R->DE.B.h);break; -case ADC_E: M_ADC(R->DE.B.l);break; -case ADC_H: M_ADC(R->HL.B.h);break; -case ADC_L: M_ADC(R->HL.B.l);break; -case ADC_A: M_ADC(R->AF.B.h);break; -case ADC_xHL: I=RdZ80(R->HL.W);M_ADC(I);break; -case ADC_BYTE: I=OpZ80(R->PC.W++);M_ADC(I);break; - -case SBC_B: M_SBC(R->BC.B.h);break; -case SBC_C: M_SBC(R->BC.B.l);break; -case SBC_D: M_SBC(R->DE.B.h);break; -case SBC_E: M_SBC(R->DE.B.l);break; -case SBC_H: M_SBC(R->HL.B.h);break; -case SBC_L: M_SBC(R->HL.B.l);break; -case SBC_A: M_SBC(R->AF.B.h);break; -case SBC_xHL: I=RdZ80(R->HL.W);M_SBC(I);break; -case SBC_BYTE: I=OpZ80(R->PC.W++);M_SBC(I);break; - -case XOR_B: M_XOR(R->BC.B.h);break; -case XOR_C: M_XOR(R->BC.B.l);break; -case XOR_D: M_XOR(R->DE.B.h);break; -case XOR_E: M_XOR(R->DE.B.l);break; -case XOR_H: M_XOR(R->HL.B.h);break; -case XOR_L: M_XOR(R->HL.B.l);break; -case XOR_A: R->AF.B.h=0;R->AF.B.l=P_FLAG|Z_FLAG;break; -case XOR_xHL: I=RdZ80(R->HL.W);M_XOR(I);break; -case XOR_BYTE: I=OpZ80(R->PC.W++);M_XOR(I);break; - -case CP_B: M_CP(R->BC.B.h);break; -case CP_C: M_CP(R->BC.B.l);break; -case CP_D: M_CP(R->DE.B.h);break; -case CP_E: M_CP(R->DE.B.l);break; -case CP_H: M_CP(R->HL.B.h);break; -case CP_L: M_CP(R->HL.B.l);break; -case CP_A: R->AF.B.l=N_FLAG|Z_FLAG;break; -case CP_xHL: I=RdZ80(R->HL.W);M_CP(I);break; -case CP_BYTE: I=OpZ80(R->PC.W++);M_CP(I);break; - -case LD_BC_WORD: M_LDWORD(BC);break; -case LD_DE_WORD: M_LDWORD(DE);break; -case LD_HL_WORD: M_LDWORD(HL);break; -case LD_SP_WORD: M_LDWORD(SP);break; - -case LD_PC_HL: R->PC.W=R->HL.W;JumpZ80(R->PC.W);break; -case LD_SP_HL: R->SP.W=R->HL.W;break; -case LD_A_xBC: R->AF.B.h=RdZ80(R->BC.W);break; -case LD_A_xDE: R->AF.B.h=RdZ80(R->DE.W);break; - -case ADD_HL_BC: M_ADDW(HL,BC);break; -case ADD_HL_DE: M_ADDW(HL,DE);break; -case ADD_HL_HL: M_ADDW(HL,HL);break; -case ADD_HL_SP: M_ADDW(HL,SP);break; - -case DEC_BC: R->BC.W--;break; -case DEC_DE: R->DE.W--;break; -case DEC_HL: R->HL.W--;break; -case DEC_SP: R->SP.W--;break; - -case INC_BC: R->BC.W++;break; -case INC_DE: R->DE.W++;break; -case INC_HL: R->HL.W++;break; -case INC_SP: R->SP.W++;break; - -case DEC_B: M_DEC(R->BC.B.h);break; -case DEC_C: M_DEC(R->BC.B.l);break; -case DEC_D: M_DEC(R->DE.B.h);break; -case DEC_E: M_DEC(R->DE.B.l);break; -case DEC_H: M_DEC(R->HL.B.h);break; -case DEC_L: M_DEC(R->HL.B.l);break; -case DEC_A: M_DEC(R->AF.B.h);break; -case DEC_xHL: I=RdZ80(R->HL.W);M_DEC(I);WrZ80(R->HL.W,I);break; - -case INC_B: M_INC(R->BC.B.h);break; -case INC_C: M_INC(R->BC.B.l);break; -case INC_D: M_INC(R->DE.B.h);break; -case INC_E: M_INC(R->DE.B.l);break; -case INC_H: M_INC(R->HL.B.h);break; -case INC_L: M_INC(R->HL.B.l);break; -case INC_A: M_INC(R->AF.B.h);break; -case INC_xHL: I=RdZ80(R->HL.W);M_INC(I);WrZ80(R->HL.W,I);break; - -case RLCA: - I=R->AF.B.h&0x80? C_FLAG:0; - R->AF.B.h=(R->AF.B.h<<1)|I; - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; -case RLA: - I=R->AF.B.h&0x80? C_FLAG:0; - R->AF.B.h=(R->AF.B.h<<1)|(R->AF.B.l&C_FLAG); - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; -case RRCA: - I=R->AF.B.h&0x01; - R->AF.B.h=(R->AF.B.h>>1)|(I? 0x80:0); - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; -case RRA: - I=R->AF.B.h&0x01; - R->AF.B.h=(R->AF.B.h>>1)|(R->AF.B.l&C_FLAG? 0x80:0); - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; - -case RST00: M_RST(0x0000);break; -case RST08: M_RST(0x0008);break; -case RST10: M_RST(0x0010);break; -case RST18: M_RST(0x0018);break; -case RST20: M_RST(0x0020);break; -case RST28: M_RST(0x0028);break; -case RST30: M_RST(0x0030);break; -case RST38: M_RST(0x0038);break; - -case PUSH_BC: M_PUSH(BC);break; -case PUSH_DE: M_PUSH(DE);break; -case PUSH_HL: M_PUSH(HL);break; -case PUSH_AF: M_PUSH(AF);break; - -case POP_BC: M_POP(BC);break; -case POP_DE: M_POP(DE);break; -case POP_HL: M_POP(HL);break; -case POP_AF: M_POP(AF);break; - -case DJNZ: if(--R->BC.B.h) { R->ICount-=5;M_JR; } else R->PC.W++;break; -case JP: M_JP;break; -case JR: M_JR;break; -case CALL: M_CALL;break; -case RET: M_RET;break; -case SCF: S(C_FLAG);R(N_FLAG|H_FLAG);break; -case CPL: R->AF.B.h=~R->AF.B.h;S(N_FLAG|H_FLAG);break; -case NOP: break; -case OUTA: I=OpZ80(R->PC.W++);OutZ80(I|(R->AF.W&0xFF00),R->AF.B.h);break; -case INA: I=OpZ80(R->PC.W++);R->AF.B.h=InZ80(I|(R->AF.W&0xFF00));break; - -case HALT: - R->PC.W--; - R->IFF|=IFF_HALT; - R->IBackup=0; - R->ICount=0; - break; - -case DI: - if(R->IFF&IFF_EI) R->ICount+=R->IBackup-1; - R->IFF&=~(IFF_1|IFF_2|IFF_EI); - break; - -case EI: - if(!(R->IFF&(IFF_1|IFF_EI))) - { - R->IFF|=IFF_2|IFF_EI; - R->IBackup=R->ICount; - R->ICount=1; - } - break; - -case CCF: - R->AF.B.l^=C_FLAG;R(N_FLAG|H_FLAG); - R->AF.B.l|=R->AF.B.l&C_FLAG? 0:H_FLAG; - break; - -case EXX: - J.W=R->BC.W;R->BC.W=R->BC1.W;R->BC1.W=J.W; - J.W=R->DE.W;R->DE.W=R->DE1.W;R->DE1.W=J.W; - J.W=R->HL.W;R->HL.W=R->HL1.W;R->HL1.W=J.W; - break; - -case EX_DE_HL: J.W=R->DE.W;R->DE.W=R->HL.W;R->HL.W=J.W;break; -case EX_AF_AF: J.W=R->AF.W;R->AF.W=R->AF1.W;R->AF1.W=J.W;break; - -case LD_B_B: R->BC.B.h=R->BC.B.h;break; -case LD_C_B: R->BC.B.l=R->BC.B.h;break; -case LD_D_B: R->DE.B.h=R->BC.B.h;break; -case LD_E_B: R->DE.B.l=R->BC.B.h;break; -case LD_H_B: R->HL.B.h=R->BC.B.h;break; -case LD_L_B: R->HL.B.l=R->BC.B.h;break; -case LD_A_B: R->AF.B.h=R->BC.B.h;break; -case LD_xHL_B: WrZ80(R->HL.W,R->BC.B.h);break; - -case LD_B_C: R->BC.B.h=R->BC.B.l;break; -case LD_C_C: R->BC.B.l=R->BC.B.l;break; -case LD_D_C: R->DE.B.h=R->BC.B.l;break; -case LD_E_C: R->DE.B.l=R->BC.B.l;break; -case LD_H_C: R->HL.B.h=R->BC.B.l;break; -case LD_L_C: R->HL.B.l=R->BC.B.l;break; -case LD_A_C: R->AF.B.h=R->BC.B.l;break; -case LD_xHL_C: WrZ80(R->HL.W,R->BC.B.l);break; - -case LD_B_D: R->BC.B.h=R->DE.B.h;break; -case LD_C_D: R->BC.B.l=R->DE.B.h;break; -case LD_D_D: R->DE.B.h=R->DE.B.h;break; -case LD_E_D: R->DE.B.l=R->DE.B.h;break; -case LD_H_D: R->HL.B.h=R->DE.B.h;break; -case LD_L_D: R->HL.B.l=R->DE.B.h;break; -case LD_A_D: R->AF.B.h=R->DE.B.h;break; -case LD_xHL_D: WrZ80(R->HL.W,R->DE.B.h);break; - -case LD_B_E: R->BC.B.h=R->DE.B.l;break; -case LD_C_E: R->BC.B.l=R->DE.B.l;break; -case LD_D_E: R->DE.B.h=R->DE.B.l;break; -case LD_E_E: R->DE.B.l=R->DE.B.l;break; -case LD_H_E: R->HL.B.h=R->DE.B.l;break; -case LD_L_E: R->HL.B.l=R->DE.B.l;break; -case LD_A_E: R->AF.B.h=R->DE.B.l;break; -case LD_xHL_E: WrZ80(R->HL.W,R->DE.B.l);break; - -case LD_B_H: R->BC.B.h=R->HL.B.h;break; -case LD_C_H: R->BC.B.l=R->HL.B.h;break; -case LD_D_H: R->DE.B.h=R->HL.B.h;break; -case LD_E_H: R->DE.B.l=R->HL.B.h;break; -case LD_H_H: R->HL.B.h=R->HL.B.h;break; -case LD_L_H: R->HL.B.l=R->HL.B.h;break; -case LD_A_H: R->AF.B.h=R->HL.B.h;break; -case LD_xHL_H: WrZ80(R->HL.W,R->HL.B.h);break; - -case LD_B_L: R->BC.B.h=R->HL.B.l;break; -case LD_C_L: R->BC.B.l=R->HL.B.l;break; -case LD_D_L: R->DE.B.h=R->HL.B.l;break; -case LD_E_L: R->DE.B.l=R->HL.B.l;break; -case LD_H_L: R->HL.B.h=R->HL.B.l;break; -case LD_L_L: R->HL.B.l=R->HL.B.l;break; -case LD_A_L: R->AF.B.h=R->HL.B.l;break; -case LD_xHL_L: WrZ80(R->HL.W,R->HL.B.l);break; - -case LD_B_A: R->BC.B.h=R->AF.B.h;break; -case LD_C_A: R->BC.B.l=R->AF.B.h;break; -case LD_D_A: R->DE.B.h=R->AF.B.h;break; -case LD_E_A: R->DE.B.l=R->AF.B.h;break; -case LD_H_A: R->HL.B.h=R->AF.B.h;break; -case LD_L_A: R->HL.B.l=R->AF.B.h;break; -case LD_A_A: R->AF.B.h=R->AF.B.h;break; -case LD_xHL_A: WrZ80(R->HL.W,R->AF.B.h);break; - -case LD_xBC_A: WrZ80(R->BC.W,R->AF.B.h);break; -case LD_xDE_A: WrZ80(R->DE.W,R->AF.B.h);break; - -case LD_B_xHL: R->BC.B.h=RdZ80(R->HL.W);break; -case LD_C_xHL: R->BC.B.l=RdZ80(R->HL.W);break; -case LD_D_xHL: R->DE.B.h=RdZ80(R->HL.W);break; -case LD_E_xHL: R->DE.B.l=RdZ80(R->HL.W);break; -case LD_H_xHL: R->HL.B.h=RdZ80(R->HL.W);break; -case LD_L_xHL: R->HL.B.l=RdZ80(R->HL.W);break; -case LD_A_xHL: R->AF.B.h=RdZ80(R->HL.W);break; - -case LD_B_BYTE: R->BC.B.h=OpZ80(R->PC.W++);break; -case LD_C_BYTE: R->BC.B.l=OpZ80(R->PC.W++);break; -case LD_D_BYTE: R->DE.B.h=OpZ80(R->PC.W++);break; -case LD_E_BYTE: R->DE.B.l=OpZ80(R->PC.W++);break; -case LD_H_BYTE: R->HL.B.h=OpZ80(R->PC.W++);break; -case LD_L_BYTE: R->HL.B.l=OpZ80(R->PC.W++);break; -case LD_A_BYTE: R->AF.B.h=OpZ80(R->PC.W++);break; -case LD_xHL_BYTE: WrZ80(R->HL.W,OpZ80(R->PC.W++));break; - -case LD_xWORD_HL: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W++,R->HL.B.l); - WrZ80(J.W,R->HL.B.h); - break; - -case LD_HL_xWORD: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->HL.B.l=RdZ80(J.W++); - R->HL.B.h=RdZ80(J.W); - break; - -case LD_A_xWORD: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->AF.B.h=RdZ80(J.W); - break; - -case LD_xWORD_A: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W,R->AF.B.h); - break; - -case EX_HL_xSP: - J.B.l=RdZ80(R->SP.W);WrZ80(R->SP.W++,R->HL.B.l); - J.B.h=RdZ80(R->SP.W);WrZ80(R->SP.W--,R->HL.B.h); - R->HL.W=J.W; - break; - -case DAA: - J.W=R->AF.B.h; - if(R->AF.B.l&C_FLAG) J.W|=256; - if(R->AF.B.l&H_FLAG) J.W|=512; - if(R->AF.B.l&N_FLAG) J.W|=1024; - R->AF.W=DAATable[J.W]; - break; - -default: - if(R->TrapBadOps) - printf - ( - "[Z80 %lX] Unrecognized instruction: %02X at PC=%04X\n", - (long)R->User,OpZ80(R->PC.W-1),R->PC.W-1 - ); - break; +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** Codes.h **/ +/** **/ +/** This file contains implementation for the main table of **/ +/** Z80 commands. It is included from Z80.c. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ + +case JR_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; +case JR_NC: if(R->AF.B.l&C_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; +case JR_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; +case JR_C: if(R->AF.B.l&C_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; + +case JP_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_Z: if(R->AF.B.l&Z_FLAG) { M_JP; } else R->PC.W+=2; break; +case JP_C: if(R->AF.B.l&C_FLAG) { M_JP; } else R->PC.W+=2; break; +case JP_PE: if(R->AF.B.l&P_FLAG) { M_JP; } else R->PC.W+=2; break; +case JP_M: if(R->AF.B.l&S_FLAG) { M_JP; } else R->PC.W+=2; break; + +case RET_NZ: if(!(R->AF.B.l&Z_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_NC: if(!(R->AF.B.l&C_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_PO: if(!(R->AF.B.l&P_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_P: if(!(R->AF.B.l&S_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=6;M_RET; } break; +case RET_C: if(R->AF.B.l&C_FLAG) { R->ICount-=6;M_RET; } break; +case RET_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=6;M_RET; } break; +case RET_M: if(R->AF.B.l&S_FLAG) { R->ICount-=6;M_RET; } break; + +case CALL_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; +case CALL_C: if(R->AF.B.l&C_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; +case CALL_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; +case CALL_M: if(R->AF.B.l&S_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; + +case ADD_B: M_ADD(R->BC.B.h);break; +case ADD_C: M_ADD(R->BC.B.l);break; +case ADD_D: M_ADD(R->DE.B.h);break; +case ADD_E: M_ADD(R->DE.B.l);break; +case ADD_H: M_ADD(R->HL.B.h);break; +case ADD_L: M_ADD(R->HL.B.l);break; +case ADD_A: M_ADD(R->AF.B.h);break; +case ADD_xHL: I=RdZ80(R->HL.W);M_ADD(I);break; +case ADD_BYTE: I=OpZ80(R->PC.W++);M_ADD(I);break; + +case SUB_B: M_SUB(R->BC.B.h);break; +case SUB_C: M_SUB(R->BC.B.l);break; +case SUB_D: M_SUB(R->DE.B.h);break; +case SUB_E: M_SUB(R->DE.B.l);break; +case SUB_H: M_SUB(R->HL.B.h);break; +case SUB_L: M_SUB(R->HL.B.l);break; +case SUB_A: R->AF.B.h=0;R->AF.B.l=N_FLAG|Z_FLAG;break; +case SUB_xHL: I=RdZ80(R->HL.W);M_SUB(I);break; +case SUB_BYTE: I=OpZ80(R->PC.W++);M_SUB(I);break; + +case AND_B: M_AND(R->BC.B.h);break; +case AND_C: M_AND(R->BC.B.l);break; +case AND_D: M_AND(R->DE.B.h);break; +case AND_E: M_AND(R->DE.B.l);break; +case AND_H: M_AND(R->HL.B.h);break; +case AND_L: M_AND(R->HL.B.l);break; +case AND_A: M_AND(R->AF.B.h);break; +case AND_xHL: I=RdZ80(R->HL.W);M_AND(I);break; +case AND_BYTE: I=OpZ80(R->PC.W++);M_AND(I);break; + +case OR_B: M_OR(R->BC.B.h);break; +case OR_C: M_OR(R->BC.B.l);break; +case OR_D: M_OR(R->DE.B.h);break; +case OR_E: M_OR(R->DE.B.l);break; +case OR_H: M_OR(R->HL.B.h);break; +case OR_L: M_OR(R->HL.B.l);break; +case OR_A: M_OR(R->AF.B.h);break; +case OR_xHL: I=RdZ80(R->HL.W);M_OR(I);break; +case OR_BYTE: I=OpZ80(R->PC.W++);M_OR(I);break; + +case ADC_B: M_ADC(R->BC.B.h);break; +case ADC_C: M_ADC(R->BC.B.l);break; +case ADC_D: M_ADC(R->DE.B.h);break; +case ADC_E: M_ADC(R->DE.B.l);break; +case ADC_H: M_ADC(R->HL.B.h);break; +case ADC_L: M_ADC(R->HL.B.l);break; +case ADC_A: M_ADC(R->AF.B.h);break; +case ADC_xHL: I=RdZ80(R->HL.W);M_ADC(I);break; +case ADC_BYTE: I=OpZ80(R->PC.W++);M_ADC(I);break; + +case SBC_B: M_SBC(R->BC.B.h);break; +case SBC_C: M_SBC(R->BC.B.l);break; +case SBC_D: M_SBC(R->DE.B.h);break; +case SBC_E: M_SBC(R->DE.B.l);break; +case SBC_H: M_SBC(R->HL.B.h);break; +case SBC_L: M_SBC(R->HL.B.l);break; +case SBC_A: M_SBC(R->AF.B.h);break; +case SBC_xHL: I=RdZ80(R->HL.W);M_SBC(I);break; +case SBC_BYTE: I=OpZ80(R->PC.W++);M_SBC(I);break; + +case XOR_B: M_XOR(R->BC.B.h);break; +case XOR_C: M_XOR(R->BC.B.l);break; +case XOR_D: M_XOR(R->DE.B.h);break; +case XOR_E: M_XOR(R->DE.B.l);break; +case XOR_H: M_XOR(R->HL.B.h);break; +case XOR_L: M_XOR(R->HL.B.l);break; +case XOR_A: R->AF.B.h=0;R->AF.B.l=P_FLAG|Z_FLAG;break; +case XOR_xHL: I=RdZ80(R->HL.W);M_XOR(I);break; +case XOR_BYTE: I=OpZ80(R->PC.W++);M_XOR(I);break; + +case CP_B: M_CP(R->BC.B.h);break; +case CP_C: M_CP(R->BC.B.l);break; +case CP_D: M_CP(R->DE.B.h);break; +case CP_E: M_CP(R->DE.B.l);break; +case CP_H: M_CP(R->HL.B.h);break; +case CP_L: M_CP(R->HL.B.l);break; +case CP_A: R->AF.B.l=N_FLAG|Z_FLAG;break; +case CP_xHL: I=RdZ80(R->HL.W);M_CP(I);break; +case CP_BYTE: I=OpZ80(R->PC.W++);M_CP(I);break; + +case LD_BC_WORD: M_LDWORD(BC);break; +case LD_DE_WORD: M_LDWORD(DE);break; +case LD_HL_WORD: M_LDWORD(HL);break; +case LD_SP_WORD: M_LDWORD(SP);break; + +case LD_PC_HL: R->PC.W=R->HL.W;JumpZ80(R->PC.W);break; +case LD_SP_HL: R->SP.W=R->HL.W;break; +case LD_A_xBC: R->AF.B.h=RdZ80(R->BC.W);break; +case LD_A_xDE: R->AF.B.h=RdZ80(R->DE.W);break; + +case ADD_HL_BC: M_ADDW(HL,BC);break; +case ADD_HL_DE: M_ADDW(HL,DE);break; +case ADD_HL_HL: M_ADDW(HL,HL);break; +case ADD_HL_SP: M_ADDW(HL,SP);break; + +case DEC_BC: R->BC.W--;break; +case DEC_DE: R->DE.W--;break; +case DEC_HL: R->HL.W--;break; +case DEC_SP: R->SP.W--;break; + +case INC_BC: R->BC.W++;break; +case INC_DE: R->DE.W++;break; +case INC_HL: R->HL.W++;break; +case INC_SP: R->SP.W++;break; + +case DEC_B: M_DEC(R->BC.B.h);break; +case DEC_C: M_DEC(R->BC.B.l);break; +case DEC_D: M_DEC(R->DE.B.h);break; +case DEC_E: M_DEC(R->DE.B.l);break; +case DEC_H: M_DEC(R->HL.B.h);break; +case DEC_L: M_DEC(R->HL.B.l);break; +case DEC_A: M_DEC(R->AF.B.h);break; +case DEC_xHL: I=RdZ80(R->HL.W);M_DEC(I);WrZ80(R->HL.W,I);break; + +case INC_B: M_INC(R->BC.B.h);break; +case INC_C: M_INC(R->BC.B.l);break; +case INC_D: M_INC(R->DE.B.h);break; +case INC_E: M_INC(R->DE.B.l);break; +case INC_H: M_INC(R->HL.B.h);break; +case INC_L: M_INC(R->HL.B.l);break; +case INC_A: M_INC(R->AF.B.h);break; +case INC_xHL: I=RdZ80(R->HL.W);M_INC(I);WrZ80(R->HL.W,I);break; + +case RLCA: + I=R->AF.B.h&0x80? C_FLAG:0; + R->AF.B.h=(R->AF.B.h<<1)|I; + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; +case RLA: + I=R->AF.B.h&0x80? C_FLAG:0; + R->AF.B.h=(R->AF.B.h<<1)|(R->AF.B.l&C_FLAG); + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; +case RRCA: + I=R->AF.B.h&0x01; + R->AF.B.h=(R->AF.B.h>>1)|(I? 0x80:0); + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; +case RRA: + I=R->AF.B.h&0x01; + R->AF.B.h=(R->AF.B.h>>1)|(R->AF.B.l&C_FLAG? 0x80:0); + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; + +case RST00: M_RST(0x0000);break; +case RST08: M_RST(0x0008);break; +case RST10: M_RST(0x0010);break; +case RST18: M_RST(0x0018);break; +case RST20: M_RST(0x0020);break; +case RST28: M_RST(0x0028);break; +case RST30: M_RST(0x0030);break; +case RST38: M_RST(0x0038);break; + +case PUSH_BC: M_PUSH(BC);break; +case PUSH_DE: M_PUSH(DE);break; +case PUSH_HL: M_PUSH(HL);break; +case PUSH_AF: M_PUSH(AF);break; + +case POP_BC: M_POP(BC);break; +case POP_DE: M_POP(DE);break; +case POP_HL: M_POP(HL);break; +case POP_AF: M_POP(AF);break; + +case DJNZ: if(--R->BC.B.h) { R->ICount-=5;M_JR; } else R->PC.W++;break; +case JP: M_JP;break; +case JR: M_JR;break; +case CALL: M_CALL;break; +case RET: M_RET;break; +case SCF: S(C_FLAG);R(N_FLAG|H_FLAG);break; +case CPL: R->AF.B.h=~R->AF.B.h;S(N_FLAG|H_FLAG);break; +case NOP: break; +case OUTA: I=OpZ80(R->PC.W++);OutZ80(I|(R->AF.W&0xFF00),R->AF.B.h);break; +case INA: I=OpZ80(R->PC.W++);R->AF.B.h=InZ80(I|(R->AF.W&0xFF00));break; + +case HALT: + R->PC.W--; + R->IFF|=IFF_HALT; + R->IBackup=0; + R->ICount=0; + break; + +case DI: + if(R->IFF&IFF_EI) R->ICount+=R->IBackup-1; + R->IFF&=~(IFF_1|IFF_2|IFF_EI); + break; + +case EI: + if(!(R->IFF&(IFF_1|IFF_EI))) + { + R->IFF|=IFF_2|IFF_EI; + R->IBackup=R->ICount; + R->ICount=1; + } + break; + +case CCF: + R->AF.B.l^=C_FLAG;R(N_FLAG|H_FLAG); + R->AF.B.l|=R->AF.B.l&C_FLAG? 0:H_FLAG; + break; + +case EXX: + J.W=R->BC.W;R->BC.W=R->BC1.W;R->BC1.W=J.W; + J.W=R->DE.W;R->DE.W=R->DE1.W;R->DE1.W=J.W; + J.W=R->HL.W;R->HL.W=R->HL1.W;R->HL1.W=J.W; + break; + +case EX_DE_HL: J.W=R->DE.W;R->DE.W=R->HL.W;R->HL.W=J.W;break; +case EX_AF_AF: J.W=R->AF.W;R->AF.W=R->AF1.W;R->AF1.W=J.W;break; + +case LD_B_B: R->BC.B.h=R->BC.B.h;break; +case LD_C_B: R->BC.B.l=R->BC.B.h;break; +case LD_D_B: R->DE.B.h=R->BC.B.h;break; +case LD_E_B: R->DE.B.l=R->BC.B.h;break; +case LD_H_B: R->HL.B.h=R->BC.B.h;break; +case LD_L_B: R->HL.B.l=R->BC.B.h;break; +case LD_A_B: R->AF.B.h=R->BC.B.h;break; +case LD_xHL_B: WrZ80(R->HL.W,R->BC.B.h);break; + +case LD_B_C: R->BC.B.h=R->BC.B.l;break; +case LD_C_C: R->BC.B.l=R->BC.B.l;break; +case LD_D_C: R->DE.B.h=R->BC.B.l;break; +case LD_E_C: R->DE.B.l=R->BC.B.l;break; +case LD_H_C: R->HL.B.h=R->BC.B.l;break; +case LD_L_C: R->HL.B.l=R->BC.B.l;break; +case LD_A_C: R->AF.B.h=R->BC.B.l;break; +case LD_xHL_C: WrZ80(R->HL.W,R->BC.B.l);break; + +case LD_B_D: R->BC.B.h=R->DE.B.h;break; +case LD_C_D: R->BC.B.l=R->DE.B.h;break; +case LD_D_D: R->DE.B.h=R->DE.B.h;break; +case LD_E_D: R->DE.B.l=R->DE.B.h;break; +case LD_H_D: R->HL.B.h=R->DE.B.h;break; +case LD_L_D: R->HL.B.l=R->DE.B.h;break; +case LD_A_D: R->AF.B.h=R->DE.B.h;break; +case LD_xHL_D: WrZ80(R->HL.W,R->DE.B.h);break; + +case LD_B_E: R->BC.B.h=R->DE.B.l;break; +case LD_C_E: R->BC.B.l=R->DE.B.l;break; +case LD_D_E: R->DE.B.h=R->DE.B.l;break; +case LD_E_E: R->DE.B.l=R->DE.B.l;break; +case LD_H_E: R->HL.B.h=R->DE.B.l;break; +case LD_L_E: R->HL.B.l=R->DE.B.l;break; +case LD_A_E: R->AF.B.h=R->DE.B.l;break; +case LD_xHL_E: WrZ80(R->HL.W,R->DE.B.l);break; + +case LD_B_H: R->BC.B.h=R->HL.B.h;break; +case LD_C_H: R->BC.B.l=R->HL.B.h;break; +case LD_D_H: R->DE.B.h=R->HL.B.h;break; +case LD_E_H: R->DE.B.l=R->HL.B.h;break; +case LD_H_H: R->HL.B.h=R->HL.B.h;break; +case LD_L_H: R->HL.B.l=R->HL.B.h;break; +case LD_A_H: R->AF.B.h=R->HL.B.h;break; +case LD_xHL_H: WrZ80(R->HL.W,R->HL.B.h);break; + +case LD_B_L: R->BC.B.h=R->HL.B.l;break; +case LD_C_L: R->BC.B.l=R->HL.B.l;break; +case LD_D_L: R->DE.B.h=R->HL.B.l;break; +case LD_E_L: R->DE.B.l=R->HL.B.l;break; +case LD_H_L: R->HL.B.h=R->HL.B.l;break; +case LD_L_L: R->HL.B.l=R->HL.B.l;break; +case LD_A_L: R->AF.B.h=R->HL.B.l;break; +case LD_xHL_L: WrZ80(R->HL.W,R->HL.B.l);break; + +case LD_B_A: R->BC.B.h=R->AF.B.h;break; +case LD_C_A: R->BC.B.l=R->AF.B.h;break; +case LD_D_A: R->DE.B.h=R->AF.B.h;break; +case LD_E_A: R->DE.B.l=R->AF.B.h;break; +case LD_H_A: R->HL.B.h=R->AF.B.h;break; +case LD_L_A: R->HL.B.l=R->AF.B.h;break; +case LD_A_A: R->AF.B.h=R->AF.B.h;break; +case LD_xHL_A: WrZ80(R->HL.W,R->AF.B.h);break; + +case LD_xBC_A: WrZ80(R->BC.W,R->AF.B.h);break; +case LD_xDE_A: WrZ80(R->DE.W,R->AF.B.h);break; + +case LD_B_xHL: R->BC.B.h=RdZ80(R->HL.W);break; +case LD_C_xHL: R->BC.B.l=RdZ80(R->HL.W);break; +case LD_D_xHL: R->DE.B.h=RdZ80(R->HL.W);break; +case LD_E_xHL: R->DE.B.l=RdZ80(R->HL.W);break; +case LD_H_xHL: R->HL.B.h=RdZ80(R->HL.W);break; +case LD_L_xHL: R->HL.B.l=RdZ80(R->HL.W);break; +case LD_A_xHL: R->AF.B.h=RdZ80(R->HL.W);break; + +case LD_B_BYTE: R->BC.B.h=OpZ80(R->PC.W++);break; +case LD_C_BYTE: R->BC.B.l=OpZ80(R->PC.W++);break; +case LD_D_BYTE: R->DE.B.h=OpZ80(R->PC.W++);break; +case LD_E_BYTE: R->DE.B.l=OpZ80(R->PC.W++);break; +case LD_H_BYTE: R->HL.B.h=OpZ80(R->PC.W++);break; +case LD_L_BYTE: R->HL.B.l=OpZ80(R->PC.W++);break; +case LD_A_BYTE: R->AF.B.h=OpZ80(R->PC.W++);break; +case LD_xHL_BYTE: WrZ80(R->HL.W,OpZ80(R->PC.W++));break; + +case LD_xWORD_HL: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W++,R->HL.B.l); + WrZ80(J.W,R->HL.B.h); + break; + +case LD_HL_xWORD: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->HL.B.l=RdZ80(J.W++); + R->HL.B.h=RdZ80(J.W); + break; + +case LD_A_xWORD: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->AF.B.h=RdZ80(J.W); + break; + +case LD_xWORD_A: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W,R->AF.B.h); + break; + +case EX_HL_xSP: + J.B.l=RdZ80(R->SP.W);WrZ80(R->SP.W++,R->HL.B.l); + J.B.h=RdZ80(R->SP.W);WrZ80(R->SP.W--,R->HL.B.h); + R->HL.W=J.W; + break; + +case DAA: + J.W=R->AF.B.h; + if(R->AF.B.l&C_FLAG) J.W|=256; + if(R->AF.B.l&H_FLAG) J.W|=512; + if(R->AF.B.l&N_FLAG) J.W|=1024; + R->AF.W=DAATable[J.W]; + break; + +default: + if(R->TrapBadOps) + printf + ( + "[Z80 %lX] Unrecognized instruction: %02X at PC=%04X\n", + (long)R->User,OpZ80(R->PC.W-1),R->PC.W-1 + ); + break; diff --git a/MCUME_pico/picocpc/CodesCB.h b/MCUME_pico/picocpc/processor/CodesCB.h old mode 100755 new mode 100644 similarity index 98% rename from MCUME_pico/picocpc/CodesCB.h rename to MCUME_pico/picocpc/processor/CodesCB.h index dd904d4..15fcb4f --- a/MCUME_pico/picocpc/CodesCB.h +++ b/MCUME_pico/picocpc/processor/CodesCB.h @@ -1,204 +1,204 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** CodesCB.h **/ -/** **/ -/** This file contains implementation for the CB table of **/ -/** Z80 commands. It is included from Z80.c. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ - -case RLC_B: M_RLC(R->BC.B.h);break; case RLC_C: M_RLC(R->BC.B.l);break; -case RLC_D: M_RLC(R->DE.B.h);break; case RLC_E: M_RLC(R->DE.B.l);break; -case RLC_H: M_RLC(R->HL.B.h);break; case RLC_L: M_RLC(R->HL.B.l);break; -case RLC_xHL: I=RdZ80(R->HL.W);M_RLC(I);WrZ80(R->HL.W,I);break; -case RLC_A: M_RLC(R->AF.B.h);break; - -case RRC_B: M_RRC(R->BC.B.h);break; case RRC_C: M_RRC(R->BC.B.l);break; -case RRC_D: M_RRC(R->DE.B.h);break; case RRC_E: M_RRC(R->DE.B.l);break; -case RRC_H: M_RRC(R->HL.B.h);break; case RRC_L: M_RRC(R->HL.B.l);break; -case RRC_xHL: I=RdZ80(R->HL.W);M_RRC(I);WrZ80(R->HL.W,I);break; -case RRC_A: M_RRC(R->AF.B.h);break; - -case RL_B: M_RL(R->BC.B.h);break; case RL_C: M_RL(R->BC.B.l);break; -case RL_D: M_RL(R->DE.B.h);break; case RL_E: M_RL(R->DE.B.l);break; -case RL_H: M_RL(R->HL.B.h);break; case RL_L: M_RL(R->HL.B.l);break; -case RL_xHL: I=RdZ80(R->HL.W);M_RL(I);WrZ80(R->HL.W,I);break; -case RL_A: M_RL(R->AF.B.h);break; - -case RR_B: M_RR(R->BC.B.h);break; case RR_C: M_RR(R->BC.B.l);break; -case RR_D: M_RR(R->DE.B.h);break; case RR_E: M_RR(R->DE.B.l);break; -case RR_H: M_RR(R->HL.B.h);break; case RR_L: M_RR(R->HL.B.l);break; -case RR_xHL: I=RdZ80(R->HL.W);M_RR(I);WrZ80(R->HL.W,I);break; -case RR_A: M_RR(R->AF.B.h);break; - -case SLA_B: M_SLA(R->BC.B.h);break; case SLA_C: M_SLA(R->BC.B.l);break; -case SLA_D: M_SLA(R->DE.B.h);break; case SLA_E: M_SLA(R->DE.B.l);break; -case SLA_H: M_SLA(R->HL.B.h);break; case SLA_L: M_SLA(R->HL.B.l);break; -case SLA_xHL: I=RdZ80(R->HL.W);M_SLA(I);WrZ80(R->HL.W,I);break; -case SLA_A: M_SLA(R->AF.B.h);break; - -case SRA_B: M_SRA(R->BC.B.h);break; case SRA_C: M_SRA(R->BC.B.l);break; -case SRA_D: M_SRA(R->DE.B.h);break; case SRA_E: M_SRA(R->DE.B.l);break; -case SRA_H: M_SRA(R->HL.B.h);break; case SRA_L: M_SRA(R->HL.B.l);break; -case SRA_xHL: I=RdZ80(R->HL.W);M_SRA(I);WrZ80(R->HL.W,I);break; -case SRA_A: M_SRA(R->AF.B.h);break; - -case SLL_B: M_SLL(R->BC.B.h);break; case SLL_C: M_SLL(R->BC.B.l);break; -case SLL_D: M_SLL(R->DE.B.h);break; case SLL_E: M_SLL(R->DE.B.l);break; -case SLL_H: M_SLL(R->HL.B.h);break; case SLL_L: M_SLL(R->HL.B.l);break; -case SLL_xHL: I=RdZ80(R->HL.W);M_SLL(I);WrZ80(R->HL.W,I);break; -case SLL_A: M_SLL(R->AF.B.h);break; - -case SRL_B: M_SRL(R->BC.B.h);break; case SRL_C: M_SRL(R->BC.B.l);break; -case SRL_D: M_SRL(R->DE.B.h);break; case SRL_E: M_SRL(R->DE.B.l);break; -case SRL_H: M_SRL(R->HL.B.h);break; case SRL_L: M_SRL(R->HL.B.l);break; -case SRL_xHL: I=RdZ80(R->HL.W);M_SRL(I);WrZ80(R->HL.W,I);break; -case SRL_A: M_SRL(R->AF.B.h);break; - -case BIT0_B: M_BIT(0,R->BC.B.h);break; case BIT0_C: M_BIT(0,R->BC.B.l);break; -case BIT0_D: M_BIT(0,R->DE.B.h);break; case BIT0_E: M_BIT(0,R->DE.B.l);break; -case BIT0_H: M_BIT(0,R->HL.B.h);break; case BIT0_L: M_BIT(0,R->HL.B.l);break; -case BIT0_xHL: I=RdZ80(R->HL.W);M_BIT(0,I);break; -case BIT0_A: M_BIT(0,R->AF.B.h);break; - -case BIT1_B: M_BIT(1,R->BC.B.h);break; case BIT1_C: M_BIT(1,R->BC.B.l);break; -case BIT1_D: M_BIT(1,R->DE.B.h);break; case BIT1_E: M_BIT(1,R->DE.B.l);break; -case BIT1_H: M_BIT(1,R->HL.B.h);break; case BIT1_L: M_BIT(1,R->HL.B.l);break; -case BIT1_xHL: I=RdZ80(R->HL.W);M_BIT(1,I);break; -case BIT1_A: M_BIT(1,R->AF.B.h);break; - -case BIT2_B: M_BIT(2,R->BC.B.h);break; case BIT2_C: M_BIT(2,R->BC.B.l);break; -case BIT2_D: M_BIT(2,R->DE.B.h);break; case BIT2_E: M_BIT(2,R->DE.B.l);break; -case BIT2_H: M_BIT(2,R->HL.B.h);break; case BIT2_L: M_BIT(2,R->HL.B.l);break; -case BIT2_xHL: I=RdZ80(R->HL.W);M_BIT(2,I);break; -case BIT2_A: M_BIT(2,R->AF.B.h);break; - -case BIT3_B: M_BIT(3,R->BC.B.h);break; case BIT3_C: M_BIT(3,R->BC.B.l);break; -case BIT3_D: M_BIT(3,R->DE.B.h);break; case BIT3_E: M_BIT(3,R->DE.B.l);break; -case BIT3_H: M_BIT(3,R->HL.B.h);break; case BIT3_L: M_BIT(3,R->HL.B.l);break; -case BIT3_xHL: I=RdZ80(R->HL.W);M_BIT(3,I);break; -case BIT3_A: M_BIT(3,R->AF.B.h);break; - -case BIT4_B: M_BIT(4,R->BC.B.h);break; case BIT4_C: M_BIT(4,R->BC.B.l);break; -case BIT4_D: M_BIT(4,R->DE.B.h);break; case BIT4_E: M_BIT(4,R->DE.B.l);break; -case BIT4_H: M_BIT(4,R->HL.B.h);break; case BIT4_L: M_BIT(4,R->HL.B.l);break; -case BIT4_xHL: I=RdZ80(R->HL.W);M_BIT(4,I);break; -case BIT4_A: M_BIT(4,R->AF.B.h);break; - -case BIT5_B: M_BIT(5,R->BC.B.h);break; case BIT5_C: M_BIT(5,R->BC.B.l);break; -case BIT5_D: M_BIT(5,R->DE.B.h);break; case BIT5_E: M_BIT(5,R->DE.B.l);break; -case BIT5_H: M_BIT(5,R->HL.B.h);break; case BIT5_L: M_BIT(5,R->HL.B.l);break; -case BIT5_xHL: I=RdZ80(R->HL.W);M_BIT(5,I);break; -case BIT5_A: M_BIT(5,R->AF.B.h);break; - -case BIT6_B: M_BIT(6,R->BC.B.h);break; case BIT6_C: M_BIT(6,R->BC.B.l);break; -case BIT6_D: M_BIT(6,R->DE.B.h);break; case BIT6_E: M_BIT(6,R->DE.B.l);break; -case BIT6_H: M_BIT(6,R->HL.B.h);break; case BIT6_L: M_BIT(6,R->HL.B.l);break; -case BIT6_xHL: I=RdZ80(R->HL.W);M_BIT(6,I);break; -case BIT6_A: M_BIT(6,R->AF.B.h);break; - -case BIT7_B: M_BIT(7,R->BC.B.h);break; case BIT7_C: M_BIT(7,R->BC.B.l);break; -case BIT7_D: M_BIT(7,R->DE.B.h);break; case BIT7_E: M_BIT(7,R->DE.B.l);break; -case BIT7_H: M_BIT(7,R->HL.B.h);break; case BIT7_L: M_BIT(7,R->HL.B.l);break; -case BIT7_xHL: I=RdZ80(R->HL.W);M_BIT(7,I);break; -case BIT7_A: M_BIT(7,R->AF.B.h);break; - -case RES0_B: M_RES(0,R->BC.B.h);break; case RES0_C: M_RES(0,R->BC.B.l);break; -case RES0_D: M_RES(0,R->DE.B.h);break; case RES0_E: M_RES(0,R->DE.B.l);break; -case RES0_H: M_RES(0,R->HL.B.h);break; case RES0_L: M_RES(0,R->HL.B.l);break; -case RES0_xHL: I=RdZ80(R->HL.W);M_RES(0,I);WrZ80(R->HL.W,I);break; -case RES0_A: M_RES(0,R->AF.B.h);break; - -case RES1_B: M_RES(1,R->BC.B.h);break; case RES1_C: M_RES(1,R->BC.B.l);break; -case RES1_D: M_RES(1,R->DE.B.h);break; case RES1_E: M_RES(1,R->DE.B.l);break; -case RES1_H: M_RES(1,R->HL.B.h);break; case RES1_L: M_RES(1,R->HL.B.l);break; -case RES1_xHL: I=RdZ80(R->HL.W);M_RES(1,I);WrZ80(R->HL.W,I);break; -case RES1_A: M_RES(1,R->AF.B.h);break; - -case RES2_B: M_RES(2,R->BC.B.h);break; case RES2_C: M_RES(2,R->BC.B.l);break; -case RES2_D: M_RES(2,R->DE.B.h);break; case RES2_E: M_RES(2,R->DE.B.l);break; -case RES2_H: M_RES(2,R->HL.B.h);break; case RES2_L: M_RES(2,R->HL.B.l);break; -case RES2_xHL: I=RdZ80(R->HL.W);M_RES(2,I);WrZ80(R->HL.W,I);break; -case RES2_A: M_RES(2,R->AF.B.h);break; - -case RES3_B: M_RES(3,R->BC.B.h);break; case RES3_C: M_RES(3,R->BC.B.l);break; -case RES3_D: M_RES(3,R->DE.B.h);break; case RES3_E: M_RES(3,R->DE.B.l);break; -case RES3_H: M_RES(3,R->HL.B.h);break; case RES3_L: M_RES(3,R->HL.B.l);break; -case RES3_xHL: I=RdZ80(R->HL.W);M_RES(3,I);WrZ80(R->HL.W,I);break; -case RES3_A: M_RES(3,R->AF.B.h);break; - -case RES4_B: M_RES(4,R->BC.B.h);break; case RES4_C: M_RES(4,R->BC.B.l);break; -case RES4_D: M_RES(4,R->DE.B.h);break; case RES4_E: M_RES(4,R->DE.B.l);break; -case RES4_H: M_RES(4,R->HL.B.h);break; case RES4_L: M_RES(4,R->HL.B.l);break; -case RES4_xHL: I=RdZ80(R->HL.W);M_RES(4,I);WrZ80(R->HL.W,I);break; -case RES4_A: M_RES(4,R->AF.B.h);break; - -case RES5_B: M_RES(5,R->BC.B.h);break; case RES5_C: M_RES(5,R->BC.B.l);break; -case RES5_D: M_RES(5,R->DE.B.h);break; case RES5_E: M_RES(5,R->DE.B.l);break; -case RES5_H: M_RES(5,R->HL.B.h);break; case RES5_L: M_RES(5,R->HL.B.l);break; -case RES5_xHL: I=RdZ80(R->HL.W);M_RES(5,I);WrZ80(R->HL.W,I);break; -case RES5_A: M_RES(5,R->AF.B.h);break; - -case RES6_B: M_RES(6,R->BC.B.h);break; case RES6_C: M_RES(6,R->BC.B.l);break; -case RES6_D: M_RES(6,R->DE.B.h);break; case RES6_E: M_RES(6,R->DE.B.l);break; -case RES6_H: M_RES(6,R->HL.B.h);break; case RES6_L: M_RES(6,R->HL.B.l);break; -case RES6_xHL: I=RdZ80(R->HL.W);M_RES(6,I);WrZ80(R->HL.W,I);break; -case RES6_A: M_RES(6,R->AF.B.h);break; - -case RES7_B: M_RES(7,R->BC.B.h);break; case RES7_C: M_RES(7,R->BC.B.l);break; -case RES7_D: M_RES(7,R->DE.B.h);break; case RES7_E: M_RES(7,R->DE.B.l);break; -case RES7_H: M_RES(7,R->HL.B.h);break; case RES7_L: M_RES(7,R->HL.B.l);break; -case RES7_xHL: I=RdZ80(R->HL.W);M_RES(7,I);WrZ80(R->HL.W,I);break; -case RES7_A: M_RES(7,R->AF.B.h);break; - -case SET0_B: M_SET(0,R->BC.B.h);break; case SET0_C: M_SET(0,R->BC.B.l);break; -case SET0_D: M_SET(0,R->DE.B.h);break; case SET0_E: M_SET(0,R->DE.B.l);break; -case SET0_H: M_SET(0,R->HL.B.h);break; case SET0_L: M_SET(0,R->HL.B.l);break; -case SET0_xHL: I=RdZ80(R->HL.W);M_SET(0,I);WrZ80(R->HL.W,I);break; -case SET0_A: M_SET(0,R->AF.B.h);break; - -case SET1_B: M_SET(1,R->BC.B.h);break; case SET1_C: M_SET(1,R->BC.B.l);break; -case SET1_D: M_SET(1,R->DE.B.h);break; case SET1_E: M_SET(1,R->DE.B.l);break; -case SET1_H: M_SET(1,R->HL.B.h);break; case SET1_L: M_SET(1,R->HL.B.l);break; -case SET1_xHL: I=RdZ80(R->HL.W);M_SET(1,I);WrZ80(R->HL.W,I);break; -case SET1_A: M_SET(1,R->AF.B.h);break; - -case SET2_B: M_SET(2,R->BC.B.h);break; case SET2_C: M_SET(2,R->BC.B.l);break; -case SET2_D: M_SET(2,R->DE.B.h);break; case SET2_E: M_SET(2,R->DE.B.l);break; -case SET2_H: M_SET(2,R->HL.B.h);break; case SET2_L: M_SET(2,R->HL.B.l);break; -case SET2_xHL: I=RdZ80(R->HL.W);M_SET(2,I);WrZ80(R->HL.W,I);break; -case SET2_A: M_SET(2,R->AF.B.h);break; - -case SET3_B: M_SET(3,R->BC.B.h);break; case SET3_C: M_SET(3,R->BC.B.l);break; -case SET3_D: M_SET(3,R->DE.B.h);break; case SET3_E: M_SET(3,R->DE.B.l);break; -case SET3_H: M_SET(3,R->HL.B.h);break; case SET3_L: M_SET(3,R->HL.B.l);break; -case SET3_xHL: I=RdZ80(R->HL.W);M_SET(3,I);WrZ80(R->HL.W,I);break; -case SET3_A: M_SET(3,R->AF.B.h);break; - -case SET4_B: M_SET(4,R->BC.B.h);break; case SET4_C: M_SET(4,R->BC.B.l);break; -case SET4_D: M_SET(4,R->DE.B.h);break; case SET4_E: M_SET(4,R->DE.B.l);break; -case SET4_H: M_SET(4,R->HL.B.h);break; case SET4_L: M_SET(4,R->HL.B.l);break; -case SET4_xHL: I=RdZ80(R->HL.W);M_SET(4,I);WrZ80(R->HL.W,I);break; -case SET4_A: M_SET(4,R->AF.B.h);break; - -case SET5_B: M_SET(5,R->BC.B.h);break; case SET5_C: M_SET(5,R->BC.B.l);break; -case SET5_D: M_SET(5,R->DE.B.h);break; case SET5_E: M_SET(5,R->DE.B.l);break; -case SET5_H: M_SET(5,R->HL.B.h);break; case SET5_L: M_SET(5,R->HL.B.l);break; -case SET5_xHL: I=RdZ80(R->HL.W);M_SET(5,I);WrZ80(R->HL.W,I);break; -case SET5_A: M_SET(5,R->AF.B.h);break; - -case SET6_B: M_SET(6,R->BC.B.h);break; case SET6_C: M_SET(6,R->BC.B.l);break; -case SET6_D: M_SET(6,R->DE.B.h);break; case SET6_E: M_SET(6,R->DE.B.l);break; -case SET6_H: M_SET(6,R->HL.B.h);break; case SET6_L: M_SET(6,R->HL.B.l);break; -case SET6_xHL: I=RdZ80(R->HL.W);M_SET(6,I);WrZ80(R->HL.W,I);break; -case SET6_A: M_SET(6,R->AF.B.h);break; - -case SET7_B: M_SET(7,R->BC.B.h);break; case SET7_C: M_SET(7,R->BC.B.l);break; -case SET7_D: M_SET(7,R->DE.B.h);break; case SET7_E: M_SET(7,R->DE.B.l);break; -case SET7_H: M_SET(7,R->HL.B.h);break; case SET7_L: M_SET(7,R->HL.B.l);break; -case SET7_xHL: I=RdZ80(R->HL.W);M_SET(7,I);WrZ80(R->HL.W,I);break; -case SET7_A: M_SET(7,R->AF.B.h);break; +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** CodesCB.h **/ +/** **/ +/** This file contains implementation for the CB table of **/ +/** Z80 commands. It is included from Z80.c. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ + +case RLC_B: M_RLC(R->BC.B.h);break; case RLC_C: M_RLC(R->BC.B.l);break; +case RLC_D: M_RLC(R->DE.B.h);break; case RLC_E: M_RLC(R->DE.B.l);break; +case RLC_H: M_RLC(R->HL.B.h);break; case RLC_L: M_RLC(R->HL.B.l);break; +case RLC_xHL: I=RdZ80(R->HL.W);M_RLC(I);WrZ80(R->HL.W,I);break; +case RLC_A: M_RLC(R->AF.B.h);break; + +case RRC_B: M_RRC(R->BC.B.h);break; case RRC_C: M_RRC(R->BC.B.l);break; +case RRC_D: M_RRC(R->DE.B.h);break; case RRC_E: M_RRC(R->DE.B.l);break; +case RRC_H: M_RRC(R->HL.B.h);break; case RRC_L: M_RRC(R->HL.B.l);break; +case RRC_xHL: I=RdZ80(R->HL.W);M_RRC(I);WrZ80(R->HL.W,I);break; +case RRC_A: M_RRC(R->AF.B.h);break; + +case RL_B: M_RL(R->BC.B.h);break; case RL_C: M_RL(R->BC.B.l);break; +case RL_D: M_RL(R->DE.B.h);break; case RL_E: M_RL(R->DE.B.l);break; +case RL_H: M_RL(R->HL.B.h);break; case RL_L: M_RL(R->HL.B.l);break; +case RL_xHL: I=RdZ80(R->HL.W);M_RL(I);WrZ80(R->HL.W,I);break; +case RL_A: M_RL(R->AF.B.h);break; + +case RR_B: M_RR(R->BC.B.h);break; case RR_C: M_RR(R->BC.B.l);break; +case RR_D: M_RR(R->DE.B.h);break; case RR_E: M_RR(R->DE.B.l);break; +case RR_H: M_RR(R->HL.B.h);break; case RR_L: M_RR(R->HL.B.l);break; +case RR_xHL: I=RdZ80(R->HL.W);M_RR(I);WrZ80(R->HL.W,I);break; +case RR_A: M_RR(R->AF.B.h);break; + +case SLA_B: M_SLA(R->BC.B.h);break; case SLA_C: M_SLA(R->BC.B.l);break; +case SLA_D: M_SLA(R->DE.B.h);break; case SLA_E: M_SLA(R->DE.B.l);break; +case SLA_H: M_SLA(R->HL.B.h);break; case SLA_L: M_SLA(R->HL.B.l);break; +case SLA_xHL: I=RdZ80(R->HL.W);M_SLA(I);WrZ80(R->HL.W,I);break; +case SLA_A: M_SLA(R->AF.B.h);break; + +case SRA_B: M_SRA(R->BC.B.h);break; case SRA_C: M_SRA(R->BC.B.l);break; +case SRA_D: M_SRA(R->DE.B.h);break; case SRA_E: M_SRA(R->DE.B.l);break; +case SRA_H: M_SRA(R->HL.B.h);break; case SRA_L: M_SRA(R->HL.B.l);break; +case SRA_xHL: I=RdZ80(R->HL.W);M_SRA(I);WrZ80(R->HL.W,I);break; +case SRA_A: M_SRA(R->AF.B.h);break; + +case SLL_B: M_SLL(R->BC.B.h);break; case SLL_C: M_SLL(R->BC.B.l);break; +case SLL_D: M_SLL(R->DE.B.h);break; case SLL_E: M_SLL(R->DE.B.l);break; +case SLL_H: M_SLL(R->HL.B.h);break; case SLL_L: M_SLL(R->HL.B.l);break; +case SLL_xHL: I=RdZ80(R->HL.W);M_SLL(I);WrZ80(R->HL.W,I);break; +case SLL_A: M_SLL(R->AF.B.h);break; + +case SRL_B: M_SRL(R->BC.B.h);break; case SRL_C: M_SRL(R->BC.B.l);break; +case SRL_D: M_SRL(R->DE.B.h);break; case SRL_E: M_SRL(R->DE.B.l);break; +case SRL_H: M_SRL(R->HL.B.h);break; case SRL_L: M_SRL(R->HL.B.l);break; +case SRL_xHL: I=RdZ80(R->HL.W);M_SRL(I);WrZ80(R->HL.W,I);break; +case SRL_A: M_SRL(R->AF.B.h);break; + +case BIT0_B: M_BIT(0,R->BC.B.h);break; case BIT0_C: M_BIT(0,R->BC.B.l);break; +case BIT0_D: M_BIT(0,R->DE.B.h);break; case BIT0_E: M_BIT(0,R->DE.B.l);break; +case BIT0_H: M_BIT(0,R->HL.B.h);break; case BIT0_L: M_BIT(0,R->HL.B.l);break; +case BIT0_xHL: I=RdZ80(R->HL.W);M_BIT(0,I);break; +case BIT0_A: M_BIT(0,R->AF.B.h);break; + +case BIT1_B: M_BIT(1,R->BC.B.h);break; case BIT1_C: M_BIT(1,R->BC.B.l);break; +case BIT1_D: M_BIT(1,R->DE.B.h);break; case BIT1_E: M_BIT(1,R->DE.B.l);break; +case BIT1_H: M_BIT(1,R->HL.B.h);break; case BIT1_L: M_BIT(1,R->HL.B.l);break; +case BIT1_xHL: I=RdZ80(R->HL.W);M_BIT(1,I);break; +case BIT1_A: M_BIT(1,R->AF.B.h);break; + +case BIT2_B: M_BIT(2,R->BC.B.h);break; case BIT2_C: M_BIT(2,R->BC.B.l);break; +case BIT2_D: M_BIT(2,R->DE.B.h);break; case BIT2_E: M_BIT(2,R->DE.B.l);break; +case BIT2_H: M_BIT(2,R->HL.B.h);break; case BIT2_L: M_BIT(2,R->HL.B.l);break; +case BIT2_xHL: I=RdZ80(R->HL.W);M_BIT(2,I);break; +case BIT2_A: M_BIT(2,R->AF.B.h);break; + +case BIT3_B: M_BIT(3,R->BC.B.h);break; case BIT3_C: M_BIT(3,R->BC.B.l);break; +case BIT3_D: M_BIT(3,R->DE.B.h);break; case BIT3_E: M_BIT(3,R->DE.B.l);break; +case BIT3_H: M_BIT(3,R->HL.B.h);break; case BIT3_L: M_BIT(3,R->HL.B.l);break; +case BIT3_xHL: I=RdZ80(R->HL.W);M_BIT(3,I);break; +case BIT3_A: M_BIT(3,R->AF.B.h);break; + +case BIT4_B: M_BIT(4,R->BC.B.h);break; case BIT4_C: M_BIT(4,R->BC.B.l);break; +case BIT4_D: M_BIT(4,R->DE.B.h);break; case BIT4_E: M_BIT(4,R->DE.B.l);break; +case BIT4_H: M_BIT(4,R->HL.B.h);break; case BIT4_L: M_BIT(4,R->HL.B.l);break; +case BIT4_xHL: I=RdZ80(R->HL.W);M_BIT(4,I);break; +case BIT4_A: M_BIT(4,R->AF.B.h);break; + +case BIT5_B: M_BIT(5,R->BC.B.h);break; case BIT5_C: M_BIT(5,R->BC.B.l);break; +case BIT5_D: M_BIT(5,R->DE.B.h);break; case BIT5_E: M_BIT(5,R->DE.B.l);break; +case BIT5_H: M_BIT(5,R->HL.B.h);break; case BIT5_L: M_BIT(5,R->HL.B.l);break; +case BIT5_xHL: I=RdZ80(R->HL.W);M_BIT(5,I);break; +case BIT5_A: M_BIT(5,R->AF.B.h);break; + +case BIT6_B: M_BIT(6,R->BC.B.h);break; case BIT6_C: M_BIT(6,R->BC.B.l);break; +case BIT6_D: M_BIT(6,R->DE.B.h);break; case BIT6_E: M_BIT(6,R->DE.B.l);break; +case BIT6_H: M_BIT(6,R->HL.B.h);break; case BIT6_L: M_BIT(6,R->HL.B.l);break; +case BIT6_xHL: I=RdZ80(R->HL.W);M_BIT(6,I);break; +case BIT6_A: M_BIT(6,R->AF.B.h);break; + +case BIT7_B: M_BIT(7,R->BC.B.h);break; case BIT7_C: M_BIT(7,R->BC.B.l);break; +case BIT7_D: M_BIT(7,R->DE.B.h);break; case BIT7_E: M_BIT(7,R->DE.B.l);break; +case BIT7_H: M_BIT(7,R->HL.B.h);break; case BIT7_L: M_BIT(7,R->HL.B.l);break; +case BIT7_xHL: I=RdZ80(R->HL.W);M_BIT(7,I);break; +case BIT7_A: M_BIT(7,R->AF.B.h);break; + +case RES0_B: M_RES(0,R->BC.B.h);break; case RES0_C: M_RES(0,R->BC.B.l);break; +case RES0_D: M_RES(0,R->DE.B.h);break; case RES0_E: M_RES(0,R->DE.B.l);break; +case RES0_H: M_RES(0,R->HL.B.h);break; case RES0_L: M_RES(0,R->HL.B.l);break; +case RES0_xHL: I=RdZ80(R->HL.W);M_RES(0,I);WrZ80(R->HL.W,I);break; +case RES0_A: M_RES(0,R->AF.B.h);break; + +case RES1_B: M_RES(1,R->BC.B.h);break; case RES1_C: M_RES(1,R->BC.B.l);break; +case RES1_D: M_RES(1,R->DE.B.h);break; case RES1_E: M_RES(1,R->DE.B.l);break; +case RES1_H: M_RES(1,R->HL.B.h);break; case RES1_L: M_RES(1,R->HL.B.l);break; +case RES1_xHL: I=RdZ80(R->HL.W);M_RES(1,I);WrZ80(R->HL.W,I);break; +case RES1_A: M_RES(1,R->AF.B.h);break; + +case RES2_B: M_RES(2,R->BC.B.h);break; case RES2_C: M_RES(2,R->BC.B.l);break; +case RES2_D: M_RES(2,R->DE.B.h);break; case RES2_E: M_RES(2,R->DE.B.l);break; +case RES2_H: M_RES(2,R->HL.B.h);break; case RES2_L: M_RES(2,R->HL.B.l);break; +case RES2_xHL: I=RdZ80(R->HL.W);M_RES(2,I);WrZ80(R->HL.W,I);break; +case RES2_A: M_RES(2,R->AF.B.h);break; + +case RES3_B: M_RES(3,R->BC.B.h);break; case RES3_C: M_RES(3,R->BC.B.l);break; +case RES3_D: M_RES(3,R->DE.B.h);break; case RES3_E: M_RES(3,R->DE.B.l);break; +case RES3_H: M_RES(3,R->HL.B.h);break; case RES3_L: M_RES(3,R->HL.B.l);break; +case RES3_xHL: I=RdZ80(R->HL.W);M_RES(3,I);WrZ80(R->HL.W,I);break; +case RES3_A: M_RES(3,R->AF.B.h);break; + +case RES4_B: M_RES(4,R->BC.B.h);break; case RES4_C: M_RES(4,R->BC.B.l);break; +case RES4_D: M_RES(4,R->DE.B.h);break; case RES4_E: M_RES(4,R->DE.B.l);break; +case RES4_H: M_RES(4,R->HL.B.h);break; case RES4_L: M_RES(4,R->HL.B.l);break; +case RES4_xHL: I=RdZ80(R->HL.W);M_RES(4,I);WrZ80(R->HL.W,I);break; +case RES4_A: M_RES(4,R->AF.B.h);break; + +case RES5_B: M_RES(5,R->BC.B.h);break; case RES5_C: M_RES(5,R->BC.B.l);break; +case RES5_D: M_RES(5,R->DE.B.h);break; case RES5_E: M_RES(5,R->DE.B.l);break; +case RES5_H: M_RES(5,R->HL.B.h);break; case RES5_L: M_RES(5,R->HL.B.l);break; +case RES5_xHL: I=RdZ80(R->HL.W);M_RES(5,I);WrZ80(R->HL.W,I);break; +case RES5_A: M_RES(5,R->AF.B.h);break; + +case RES6_B: M_RES(6,R->BC.B.h);break; case RES6_C: M_RES(6,R->BC.B.l);break; +case RES6_D: M_RES(6,R->DE.B.h);break; case RES6_E: M_RES(6,R->DE.B.l);break; +case RES6_H: M_RES(6,R->HL.B.h);break; case RES6_L: M_RES(6,R->HL.B.l);break; +case RES6_xHL: I=RdZ80(R->HL.W);M_RES(6,I);WrZ80(R->HL.W,I);break; +case RES6_A: M_RES(6,R->AF.B.h);break; + +case RES7_B: M_RES(7,R->BC.B.h);break; case RES7_C: M_RES(7,R->BC.B.l);break; +case RES7_D: M_RES(7,R->DE.B.h);break; case RES7_E: M_RES(7,R->DE.B.l);break; +case RES7_H: M_RES(7,R->HL.B.h);break; case RES7_L: M_RES(7,R->HL.B.l);break; +case RES7_xHL: I=RdZ80(R->HL.W);M_RES(7,I);WrZ80(R->HL.W,I);break; +case RES7_A: M_RES(7,R->AF.B.h);break; + +case SET0_B: M_SET(0,R->BC.B.h);break; case SET0_C: M_SET(0,R->BC.B.l);break; +case SET0_D: M_SET(0,R->DE.B.h);break; case SET0_E: M_SET(0,R->DE.B.l);break; +case SET0_H: M_SET(0,R->HL.B.h);break; case SET0_L: M_SET(0,R->HL.B.l);break; +case SET0_xHL: I=RdZ80(R->HL.W);M_SET(0,I);WrZ80(R->HL.W,I);break; +case SET0_A: M_SET(0,R->AF.B.h);break; + +case SET1_B: M_SET(1,R->BC.B.h);break; case SET1_C: M_SET(1,R->BC.B.l);break; +case SET1_D: M_SET(1,R->DE.B.h);break; case SET1_E: M_SET(1,R->DE.B.l);break; +case SET1_H: M_SET(1,R->HL.B.h);break; case SET1_L: M_SET(1,R->HL.B.l);break; +case SET1_xHL: I=RdZ80(R->HL.W);M_SET(1,I);WrZ80(R->HL.W,I);break; +case SET1_A: M_SET(1,R->AF.B.h);break; + +case SET2_B: M_SET(2,R->BC.B.h);break; case SET2_C: M_SET(2,R->BC.B.l);break; +case SET2_D: M_SET(2,R->DE.B.h);break; case SET2_E: M_SET(2,R->DE.B.l);break; +case SET2_H: M_SET(2,R->HL.B.h);break; case SET2_L: M_SET(2,R->HL.B.l);break; +case SET2_xHL: I=RdZ80(R->HL.W);M_SET(2,I);WrZ80(R->HL.W,I);break; +case SET2_A: M_SET(2,R->AF.B.h);break; + +case SET3_B: M_SET(3,R->BC.B.h);break; case SET3_C: M_SET(3,R->BC.B.l);break; +case SET3_D: M_SET(3,R->DE.B.h);break; case SET3_E: M_SET(3,R->DE.B.l);break; +case SET3_H: M_SET(3,R->HL.B.h);break; case SET3_L: M_SET(3,R->HL.B.l);break; +case SET3_xHL: I=RdZ80(R->HL.W);M_SET(3,I);WrZ80(R->HL.W,I);break; +case SET3_A: M_SET(3,R->AF.B.h);break; + +case SET4_B: M_SET(4,R->BC.B.h);break; case SET4_C: M_SET(4,R->BC.B.l);break; +case SET4_D: M_SET(4,R->DE.B.h);break; case SET4_E: M_SET(4,R->DE.B.l);break; +case SET4_H: M_SET(4,R->HL.B.h);break; case SET4_L: M_SET(4,R->HL.B.l);break; +case SET4_xHL: I=RdZ80(R->HL.W);M_SET(4,I);WrZ80(R->HL.W,I);break; +case SET4_A: M_SET(4,R->AF.B.h);break; + +case SET5_B: M_SET(5,R->BC.B.h);break; case SET5_C: M_SET(5,R->BC.B.l);break; +case SET5_D: M_SET(5,R->DE.B.h);break; case SET5_E: M_SET(5,R->DE.B.l);break; +case SET5_H: M_SET(5,R->HL.B.h);break; case SET5_L: M_SET(5,R->HL.B.l);break; +case SET5_xHL: I=RdZ80(R->HL.W);M_SET(5,I);WrZ80(R->HL.W,I);break; +case SET5_A: M_SET(5,R->AF.B.h);break; + +case SET6_B: M_SET(6,R->BC.B.h);break; case SET6_C: M_SET(6,R->BC.B.l);break; +case SET6_D: M_SET(6,R->DE.B.h);break; case SET6_E: M_SET(6,R->DE.B.l);break; +case SET6_H: M_SET(6,R->HL.B.h);break; case SET6_L: M_SET(6,R->HL.B.l);break; +case SET6_xHL: I=RdZ80(R->HL.W);M_SET(6,I);WrZ80(R->HL.W,I);break; +case SET6_A: M_SET(6,R->AF.B.h);break; + +case SET7_B: M_SET(7,R->BC.B.h);break; case SET7_C: M_SET(7,R->BC.B.l);break; +case SET7_D: M_SET(7,R->DE.B.h);break; case SET7_E: M_SET(7,R->DE.B.l);break; +case SET7_H: M_SET(7,R->HL.B.h);break; case SET7_L: M_SET(7,R->HL.B.l);break; +case SET7_xHL: I=RdZ80(R->HL.W);M_SET(7,I);WrZ80(R->HL.W,I);break; +case SET7_A: M_SET(7,R->AF.B.h);break; diff --git a/MCUME_pico/picocpc/CodesED.h b/MCUME_pico/picocpc/processor/CodesED.h old mode 100755 new mode 100644 similarity index 96% rename from MCUME_pico/picocpc/CodesED.h rename to MCUME_pico/picocpc/processor/CodesED.h index 075ec99..e6deae5 --- a/MCUME_pico/picocpc/CodesED.h +++ b/MCUME_pico/picocpc/processor/CodesED.h @@ -1,304 +1,304 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** CodesED.h **/ -/** **/ -/** This file contains implementation for the ED table of **/ -/** Z80 commands. It is included from Z80.c. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ - -/** This is a special patch for emulating BIOS calls: ********/ -case DB_FE: PatchZ80(R);break; -/*************************************************************/ - -case ADC_HL_BC: M_ADCW(BC);break; -case ADC_HL_DE: M_ADCW(DE);break; -case ADC_HL_HL: M_ADCW(HL);break; -case ADC_HL_SP: M_ADCW(SP);break; - -case SBC_HL_BC: M_SBCW(BC);break; -case SBC_HL_DE: M_SBCW(DE);break; -case SBC_HL_HL: M_SBCW(HL);break; -case SBC_HL_SP: M_SBCW(SP);break; - -case LD_xWORDe_HL: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W++,R->HL.B.l); - WrZ80(J.W,R->HL.B.h); - break; -case LD_xWORDe_DE: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W++,R->DE.B.l); - WrZ80(J.W,R->DE.B.h); - break; -case LD_xWORDe_BC: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W++,R->BC.B.l); - WrZ80(J.W,R->BC.B.h); - break; -case LD_xWORDe_SP: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W++,R->SP.B.l); - WrZ80(J.W,R->SP.B.h); - break; - -case LD_HL_xWORDe: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->HL.B.l=RdZ80(J.W++); - R->HL.B.h=RdZ80(J.W); - break; -case LD_DE_xWORDe: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->DE.B.l=RdZ80(J.W++); - R->DE.B.h=RdZ80(J.W); - break; -case LD_BC_xWORDe: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->BC.B.l=RdZ80(J.W++); - R->BC.B.h=RdZ80(J.W); - break; -case LD_SP_xWORDe: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->SP.B.l=RdZ80(J.W++); - R->SP.B.h=RdZ80(J.W); - break; - -case RRD: - I=RdZ80(R->HL.W); - J.B.l=(I>>4)|(R->AF.B.h<<4); - WrZ80(R->HL.W,J.B.l); - R->AF.B.h=(I&0x0F)|(R->AF.B.h&0xF0); - R->AF.B.l=PZSTable[R->AF.B.h]|(R->AF.B.l&C_FLAG); - break; -case RLD: - I=RdZ80(R->HL.W); - J.B.l=(I<<4)|(R->AF.B.h&0x0F); - WrZ80(R->HL.W,J.B.l); - R->AF.B.h=(I>>4)|(R->AF.B.h&0xF0); - R->AF.B.l=PZSTable[R->AF.B.h]|(R->AF.B.l&C_FLAG); - break; - -case LD_A_I: - R->AF.B.h=R->I; - R->AF.B.l=(R->AF.B.l&C_FLAG)|(R->IFF&IFF_2? P_FLAG:0)|ZSTable[R->AF.B.h]; - break; - -case LD_A_R: - R->R++; - R->AF.B.h=(byte)(R->R-R->ICount); - R->AF.B.l=(R->AF.B.l&C_FLAG)|(R->IFF&IFF_2? P_FLAG:0)|ZSTable[R->AF.B.h]; - break; - -case LD_I_A: R->I=R->AF.B.h;break; -case LD_R_A: break; - -case IM_0: R->IFF&=~(IFF_IM1|IFF_IM2);break; -case IM_1: R->IFF=(R->IFF&~IFF_IM2)|IFF_IM1;break; -case IM_2: R->IFF=(R->IFF&~IFF_IM1)|IFF_IM2;break; - -case RETI: -case RETN: if(R->IFF&IFF_2) R->IFF|=IFF_1; else R->IFF&=~IFF_1; - M_RET;break; - -case NEG: I=R->AF.B.h;R->AF.B.h=0;M_SUB(I);break; - -case IN_B_xC: M_IN(R->BC.B.h);break; -case IN_C_xC: M_IN(R->BC.B.l);break; -case IN_D_xC: M_IN(R->DE.B.h);break; -case IN_E_xC: M_IN(R->DE.B.l);break; -case IN_H_xC: M_IN(R->HL.B.h);break; -case IN_L_xC: M_IN(R->HL.B.l);break; -case IN_A_xC: M_IN(R->AF.B.h);break; -case IN_F_xC: M_IN(J.B.l);break; - -case OUT_xC_B: OutZ80(R->BC.W,R->BC.B.h);break; -case OUT_xC_C: OutZ80(R->BC.W,R->BC.B.l);break; -case OUT_xC_D: OutZ80(R->BC.W,R->DE.B.h);break; -case OUT_xC_E: OutZ80(R->BC.W,R->DE.B.l);break; -case OUT_xC_H: OutZ80(R->BC.W,R->HL.B.h);break; -case OUT_xC_L: OutZ80(R->BC.W,R->HL.B.l);break; -case OUT_xC_A: OutZ80(R->BC.W,R->AF.B.h);break; - -case INI: - WrZ80(R->HL.W++,InZ80(R->BC.W)); - --R->BC.B.h; - R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG); - break; - -case INIR: - do - { - WrZ80(R->HL.W++,InZ80(R->BC.W)); - --R->BC.B.h;R->ICount-=21; - } - while(R->BC.B.h&&(R->ICount>0)); - if(R->BC.B.h) { R->AF.B.l=N_FLAG;R->PC.W-=2; } - else { R->AF.B.l=Z_FLAG|N_FLAG;R->ICount+=5; } - break; - -case IND: - WrZ80(R->HL.W--,InZ80(R->BC.W)); - --R->BC.B.h; - R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG); - break; - -case INDR: - do - { - WrZ80(R->HL.W--,InZ80(R->BC.W)); - --R->BC.B.h;R->ICount-=21; - } - while(R->BC.B.h&&(R->ICount>0)); - if(R->BC.B.h) { R->AF.B.l=N_FLAG;R->PC.W-=2; } - else { R->AF.B.l=Z_FLAG|N_FLAG;R->ICount+=5; } - break; - -case OUTI: - --R->BC.B.h; - I=RdZ80(R->HL.W++); - OutZ80(R->BC.W,I); - R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG)|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); - break; - -case OTIR: - do - { - --R->BC.B.h; - I=RdZ80(R->HL.W++); - OutZ80(R->BC.W,I); - R->ICount-=21; - } - while(R->BC.B.h&&(R->ICount>0)); - if(R->BC.B.h) - { - R->AF.B.l=N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); - R->PC.W-=2; - } - else - { - R->AF.B.l=Z_FLAG|N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); - R->ICount+=5; - } - break; - -case OUTD: - --R->BC.B.h; - I=RdZ80(R->HL.W--); - OutZ80(R->BC.W,I); - R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG)|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); - break; - -case OTDR: - do - { - --R->BC.B.h; - I=RdZ80(R->HL.W--); - OutZ80(R->BC.W,I); - R->ICount-=21; - } - while(R->BC.B.h&&(R->ICount>0)); - if(R->BC.B.h) - { - R->AF.B.l=N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); - R->PC.W-=2; - } - else - { - R->AF.B.l=Z_FLAG|N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); - R->ICount+=5; - } - break; - -case LDI: - WrZ80(R->DE.W++,RdZ80(R->HL.W++)); - --R->BC.W; - R->AF.B.l=(R->AF.B.l&~(N_FLAG|H_FLAG|P_FLAG))|(R->BC.W? P_FLAG:0); - break; - -case LDIR: - do - { - WrZ80(R->DE.W++,RdZ80(R->HL.W++)); - --R->BC.W;R->ICount-=21; - } - while(R->BC.W&&(R->ICount>0)); - R->AF.B.l&=~(N_FLAG|H_FLAG|P_FLAG); - if(R->BC.W) { R->AF.B.l|=N_FLAG;R->PC.W-=2; } - else R->ICount+=5; - break; - -case LDD: - WrZ80(R->DE.W--,RdZ80(R->HL.W--)); - --R->BC.W; - R->AF.B.l=(R->AF.B.l&~(N_FLAG|H_FLAG|P_FLAG))|(R->BC.W? P_FLAG:0); - break; - -case LDDR: - do - { - WrZ80(R->DE.W--,RdZ80(R->HL.W--)); - --R->BC.W;R->ICount-=21; - } - while(R->BC.W&&(R->ICount>0)); - R->AF.B.l&=~(N_FLAG|H_FLAG|P_FLAG); - if(R->BC.W) { R->AF.B.l|=N_FLAG;R->PC.W-=2; } - else R->ICount+=5; - break; - -case CPI: - I=RdZ80(R->HL.W++); - J.B.l=R->AF.B.h-I; - --R->BC.W; - R->AF.B.l = - N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| - ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); - break; - -case CPIR: - do - { - I=RdZ80(R->HL.W++); - J.B.l=R->AF.B.h-I; - --R->BC.W;R->ICount-=21; - } - while(R->BC.W&&J.B.l&&(R->ICount>0)); - R->AF.B.l = - N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| - ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); - if(R->BC.W&&J.B.l) R->PC.W-=2; else R->ICount+=5; - break; - -case CPD: - I=RdZ80(R->HL.W--); - J.B.l=R->AF.B.h-I; - --R->BC.W; - R->AF.B.l = - N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| - ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); - break; - -case CPDR: - do - { - I=RdZ80(R->HL.W--); - J.B.l=R->AF.B.h-I; - --R->BC.W;R->ICount-=21; - } - while(R->BC.W&&J.B.l); - R->AF.B.l = - N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| - ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); - if(R->BC.W&&J.B.l) R->PC.W-=2; else R->ICount+=5; - break; +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** CodesED.h **/ +/** **/ +/** This file contains implementation for the ED table of **/ +/** Z80 commands. It is included from Z80.c. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ + +/** This is a special patch for emulating BIOS calls: ********/ +case DB_FE: PatchZ80(R);break; +/*************************************************************/ + +case ADC_HL_BC: M_ADCW(BC);break; +case ADC_HL_DE: M_ADCW(DE);break; +case ADC_HL_HL: M_ADCW(HL);break; +case ADC_HL_SP: M_ADCW(SP);break; + +case SBC_HL_BC: M_SBCW(BC);break; +case SBC_HL_DE: M_SBCW(DE);break; +case SBC_HL_HL: M_SBCW(HL);break; +case SBC_HL_SP: M_SBCW(SP);break; + +case LD_xWORDe_HL: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W++,R->HL.B.l); + WrZ80(J.W,R->HL.B.h); + break; +case LD_xWORDe_DE: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W++,R->DE.B.l); + WrZ80(J.W,R->DE.B.h); + break; +case LD_xWORDe_BC: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W++,R->BC.B.l); + WrZ80(J.W,R->BC.B.h); + break; +case LD_xWORDe_SP: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W++,R->SP.B.l); + WrZ80(J.W,R->SP.B.h); + break; + +case LD_HL_xWORDe: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->HL.B.l=RdZ80(J.W++); + R->HL.B.h=RdZ80(J.W); + break; +case LD_DE_xWORDe: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->DE.B.l=RdZ80(J.W++); + R->DE.B.h=RdZ80(J.W); + break; +case LD_BC_xWORDe: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->BC.B.l=RdZ80(J.W++); + R->BC.B.h=RdZ80(J.W); + break; +case LD_SP_xWORDe: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->SP.B.l=RdZ80(J.W++); + R->SP.B.h=RdZ80(J.W); + break; + +case RRD: + I=RdZ80(R->HL.W); + J.B.l=(I>>4)|(R->AF.B.h<<4); + WrZ80(R->HL.W,J.B.l); + R->AF.B.h=(I&0x0F)|(R->AF.B.h&0xF0); + R->AF.B.l=PZSTable[R->AF.B.h]|(R->AF.B.l&C_FLAG); + break; +case RLD: + I=RdZ80(R->HL.W); + J.B.l=(I<<4)|(R->AF.B.h&0x0F); + WrZ80(R->HL.W,J.B.l); + R->AF.B.h=(I>>4)|(R->AF.B.h&0xF0); + R->AF.B.l=PZSTable[R->AF.B.h]|(R->AF.B.l&C_FLAG); + break; + +case LD_A_I: + R->AF.B.h=R->I; + R->AF.B.l=(R->AF.B.l&C_FLAG)|(R->IFF&IFF_2? P_FLAG:0)|ZSTable[R->AF.B.h]; + break; + +case LD_A_R: + R->R++; + R->AF.B.h=(byte)(R->R-R->ICount); + R->AF.B.l=(R->AF.B.l&C_FLAG)|(R->IFF&IFF_2? P_FLAG:0)|ZSTable[R->AF.B.h]; + break; + +case LD_I_A: R->I=R->AF.B.h;break; +case LD_R_A: break; + +case IM_0: R->IFF&=~(IFF_IM1|IFF_IM2);break; +case IM_1: R->IFF=(R->IFF&~IFF_IM2)|IFF_IM1;break; +case IM_2: R->IFF=(R->IFF&~IFF_IM1)|IFF_IM2;break; + +case RETI: +case RETN: if(R->IFF&IFF_2) R->IFF|=IFF_1; else R->IFF&=~IFF_1; + M_RET;break; + +case NEG: I=R->AF.B.h;R->AF.B.h=0;M_SUB(I);break; + +case IN_B_xC: M_IN(R->BC.B.h);break; +case IN_C_xC: M_IN(R->BC.B.l);break; +case IN_D_xC: M_IN(R->DE.B.h);break; +case IN_E_xC: M_IN(R->DE.B.l);break; +case IN_H_xC: M_IN(R->HL.B.h);break; +case IN_L_xC: M_IN(R->HL.B.l);break; +case IN_A_xC: M_IN(R->AF.B.h);break; +case IN_F_xC: M_IN(J.B.l);break; + +case OUT_xC_B: OutZ80(R->BC.W,R->BC.B.h);break; +case OUT_xC_C: OutZ80(R->BC.W,R->BC.B.l);break; +case OUT_xC_D: OutZ80(R->BC.W,R->DE.B.h);break; +case OUT_xC_E: OutZ80(R->BC.W,R->DE.B.l);break; +case OUT_xC_H: OutZ80(R->BC.W,R->HL.B.h);break; +case OUT_xC_L: OutZ80(R->BC.W,R->HL.B.l);break; +case OUT_xC_A: OutZ80(R->BC.W,R->AF.B.h);break; + +case INI: + WrZ80(R->HL.W++,InZ80(R->BC.W)); + --R->BC.B.h; + R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG); + break; + +case INIR: + do + { + WrZ80(R->HL.W++,InZ80(R->BC.W)); + --R->BC.B.h;R->ICount-=21; + } + while(R->BC.B.h&&(R->ICount>0)); + if(R->BC.B.h) { R->AF.B.l=N_FLAG;R->PC.W-=2; } + else { R->AF.B.l=Z_FLAG|N_FLAG;R->ICount+=5; } + break; + +case IND: + WrZ80(R->HL.W--,InZ80(R->BC.W)); + --R->BC.B.h; + R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG); + break; + +case INDR: + do + { + WrZ80(R->HL.W--,InZ80(R->BC.W)); + --R->BC.B.h;R->ICount-=21; + } + while(R->BC.B.h&&(R->ICount>0)); + if(R->BC.B.h) { R->AF.B.l=N_FLAG;R->PC.W-=2; } + else { R->AF.B.l=Z_FLAG|N_FLAG;R->ICount+=5; } + break; + +case OUTI: + --R->BC.B.h; + I=RdZ80(R->HL.W++); + OutZ80(R->BC.W,I); + R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG)|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); + break; + +case OTIR: + do + { + --R->BC.B.h; + I=RdZ80(R->HL.W++); + OutZ80(R->BC.W,I); + R->ICount-=21; + } + while(R->BC.B.h&&(R->ICount>0)); + if(R->BC.B.h) + { + R->AF.B.l=N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); + R->PC.W-=2; + } + else + { + R->AF.B.l=Z_FLAG|N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); + R->ICount+=5; + } + break; + +case OUTD: + --R->BC.B.h; + I=RdZ80(R->HL.W--); + OutZ80(R->BC.W,I); + R->AF.B.l=N_FLAG|(R->BC.B.h? 0:Z_FLAG)|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); + break; + +case OTDR: + do + { + --R->BC.B.h; + I=RdZ80(R->HL.W--); + OutZ80(R->BC.W,I); + R->ICount-=21; + } + while(R->BC.B.h&&(R->ICount>0)); + if(R->BC.B.h) + { + R->AF.B.l=N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); + R->PC.W-=2; + } + else + { + R->AF.B.l=Z_FLAG|N_FLAG|(R->HL.B.l+I>255? (C_FLAG|H_FLAG):0); + R->ICount+=5; + } + break; + +case LDI: + WrZ80(R->DE.W++,RdZ80(R->HL.W++)); + --R->BC.W; + R->AF.B.l=(R->AF.B.l&~(N_FLAG|H_FLAG|P_FLAG))|(R->BC.W? P_FLAG:0); + break; + +case LDIR: + do + { + WrZ80(R->DE.W++,RdZ80(R->HL.W++)); + --R->BC.W;R->ICount-=21; + } + while(R->BC.W&&(R->ICount>0)); + R->AF.B.l&=~(N_FLAG|H_FLAG|P_FLAG); + if(R->BC.W) { R->AF.B.l|=N_FLAG;R->PC.W-=2; } + else R->ICount+=5; + break; + +case LDD: + WrZ80(R->DE.W--,RdZ80(R->HL.W--)); + --R->BC.W; + R->AF.B.l=(R->AF.B.l&~(N_FLAG|H_FLAG|P_FLAG))|(R->BC.W? P_FLAG:0); + break; + +case LDDR: + do + { + WrZ80(R->DE.W--,RdZ80(R->HL.W--)); + --R->BC.W;R->ICount-=21; + } + while(R->BC.W&&(R->ICount>0)); + R->AF.B.l&=~(N_FLAG|H_FLAG|P_FLAG); + if(R->BC.W) { R->AF.B.l|=N_FLAG;R->PC.W-=2; } + else R->ICount+=5; + break; + +case CPI: + I=RdZ80(R->HL.W++); + J.B.l=R->AF.B.h-I; + --R->BC.W; + R->AF.B.l = + N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| + ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); + break; + +case CPIR: + do + { + I=RdZ80(R->HL.W++); + J.B.l=R->AF.B.h-I; + --R->BC.W;R->ICount-=21; + } + while(R->BC.W&&J.B.l&&(R->ICount>0)); + R->AF.B.l = + N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| + ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); + if(R->BC.W&&J.B.l) R->PC.W-=2; else R->ICount+=5; + break; + +case CPD: + I=RdZ80(R->HL.W--); + J.B.l=R->AF.B.h-I; + --R->BC.W; + R->AF.B.l = + N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| + ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); + break; + +case CPDR: + do + { + I=RdZ80(R->HL.W--); + J.B.l=R->AF.B.h-I; + --R->BC.W;R->ICount-=21; + } + while(R->BC.W&&J.B.l); + R->AF.B.l = + N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[J.B.l]| + ((R->AF.B.h^I^J.B.l)&H_FLAG)|(R->BC.W? P_FLAG:0); + if(R->BC.W&&J.B.l) R->PC.W-=2; else R->ICount+=5; + break; diff --git a/MCUME_pico/picocpc/CodesXCB.h b/MCUME_pico/picocpc/processor/CodesXCB.h old mode 100755 new mode 100644 similarity index 98% rename from MCUME_pico/picocpc/CodesXCB.h rename to MCUME_pico/picocpc/processor/CodesXCB.h index 9a89306..d0873ce --- a/MCUME_pico/picocpc/CodesXCB.h +++ b/MCUME_pico/picocpc/processor/CodesXCB.h @@ -1,64 +1,64 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** CodesXCB.h **/ -/** **/ -/** This file contains implementation for FD/DD-CB tables **/ -/** of Z80 commands. It is included from Z80.c. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ - -case RLC_xHL: I=RdZ80(J.W);M_RLC(I);WrZ80(J.W,I);break; -case RRC_xHL: I=RdZ80(J.W);M_RRC(I);WrZ80(J.W,I);break; -case RL_xHL: I=RdZ80(J.W);M_RL(I);WrZ80(J.W,I);break; -case RR_xHL: I=RdZ80(J.W);M_RR(I);WrZ80(J.W,I);break; -case SLA_xHL: I=RdZ80(J.W);M_SLA(I);WrZ80(J.W,I);break; -case SRA_xHL: I=RdZ80(J.W);M_SRA(I);WrZ80(J.W,I);break; -case SLL_xHL: I=RdZ80(J.W);M_SLL(I);WrZ80(J.W,I);break; -case SRL_xHL: I=RdZ80(J.W);M_SRL(I);WrZ80(J.W,I);break; - -case BIT0_B: case BIT0_C: case BIT0_D: case BIT0_E: -case BIT0_H: case BIT0_L: case BIT0_A: -case BIT0_xHL: I=RdZ80(J.W);M_BIT(0,I);break; -case BIT1_B: case BIT1_C: case BIT1_D: case BIT1_E: -case BIT1_H: case BIT1_L: case BIT1_A: -case BIT1_xHL: I=RdZ80(J.W);M_BIT(1,I);break; -case BIT2_B: case BIT2_C: case BIT2_D: case BIT2_E: -case BIT2_H: case BIT2_L: case BIT2_A: -case BIT2_xHL: I=RdZ80(J.W);M_BIT(2,I);break; -case BIT3_B: case BIT3_C: case BIT3_D: case BIT3_E: -case BIT3_H: case BIT3_L: case BIT3_A: -case BIT3_xHL: I=RdZ80(J.W);M_BIT(3,I);break; -case BIT4_B: case BIT4_C: case BIT4_D: case BIT4_E: -case BIT4_H: case BIT4_L: case BIT4_A: -case BIT4_xHL: I=RdZ80(J.W);M_BIT(4,I);break; -case BIT5_B: case BIT5_C: case BIT5_D: case BIT5_E: -case BIT5_H: case BIT5_L: case BIT5_A: -case BIT5_xHL: I=RdZ80(J.W);M_BIT(5,I);break; -case BIT6_B: case BIT6_C: case BIT6_D: case BIT6_E: -case BIT6_H: case BIT6_L: case BIT6_A: -case BIT6_xHL: I=RdZ80(J.W);M_BIT(6,I);break; -case BIT7_B: case BIT7_C: case BIT7_D: case BIT7_E: -case BIT7_H: case BIT7_L: case BIT7_A: -case BIT7_xHL: I=RdZ80(J.W);M_BIT(7,I);break; - -case RES0_xHL: I=RdZ80(J.W);M_RES(0,I);WrZ80(J.W,I);break; -case RES1_xHL: I=RdZ80(J.W);M_RES(1,I);WrZ80(J.W,I);break; -case RES2_xHL: I=RdZ80(J.W);M_RES(2,I);WrZ80(J.W,I);break; -case RES3_xHL: I=RdZ80(J.W);M_RES(3,I);WrZ80(J.W,I);break; -case RES4_xHL: I=RdZ80(J.W);M_RES(4,I);WrZ80(J.W,I);break; -case RES5_xHL: I=RdZ80(J.W);M_RES(5,I);WrZ80(J.W,I);break; -case RES6_xHL: I=RdZ80(J.W);M_RES(6,I);WrZ80(J.W,I);break; -case RES7_xHL: I=RdZ80(J.W);M_RES(7,I);WrZ80(J.W,I);break; - -case SET0_xHL: I=RdZ80(J.W);M_SET(0,I);WrZ80(J.W,I);break; -case SET1_xHL: I=RdZ80(J.W);M_SET(1,I);WrZ80(J.W,I);break; -case SET2_xHL: I=RdZ80(J.W);M_SET(2,I);WrZ80(J.W,I);break; -case SET3_xHL: I=RdZ80(J.W);M_SET(3,I);WrZ80(J.W,I);break; -case SET4_xHL: I=RdZ80(J.W);M_SET(4,I);WrZ80(J.W,I);break; -case SET5_xHL: I=RdZ80(J.W);M_SET(5,I);WrZ80(J.W,I);break; -case SET6_xHL: I=RdZ80(J.W);M_SET(6,I);WrZ80(J.W,I);break; -case SET7_xHL: I=RdZ80(J.W);M_SET(7,I);WrZ80(J.W,I);break; +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** CodesXCB.h **/ +/** **/ +/** This file contains implementation for FD/DD-CB tables **/ +/** of Z80 commands. It is included from Z80.c. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ + +case RLC_xHL: I=RdZ80(J.W);M_RLC(I);WrZ80(J.W,I);break; +case RRC_xHL: I=RdZ80(J.W);M_RRC(I);WrZ80(J.W,I);break; +case RL_xHL: I=RdZ80(J.W);M_RL(I);WrZ80(J.W,I);break; +case RR_xHL: I=RdZ80(J.W);M_RR(I);WrZ80(J.W,I);break; +case SLA_xHL: I=RdZ80(J.W);M_SLA(I);WrZ80(J.W,I);break; +case SRA_xHL: I=RdZ80(J.W);M_SRA(I);WrZ80(J.W,I);break; +case SLL_xHL: I=RdZ80(J.W);M_SLL(I);WrZ80(J.W,I);break; +case SRL_xHL: I=RdZ80(J.W);M_SRL(I);WrZ80(J.W,I);break; + +case BIT0_B: case BIT0_C: case BIT0_D: case BIT0_E: +case BIT0_H: case BIT0_L: case BIT0_A: +case BIT0_xHL: I=RdZ80(J.W);M_BIT(0,I);break; +case BIT1_B: case BIT1_C: case BIT1_D: case BIT1_E: +case BIT1_H: case BIT1_L: case BIT1_A: +case BIT1_xHL: I=RdZ80(J.W);M_BIT(1,I);break; +case BIT2_B: case BIT2_C: case BIT2_D: case BIT2_E: +case BIT2_H: case BIT2_L: case BIT2_A: +case BIT2_xHL: I=RdZ80(J.W);M_BIT(2,I);break; +case BIT3_B: case BIT3_C: case BIT3_D: case BIT3_E: +case BIT3_H: case BIT3_L: case BIT3_A: +case BIT3_xHL: I=RdZ80(J.W);M_BIT(3,I);break; +case BIT4_B: case BIT4_C: case BIT4_D: case BIT4_E: +case BIT4_H: case BIT4_L: case BIT4_A: +case BIT4_xHL: I=RdZ80(J.W);M_BIT(4,I);break; +case BIT5_B: case BIT5_C: case BIT5_D: case BIT5_E: +case BIT5_H: case BIT5_L: case BIT5_A: +case BIT5_xHL: I=RdZ80(J.W);M_BIT(5,I);break; +case BIT6_B: case BIT6_C: case BIT6_D: case BIT6_E: +case BIT6_H: case BIT6_L: case BIT6_A: +case BIT6_xHL: I=RdZ80(J.W);M_BIT(6,I);break; +case BIT7_B: case BIT7_C: case BIT7_D: case BIT7_E: +case BIT7_H: case BIT7_L: case BIT7_A: +case BIT7_xHL: I=RdZ80(J.W);M_BIT(7,I);break; + +case RES0_xHL: I=RdZ80(J.W);M_RES(0,I);WrZ80(J.W,I);break; +case RES1_xHL: I=RdZ80(J.W);M_RES(1,I);WrZ80(J.W,I);break; +case RES2_xHL: I=RdZ80(J.W);M_RES(2,I);WrZ80(J.W,I);break; +case RES3_xHL: I=RdZ80(J.W);M_RES(3,I);WrZ80(J.W,I);break; +case RES4_xHL: I=RdZ80(J.W);M_RES(4,I);WrZ80(J.W,I);break; +case RES5_xHL: I=RdZ80(J.W);M_RES(5,I);WrZ80(J.W,I);break; +case RES6_xHL: I=RdZ80(J.W);M_RES(6,I);WrZ80(J.W,I);break; +case RES7_xHL: I=RdZ80(J.W);M_RES(7,I);WrZ80(J.W,I);break; + +case SET0_xHL: I=RdZ80(J.W);M_SET(0,I);WrZ80(J.W,I);break; +case SET1_xHL: I=RdZ80(J.W);M_SET(1,I);WrZ80(J.W,I);break; +case SET2_xHL: I=RdZ80(J.W);M_SET(2,I);WrZ80(J.W,I);break; +case SET3_xHL: I=RdZ80(J.W);M_SET(3,I);WrZ80(J.W,I);break; +case SET4_xHL: I=RdZ80(J.W);M_SET(4,I);WrZ80(J.W,I);break; +case SET5_xHL: I=RdZ80(J.W);M_SET(5,I);WrZ80(J.W,I);break; +case SET6_xHL: I=RdZ80(J.W);M_SET(6,I);WrZ80(J.W,I);break; +case SET7_xHL: I=RdZ80(J.W);M_SET(7,I);WrZ80(J.W,I);break; diff --git a/MCUME_pico/picocpc/CodesXX.h b/MCUME_pico/picocpc/processor/CodesXX.h old mode 100755 new mode 100644 similarity index 97% rename from MCUME_pico/picocpc/CodesXX.h rename to MCUME_pico/picocpc/processor/CodesXX.h index ad84f45..970b30e --- a/MCUME_pico/picocpc/CodesXX.h +++ b/MCUME_pico/picocpc/processor/CodesXX.h @@ -1,396 +1,396 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** CodesXX.h **/ -/** **/ -/** This file contains implementation for FD/DD tables of **/ -/** Z80 commands. It is included from Z80.c. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ - -case JR_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; -case JR_NC: if(R->AF.B.l&C_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; -case JR_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; -case JR_C: if(R->AF.B.l&C_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; - -case JP_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { M_JP; } break; -case JP_Z: if(R->AF.B.l&Z_FLAG) { M_JP; } else R->PC.W+=2; break; -case JP_C: if(R->AF.B.l&C_FLAG) { M_JP; } else R->PC.W+=2; break; -case JP_PE: if(R->AF.B.l&P_FLAG) { M_JP; } else R->PC.W+=2; break; -case JP_M: if(R->AF.B.l&S_FLAG) { M_JP; } else R->PC.W+=2; break; - -case RET_NZ: if(!(R->AF.B.l&Z_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_NC: if(!(R->AF.B.l&C_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_PO: if(!(R->AF.B.l&P_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_P: if(!(R->AF.B.l&S_FLAG)) { R->ICount-=6;M_RET; } break; -case RET_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=6;M_RET; } break; -case RET_C: if(R->AF.B.l&C_FLAG) { R->ICount-=6;M_RET; } break; -case RET_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=6;M_RET; } break; -case RET_M: if(R->AF.B.l&S_FLAG) { R->ICount-=6;M_RET; } break; - -case CALL_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; -case CALL_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; -case CALL_C: if(R->AF.B.l&C_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; -case CALL_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; -case CALL_M: if(R->AF.B.l&S_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; - -case ADD_B: M_ADD(R->BC.B.h);break; -case ADD_C: M_ADD(R->BC.B.l);break; -case ADD_D: M_ADD(R->DE.B.h);break; -case ADD_E: M_ADD(R->DE.B.l);break; -case ADD_H: M_ADD(R->XX.B.h);break; -case ADD_L: M_ADD(R->XX.B.l);break; -case ADD_A: M_ADD(R->AF.B.h);break; -case ADD_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_ADD(I);break; -case ADD_BYTE: I=OpZ80(R->PC.W++);M_ADD(I);break; - -case SUB_B: M_SUB(R->BC.B.h);break; -case SUB_C: M_SUB(R->BC.B.l);break; -case SUB_D: M_SUB(R->DE.B.h);break; -case SUB_E: M_SUB(R->DE.B.l);break; -case SUB_H: M_SUB(R->XX.B.h);break; -case SUB_L: M_SUB(R->XX.B.l);break; -case SUB_A: R->AF.B.h=0;R->AF.B.l=N_FLAG|Z_FLAG;break; -case SUB_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_SUB(I);break; -case SUB_BYTE: I=OpZ80(R->PC.W++);M_SUB(I);break; - -case AND_B: M_AND(R->BC.B.h);break; -case AND_C: M_AND(R->BC.B.l);break; -case AND_D: M_AND(R->DE.B.h);break; -case AND_E: M_AND(R->DE.B.l);break; -case AND_H: M_AND(R->XX.B.h);break; -case AND_L: M_AND(R->XX.B.l);break; -case AND_A: M_AND(R->AF.B.h);break; -case AND_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_AND(I);break; -case AND_BYTE: I=OpZ80(R->PC.W++);M_AND(I);break; - -case OR_B: M_OR(R->BC.B.h);break; -case OR_C: M_OR(R->BC.B.l);break; -case OR_D: M_OR(R->DE.B.h);break; -case OR_E: M_OR(R->DE.B.l);break; -case OR_H: M_OR(R->XX.B.h);break; -case OR_L: M_OR(R->XX.B.l);break; -case OR_A: M_OR(R->AF.B.h);break; -case OR_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_OR(I);break; -case OR_BYTE: I=OpZ80(R->PC.W++);M_OR(I);break; - -case ADC_B: M_ADC(R->BC.B.h);break; -case ADC_C: M_ADC(R->BC.B.l);break; -case ADC_D: M_ADC(R->DE.B.h);break; -case ADC_E: M_ADC(R->DE.B.l);break; -case ADC_H: M_ADC(R->XX.B.h);break; -case ADC_L: M_ADC(R->XX.B.l);break; -case ADC_A: M_ADC(R->AF.B.h);break; -case ADC_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_ADC(I);break; -case ADC_BYTE: I=OpZ80(R->PC.W++);M_ADC(I);break; - -case SBC_B: M_SBC(R->BC.B.h);break; -case SBC_C: M_SBC(R->BC.B.l);break; -case SBC_D: M_SBC(R->DE.B.h);break; -case SBC_E: M_SBC(R->DE.B.l);break; -case SBC_H: M_SBC(R->XX.B.h);break; -case SBC_L: M_SBC(R->XX.B.l);break; -case SBC_A: M_SBC(R->AF.B.h);break; -case SBC_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_SBC(I);break; -case SBC_BYTE: I=OpZ80(R->PC.W++);M_SBC(I);break; - -case XOR_B: M_XOR(R->BC.B.h);break; -case XOR_C: M_XOR(R->BC.B.l);break; -case XOR_D: M_XOR(R->DE.B.h);break; -case XOR_E: M_XOR(R->DE.B.l);break; -case XOR_H: M_XOR(R->XX.B.h);break; -case XOR_L: M_XOR(R->XX.B.l);break; -case XOR_A: R->AF.B.h=0;R->AF.B.l=P_FLAG|Z_FLAG;break; -case XOR_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_XOR(I);break; -case XOR_BYTE: I=OpZ80(R->PC.W++);M_XOR(I);break; - -case CP_B: M_CP(R->BC.B.h);break; -case CP_C: M_CP(R->BC.B.l);break; -case CP_D: M_CP(R->DE.B.h);break; -case CP_E: M_CP(R->DE.B.l);break; -case CP_H: M_CP(R->XX.B.h);break; -case CP_L: M_CP(R->XX.B.l);break; -case CP_A: R->AF.B.l=N_FLAG|Z_FLAG;break; -case CP_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); - M_CP(I);break; -case CP_BYTE: I=OpZ80(R->PC.W++);M_CP(I);break; - -case LD_BC_WORD: M_LDWORD(BC);break; -case LD_DE_WORD: M_LDWORD(DE);break; -case LD_HL_WORD: M_LDWORD(XX);break; -case LD_SP_WORD: M_LDWORD(SP);break; - -case LD_PC_HL: R->PC.W=R->XX.W;JumpZ80(R->PC.W);break; -case LD_SP_HL: R->SP.W=R->XX.W;break; -case LD_A_xBC: R->AF.B.h=RdZ80(R->BC.W);break; -case LD_A_xDE: R->AF.B.h=RdZ80(R->DE.W);break; - -case ADD_HL_BC: M_ADDW(XX,BC);break; -case ADD_HL_DE: M_ADDW(XX,DE);break; -case ADD_HL_HL: M_ADDW(XX,XX);break; -case ADD_HL_SP: M_ADDW(XX,SP);break; - -case DEC_BC: R->BC.W--;break; -case DEC_DE: R->DE.W--;break; -case DEC_HL: R->XX.W--;break; -case DEC_SP: R->SP.W--;break; - -case INC_BC: R->BC.W++;break; -case INC_DE: R->DE.W++;break; -case INC_HL: R->XX.W++;break; -case INC_SP: R->SP.W++;break; - -case DEC_B: M_DEC(R->BC.B.h);break; -case DEC_C: M_DEC(R->BC.B.l);break; -case DEC_D: M_DEC(R->DE.B.h);break; -case DEC_E: M_DEC(R->DE.B.l);break; -case DEC_H: M_DEC(R->XX.B.h);break; -case DEC_L: M_DEC(R->XX.B.l);break; -case DEC_A: M_DEC(R->AF.B.h);break; -case DEC_xHL: I=RdZ80(R->XX.W+(offset)RdZ80(R->PC.W));M_DEC(I); - WrZ80(R->XX.W+(offset)OpZ80(R->PC.W++),I); - break; - -case INC_B: M_INC(R->BC.B.h);break; -case INC_C: M_INC(R->BC.B.l);break; -case INC_D: M_INC(R->DE.B.h);break; -case INC_E: M_INC(R->DE.B.l);break; -case INC_H: M_INC(R->XX.B.h);break; -case INC_L: M_INC(R->XX.B.l);break; -case INC_A: M_INC(R->AF.B.h);break; -case INC_xHL: I=RdZ80(R->XX.W+(offset)RdZ80(R->PC.W));M_INC(I); - WrZ80(R->XX.W+(offset)OpZ80(R->PC.W++),I); - break; - -case RLCA: - I=(R->AF.B.h&0x80? C_FLAG:0); - R->AF.B.h=(R->AF.B.h<<1)|I; - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; -case RLA: - I=(R->AF.B.h&0x80? C_FLAG:0); - R->AF.B.h=(R->AF.B.h<<1)|(R->AF.B.l&C_FLAG); - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; -case RRCA: - I=R->AF.B.h&0x01; - R->AF.B.h=(R->AF.B.h>>1)|(I? 0x80:0); - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; -case RRA: - I=R->AF.B.h&0x01; - R->AF.B.h=(R->AF.B.h>>1)|(R->AF.B.l&C_FLAG? 0x80:0); - R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; - break; - -case RST00: M_RST(0x0000);break; -case RST08: M_RST(0x0008);break; -case RST10: M_RST(0x0010);break; -case RST18: M_RST(0x0018);break; -case RST20: M_RST(0x0020);break; -case RST28: M_RST(0x0028);break; -case RST30: M_RST(0x0030);break; -case RST38: M_RST(0x0038);break; - -case PUSH_BC: M_PUSH(BC);break; -case PUSH_DE: M_PUSH(DE);break; -case PUSH_HL: M_PUSH(XX);break; -case PUSH_AF: M_PUSH(AF);break; - -case POP_BC: M_POP(BC);break; -case POP_DE: M_POP(DE);break; -case POP_HL: M_POP(XX);break; -case POP_AF: M_POP(AF);break; - -case DJNZ: if(--R->BC.B.h) { R->ICount-=5;M_JR; } else R->PC.W++;break; -case JP: M_JP;break; -case JR: M_JR;break; -case CALL: M_CALL;break; -case RET: M_RET;break; -case SCF: S(C_FLAG);R(N_FLAG|H_FLAG);break; -case CPL: R->AF.B.h=~R->AF.B.h;S(N_FLAG|H_FLAG);break; -case NOP: break; -case OUTA: I=OpZ80(R->PC.W++);OutZ80(I|(R->AF.W&0xFF00),R->AF.B.h);break; -case INA: I=OpZ80(R->PC.W++);R->AF.B.h=InZ80(I|(R->AF.W&0xFF00));break; - -case HALT: - R->PC.W--; - R->IFF|=IFF_HALT; - R->IBackup=0; - R->ICount=0; - break; - -case DI: - if(R->IFF&IFF_EI) R->ICount+=R->IBackup-1; - R->IFF&=~(IFF_1|IFF_2|IFF_EI); - break; - -case EI: - if(!(R->IFF&(IFF_1|IFF_EI))) - { - R->IFF|=IFF_2|IFF_EI; - R->IBackup=R->ICount; - R->ICount=1; - } - break; - -case CCF: - R->AF.B.l^=C_FLAG;R(N_FLAG|H_FLAG); - R->AF.B.l|=R->AF.B.l&C_FLAG? 0:H_FLAG; - break; - -case EXX: - J.W=R->BC.W;R->BC.W=R->BC1.W;R->BC1.W=J.W; - J.W=R->DE.W;R->DE.W=R->DE1.W;R->DE1.W=J.W; - J.W=R->HL.W;R->HL.W=R->HL1.W;R->HL1.W=J.W; - break; - -case EX_DE_HL: J.W=R->DE.W;R->DE.W=R->HL.W;R->HL.W=J.W;break; -case EX_AF_AF: J.W=R->AF.W;R->AF.W=R->AF1.W;R->AF1.W=J.W;break; - -case LD_B_B: R->BC.B.h=R->BC.B.h;break; -case LD_C_B: R->BC.B.l=R->BC.B.h;break; -case LD_D_B: R->DE.B.h=R->BC.B.h;break; -case LD_E_B: R->DE.B.l=R->BC.B.h;break; -case LD_H_B: R->XX.B.h=R->BC.B.h;break; -case LD_L_B: R->XX.B.l=R->BC.B.h;break; -case LD_A_B: R->AF.B.h=R->BC.B.h;break; -case LD_xHL_B: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,R->BC.B.h);break; - -case LD_B_C: R->BC.B.h=R->BC.B.l;break; -case LD_C_C: R->BC.B.l=R->BC.B.l;break; -case LD_D_C: R->DE.B.h=R->BC.B.l;break; -case LD_E_C: R->DE.B.l=R->BC.B.l;break; -case LD_H_C: R->XX.B.h=R->BC.B.l;break; -case LD_L_C: R->XX.B.l=R->BC.B.l;break; -case LD_A_C: R->AF.B.h=R->BC.B.l;break; -case LD_xHL_C: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,R->BC.B.l);break; - -case LD_B_D: R->BC.B.h=R->DE.B.h;break; -case LD_C_D: R->BC.B.l=R->DE.B.h;break; -case LD_D_D: R->DE.B.h=R->DE.B.h;break; -case LD_E_D: R->DE.B.l=R->DE.B.h;break; -case LD_H_D: R->XX.B.h=R->DE.B.h;break; -case LD_L_D: R->XX.B.l=R->DE.B.h;break; -case LD_A_D: R->AF.B.h=R->DE.B.h;break; -case LD_xHL_D: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,R->DE.B.h);break; - -case LD_B_E: R->BC.B.h=R->DE.B.l;break; -case LD_C_E: R->BC.B.l=R->DE.B.l;break; -case LD_D_E: R->DE.B.h=R->DE.B.l;break; -case LD_E_E: R->DE.B.l=R->DE.B.l;break; -case LD_H_E: R->XX.B.h=R->DE.B.l;break; -case LD_L_E: R->XX.B.l=R->DE.B.l;break; -case LD_A_E: R->AF.B.h=R->DE.B.l;break; -case LD_xHL_E: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,R->DE.B.l);break; - -case LD_B_H: R->BC.B.h=R->XX.B.h;break; -case LD_C_H: R->BC.B.l=R->XX.B.h;break; -case LD_D_H: R->DE.B.h=R->XX.B.h;break; -case LD_E_H: R->DE.B.l=R->XX.B.h;break; -case LD_H_H: R->XX.B.h=R->XX.B.h;break; -case LD_L_H: R->XX.B.l=R->XX.B.h;break; -case LD_A_H: R->AF.B.h=R->XX.B.h;break; -case LD_xHL_H: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,R->HL.B.h);break; - -case LD_B_L: R->BC.B.h=R->XX.B.l;break; -case LD_C_L: R->BC.B.l=R->XX.B.l;break; -case LD_D_L: R->DE.B.h=R->XX.B.l;break; -case LD_E_L: R->DE.B.l=R->XX.B.l;break; -case LD_H_L: R->XX.B.h=R->XX.B.l;break; -case LD_L_L: R->XX.B.l=R->XX.B.l;break; -case LD_A_L: R->AF.B.h=R->XX.B.l;break; -case LD_xHL_L: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,R->HL.B.l);break; - -case LD_B_A: R->BC.B.h=R->AF.B.h;break; -case LD_C_A: R->BC.B.l=R->AF.B.h;break; -case LD_D_A: R->DE.B.h=R->AF.B.h;break; -case LD_E_A: R->DE.B.l=R->AF.B.h;break; -case LD_H_A: R->XX.B.h=R->AF.B.h;break; -case LD_L_A: R->XX.B.l=R->AF.B.h;break; -case LD_A_A: R->AF.B.h=R->AF.B.h;break; -case LD_xHL_A: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,R->AF.B.h);break; - -case LD_xBC_A: WrZ80(R->BC.W,R->AF.B.h);break; -case LD_xDE_A: WrZ80(R->DE.W,R->AF.B.h);break; - -case LD_B_xHL: R->BC.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; -case LD_C_xHL: R->BC.B.l=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; -case LD_D_xHL: R->DE.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; -case LD_E_xHL: R->DE.B.l=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; -case LD_H_xHL: R->HL.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; -case LD_L_xHL: R->HL.B.l=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; -case LD_A_xHL: R->AF.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; - -case LD_B_BYTE: R->BC.B.h=OpZ80(R->PC.W++);break; -case LD_C_BYTE: R->BC.B.l=OpZ80(R->PC.W++);break; -case LD_D_BYTE: R->DE.B.h=OpZ80(R->PC.W++);break; -case LD_E_BYTE: R->DE.B.l=OpZ80(R->PC.W++);break; -case LD_H_BYTE: R->XX.B.h=OpZ80(R->PC.W++);break; -case LD_L_BYTE: R->XX.B.l=OpZ80(R->PC.W++);break; -case LD_A_BYTE: R->AF.B.h=OpZ80(R->PC.W++);break; -case LD_xHL_BYTE: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - WrZ80(J.W,OpZ80(R->PC.W++));break; - -case LD_xWORD_HL: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W++,R->XX.B.l); - WrZ80(J.W,R->XX.B.h); - break; - -case LD_HL_xWORD: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->XX.B.l=RdZ80(J.W++); - R->XX.B.h=RdZ80(J.W); - break; - -case LD_A_xWORD: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - R->AF.B.h=RdZ80(J.W); - break; - -case LD_xWORD_A: - J.B.l=OpZ80(R->PC.W++); - J.B.h=OpZ80(R->PC.W++); - WrZ80(J.W,R->AF.B.h); - break; - -case EX_HL_xSP: - J.B.l=RdZ80(R->SP.W);WrZ80(R->SP.W++,R->XX.B.l); - J.B.h=RdZ80(R->SP.W);WrZ80(R->SP.W--,R->XX.B.h); - R->XX.W=J.W; - break; - -case DAA: - J.W=R->AF.B.h; - if(R->AF.B.l&C_FLAG) J.W|=256; - if(R->AF.B.l&H_FLAG) J.W|=512; - if(R->AF.B.l&N_FLAG) J.W|=1024; - R->AF.W=DAATable[J.W]; - break; +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** CodesXX.h **/ +/** **/ +/** This file contains implementation for FD/DD tables of **/ +/** Z80 commands. It is included from Z80.c. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ + +case JR_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; +case JR_NC: if(R->AF.B.l&C_FLAG) R->PC.W++; else { R->ICount-=5;M_JR; } break; +case JR_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; +case JR_C: if(R->AF.B.l&C_FLAG) { R->ICount-=5;M_JR; } else R->PC.W++; break; + +case JP_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { M_JP; } break; +case JP_Z: if(R->AF.B.l&Z_FLAG) { M_JP; } else R->PC.W+=2; break; +case JP_C: if(R->AF.B.l&C_FLAG) { M_JP; } else R->PC.W+=2; break; +case JP_PE: if(R->AF.B.l&P_FLAG) { M_JP; } else R->PC.W+=2; break; +case JP_M: if(R->AF.B.l&S_FLAG) { M_JP; } else R->PC.W+=2; break; + +case RET_NZ: if(!(R->AF.B.l&Z_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_NC: if(!(R->AF.B.l&C_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_PO: if(!(R->AF.B.l&P_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_P: if(!(R->AF.B.l&S_FLAG)) { R->ICount-=6;M_RET; } break; +case RET_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=6;M_RET; } break; +case RET_C: if(R->AF.B.l&C_FLAG) { R->ICount-=6;M_RET; } break; +case RET_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=6;M_RET; } break; +case RET_M: if(R->AF.B.l&S_FLAG) { R->ICount-=6;M_RET; } break; + +case CALL_NZ: if(R->AF.B.l&Z_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_NC: if(R->AF.B.l&C_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_PO: if(R->AF.B.l&P_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_P: if(R->AF.B.l&S_FLAG) R->PC.W+=2; else { R->ICount-=7;M_CALL; } break; +case CALL_Z: if(R->AF.B.l&Z_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; +case CALL_C: if(R->AF.B.l&C_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; +case CALL_PE: if(R->AF.B.l&P_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; +case CALL_M: if(R->AF.B.l&S_FLAG) { R->ICount-=7;M_CALL; } else R->PC.W+=2; break; + +case ADD_B: M_ADD(R->BC.B.h);break; +case ADD_C: M_ADD(R->BC.B.l);break; +case ADD_D: M_ADD(R->DE.B.h);break; +case ADD_E: M_ADD(R->DE.B.l);break; +case ADD_H: M_ADD(R->XX.B.h);break; +case ADD_L: M_ADD(R->XX.B.l);break; +case ADD_A: M_ADD(R->AF.B.h);break; +case ADD_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_ADD(I);break; +case ADD_BYTE: I=OpZ80(R->PC.W++);M_ADD(I);break; + +case SUB_B: M_SUB(R->BC.B.h);break; +case SUB_C: M_SUB(R->BC.B.l);break; +case SUB_D: M_SUB(R->DE.B.h);break; +case SUB_E: M_SUB(R->DE.B.l);break; +case SUB_H: M_SUB(R->XX.B.h);break; +case SUB_L: M_SUB(R->XX.B.l);break; +case SUB_A: R->AF.B.h=0;R->AF.B.l=N_FLAG|Z_FLAG;break; +case SUB_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_SUB(I);break; +case SUB_BYTE: I=OpZ80(R->PC.W++);M_SUB(I);break; + +case AND_B: M_AND(R->BC.B.h);break; +case AND_C: M_AND(R->BC.B.l);break; +case AND_D: M_AND(R->DE.B.h);break; +case AND_E: M_AND(R->DE.B.l);break; +case AND_H: M_AND(R->XX.B.h);break; +case AND_L: M_AND(R->XX.B.l);break; +case AND_A: M_AND(R->AF.B.h);break; +case AND_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_AND(I);break; +case AND_BYTE: I=OpZ80(R->PC.W++);M_AND(I);break; + +case OR_B: M_OR(R->BC.B.h);break; +case OR_C: M_OR(R->BC.B.l);break; +case OR_D: M_OR(R->DE.B.h);break; +case OR_E: M_OR(R->DE.B.l);break; +case OR_H: M_OR(R->XX.B.h);break; +case OR_L: M_OR(R->XX.B.l);break; +case OR_A: M_OR(R->AF.B.h);break; +case OR_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_OR(I);break; +case OR_BYTE: I=OpZ80(R->PC.W++);M_OR(I);break; + +case ADC_B: M_ADC(R->BC.B.h);break; +case ADC_C: M_ADC(R->BC.B.l);break; +case ADC_D: M_ADC(R->DE.B.h);break; +case ADC_E: M_ADC(R->DE.B.l);break; +case ADC_H: M_ADC(R->XX.B.h);break; +case ADC_L: M_ADC(R->XX.B.l);break; +case ADC_A: M_ADC(R->AF.B.h);break; +case ADC_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_ADC(I);break; +case ADC_BYTE: I=OpZ80(R->PC.W++);M_ADC(I);break; + +case SBC_B: M_SBC(R->BC.B.h);break; +case SBC_C: M_SBC(R->BC.B.l);break; +case SBC_D: M_SBC(R->DE.B.h);break; +case SBC_E: M_SBC(R->DE.B.l);break; +case SBC_H: M_SBC(R->XX.B.h);break; +case SBC_L: M_SBC(R->XX.B.l);break; +case SBC_A: M_SBC(R->AF.B.h);break; +case SBC_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_SBC(I);break; +case SBC_BYTE: I=OpZ80(R->PC.W++);M_SBC(I);break; + +case XOR_B: M_XOR(R->BC.B.h);break; +case XOR_C: M_XOR(R->BC.B.l);break; +case XOR_D: M_XOR(R->DE.B.h);break; +case XOR_E: M_XOR(R->DE.B.l);break; +case XOR_H: M_XOR(R->XX.B.h);break; +case XOR_L: M_XOR(R->XX.B.l);break; +case XOR_A: R->AF.B.h=0;R->AF.B.l=P_FLAG|Z_FLAG;break; +case XOR_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_XOR(I);break; +case XOR_BYTE: I=OpZ80(R->PC.W++);M_XOR(I);break; + +case CP_B: M_CP(R->BC.B.h);break; +case CP_C: M_CP(R->BC.B.l);break; +case CP_D: M_CP(R->DE.B.h);break; +case CP_E: M_CP(R->DE.B.l);break; +case CP_H: M_CP(R->XX.B.h);break; +case CP_L: M_CP(R->XX.B.l);break; +case CP_A: R->AF.B.l=N_FLAG|Z_FLAG;break; +case CP_xHL: I=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++)); + M_CP(I);break; +case CP_BYTE: I=OpZ80(R->PC.W++);M_CP(I);break; + +case LD_BC_WORD: M_LDWORD(BC);break; +case LD_DE_WORD: M_LDWORD(DE);break; +case LD_HL_WORD: M_LDWORD(XX);break; +case LD_SP_WORD: M_LDWORD(SP);break; + +case LD_PC_HL: R->PC.W=R->XX.W;JumpZ80(R->PC.W);break; +case LD_SP_HL: R->SP.W=R->XX.W;break; +case LD_A_xBC: R->AF.B.h=RdZ80(R->BC.W);break; +case LD_A_xDE: R->AF.B.h=RdZ80(R->DE.W);break; + +case ADD_HL_BC: M_ADDW(XX,BC);break; +case ADD_HL_DE: M_ADDW(XX,DE);break; +case ADD_HL_HL: M_ADDW(XX,XX);break; +case ADD_HL_SP: M_ADDW(XX,SP);break; + +case DEC_BC: R->BC.W--;break; +case DEC_DE: R->DE.W--;break; +case DEC_HL: R->XX.W--;break; +case DEC_SP: R->SP.W--;break; + +case INC_BC: R->BC.W++;break; +case INC_DE: R->DE.W++;break; +case INC_HL: R->XX.W++;break; +case INC_SP: R->SP.W++;break; + +case DEC_B: M_DEC(R->BC.B.h);break; +case DEC_C: M_DEC(R->BC.B.l);break; +case DEC_D: M_DEC(R->DE.B.h);break; +case DEC_E: M_DEC(R->DE.B.l);break; +case DEC_H: M_DEC(R->XX.B.h);break; +case DEC_L: M_DEC(R->XX.B.l);break; +case DEC_A: M_DEC(R->AF.B.h);break; +case DEC_xHL: I=RdZ80(R->XX.W+(offset)RdZ80(R->PC.W));M_DEC(I); + WrZ80(R->XX.W+(offset)OpZ80(R->PC.W++),I); + break; + +case INC_B: M_INC(R->BC.B.h);break; +case INC_C: M_INC(R->BC.B.l);break; +case INC_D: M_INC(R->DE.B.h);break; +case INC_E: M_INC(R->DE.B.l);break; +case INC_H: M_INC(R->XX.B.h);break; +case INC_L: M_INC(R->XX.B.l);break; +case INC_A: M_INC(R->AF.B.h);break; +case INC_xHL: I=RdZ80(R->XX.W+(offset)RdZ80(R->PC.W));M_INC(I); + WrZ80(R->XX.W+(offset)OpZ80(R->PC.W++),I); + break; + +case RLCA: + I=(R->AF.B.h&0x80? C_FLAG:0); + R->AF.B.h=(R->AF.B.h<<1)|I; + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; +case RLA: + I=(R->AF.B.h&0x80? C_FLAG:0); + R->AF.B.h=(R->AF.B.h<<1)|(R->AF.B.l&C_FLAG); + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; +case RRCA: + I=R->AF.B.h&0x01; + R->AF.B.h=(R->AF.B.h>>1)|(I? 0x80:0); + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; +case RRA: + I=R->AF.B.h&0x01; + R->AF.B.h=(R->AF.B.h>>1)|(R->AF.B.l&C_FLAG? 0x80:0); + R->AF.B.l=(R->AF.B.l&~(C_FLAG|N_FLAG|H_FLAG))|I; + break; + +case RST00: M_RST(0x0000);break; +case RST08: M_RST(0x0008);break; +case RST10: M_RST(0x0010);break; +case RST18: M_RST(0x0018);break; +case RST20: M_RST(0x0020);break; +case RST28: M_RST(0x0028);break; +case RST30: M_RST(0x0030);break; +case RST38: M_RST(0x0038);break; + +case PUSH_BC: M_PUSH(BC);break; +case PUSH_DE: M_PUSH(DE);break; +case PUSH_HL: M_PUSH(XX);break; +case PUSH_AF: M_PUSH(AF);break; + +case POP_BC: M_POP(BC);break; +case POP_DE: M_POP(DE);break; +case POP_HL: M_POP(XX);break; +case POP_AF: M_POP(AF);break; + +case DJNZ: if(--R->BC.B.h) { R->ICount-=5;M_JR; } else R->PC.W++;break; +case JP: M_JP;break; +case JR: M_JR;break; +case CALL: M_CALL;break; +case RET: M_RET;break; +case SCF: S(C_FLAG);R(N_FLAG|H_FLAG);break; +case CPL: R->AF.B.h=~R->AF.B.h;S(N_FLAG|H_FLAG);break; +case NOP: break; +case OUTA: I=OpZ80(R->PC.W++);OutZ80(I|(R->AF.W&0xFF00),R->AF.B.h);break; +case INA: I=OpZ80(R->PC.W++);R->AF.B.h=InZ80(I|(R->AF.W&0xFF00));break; + +case HALT: + R->PC.W--; + R->IFF|=IFF_HALT; + R->IBackup=0; + R->ICount=0; + break; + +case DI: + if(R->IFF&IFF_EI) R->ICount+=R->IBackup-1; + R->IFF&=~(IFF_1|IFF_2|IFF_EI); + break; + +case EI: + if(!(R->IFF&(IFF_1|IFF_EI))) + { + R->IFF|=IFF_2|IFF_EI; + R->IBackup=R->ICount; + R->ICount=1; + } + break; + +case CCF: + R->AF.B.l^=C_FLAG;R(N_FLAG|H_FLAG); + R->AF.B.l|=R->AF.B.l&C_FLAG? 0:H_FLAG; + break; + +case EXX: + J.W=R->BC.W;R->BC.W=R->BC1.W;R->BC1.W=J.W; + J.W=R->DE.W;R->DE.W=R->DE1.W;R->DE1.W=J.W; + J.W=R->HL.W;R->HL.W=R->HL1.W;R->HL1.W=J.W; + break; + +case EX_DE_HL: J.W=R->DE.W;R->DE.W=R->HL.W;R->HL.W=J.W;break; +case EX_AF_AF: J.W=R->AF.W;R->AF.W=R->AF1.W;R->AF1.W=J.W;break; + +case LD_B_B: R->BC.B.h=R->BC.B.h;break; +case LD_C_B: R->BC.B.l=R->BC.B.h;break; +case LD_D_B: R->DE.B.h=R->BC.B.h;break; +case LD_E_B: R->DE.B.l=R->BC.B.h;break; +case LD_H_B: R->XX.B.h=R->BC.B.h;break; +case LD_L_B: R->XX.B.l=R->BC.B.h;break; +case LD_A_B: R->AF.B.h=R->BC.B.h;break; +case LD_xHL_B: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,R->BC.B.h);break; + +case LD_B_C: R->BC.B.h=R->BC.B.l;break; +case LD_C_C: R->BC.B.l=R->BC.B.l;break; +case LD_D_C: R->DE.B.h=R->BC.B.l;break; +case LD_E_C: R->DE.B.l=R->BC.B.l;break; +case LD_H_C: R->XX.B.h=R->BC.B.l;break; +case LD_L_C: R->XX.B.l=R->BC.B.l;break; +case LD_A_C: R->AF.B.h=R->BC.B.l;break; +case LD_xHL_C: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,R->BC.B.l);break; + +case LD_B_D: R->BC.B.h=R->DE.B.h;break; +case LD_C_D: R->BC.B.l=R->DE.B.h;break; +case LD_D_D: R->DE.B.h=R->DE.B.h;break; +case LD_E_D: R->DE.B.l=R->DE.B.h;break; +case LD_H_D: R->XX.B.h=R->DE.B.h;break; +case LD_L_D: R->XX.B.l=R->DE.B.h;break; +case LD_A_D: R->AF.B.h=R->DE.B.h;break; +case LD_xHL_D: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,R->DE.B.h);break; + +case LD_B_E: R->BC.B.h=R->DE.B.l;break; +case LD_C_E: R->BC.B.l=R->DE.B.l;break; +case LD_D_E: R->DE.B.h=R->DE.B.l;break; +case LD_E_E: R->DE.B.l=R->DE.B.l;break; +case LD_H_E: R->XX.B.h=R->DE.B.l;break; +case LD_L_E: R->XX.B.l=R->DE.B.l;break; +case LD_A_E: R->AF.B.h=R->DE.B.l;break; +case LD_xHL_E: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,R->DE.B.l);break; + +case LD_B_H: R->BC.B.h=R->XX.B.h;break; +case LD_C_H: R->BC.B.l=R->XX.B.h;break; +case LD_D_H: R->DE.B.h=R->XX.B.h;break; +case LD_E_H: R->DE.B.l=R->XX.B.h;break; +case LD_H_H: R->XX.B.h=R->XX.B.h;break; +case LD_L_H: R->XX.B.l=R->XX.B.h;break; +case LD_A_H: R->AF.B.h=R->XX.B.h;break; +case LD_xHL_H: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,R->HL.B.h);break; + +case LD_B_L: R->BC.B.h=R->XX.B.l;break; +case LD_C_L: R->BC.B.l=R->XX.B.l;break; +case LD_D_L: R->DE.B.h=R->XX.B.l;break; +case LD_E_L: R->DE.B.l=R->XX.B.l;break; +case LD_H_L: R->XX.B.h=R->XX.B.l;break; +case LD_L_L: R->XX.B.l=R->XX.B.l;break; +case LD_A_L: R->AF.B.h=R->XX.B.l;break; +case LD_xHL_L: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,R->HL.B.l);break; + +case LD_B_A: R->BC.B.h=R->AF.B.h;break; +case LD_C_A: R->BC.B.l=R->AF.B.h;break; +case LD_D_A: R->DE.B.h=R->AF.B.h;break; +case LD_E_A: R->DE.B.l=R->AF.B.h;break; +case LD_H_A: R->XX.B.h=R->AF.B.h;break; +case LD_L_A: R->XX.B.l=R->AF.B.h;break; +case LD_A_A: R->AF.B.h=R->AF.B.h;break; +case LD_xHL_A: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,R->AF.B.h);break; + +case LD_xBC_A: WrZ80(R->BC.W,R->AF.B.h);break; +case LD_xDE_A: WrZ80(R->DE.W,R->AF.B.h);break; + +case LD_B_xHL: R->BC.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; +case LD_C_xHL: R->BC.B.l=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; +case LD_D_xHL: R->DE.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; +case LD_E_xHL: R->DE.B.l=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; +case LD_H_xHL: R->HL.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; +case LD_L_xHL: R->HL.B.l=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; +case LD_A_xHL: R->AF.B.h=RdZ80(R->XX.W+(offset)OpZ80(R->PC.W++));break; + +case LD_B_BYTE: R->BC.B.h=OpZ80(R->PC.W++);break; +case LD_C_BYTE: R->BC.B.l=OpZ80(R->PC.W++);break; +case LD_D_BYTE: R->DE.B.h=OpZ80(R->PC.W++);break; +case LD_E_BYTE: R->DE.B.l=OpZ80(R->PC.W++);break; +case LD_H_BYTE: R->XX.B.h=OpZ80(R->PC.W++);break; +case LD_L_BYTE: R->XX.B.l=OpZ80(R->PC.W++);break; +case LD_A_BYTE: R->AF.B.h=OpZ80(R->PC.W++);break; +case LD_xHL_BYTE: J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + WrZ80(J.W,OpZ80(R->PC.W++));break; + +case LD_xWORD_HL: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W++,R->XX.B.l); + WrZ80(J.W,R->XX.B.h); + break; + +case LD_HL_xWORD: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->XX.B.l=RdZ80(J.W++); + R->XX.B.h=RdZ80(J.W); + break; + +case LD_A_xWORD: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + R->AF.B.h=RdZ80(J.W); + break; + +case LD_xWORD_A: + J.B.l=OpZ80(R->PC.W++); + J.B.h=OpZ80(R->PC.W++); + WrZ80(J.W,R->AF.B.h); + break; + +case EX_HL_xSP: + J.B.l=RdZ80(R->SP.W);WrZ80(R->SP.W++,R->XX.B.l); + J.B.h=RdZ80(R->SP.W);WrZ80(R->SP.W--,R->XX.B.h); + R->XX.W=J.W; + break; + +case DAA: + J.W=R->AF.B.h; + if(R->AF.B.l&C_FLAG) J.W|=256; + if(R->AF.B.l&H_FLAG) J.W|=512; + if(R->AF.B.l&N_FLAG) J.W|=1024; + R->AF.W=DAATable[J.W]; + break; diff --git a/MCUME_pico/picocpc/Tables.h b/MCUME_pico/picocpc/processor/Tables.h similarity index 98% rename from MCUME_pico/picocpc/Tables.h rename to MCUME_pico/picocpc/processor/Tables.h index dbb299a..ba1ebee 100644 --- a/MCUME_pico/picocpc/Tables.h +++ b/MCUME_pico/picocpc/processor/Tables.h @@ -1,447 +1,447 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** Tables.h **/ -/** **/ -/** This file contains tables of used by Z80 emulation to **/ -/** compute SIGN,ZERO, PARITY flags, and decimal correction **/ -/** There are also timing tables for Z80 opcodes. This file **/ -/** is included from Z80.c. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ - -static const byte Cycles[256] = -{ - 4,10, 7, 6, 4, 4, 7, 4, 4,11, 7, 6, 4, 4, 7, 4, - 8,10, 7, 6, 4, 4, 7, 4,12,11, 7, 6, 4, 4, 7, 4, - 7,10,16, 6, 4, 4, 7, 4, 7,11,16, 6, 4, 4, 7, 4, - 7,10,13, 6,11,11,10, 4, 7,11,13, 6, 4, 4, 7, 4, - 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, - 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, - 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, - 7, 7, 7, 7, 7, 7, 4, 7, 4, 4, 4, 4, 4, 4, 7, 4, - 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, - 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, - 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, - 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, - 5,10,10,10,10,11, 7,11, 5,10,10, 0,10,17, 7,11, - 5,10,10,11,10,11, 7,11, 5, 4,10,11,10, 0, 7,11, - 5,10,10,19,10,11, 7,11, 5, 4,10, 4,10, 0, 7,11, - 5,10,10, 4,10,11, 7,11, 5, 6,10, 4,10, 0, 7,11 -}; - -static const byte CyclesCB[256] = -{ - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, - 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, - 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, - 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, - 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8 -}; - -static const byte CyclesED[256] = -{ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12,12,15,20, 8,14, 8, 9,12,12,15,20, 0,14, 0, 9, - 12,12,15,20, 0, 0, 8, 9,12,12,15,20, 0, 0, 8, 9, - 12,12,15,20, 0, 0, 0,18,12,12,15,20, 0, 0, 0,18, - 12, 0,15,20, 0, 0, 0, 0,12,12,15,20, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 16,16,16,16, 0, 0, 0, 0,16,16,16,16, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -}; - -static const byte CyclesXX[256] = -{ - 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, - 0,14,20,10, 9, 9, 9, 0, 0,15,20,10, 9, 9, 9, 0, - 0, 0, 0, 0,23,23,19, 0, 0,15, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, - 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, - 9, 9, 9, 9, 9, 9,19, 9, 9, 9, 9, 9, 9, 9,19, 9, - 19,19,19,19,19,19,19,19, 0, 0, 0, 0, 9, 9,19, 0, - 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, - 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, - 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, - 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0,14, 0,23, 0,15, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0,10, 0, 0, 0, 0, 0, 0 -}; - -static const byte CyclesXXCB[256] = -{ - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, - 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, - 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, - 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, - 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0 -}; - -static const byte ZSTable[256] = -{ - Z_FLAG,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, - S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG -}; - -static const byte PZSTable[256] = -{ - Z_FLAG|P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, - 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, - 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, - 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, - P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0,0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, - 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, - P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0,0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, - P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0,0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, - 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, - S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG -}; - -static const word DAATable[2048] = -{ - 0x0044,0x0100,0x0200,0x0304,0x0400,0x0504,0x0604,0x0700, - 0x0808,0x090C,0x1010,0x1114,0x1214,0x1310,0x1414,0x1510, - 0x1000,0x1104,0x1204,0x1300,0x1404,0x1500,0x1600,0x1704, - 0x180C,0x1908,0x2030,0x2134,0x2234,0x2330,0x2434,0x2530, - 0x2020,0x2124,0x2224,0x2320,0x2424,0x2520,0x2620,0x2724, - 0x282C,0x2928,0x3034,0x3130,0x3230,0x3334,0x3430,0x3534, - 0x3024,0x3120,0x3220,0x3324,0x3420,0x3524,0x3624,0x3720, - 0x3828,0x392C,0x4010,0x4114,0x4214,0x4310,0x4414,0x4510, - 0x4000,0x4104,0x4204,0x4300,0x4404,0x4500,0x4600,0x4704, - 0x480C,0x4908,0x5014,0x5110,0x5210,0x5314,0x5410,0x5514, - 0x5004,0x5100,0x5200,0x5304,0x5400,0x5504,0x5604,0x5700, - 0x5808,0x590C,0x6034,0x6130,0x6230,0x6334,0x6430,0x6534, - 0x6024,0x6120,0x6220,0x6324,0x6420,0x6524,0x6624,0x6720, - 0x6828,0x692C,0x7030,0x7134,0x7234,0x7330,0x7434,0x7530, - 0x7020,0x7124,0x7224,0x7320,0x7424,0x7520,0x7620,0x7724, - 0x782C,0x7928,0x8090,0x8194,0x8294,0x8390,0x8494,0x8590, - 0x8080,0x8184,0x8284,0x8380,0x8484,0x8580,0x8680,0x8784, - 0x888C,0x8988,0x9094,0x9190,0x9290,0x9394,0x9490,0x9594, - 0x9084,0x9180,0x9280,0x9384,0x9480,0x9584,0x9684,0x9780, - 0x9888,0x998C,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, - 0x0045,0x0101,0x0201,0x0305,0x0401,0x0505,0x0605,0x0701, - 0x0809,0x090D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, - 0x1001,0x1105,0x1205,0x1301,0x1405,0x1501,0x1601,0x1705, - 0x180D,0x1909,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, - 0x2021,0x2125,0x2225,0x2321,0x2425,0x2521,0x2621,0x2725, - 0x282D,0x2929,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, - 0x3025,0x3121,0x3221,0x3325,0x3421,0x3525,0x3625,0x3721, - 0x3829,0x392D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, - 0x4001,0x4105,0x4205,0x4301,0x4405,0x4501,0x4601,0x4705, - 0x480D,0x4909,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, - 0x5005,0x5101,0x5201,0x5305,0x5401,0x5505,0x5605,0x5701, - 0x5809,0x590D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, - 0x6025,0x6121,0x6221,0x6325,0x6421,0x6525,0x6625,0x6721, - 0x6829,0x692D,0x7031,0x7135,0x7235,0x7331,0x7435,0x7531, - 0x7021,0x7125,0x7225,0x7321,0x7425,0x7521,0x7621,0x7725, - 0x782D,0x7929,0x8091,0x8195,0x8295,0x8391,0x8495,0x8591, - 0x8081,0x8185,0x8285,0x8381,0x8485,0x8581,0x8681,0x8785, - 0x888D,0x8989,0x9095,0x9191,0x9291,0x9395,0x9491,0x9595, - 0x9085,0x9181,0x9281,0x9385,0x9481,0x9585,0x9685,0x9781, - 0x9889,0x998D,0xA0B5,0xA1B1,0xA2B1,0xA3B5,0xA4B1,0xA5B5, - 0xA0A5,0xA1A1,0xA2A1,0xA3A5,0xA4A1,0xA5A5,0xA6A5,0xA7A1, - 0xA8A9,0xA9AD,0xB0B1,0xB1B5,0xB2B5,0xB3B1,0xB4B5,0xB5B1, - 0xB0A1,0xB1A5,0xB2A5,0xB3A1,0xB4A5,0xB5A1,0xB6A1,0xB7A5, - 0xB8AD,0xB9A9,0xC095,0xC191,0xC291,0xC395,0xC491,0xC595, - 0xC085,0xC181,0xC281,0xC385,0xC481,0xC585,0xC685,0xC781, - 0xC889,0xC98D,0xD091,0xD195,0xD295,0xD391,0xD495,0xD591, - 0xD081,0xD185,0xD285,0xD381,0xD485,0xD581,0xD681,0xD785, - 0xD88D,0xD989,0xE0B1,0xE1B5,0xE2B5,0xE3B1,0xE4B5,0xE5B1, - 0xE0A1,0xE1A5,0xE2A5,0xE3A1,0xE4A5,0xE5A1,0xE6A1,0xE7A5, - 0xE8AD,0xE9A9,0xF0B5,0xF1B1,0xF2B1,0xF3B5,0xF4B1,0xF5B5, - 0xF0A5,0xF1A1,0xF2A1,0xF3A5,0xF4A1,0xF5A5,0xF6A5,0xF7A1, - 0xF8A9,0xF9AD,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, - 0x0045,0x0101,0x0201,0x0305,0x0401,0x0505,0x0605,0x0701, - 0x0809,0x090D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, - 0x1001,0x1105,0x1205,0x1301,0x1405,0x1501,0x1601,0x1705, - 0x180D,0x1909,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, - 0x2021,0x2125,0x2225,0x2321,0x2425,0x2521,0x2621,0x2725, - 0x282D,0x2929,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, - 0x3025,0x3121,0x3221,0x3325,0x3421,0x3525,0x3625,0x3721, - 0x3829,0x392D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, - 0x4001,0x4105,0x4205,0x4301,0x4405,0x4501,0x4601,0x4705, - 0x480D,0x4909,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, - 0x5005,0x5101,0x5201,0x5305,0x5401,0x5505,0x5605,0x5701, - 0x5809,0x590D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, - 0x0604,0x0700,0x0808,0x090C,0x0A0C,0x0B08,0x0C0C,0x0D08, - 0x0E08,0x0F0C,0x1010,0x1114,0x1214,0x1310,0x1414,0x1510, - 0x1600,0x1704,0x180C,0x1908,0x1A08,0x1B0C,0x1C08,0x1D0C, - 0x1E0C,0x1F08,0x2030,0x2134,0x2234,0x2330,0x2434,0x2530, - 0x2620,0x2724,0x282C,0x2928,0x2A28,0x2B2C,0x2C28,0x2D2C, - 0x2E2C,0x2F28,0x3034,0x3130,0x3230,0x3334,0x3430,0x3534, - 0x3624,0x3720,0x3828,0x392C,0x3A2C,0x3B28,0x3C2C,0x3D28, - 0x3E28,0x3F2C,0x4010,0x4114,0x4214,0x4310,0x4414,0x4510, - 0x4600,0x4704,0x480C,0x4908,0x4A08,0x4B0C,0x4C08,0x4D0C, - 0x4E0C,0x4F08,0x5014,0x5110,0x5210,0x5314,0x5410,0x5514, - 0x5604,0x5700,0x5808,0x590C,0x5A0C,0x5B08,0x5C0C,0x5D08, - 0x5E08,0x5F0C,0x6034,0x6130,0x6230,0x6334,0x6430,0x6534, - 0x6624,0x6720,0x6828,0x692C,0x6A2C,0x6B28,0x6C2C,0x6D28, - 0x6E28,0x6F2C,0x7030,0x7134,0x7234,0x7330,0x7434,0x7530, - 0x7620,0x7724,0x782C,0x7928,0x7A28,0x7B2C,0x7C28,0x7D2C, - 0x7E2C,0x7F28,0x8090,0x8194,0x8294,0x8390,0x8494,0x8590, - 0x8680,0x8784,0x888C,0x8988,0x8A88,0x8B8C,0x8C88,0x8D8C, - 0x8E8C,0x8F88,0x9094,0x9190,0x9290,0x9394,0x9490,0x9594, - 0x9684,0x9780,0x9888,0x998C,0x9A8C,0x9B88,0x9C8C,0x9D88, - 0x9E88,0x9F8C,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, - 0x0605,0x0701,0x0809,0x090D,0x0A0D,0x0B09,0x0C0D,0x0D09, - 0x0E09,0x0F0D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, - 0x1601,0x1705,0x180D,0x1909,0x1A09,0x1B0D,0x1C09,0x1D0D, - 0x1E0D,0x1F09,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, - 0x2621,0x2725,0x282D,0x2929,0x2A29,0x2B2D,0x2C29,0x2D2D, - 0x2E2D,0x2F29,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, - 0x3625,0x3721,0x3829,0x392D,0x3A2D,0x3B29,0x3C2D,0x3D29, - 0x3E29,0x3F2D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, - 0x4601,0x4705,0x480D,0x4909,0x4A09,0x4B0D,0x4C09,0x4D0D, - 0x4E0D,0x4F09,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, - 0x5605,0x5701,0x5809,0x590D,0x5A0D,0x5B09,0x5C0D,0x5D09, - 0x5E09,0x5F0D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, - 0x6625,0x6721,0x6829,0x692D,0x6A2D,0x6B29,0x6C2D,0x6D29, - 0x6E29,0x6F2D,0x7031,0x7135,0x7235,0x7331,0x7435,0x7531, - 0x7621,0x7725,0x782D,0x7929,0x7A29,0x7B2D,0x7C29,0x7D2D, - 0x7E2D,0x7F29,0x8091,0x8195,0x8295,0x8391,0x8495,0x8591, - 0x8681,0x8785,0x888D,0x8989,0x8A89,0x8B8D,0x8C89,0x8D8D, - 0x8E8D,0x8F89,0x9095,0x9191,0x9291,0x9395,0x9491,0x9595, - 0x9685,0x9781,0x9889,0x998D,0x9A8D,0x9B89,0x9C8D,0x9D89, - 0x9E89,0x9F8D,0xA0B5,0xA1B1,0xA2B1,0xA3B5,0xA4B1,0xA5B5, - 0xA6A5,0xA7A1,0xA8A9,0xA9AD,0xAAAD,0xABA9,0xACAD,0xADA9, - 0xAEA9,0xAFAD,0xB0B1,0xB1B5,0xB2B5,0xB3B1,0xB4B5,0xB5B1, - 0xB6A1,0xB7A5,0xB8AD,0xB9A9,0xBAA9,0xBBAD,0xBCA9,0xBDAD, - 0xBEAD,0xBFA9,0xC095,0xC191,0xC291,0xC395,0xC491,0xC595, - 0xC685,0xC781,0xC889,0xC98D,0xCA8D,0xCB89,0xCC8D,0xCD89, - 0xCE89,0xCF8D,0xD091,0xD195,0xD295,0xD391,0xD495,0xD591, - 0xD681,0xD785,0xD88D,0xD989,0xDA89,0xDB8D,0xDC89,0xDD8D, - 0xDE8D,0xDF89,0xE0B1,0xE1B5,0xE2B5,0xE3B1,0xE4B5,0xE5B1, - 0xE6A1,0xE7A5,0xE8AD,0xE9A9,0xEAA9,0xEBAD,0xECA9,0xEDAD, - 0xEEAD,0xEFA9,0xF0B5,0xF1B1,0xF2B1,0xF3B5,0xF4B1,0xF5B5, - 0xF6A5,0xF7A1,0xF8A9,0xF9AD,0xFAAD,0xFBA9,0xFCAD,0xFDA9, - 0xFEA9,0xFFAD,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, - 0x0605,0x0701,0x0809,0x090D,0x0A0D,0x0B09,0x0C0D,0x0D09, - 0x0E09,0x0F0D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, - 0x1601,0x1705,0x180D,0x1909,0x1A09,0x1B0D,0x1C09,0x1D0D, - 0x1E0D,0x1F09,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, - 0x2621,0x2725,0x282D,0x2929,0x2A29,0x2B2D,0x2C29,0x2D2D, - 0x2E2D,0x2F29,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, - 0x3625,0x3721,0x3829,0x392D,0x3A2D,0x3B29,0x3C2D,0x3D29, - 0x3E29,0x3F2D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, - 0x4601,0x4705,0x480D,0x4909,0x4A09,0x4B0D,0x4C09,0x4D0D, - 0x4E0D,0x4F09,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, - 0x5605,0x5701,0x5809,0x590D,0x5A0D,0x5B09,0x5C0D,0x5D09, - 0x5E09,0x5F0D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, - 0x0046,0x0102,0x0202,0x0306,0x0402,0x0506,0x0606,0x0702, - 0x080A,0x090E,0x0402,0x0506,0x0606,0x0702,0x080A,0x090E, - 0x1002,0x1106,0x1206,0x1302,0x1406,0x1502,0x1602,0x1706, - 0x180E,0x190A,0x1406,0x1502,0x1602,0x1706,0x180E,0x190A, - 0x2022,0x2126,0x2226,0x2322,0x2426,0x2522,0x2622,0x2726, - 0x282E,0x292A,0x2426,0x2522,0x2622,0x2726,0x282E,0x292A, - 0x3026,0x3122,0x3222,0x3326,0x3422,0x3526,0x3626,0x3722, - 0x382A,0x392E,0x3422,0x3526,0x3626,0x3722,0x382A,0x392E, - 0x4002,0x4106,0x4206,0x4302,0x4406,0x4502,0x4602,0x4706, - 0x480E,0x490A,0x4406,0x4502,0x4602,0x4706,0x480E,0x490A, - 0x5006,0x5102,0x5202,0x5306,0x5402,0x5506,0x5606,0x5702, - 0x580A,0x590E,0x5402,0x5506,0x5606,0x5702,0x580A,0x590E, - 0x6026,0x6122,0x6222,0x6326,0x6422,0x6526,0x6626,0x6722, - 0x682A,0x692E,0x6422,0x6526,0x6626,0x6722,0x682A,0x692E, - 0x7022,0x7126,0x7226,0x7322,0x7426,0x7522,0x7622,0x7726, - 0x782E,0x792A,0x7426,0x7522,0x7622,0x7726,0x782E,0x792A, - 0x8082,0x8186,0x8286,0x8382,0x8486,0x8582,0x8682,0x8786, - 0x888E,0x898A,0x8486,0x8582,0x8682,0x8786,0x888E,0x898A, - 0x9086,0x9182,0x9282,0x9386,0x9482,0x9586,0x9686,0x9782, - 0x988A,0x998E,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, - 0x4003,0x4107,0x4207,0x4303,0x4407,0x4503,0x4603,0x4707, - 0x480F,0x490B,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, - 0x5007,0x5103,0x5203,0x5307,0x5403,0x5507,0x5607,0x5703, - 0x580B,0x590F,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, - 0x6027,0x6123,0x6223,0x6327,0x6423,0x6527,0x6627,0x6723, - 0x682B,0x692F,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, - 0x7023,0x7127,0x7227,0x7323,0x7427,0x7523,0x7623,0x7727, - 0x782F,0x792B,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, - 0x8083,0x8187,0x8287,0x8383,0x8487,0x8583,0x8683,0x8787, - 0x888F,0x898B,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, - 0x9087,0x9183,0x9283,0x9387,0x9483,0x9587,0x9687,0x9783, - 0x988B,0x998F,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F, - 0xA0A7,0xA1A3,0xA2A3,0xA3A7,0xA4A3,0xA5A7,0xA6A7,0xA7A3, - 0xA8AB,0xA9AF,0xA4A3,0xA5A7,0xA6A7,0xA7A3,0xA8AB,0xA9AF, - 0xB0A3,0xB1A7,0xB2A7,0xB3A3,0xB4A7,0xB5A3,0xB6A3,0xB7A7, - 0xB8AF,0xB9AB,0xB4A7,0xB5A3,0xB6A3,0xB7A7,0xB8AF,0xB9AB, - 0xC087,0xC183,0xC283,0xC387,0xC483,0xC587,0xC687,0xC783, - 0xC88B,0xC98F,0xC483,0xC587,0xC687,0xC783,0xC88B,0xC98F, - 0xD083,0xD187,0xD287,0xD383,0xD487,0xD583,0xD683,0xD787, - 0xD88F,0xD98B,0xD487,0xD583,0xD683,0xD787,0xD88F,0xD98B, - 0xE0A3,0xE1A7,0xE2A7,0xE3A3,0xE4A7,0xE5A3,0xE6A3,0xE7A7, - 0xE8AF,0xE9AB,0xE4A7,0xE5A3,0xE6A3,0xE7A7,0xE8AF,0xE9AB, - 0xF0A7,0xF1A3,0xF2A3,0xF3A7,0xF4A3,0xF5A7,0xF6A7,0xF7A3, - 0xF8AB,0xF9AF,0xF4A3,0xF5A7,0xF6A7,0xF7A3,0xF8AB,0xF9AF, - 0x0047,0x0103,0x0203,0x0307,0x0403,0x0507,0x0607,0x0703, - 0x080B,0x090F,0x0403,0x0507,0x0607,0x0703,0x080B,0x090F, - 0x1003,0x1107,0x1207,0x1303,0x1407,0x1503,0x1603,0x1707, - 0x180F,0x190B,0x1407,0x1503,0x1603,0x1707,0x180F,0x190B, - 0x2023,0x2127,0x2227,0x2323,0x2427,0x2523,0x2623,0x2727, - 0x282F,0x292B,0x2427,0x2523,0x2623,0x2727,0x282F,0x292B, - 0x3027,0x3123,0x3223,0x3327,0x3423,0x3527,0x3627,0x3723, - 0x382B,0x392F,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, - 0x4003,0x4107,0x4207,0x4303,0x4407,0x4503,0x4603,0x4707, - 0x480F,0x490B,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, - 0x5007,0x5103,0x5203,0x5307,0x5403,0x5507,0x5607,0x5703, - 0x580B,0x590F,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, - 0x6027,0x6123,0x6223,0x6327,0x6423,0x6527,0x6627,0x6723, - 0x682B,0x692F,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, - 0x7023,0x7127,0x7227,0x7323,0x7427,0x7523,0x7623,0x7727, - 0x782F,0x792B,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, - 0x8083,0x8187,0x8287,0x8383,0x8487,0x8583,0x8683,0x8787, - 0x888F,0x898B,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, - 0x9087,0x9183,0x9283,0x9387,0x9483,0x9587,0x9687,0x9783, - 0x988B,0x998F,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F, - 0xFABE,0xFBBA,0xFCBE,0xFDBA,0xFEBA,0xFFBE,0x0046,0x0102, - 0x0202,0x0306,0x0402,0x0506,0x0606,0x0702,0x080A,0x090E, - 0x0A1E,0x0B1A,0x0C1E,0x0D1A,0x0E1A,0x0F1E,0x1002,0x1106, - 0x1206,0x1302,0x1406,0x1502,0x1602,0x1706,0x180E,0x190A, - 0x1A1A,0x1B1E,0x1C1A,0x1D1E,0x1E1E,0x1F1A,0x2022,0x2126, - 0x2226,0x2322,0x2426,0x2522,0x2622,0x2726,0x282E,0x292A, - 0x2A3A,0x2B3E,0x2C3A,0x2D3E,0x2E3E,0x2F3A,0x3026,0x3122, - 0x3222,0x3326,0x3422,0x3526,0x3626,0x3722,0x382A,0x392E, - 0x3A3E,0x3B3A,0x3C3E,0x3D3A,0x3E3A,0x3F3E,0x4002,0x4106, - 0x4206,0x4302,0x4406,0x4502,0x4602,0x4706,0x480E,0x490A, - 0x4A1A,0x4B1E,0x4C1A,0x4D1E,0x4E1E,0x4F1A,0x5006,0x5102, - 0x5202,0x5306,0x5402,0x5506,0x5606,0x5702,0x580A,0x590E, - 0x5A1E,0x5B1A,0x5C1E,0x5D1A,0x5E1A,0x5F1E,0x6026,0x6122, - 0x6222,0x6326,0x6422,0x6526,0x6626,0x6722,0x682A,0x692E, - 0x6A3E,0x6B3A,0x6C3E,0x6D3A,0x6E3A,0x6F3E,0x7022,0x7126, - 0x7226,0x7322,0x7426,0x7522,0x7622,0x7726,0x782E,0x792A, - 0x7A3A,0x7B3E,0x7C3A,0x7D3E,0x7E3E,0x7F3A,0x8082,0x8186, - 0x8286,0x8382,0x8486,0x8582,0x8682,0x8786,0x888E,0x898A, - 0x8A9A,0x8B9E,0x8C9A,0x8D9E,0x8E9E,0x8F9A,0x9086,0x9182, - 0x9282,0x9386,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, - 0x3A3F,0x3B3B,0x3C3F,0x3D3B,0x3E3B,0x3F3F,0x4003,0x4107, - 0x4207,0x4303,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, - 0x4A1B,0x4B1F,0x4C1B,0x4D1F,0x4E1F,0x4F1B,0x5007,0x5103, - 0x5203,0x5307,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, - 0x5A1F,0x5B1B,0x5C1F,0x5D1B,0x5E1B,0x5F1F,0x6027,0x6123, - 0x6223,0x6327,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, - 0x6A3F,0x6B3B,0x6C3F,0x6D3B,0x6E3B,0x6F3F,0x7023,0x7127, - 0x7227,0x7323,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, - 0x7A3B,0x7B3F,0x7C3B,0x7D3F,0x7E3F,0x7F3B,0x8083,0x8187, - 0x8287,0x8383,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, - 0x8A9B,0x8B9F,0x8C9B,0x8D9F,0x8E9F,0x8F9B,0x9087,0x9183, - 0x9283,0x9387,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F, - 0x9A9F,0x9B9B,0x9C9F,0x9D9B,0x9E9B,0x9F9F,0xA0A7,0xA1A3, - 0xA2A3,0xA3A7,0xA4A3,0xA5A7,0xA6A7,0xA7A3,0xA8AB,0xA9AF, - 0xAABF,0xABBB,0xACBF,0xADBB,0xAEBB,0xAFBF,0xB0A3,0xB1A7, - 0xB2A7,0xB3A3,0xB4A7,0xB5A3,0xB6A3,0xB7A7,0xB8AF,0xB9AB, - 0xBABB,0xBBBF,0xBCBB,0xBDBF,0xBEBF,0xBFBB,0xC087,0xC183, - 0xC283,0xC387,0xC483,0xC587,0xC687,0xC783,0xC88B,0xC98F, - 0xCA9F,0xCB9B,0xCC9F,0xCD9B,0xCE9B,0xCF9F,0xD083,0xD187, - 0xD287,0xD383,0xD487,0xD583,0xD683,0xD787,0xD88F,0xD98B, - 0xDA9B,0xDB9F,0xDC9B,0xDD9F,0xDE9F,0xDF9B,0xE0A3,0xE1A7, - 0xE2A7,0xE3A3,0xE4A7,0xE5A3,0xE6A3,0xE7A7,0xE8AF,0xE9AB, - 0xEABB,0xEBBF,0xECBB,0xEDBF,0xEEBF,0xEFBB,0xF0A7,0xF1A3, - 0xF2A3,0xF3A7,0xF4A3,0xF5A7,0xF6A7,0xF7A3,0xF8AB,0xF9AF, - 0xFABF,0xFBBB,0xFCBF,0xFDBB,0xFEBB,0xFFBF,0x0047,0x0103, - 0x0203,0x0307,0x0403,0x0507,0x0607,0x0703,0x080B,0x090F, - 0x0A1F,0x0B1B,0x0C1F,0x0D1B,0x0E1B,0x0F1F,0x1003,0x1107, - 0x1207,0x1303,0x1407,0x1503,0x1603,0x1707,0x180F,0x190B, - 0x1A1B,0x1B1F,0x1C1B,0x1D1F,0x1E1F,0x1F1B,0x2023,0x2127, - 0x2227,0x2323,0x2427,0x2523,0x2623,0x2727,0x282F,0x292B, - 0x2A3B,0x2B3F,0x2C3B,0x2D3F,0x2E3F,0x2F3B,0x3027,0x3123, - 0x3223,0x3327,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, - 0x3A3F,0x3B3B,0x3C3F,0x3D3B,0x3E3B,0x3F3F,0x4003,0x4107, - 0x4207,0x4303,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, - 0x4A1B,0x4B1F,0x4C1B,0x4D1F,0x4E1F,0x4F1B,0x5007,0x5103, - 0x5203,0x5307,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, - 0x5A1F,0x5B1B,0x5C1F,0x5D1B,0x5E1B,0x5F1F,0x6027,0x6123, - 0x6223,0x6327,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, - 0x6A3F,0x6B3B,0x6C3F,0x6D3B,0x6E3B,0x6F3F,0x7023,0x7127, - 0x7227,0x7323,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, - 0x7A3B,0x7B3F,0x7C3B,0x7D3F,0x7E3F,0x7F3B,0x8083,0x8187, - 0x8287,0x8383,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, - 0x8A9B,0x8B9F,0x8C9B,0x8D9F,0x8E9F,0x8F9B,0x9087,0x9183, - 0x9283,0x9387,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F -}; +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** Tables.h **/ +/** **/ +/** This file contains tables of used by Z80 emulation to **/ +/** compute SIGN,ZERO, PARITY flags, and decimal correction **/ +/** There are also timing tables for Z80 opcodes. This file **/ +/** is included from Z80.c. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ + +static const byte Cycles[256] = +{ + 4,10, 7, 6, 4, 4, 7, 4, 4,11, 7, 6, 4, 4, 7, 4, + 8,10, 7, 6, 4, 4, 7, 4,12,11, 7, 6, 4, 4, 7, 4, + 7,10,16, 6, 4, 4, 7, 4, 7,11,16, 6, 4, 4, 7, 4, + 7,10,13, 6,11,11,10, 4, 7,11,13, 6, 4, 4, 7, 4, + 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, + 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, + 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, + 7, 7, 7, 7, 7, 7, 4, 7, 4, 4, 4, 4, 4, 4, 7, 4, + 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, + 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, + 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, + 4, 4, 4, 4, 4, 4, 7, 4, 4, 4, 4, 4, 4, 4, 7, 4, + 5,10,10,10,10,11, 7,11, 5,10,10, 0,10,17, 7,11, + 5,10,10,11,10,11, 7,11, 5, 4,10,11,10, 0, 7,11, + 5,10,10,19,10,11, 7,11, 5, 4,10, 4,10, 0, 7,11, + 5,10,10, 4,10,11, 7,11, 5, 6,10, 4,10, 0, 7,11 +}; + +static const byte CyclesCB[256] = +{ + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, + 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, + 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, + 8, 8, 8, 8, 8, 8,12, 8, 8, 8, 8, 8, 8, 8,12, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8, + 8, 8, 8, 8, 8, 8,15, 8, 8, 8, 8, 8, 8, 8,15, 8 +}; + +static const byte CyclesED[256] = +{ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 12,12,15,20, 8,14, 8, 9,12,12,15,20, 0,14, 0, 9, + 12,12,15,20, 0, 0, 8, 9,12,12,15,20, 0, 0, 8, 9, + 12,12,15,20, 0, 0, 0,18,12,12,15,20, 0, 0, 0,18, + 12, 0,15,20, 0, 0, 0, 0,12,12,15,20, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 16,16,16,16, 0, 0, 0, 0,16,16,16,16, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 +}; + +static const byte CyclesXX[256] = +{ + 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0, 0, 0, + 0,14,20,10, 9, 9, 9, 0, 0,15,20,10, 9, 9, 9, 0, + 0, 0, 0, 0,23,23,19, 0, 0,15, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, + 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, + 9, 9, 9, 9, 9, 9,19, 9, 9, 9, 9, 9, 9, 9,19, 9, + 19,19,19,19,19,19,19,19, 0, 0, 0, 0, 9, 9,19, 0, + 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, + 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, + 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, + 0, 0, 0, 0, 9, 9,19, 0, 0, 0, 0, 0, 9, 9,19, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0,14, 0,23, 0,15, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0,10, 0, 0, 0, 0, 0, 0 +}; + +static const byte CyclesXXCB[256] = +{ + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, + 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, + 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, + 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0, + 0, 0, 0, 0, 0, 0,23, 0, 0, 0, 0, 0, 0, 0,23, 0 +}; + +static const byte ZSTable[256] = +{ + Z_FLAG,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG, + S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG,S_FLAG +}; + +static const byte PZSTable[256] = +{ + Z_FLAG|P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, + 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, + 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, + 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, + P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0,0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, + 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, + P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0,0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, + P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0,0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG, + 0,P_FLAG,P_FLAG,0,P_FLAG,0,0,P_FLAG,P_FLAG,0,0,P_FLAG,0,P_FLAG,P_FLAG,0, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG,S_FLAG|P_FLAG,S_FLAG|P_FLAG,S_FLAG, + S_FLAG|P_FLAG,S_FLAG,S_FLAG,S_FLAG|P_FLAG +}; + +static const word DAATable[2048] = +{ + 0x0044,0x0100,0x0200,0x0304,0x0400,0x0504,0x0604,0x0700, + 0x0808,0x090C,0x1010,0x1114,0x1214,0x1310,0x1414,0x1510, + 0x1000,0x1104,0x1204,0x1300,0x1404,0x1500,0x1600,0x1704, + 0x180C,0x1908,0x2030,0x2134,0x2234,0x2330,0x2434,0x2530, + 0x2020,0x2124,0x2224,0x2320,0x2424,0x2520,0x2620,0x2724, + 0x282C,0x2928,0x3034,0x3130,0x3230,0x3334,0x3430,0x3534, + 0x3024,0x3120,0x3220,0x3324,0x3420,0x3524,0x3624,0x3720, + 0x3828,0x392C,0x4010,0x4114,0x4214,0x4310,0x4414,0x4510, + 0x4000,0x4104,0x4204,0x4300,0x4404,0x4500,0x4600,0x4704, + 0x480C,0x4908,0x5014,0x5110,0x5210,0x5314,0x5410,0x5514, + 0x5004,0x5100,0x5200,0x5304,0x5400,0x5504,0x5604,0x5700, + 0x5808,0x590C,0x6034,0x6130,0x6230,0x6334,0x6430,0x6534, + 0x6024,0x6120,0x6220,0x6324,0x6420,0x6524,0x6624,0x6720, + 0x6828,0x692C,0x7030,0x7134,0x7234,0x7330,0x7434,0x7530, + 0x7020,0x7124,0x7224,0x7320,0x7424,0x7520,0x7620,0x7724, + 0x782C,0x7928,0x8090,0x8194,0x8294,0x8390,0x8494,0x8590, + 0x8080,0x8184,0x8284,0x8380,0x8484,0x8580,0x8680,0x8784, + 0x888C,0x8988,0x9094,0x9190,0x9290,0x9394,0x9490,0x9594, + 0x9084,0x9180,0x9280,0x9384,0x9480,0x9584,0x9684,0x9780, + 0x9888,0x998C,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, + 0x0045,0x0101,0x0201,0x0305,0x0401,0x0505,0x0605,0x0701, + 0x0809,0x090D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, + 0x1001,0x1105,0x1205,0x1301,0x1405,0x1501,0x1601,0x1705, + 0x180D,0x1909,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, + 0x2021,0x2125,0x2225,0x2321,0x2425,0x2521,0x2621,0x2725, + 0x282D,0x2929,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, + 0x3025,0x3121,0x3221,0x3325,0x3421,0x3525,0x3625,0x3721, + 0x3829,0x392D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, + 0x4001,0x4105,0x4205,0x4301,0x4405,0x4501,0x4601,0x4705, + 0x480D,0x4909,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, + 0x5005,0x5101,0x5201,0x5305,0x5401,0x5505,0x5605,0x5701, + 0x5809,0x590D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, + 0x6025,0x6121,0x6221,0x6325,0x6421,0x6525,0x6625,0x6721, + 0x6829,0x692D,0x7031,0x7135,0x7235,0x7331,0x7435,0x7531, + 0x7021,0x7125,0x7225,0x7321,0x7425,0x7521,0x7621,0x7725, + 0x782D,0x7929,0x8091,0x8195,0x8295,0x8391,0x8495,0x8591, + 0x8081,0x8185,0x8285,0x8381,0x8485,0x8581,0x8681,0x8785, + 0x888D,0x8989,0x9095,0x9191,0x9291,0x9395,0x9491,0x9595, + 0x9085,0x9181,0x9281,0x9385,0x9481,0x9585,0x9685,0x9781, + 0x9889,0x998D,0xA0B5,0xA1B1,0xA2B1,0xA3B5,0xA4B1,0xA5B5, + 0xA0A5,0xA1A1,0xA2A1,0xA3A5,0xA4A1,0xA5A5,0xA6A5,0xA7A1, + 0xA8A9,0xA9AD,0xB0B1,0xB1B5,0xB2B5,0xB3B1,0xB4B5,0xB5B1, + 0xB0A1,0xB1A5,0xB2A5,0xB3A1,0xB4A5,0xB5A1,0xB6A1,0xB7A5, + 0xB8AD,0xB9A9,0xC095,0xC191,0xC291,0xC395,0xC491,0xC595, + 0xC085,0xC181,0xC281,0xC385,0xC481,0xC585,0xC685,0xC781, + 0xC889,0xC98D,0xD091,0xD195,0xD295,0xD391,0xD495,0xD591, + 0xD081,0xD185,0xD285,0xD381,0xD485,0xD581,0xD681,0xD785, + 0xD88D,0xD989,0xE0B1,0xE1B5,0xE2B5,0xE3B1,0xE4B5,0xE5B1, + 0xE0A1,0xE1A5,0xE2A5,0xE3A1,0xE4A5,0xE5A1,0xE6A1,0xE7A5, + 0xE8AD,0xE9A9,0xF0B5,0xF1B1,0xF2B1,0xF3B5,0xF4B1,0xF5B5, + 0xF0A5,0xF1A1,0xF2A1,0xF3A5,0xF4A1,0xF5A5,0xF6A5,0xF7A1, + 0xF8A9,0xF9AD,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, + 0x0045,0x0101,0x0201,0x0305,0x0401,0x0505,0x0605,0x0701, + 0x0809,0x090D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, + 0x1001,0x1105,0x1205,0x1301,0x1405,0x1501,0x1601,0x1705, + 0x180D,0x1909,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, + 0x2021,0x2125,0x2225,0x2321,0x2425,0x2521,0x2621,0x2725, + 0x282D,0x2929,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, + 0x3025,0x3121,0x3221,0x3325,0x3421,0x3525,0x3625,0x3721, + 0x3829,0x392D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, + 0x4001,0x4105,0x4205,0x4301,0x4405,0x4501,0x4601,0x4705, + 0x480D,0x4909,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, + 0x5005,0x5101,0x5201,0x5305,0x5401,0x5505,0x5605,0x5701, + 0x5809,0x590D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, + 0x0604,0x0700,0x0808,0x090C,0x0A0C,0x0B08,0x0C0C,0x0D08, + 0x0E08,0x0F0C,0x1010,0x1114,0x1214,0x1310,0x1414,0x1510, + 0x1600,0x1704,0x180C,0x1908,0x1A08,0x1B0C,0x1C08,0x1D0C, + 0x1E0C,0x1F08,0x2030,0x2134,0x2234,0x2330,0x2434,0x2530, + 0x2620,0x2724,0x282C,0x2928,0x2A28,0x2B2C,0x2C28,0x2D2C, + 0x2E2C,0x2F28,0x3034,0x3130,0x3230,0x3334,0x3430,0x3534, + 0x3624,0x3720,0x3828,0x392C,0x3A2C,0x3B28,0x3C2C,0x3D28, + 0x3E28,0x3F2C,0x4010,0x4114,0x4214,0x4310,0x4414,0x4510, + 0x4600,0x4704,0x480C,0x4908,0x4A08,0x4B0C,0x4C08,0x4D0C, + 0x4E0C,0x4F08,0x5014,0x5110,0x5210,0x5314,0x5410,0x5514, + 0x5604,0x5700,0x5808,0x590C,0x5A0C,0x5B08,0x5C0C,0x5D08, + 0x5E08,0x5F0C,0x6034,0x6130,0x6230,0x6334,0x6430,0x6534, + 0x6624,0x6720,0x6828,0x692C,0x6A2C,0x6B28,0x6C2C,0x6D28, + 0x6E28,0x6F2C,0x7030,0x7134,0x7234,0x7330,0x7434,0x7530, + 0x7620,0x7724,0x782C,0x7928,0x7A28,0x7B2C,0x7C28,0x7D2C, + 0x7E2C,0x7F28,0x8090,0x8194,0x8294,0x8390,0x8494,0x8590, + 0x8680,0x8784,0x888C,0x8988,0x8A88,0x8B8C,0x8C88,0x8D8C, + 0x8E8C,0x8F88,0x9094,0x9190,0x9290,0x9394,0x9490,0x9594, + 0x9684,0x9780,0x9888,0x998C,0x9A8C,0x9B88,0x9C8C,0x9D88, + 0x9E88,0x9F8C,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, + 0x0605,0x0701,0x0809,0x090D,0x0A0D,0x0B09,0x0C0D,0x0D09, + 0x0E09,0x0F0D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, + 0x1601,0x1705,0x180D,0x1909,0x1A09,0x1B0D,0x1C09,0x1D0D, + 0x1E0D,0x1F09,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, + 0x2621,0x2725,0x282D,0x2929,0x2A29,0x2B2D,0x2C29,0x2D2D, + 0x2E2D,0x2F29,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, + 0x3625,0x3721,0x3829,0x392D,0x3A2D,0x3B29,0x3C2D,0x3D29, + 0x3E29,0x3F2D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, + 0x4601,0x4705,0x480D,0x4909,0x4A09,0x4B0D,0x4C09,0x4D0D, + 0x4E0D,0x4F09,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, + 0x5605,0x5701,0x5809,0x590D,0x5A0D,0x5B09,0x5C0D,0x5D09, + 0x5E09,0x5F0D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, + 0x6625,0x6721,0x6829,0x692D,0x6A2D,0x6B29,0x6C2D,0x6D29, + 0x6E29,0x6F2D,0x7031,0x7135,0x7235,0x7331,0x7435,0x7531, + 0x7621,0x7725,0x782D,0x7929,0x7A29,0x7B2D,0x7C29,0x7D2D, + 0x7E2D,0x7F29,0x8091,0x8195,0x8295,0x8391,0x8495,0x8591, + 0x8681,0x8785,0x888D,0x8989,0x8A89,0x8B8D,0x8C89,0x8D8D, + 0x8E8D,0x8F89,0x9095,0x9191,0x9291,0x9395,0x9491,0x9595, + 0x9685,0x9781,0x9889,0x998D,0x9A8D,0x9B89,0x9C8D,0x9D89, + 0x9E89,0x9F8D,0xA0B5,0xA1B1,0xA2B1,0xA3B5,0xA4B1,0xA5B5, + 0xA6A5,0xA7A1,0xA8A9,0xA9AD,0xAAAD,0xABA9,0xACAD,0xADA9, + 0xAEA9,0xAFAD,0xB0B1,0xB1B5,0xB2B5,0xB3B1,0xB4B5,0xB5B1, + 0xB6A1,0xB7A5,0xB8AD,0xB9A9,0xBAA9,0xBBAD,0xBCA9,0xBDAD, + 0xBEAD,0xBFA9,0xC095,0xC191,0xC291,0xC395,0xC491,0xC595, + 0xC685,0xC781,0xC889,0xC98D,0xCA8D,0xCB89,0xCC8D,0xCD89, + 0xCE89,0xCF8D,0xD091,0xD195,0xD295,0xD391,0xD495,0xD591, + 0xD681,0xD785,0xD88D,0xD989,0xDA89,0xDB8D,0xDC89,0xDD8D, + 0xDE8D,0xDF89,0xE0B1,0xE1B5,0xE2B5,0xE3B1,0xE4B5,0xE5B1, + 0xE6A1,0xE7A5,0xE8AD,0xE9A9,0xEAA9,0xEBAD,0xECA9,0xEDAD, + 0xEEAD,0xEFA9,0xF0B5,0xF1B1,0xF2B1,0xF3B5,0xF4B1,0xF5B5, + 0xF6A5,0xF7A1,0xF8A9,0xF9AD,0xFAAD,0xFBA9,0xFCAD,0xFDA9, + 0xFEA9,0xFFAD,0x0055,0x0111,0x0211,0x0315,0x0411,0x0515, + 0x0605,0x0701,0x0809,0x090D,0x0A0D,0x0B09,0x0C0D,0x0D09, + 0x0E09,0x0F0D,0x1011,0x1115,0x1215,0x1311,0x1415,0x1511, + 0x1601,0x1705,0x180D,0x1909,0x1A09,0x1B0D,0x1C09,0x1D0D, + 0x1E0D,0x1F09,0x2031,0x2135,0x2235,0x2331,0x2435,0x2531, + 0x2621,0x2725,0x282D,0x2929,0x2A29,0x2B2D,0x2C29,0x2D2D, + 0x2E2D,0x2F29,0x3035,0x3131,0x3231,0x3335,0x3431,0x3535, + 0x3625,0x3721,0x3829,0x392D,0x3A2D,0x3B29,0x3C2D,0x3D29, + 0x3E29,0x3F2D,0x4011,0x4115,0x4215,0x4311,0x4415,0x4511, + 0x4601,0x4705,0x480D,0x4909,0x4A09,0x4B0D,0x4C09,0x4D0D, + 0x4E0D,0x4F09,0x5015,0x5111,0x5211,0x5315,0x5411,0x5515, + 0x5605,0x5701,0x5809,0x590D,0x5A0D,0x5B09,0x5C0D,0x5D09, + 0x5E09,0x5F0D,0x6035,0x6131,0x6231,0x6335,0x6431,0x6535, + 0x0046,0x0102,0x0202,0x0306,0x0402,0x0506,0x0606,0x0702, + 0x080A,0x090E,0x0402,0x0506,0x0606,0x0702,0x080A,0x090E, + 0x1002,0x1106,0x1206,0x1302,0x1406,0x1502,0x1602,0x1706, + 0x180E,0x190A,0x1406,0x1502,0x1602,0x1706,0x180E,0x190A, + 0x2022,0x2126,0x2226,0x2322,0x2426,0x2522,0x2622,0x2726, + 0x282E,0x292A,0x2426,0x2522,0x2622,0x2726,0x282E,0x292A, + 0x3026,0x3122,0x3222,0x3326,0x3422,0x3526,0x3626,0x3722, + 0x382A,0x392E,0x3422,0x3526,0x3626,0x3722,0x382A,0x392E, + 0x4002,0x4106,0x4206,0x4302,0x4406,0x4502,0x4602,0x4706, + 0x480E,0x490A,0x4406,0x4502,0x4602,0x4706,0x480E,0x490A, + 0x5006,0x5102,0x5202,0x5306,0x5402,0x5506,0x5606,0x5702, + 0x580A,0x590E,0x5402,0x5506,0x5606,0x5702,0x580A,0x590E, + 0x6026,0x6122,0x6222,0x6326,0x6422,0x6526,0x6626,0x6722, + 0x682A,0x692E,0x6422,0x6526,0x6626,0x6722,0x682A,0x692E, + 0x7022,0x7126,0x7226,0x7322,0x7426,0x7522,0x7622,0x7726, + 0x782E,0x792A,0x7426,0x7522,0x7622,0x7726,0x782E,0x792A, + 0x8082,0x8186,0x8286,0x8382,0x8486,0x8582,0x8682,0x8786, + 0x888E,0x898A,0x8486,0x8582,0x8682,0x8786,0x888E,0x898A, + 0x9086,0x9182,0x9282,0x9386,0x9482,0x9586,0x9686,0x9782, + 0x988A,0x998E,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, + 0x4003,0x4107,0x4207,0x4303,0x4407,0x4503,0x4603,0x4707, + 0x480F,0x490B,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, + 0x5007,0x5103,0x5203,0x5307,0x5403,0x5507,0x5607,0x5703, + 0x580B,0x590F,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, + 0x6027,0x6123,0x6223,0x6327,0x6423,0x6527,0x6627,0x6723, + 0x682B,0x692F,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, + 0x7023,0x7127,0x7227,0x7323,0x7427,0x7523,0x7623,0x7727, + 0x782F,0x792B,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, + 0x8083,0x8187,0x8287,0x8383,0x8487,0x8583,0x8683,0x8787, + 0x888F,0x898B,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, + 0x9087,0x9183,0x9283,0x9387,0x9483,0x9587,0x9687,0x9783, + 0x988B,0x998F,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F, + 0xA0A7,0xA1A3,0xA2A3,0xA3A7,0xA4A3,0xA5A7,0xA6A7,0xA7A3, + 0xA8AB,0xA9AF,0xA4A3,0xA5A7,0xA6A7,0xA7A3,0xA8AB,0xA9AF, + 0xB0A3,0xB1A7,0xB2A7,0xB3A3,0xB4A7,0xB5A3,0xB6A3,0xB7A7, + 0xB8AF,0xB9AB,0xB4A7,0xB5A3,0xB6A3,0xB7A7,0xB8AF,0xB9AB, + 0xC087,0xC183,0xC283,0xC387,0xC483,0xC587,0xC687,0xC783, + 0xC88B,0xC98F,0xC483,0xC587,0xC687,0xC783,0xC88B,0xC98F, + 0xD083,0xD187,0xD287,0xD383,0xD487,0xD583,0xD683,0xD787, + 0xD88F,0xD98B,0xD487,0xD583,0xD683,0xD787,0xD88F,0xD98B, + 0xE0A3,0xE1A7,0xE2A7,0xE3A3,0xE4A7,0xE5A3,0xE6A3,0xE7A7, + 0xE8AF,0xE9AB,0xE4A7,0xE5A3,0xE6A3,0xE7A7,0xE8AF,0xE9AB, + 0xF0A7,0xF1A3,0xF2A3,0xF3A7,0xF4A3,0xF5A7,0xF6A7,0xF7A3, + 0xF8AB,0xF9AF,0xF4A3,0xF5A7,0xF6A7,0xF7A3,0xF8AB,0xF9AF, + 0x0047,0x0103,0x0203,0x0307,0x0403,0x0507,0x0607,0x0703, + 0x080B,0x090F,0x0403,0x0507,0x0607,0x0703,0x080B,0x090F, + 0x1003,0x1107,0x1207,0x1303,0x1407,0x1503,0x1603,0x1707, + 0x180F,0x190B,0x1407,0x1503,0x1603,0x1707,0x180F,0x190B, + 0x2023,0x2127,0x2227,0x2323,0x2427,0x2523,0x2623,0x2727, + 0x282F,0x292B,0x2427,0x2523,0x2623,0x2727,0x282F,0x292B, + 0x3027,0x3123,0x3223,0x3327,0x3423,0x3527,0x3627,0x3723, + 0x382B,0x392F,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, + 0x4003,0x4107,0x4207,0x4303,0x4407,0x4503,0x4603,0x4707, + 0x480F,0x490B,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, + 0x5007,0x5103,0x5203,0x5307,0x5403,0x5507,0x5607,0x5703, + 0x580B,0x590F,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, + 0x6027,0x6123,0x6223,0x6327,0x6423,0x6527,0x6627,0x6723, + 0x682B,0x692F,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, + 0x7023,0x7127,0x7227,0x7323,0x7427,0x7523,0x7623,0x7727, + 0x782F,0x792B,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, + 0x8083,0x8187,0x8287,0x8383,0x8487,0x8583,0x8683,0x8787, + 0x888F,0x898B,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, + 0x9087,0x9183,0x9283,0x9387,0x9483,0x9587,0x9687,0x9783, + 0x988B,0x998F,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F, + 0xFABE,0xFBBA,0xFCBE,0xFDBA,0xFEBA,0xFFBE,0x0046,0x0102, + 0x0202,0x0306,0x0402,0x0506,0x0606,0x0702,0x080A,0x090E, + 0x0A1E,0x0B1A,0x0C1E,0x0D1A,0x0E1A,0x0F1E,0x1002,0x1106, + 0x1206,0x1302,0x1406,0x1502,0x1602,0x1706,0x180E,0x190A, + 0x1A1A,0x1B1E,0x1C1A,0x1D1E,0x1E1E,0x1F1A,0x2022,0x2126, + 0x2226,0x2322,0x2426,0x2522,0x2622,0x2726,0x282E,0x292A, + 0x2A3A,0x2B3E,0x2C3A,0x2D3E,0x2E3E,0x2F3A,0x3026,0x3122, + 0x3222,0x3326,0x3422,0x3526,0x3626,0x3722,0x382A,0x392E, + 0x3A3E,0x3B3A,0x3C3E,0x3D3A,0x3E3A,0x3F3E,0x4002,0x4106, + 0x4206,0x4302,0x4406,0x4502,0x4602,0x4706,0x480E,0x490A, + 0x4A1A,0x4B1E,0x4C1A,0x4D1E,0x4E1E,0x4F1A,0x5006,0x5102, + 0x5202,0x5306,0x5402,0x5506,0x5606,0x5702,0x580A,0x590E, + 0x5A1E,0x5B1A,0x5C1E,0x5D1A,0x5E1A,0x5F1E,0x6026,0x6122, + 0x6222,0x6326,0x6422,0x6526,0x6626,0x6722,0x682A,0x692E, + 0x6A3E,0x6B3A,0x6C3E,0x6D3A,0x6E3A,0x6F3E,0x7022,0x7126, + 0x7226,0x7322,0x7426,0x7522,0x7622,0x7726,0x782E,0x792A, + 0x7A3A,0x7B3E,0x7C3A,0x7D3E,0x7E3E,0x7F3A,0x8082,0x8186, + 0x8286,0x8382,0x8486,0x8582,0x8682,0x8786,0x888E,0x898A, + 0x8A9A,0x8B9E,0x8C9A,0x8D9E,0x8E9E,0x8F9A,0x9086,0x9182, + 0x9282,0x9386,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, + 0x3A3F,0x3B3B,0x3C3F,0x3D3B,0x3E3B,0x3F3F,0x4003,0x4107, + 0x4207,0x4303,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, + 0x4A1B,0x4B1F,0x4C1B,0x4D1F,0x4E1F,0x4F1B,0x5007,0x5103, + 0x5203,0x5307,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, + 0x5A1F,0x5B1B,0x5C1F,0x5D1B,0x5E1B,0x5F1F,0x6027,0x6123, + 0x6223,0x6327,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, + 0x6A3F,0x6B3B,0x6C3F,0x6D3B,0x6E3B,0x6F3F,0x7023,0x7127, + 0x7227,0x7323,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, + 0x7A3B,0x7B3F,0x7C3B,0x7D3F,0x7E3F,0x7F3B,0x8083,0x8187, + 0x8287,0x8383,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, + 0x8A9B,0x8B9F,0x8C9B,0x8D9F,0x8E9F,0x8F9B,0x9087,0x9183, + 0x9283,0x9387,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F, + 0x9A9F,0x9B9B,0x9C9F,0x9D9B,0x9E9B,0x9F9F,0xA0A7,0xA1A3, + 0xA2A3,0xA3A7,0xA4A3,0xA5A7,0xA6A7,0xA7A3,0xA8AB,0xA9AF, + 0xAABF,0xABBB,0xACBF,0xADBB,0xAEBB,0xAFBF,0xB0A3,0xB1A7, + 0xB2A7,0xB3A3,0xB4A7,0xB5A3,0xB6A3,0xB7A7,0xB8AF,0xB9AB, + 0xBABB,0xBBBF,0xBCBB,0xBDBF,0xBEBF,0xBFBB,0xC087,0xC183, + 0xC283,0xC387,0xC483,0xC587,0xC687,0xC783,0xC88B,0xC98F, + 0xCA9F,0xCB9B,0xCC9F,0xCD9B,0xCE9B,0xCF9F,0xD083,0xD187, + 0xD287,0xD383,0xD487,0xD583,0xD683,0xD787,0xD88F,0xD98B, + 0xDA9B,0xDB9F,0xDC9B,0xDD9F,0xDE9F,0xDF9B,0xE0A3,0xE1A7, + 0xE2A7,0xE3A3,0xE4A7,0xE5A3,0xE6A3,0xE7A7,0xE8AF,0xE9AB, + 0xEABB,0xEBBF,0xECBB,0xEDBF,0xEEBF,0xEFBB,0xF0A7,0xF1A3, + 0xF2A3,0xF3A7,0xF4A3,0xF5A7,0xF6A7,0xF7A3,0xF8AB,0xF9AF, + 0xFABF,0xFBBB,0xFCBF,0xFDBB,0xFEBB,0xFFBF,0x0047,0x0103, + 0x0203,0x0307,0x0403,0x0507,0x0607,0x0703,0x080B,0x090F, + 0x0A1F,0x0B1B,0x0C1F,0x0D1B,0x0E1B,0x0F1F,0x1003,0x1107, + 0x1207,0x1303,0x1407,0x1503,0x1603,0x1707,0x180F,0x190B, + 0x1A1B,0x1B1F,0x1C1B,0x1D1F,0x1E1F,0x1F1B,0x2023,0x2127, + 0x2227,0x2323,0x2427,0x2523,0x2623,0x2727,0x282F,0x292B, + 0x2A3B,0x2B3F,0x2C3B,0x2D3F,0x2E3F,0x2F3B,0x3027,0x3123, + 0x3223,0x3327,0x3423,0x3527,0x3627,0x3723,0x382B,0x392F, + 0x3A3F,0x3B3B,0x3C3F,0x3D3B,0x3E3B,0x3F3F,0x4003,0x4107, + 0x4207,0x4303,0x4407,0x4503,0x4603,0x4707,0x480F,0x490B, + 0x4A1B,0x4B1F,0x4C1B,0x4D1F,0x4E1F,0x4F1B,0x5007,0x5103, + 0x5203,0x5307,0x5403,0x5507,0x5607,0x5703,0x580B,0x590F, + 0x5A1F,0x5B1B,0x5C1F,0x5D1B,0x5E1B,0x5F1F,0x6027,0x6123, + 0x6223,0x6327,0x6423,0x6527,0x6627,0x6723,0x682B,0x692F, + 0x6A3F,0x6B3B,0x6C3F,0x6D3B,0x6E3B,0x6F3F,0x7023,0x7127, + 0x7227,0x7323,0x7427,0x7523,0x7623,0x7727,0x782F,0x792B, + 0x7A3B,0x7B3F,0x7C3B,0x7D3F,0x7E3F,0x7F3B,0x8083,0x8187, + 0x8287,0x8383,0x8487,0x8583,0x8683,0x8787,0x888F,0x898B, + 0x8A9B,0x8B9F,0x8C9B,0x8D9F,0x8E9F,0x8F9B,0x9087,0x9183, + 0x9283,0x9387,0x9483,0x9587,0x9687,0x9783,0x988B,0x998F +}; diff --git a/MCUME_pico/picocpc/Z80.c b/MCUME_pico/picocpc/processor/Z80.c similarity index 96% rename from MCUME_pico/picocpc/Z80.c rename to MCUME_pico/picocpc/processor/Z80.c index 29be44d..f59c232 100644 --- a/MCUME_pico/picocpc/Z80.c +++ b/MCUME_pico/picocpc/processor/Z80.c @@ -1,748 +1,748 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** Z80.c **/ -/** **/ -/** This file contains implementation for Z80 CPU. Don't **/ -/** forget to provide RdZ80(), WrZ80(), InZ80(), OutZ80(), **/ -/** LoopZ80(), and PatchZ80() functions to accomodate the **/ -/** emulated machine's architecture. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ - -#include "platform_config.h" -#include "Z80.h" -#include "Tables.h" -#include - -#undef DEBUG -/** INLINE ***************************************************/ -/** C99 standard has "inline", but older compilers used **/ -/** __inline for the same purpose. **/ -/*************************************************************/ -#ifdef __C99__ -#define INLINE static inline -#else -#define INLINE static __inline -#endif - -/** System-Dependent Stuff ***********************************/ -/** This is system-dependent code put here to speed things **/ -/** up. It has to stay inlined to be fast. **/ -/*************************************************************/ -#ifdef COLEM -#define RdZ80 RDZ80 -extern byte *ROMPage[]; -INLINE byte RdZ80(word A) { return(ROMPage[A>>13][A&0x1FFF]); } -#endif - -#ifdef SPECCY -#define RdZ80 RDZ80 -#define WrZ80 WRZ80 -extern byte *Page[],*ROM; -INLINE byte RdZ80(word A) { return(Page[A>>13][A&0x1FFF]); } -INLINE void WrZ80(word A,byte V) { if(Page[A>>13]>13][A&0x1FFF]=V; } -#endif - -#ifdef MG -#define RdZ80 RDZ80 -extern byte *Page[]; -INLINE byte RdZ80(word A) { return(Page[A>>13][A&0x1FFF]); } -#endif - -#ifdef FMSX -#define FAST_RDOP -extern byte *RAM[]; -INLINE byte OpZ80(word A) { return(RAM[A>>13][A&0x1FFF]); } -#endif - -/** FAST_RDOP ************************************************/ -/** With this #define not present, RdZ80() should perform **/ -/** the functions of OpZ80(). **/ -/*************************************************************/ -#ifndef FAST_RDOP -#define OpZ80(A) RdZ80(A) -#endif - -#define S(Fl) R->AF.B.l|=Fl -#define R(Fl) R->AF.B.l&=~(Fl) -#define FLAGS(Rg,Fl) R->AF.B.l=Fl|ZSTable[Rg] - -#define M_RLC(Rg) \ - R->AF.B.l=Rg>>7;Rg=(Rg<<1)|R->AF.B.l;R->AF.B.l|=PZSTable[Rg] -#define M_RRC(Rg) \ - R->AF.B.l=Rg&0x01;Rg=(Rg>>1)|(R->AF.B.l<<7);R->AF.B.l|=PZSTable[Rg] -#define M_RL(Rg) \ - if(Rg&0x80) \ - { \ - Rg=(Rg<<1)|(R->AF.B.l&C_FLAG); \ - R->AF.B.l=PZSTable[Rg]|C_FLAG; \ - } \ - else \ - { \ - Rg=(Rg<<1)|(R->AF.B.l&C_FLAG); \ - R->AF.B.l=PZSTable[Rg]; \ - } -#define M_RR(Rg) \ - if(Rg&0x01) \ - { \ - Rg=(Rg>>1)|(R->AF.B.l<<7); \ - R->AF.B.l=PZSTable[Rg]|C_FLAG; \ - } \ - else \ - { \ - Rg=(Rg>>1)|(R->AF.B.l<<7); \ - R->AF.B.l=PZSTable[Rg]; \ - } - -#define M_SLA(Rg) \ - R->AF.B.l=Rg>>7;Rg<<=1;R->AF.B.l|=PZSTable[Rg] -#define M_SRA(Rg) \ - R->AF.B.l=Rg&C_FLAG;Rg=(Rg>>1)|(Rg&0x80);R->AF.B.l|=PZSTable[Rg] - -#define M_SLL(Rg) \ - R->AF.B.l=Rg>>7;Rg=(Rg<<1)|0x01;R->AF.B.l|=PZSTable[Rg] -#define M_SRL(Rg) \ - R->AF.B.l=Rg&0x01;Rg>>=1;R->AF.B.l|=PZSTable[Rg] - -#define M_BIT(Bit,Rg) \ - R->AF.B.l=(R->AF.B.l&C_FLAG)|H_FLAG|PZSTable[Rg&(1<Rg.B.l=OpZ80(R->SP.W++);R->Rg.B.h=OpZ80(R->SP.W++) -#define M_PUSH(Rg) \ - WrZ80(--R->SP.W,R->Rg.B.h);WrZ80(--R->SP.W,R->Rg.B.l) - -#define M_CALL \ - J.B.l=OpZ80(R->PC.W++);J.B.h=OpZ80(R->PC.W++); \ - WrZ80(--R->SP.W,R->PC.B.h);WrZ80(--R->SP.W,R->PC.B.l); \ - R->PC.W=J.W; \ - JumpZ80(J.W) - -#define M_JP J.B.l=OpZ80(R->PC.W++);J.B.h=OpZ80(R->PC.W);R->PC.W=J.W;JumpZ80(J.W) -#define M_JR R->PC.W+=(offset)OpZ80(R->PC.W)+1;JumpZ80(R->PC.W) -#define M_RET R->PC.B.l=OpZ80(R->SP.W++);R->PC.B.h=OpZ80(R->SP.W++);JumpZ80(R->PC.W) - -#define M_RST(Ad) \ - WrZ80(--R->SP.W,R->PC.B.h);WrZ80(--R->SP.W,R->PC.B.l);R->PC.W=Ad;JumpZ80(Ad) - -#define M_LDWORD(Rg) \ - R->Rg.B.l=OpZ80(R->PC.W++);R->Rg.B.h=OpZ80(R->PC.W++) - -#define M_ADD(Rg) \ - J.W=R->AF.B.h+Rg; \ - R->AF.B.l= \ - (~(R->AF.B.h^Rg)&(Rg^J.B.l)&0x80? V_FLAG:0)| \ - J.B.h|ZSTable[J.B.l]| \ - ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ - R->AF.B.h=J.B.l - -#define M_SUB(Rg) \ - J.W=R->AF.B.h-Rg; \ - R->AF.B.l= \ - ((R->AF.B.h^Rg)&(R->AF.B.h^J.B.l)&0x80? V_FLAG:0)| \ - N_FLAG|-J.B.h|ZSTable[J.B.l]| \ - ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ - R->AF.B.h=J.B.l - -#define M_ADC(Rg) \ - J.W=R->AF.B.h+Rg+(R->AF.B.l&C_FLAG); \ - R->AF.B.l= \ - (~(R->AF.B.h^Rg)&(Rg^J.B.l)&0x80? V_FLAG:0)| \ - J.B.h|ZSTable[J.B.l]| \ - ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ - R->AF.B.h=J.B.l - -#define M_SBC(Rg) \ - J.W=R->AF.B.h-Rg-(R->AF.B.l&C_FLAG); \ - R->AF.B.l= \ - ((R->AF.B.h^Rg)&(R->AF.B.h^J.B.l)&0x80? V_FLAG:0)| \ - N_FLAG|-J.B.h|ZSTable[J.B.l]| \ - ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ - R->AF.B.h=J.B.l - -#define M_CP(Rg) \ - J.W=R->AF.B.h-Rg; \ - R->AF.B.l= \ - ((R->AF.B.h^Rg)&(R->AF.B.h^J.B.l)&0x80? V_FLAG:0)| \ - N_FLAG|-J.B.h|ZSTable[J.B.l]| \ - ((R->AF.B.h^Rg^J.B.l)&H_FLAG) - -#define M_AND(Rg) R->AF.B.h&=Rg;R->AF.B.l=H_FLAG|PZSTable[R->AF.B.h] -#define M_OR(Rg) R->AF.B.h|=Rg;R->AF.B.l=PZSTable[R->AF.B.h] -#define M_XOR(Rg) R->AF.B.h^=Rg;R->AF.B.l=PZSTable[R->AF.B.h] - -#define M_IN(Rg) \ - Rg=InZ80(R->BC.W); \ - R->AF.B.l=PZSTable[Rg]|(R->AF.B.l&C_FLAG) - -#define M_INC(Rg) \ - Rg++; \ - R->AF.B.l= \ - (R->AF.B.l&C_FLAG)|ZSTable[Rg]| \ - (Rg==0x80? V_FLAG:0)|(Rg&0x0F? 0:H_FLAG) - -#define M_DEC(Rg) \ - Rg--; \ - R->AF.B.l= \ - N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[Rg]| \ - (Rg==0x7F? V_FLAG:0)|((Rg&0x0F)==0x0F? H_FLAG:0) - -#define M_ADDW(Rg1,Rg2) \ - J.W=(R->Rg1.W+R->Rg2.W)&0xFFFF; \ - R->AF.B.l= \ - (R->AF.B.l&~(H_FLAG|N_FLAG|C_FLAG))| \ - ((R->Rg1.W^R->Rg2.W^J.W)&0x1000? H_FLAG:0)| \ - (((long)R->Rg1.W+(long)R->Rg2.W)&0x10000? C_FLAG:0); \ - R->Rg1.W=J.W - -#define M_ADCW(Rg) \ - I=R->AF.B.l&C_FLAG;J.W=(R->HL.W+R->Rg.W+I)&0xFFFF; \ - R->AF.B.l= \ - (((long)R->HL.W+(long)R->Rg.W+(long)I)&0x10000? C_FLAG:0)| \ - (~(R->HL.W^R->Rg.W)&(R->Rg.W^J.W)&0x8000? V_FLAG:0)| \ - ((R->HL.W^R->Rg.W^J.W)&0x1000? H_FLAG:0)| \ - (J.W? 0:Z_FLAG)|(J.B.h&S_FLAG); \ - R->HL.W=J.W - -#define M_SBCW(Rg) \ - I=R->AF.B.l&C_FLAG;J.W=(R->HL.W-R->Rg.W-I)&0xFFFF; \ - R->AF.B.l= \ - N_FLAG| \ - (((long)R->HL.W-(long)R->Rg.W-(long)I)&0x10000? C_FLAG:0)| \ - ((R->HL.W^R->Rg.W)&(R->HL.W^J.W)&0x8000? V_FLAG:0)| \ - ((R->HL.W^R->Rg.W^J.W)&0x1000? H_FLAG:0)| \ - (J.W? 0:Z_FLAG)|(J.B.h&S_FLAG); \ - R->HL.W=J.W - -enum Codes -{ - NOP,LD_BC_WORD,LD_xBC_A,INC_BC,INC_B,DEC_B,LD_B_BYTE,RLCA, - EX_AF_AF,ADD_HL_BC,LD_A_xBC,DEC_BC,INC_C,DEC_C,LD_C_BYTE,RRCA, - DJNZ,LD_DE_WORD,LD_xDE_A,INC_DE,INC_D,DEC_D,LD_D_BYTE,RLA, - JR,ADD_HL_DE,LD_A_xDE,DEC_DE,INC_E,DEC_E,LD_E_BYTE,RRA, - JR_NZ,LD_HL_WORD,LD_xWORD_HL,INC_HL,INC_H,DEC_H,LD_H_BYTE,DAA, - JR_Z,ADD_HL_HL,LD_HL_xWORD,DEC_HL,INC_L,DEC_L,LD_L_BYTE,CPL, - JR_NC,LD_SP_WORD,LD_xWORD_A,INC_SP,INC_xHL,DEC_xHL,LD_xHL_BYTE,SCF, - JR_C,ADD_HL_SP,LD_A_xWORD,DEC_SP,INC_A,DEC_A,LD_A_BYTE,CCF, - LD_B_B,LD_B_C,LD_B_D,LD_B_E,LD_B_H,LD_B_L,LD_B_xHL,LD_B_A, - LD_C_B,LD_C_C,LD_C_D,LD_C_E,LD_C_H,LD_C_L,LD_C_xHL,LD_C_A, - LD_D_B,LD_D_C,LD_D_D,LD_D_E,LD_D_H,LD_D_L,LD_D_xHL,LD_D_A, - LD_E_B,LD_E_C,LD_E_D,LD_E_E,LD_E_H,LD_E_L,LD_E_xHL,LD_E_A, - LD_H_B,LD_H_C,LD_H_D,LD_H_E,LD_H_H,LD_H_L,LD_H_xHL,LD_H_A, - LD_L_B,LD_L_C,LD_L_D,LD_L_E,LD_L_H,LD_L_L,LD_L_xHL,LD_L_A, - LD_xHL_B,LD_xHL_C,LD_xHL_D,LD_xHL_E,LD_xHL_H,LD_xHL_L,HALT,LD_xHL_A, - LD_A_B,LD_A_C,LD_A_D,LD_A_E,LD_A_H,LD_A_L,LD_A_xHL,LD_A_A, - ADD_B,ADD_C,ADD_D,ADD_E,ADD_H,ADD_L,ADD_xHL,ADD_A, - ADC_B,ADC_C,ADC_D,ADC_E,ADC_H,ADC_L,ADC_xHL,ADC_A, - SUB_B,SUB_C,SUB_D,SUB_E,SUB_H,SUB_L,SUB_xHL,SUB_A, - SBC_B,SBC_C,SBC_D,SBC_E,SBC_H,SBC_L,SBC_xHL,SBC_A, - AND_B,AND_C,AND_D,AND_E,AND_H,AND_L,AND_xHL,AND_A, - XOR_B,XOR_C,XOR_D,XOR_E,XOR_H,XOR_L,XOR_xHL,XOR_A, - OR_B,OR_C,OR_D,OR_E,OR_H,OR_L,OR_xHL,OR_A, - CP_B,CP_C,CP_D,CP_E,CP_H,CP_L,CP_xHL,CP_A, - RET_NZ,POP_BC,JP_NZ,JP,CALL_NZ,PUSH_BC,ADD_BYTE,RST00, - RET_Z,RET,JP_Z,PFX_CB,CALL_Z,CALL,ADC_BYTE,RST08, - RET_NC,POP_DE,JP_NC,OUTA,CALL_NC,PUSH_DE,SUB_BYTE,RST10, - RET_C,EXX,JP_C,INA,CALL_C,PFX_DD,SBC_BYTE,RST18, - RET_PO,POP_HL,JP_PO,EX_HL_xSP,CALL_PO,PUSH_HL,AND_BYTE,RST20, - RET_PE,LD_PC_HL,JP_PE,EX_DE_HL,CALL_PE,PFX_ED,XOR_BYTE,RST28, - RET_P,POP_AF,JP_P,DI,CALL_P,PUSH_AF,OR_BYTE,RST30, - RET_M,LD_SP_HL,JP_M,EI,CALL_M,PFX_FD,CP_BYTE,RST38 -}; - -enum CodesCB -{ - RLC_B,RLC_C,RLC_D,RLC_E,RLC_H,RLC_L,RLC_xHL,RLC_A, - RRC_B,RRC_C,RRC_D,RRC_E,RRC_H,RRC_L,RRC_xHL,RRC_A, - RL_B,RL_C,RL_D,RL_E,RL_H,RL_L,RL_xHL,RL_A, - RR_B,RR_C,RR_D,RR_E,RR_H,RR_L,RR_xHL,RR_A, - SLA_B,SLA_C,SLA_D,SLA_E,SLA_H,SLA_L,SLA_xHL,SLA_A, - SRA_B,SRA_C,SRA_D,SRA_E,SRA_H,SRA_L,SRA_xHL,SRA_A, - SLL_B,SLL_C,SLL_D,SLL_E,SLL_H,SLL_L,SLL_xHL,SLL_A, - SRL_B,SRL_C,SRL_D,SRL_E,SRL_H,SRL_L,SRL_xHL,SRL_A, - BIT0_B,BIT0_C,BIT0_D,BIT0_E,BIT0_H,BIT0_L,BIT0_xHL,BIT0_A, - BIT1_B,BIT1_C,BIT1_D,BIT1_E,BIT1_H,BIT1_L,BIT1_xHL,BIT1_A, - BIT2_B,BIT2_C,BIT2_D,BIT2_E,BIT2_H,BIT2_L,BIT2_xHL,BIT2_A, - BIT3_B,BIT3_C,BIT3_D,BIT3_E,BIT3_H,BIT3_L,BIT3_xHL,BIT3_A, - BIT4_B,BIT4_C,BIT4_D,BIT4_E,BIT4_H,BIT4_L,BIT4_xHL,BIT4_A, - BIT5_B,BIT5_C,BIT5_D,BIT5_E,BIT5_H,BIT5_L,BIT5_xHL,BIT5_A, - BIT6_B,BIT6_C,BIT6_D,BIT6_E,BIT6_H,BIT6_L,BIT6_xHL,BIT6_A, - BIT7_B,BIT7_C,BIT7_D,BIT7_E,BIT7_H,BIT7_L,BIT7_xHL,BIT7_A, - RES0_B,RES0_C,RES0_D,RES0_E,RES0_H,RES0_L,RES0_xHL,RES0_A, - RES1_B,RES1_C,RES1_D,RES1_E,RES1_H,RES1_L,RES1_xHL,RES1_A, - RES2_B,RES2_C,RES2_D,RES2_E,RES2_H,RES2_L,RES2_xHL,RES2_A, - RES3_B,RES3_C,RES3_D,RES3_E,RES3_H,RES3_L,RES3_xHL,RES3_A, - RES4_B,RES4_C,RES4_D,RES4_E,RES4_H,RES4_L,RES4_xHL,RES4_A, - RES5_B,RES5_C,RES5_D,RES5_E,RES5_H,RES5_L,RES5_xHL,RES5_A, - RES6_B,RES6_C,RES6_D,RES6_E,RES6_H,RES6_L,RES6_xHL,RES6_A, - RES7_B,RES7_C,RES7_D,RES7_E,RES7_H,RES7_L,RES7_xHL,RES7_A, - SET0_B,SET0_C,SET0_D,SET0_E,SET0_H,SET0_L,SET0_xHL,SET0_A, - SET1_B,SET1_C,SET1_D,SET1_E,SET1_H,SET1_L,SET1_xHL,SET1_A, - SET2_B,SET2_C,SET2_D,SET2_E,SET2_H,SET2_L,SET2_xHL,SET2_A, - SET3_B,SET3_C,SET3_D,SET3_E,SET3_H,SET3_L,SET3_xHL,SET3_A, - SET4_B,SET4_C,SET4_D,SET4_E,SET4_H,SET4_L,SET4_xHL,SET4_A, - SET5_B,SET5_C,SET5_D,SET5_E,SET5_H,SET5_L,SET5_xHL,SET5_A, - SET6_B,SET6_C,SET6_D,SET6_E,SET6_H,SET6_L,SET6_xHL,SET6_A, - SET7_B,SET7_C,SET7_D,SET7_E,SET7_H,SET7_L,SET7_xHL,SET7_A -}; - -enum CodesED -{ - DB_00,DB_01,DB_02,DB_03,DB_04,DB_05,DB_06,DB_07, - DB_08,DB_09,DB_0A,DB_0B,DB_0C,DB_0D,DB_0E,DB_0F, - DB_10,DB_11,DB_12,DB_13,DB_14,DB_15,DB_16,DB_17, - DB_18,DB_19,DB_1A,DB_1B,DB_1C,DB_1D,DB_1E,DB_1F, - DB_20,DB_21,DB_22,DB_23,DB_24,DB_25,DB_26,DB_27, - DB_28,DB_29,DB_2A,DB_2B,DB_2C,DB_2D,DB_2E,DB_2F, - DB_30,DB_31,DB_32,DB_33,DB_34,DB_35,DB_36,DB_37, - DB_38,DB_39,DB_3A,DB_3B,DB_3C,DB_3D,DB_3E,DB_3F, - IN_B_xC,OUT_xC_B,SBC_HL_BC,LD_xWORDe_BC,NEG,RETN,IM_0,LD_I_A, - IN_C_xC,OUT_xC_C,ADC_HL_BC,LD_BC_xWORDe,DB_4C,RETI,DB_,LD_R_A, - IN_D_xC,OUT_xC_D,SBC_HL_DE,LD_xWORDe_DE,DB_54,DB_55,IM_1,LD_A_I, - IN_E_xC,OUT_xC_E,ADC_HL_DE,LD_DE_xWORDe,DB_5C,DB_5D,IM_2,LD_A_R, - IN_H_xC,OUT_xC_H,SBC_HL_HL,LD_xWORDe_HL,DB_64,DB_65,DB_66,RRD, - IN_L_xC,OUT_xC_L,ADC_HL_HL,LD_HL_xWORDe,DB_6C,DB_6D,DB_6E,RLD, - IN_F_xC,DB_71,SBC_HL_SP,LD_xWORDe_SP,DB_74,DB_75,DB_76,DB_77, - IN_A_xC,OUT_xC_A,ADC_HL_SP,LD_SP_xWORDe,DB_7C,DB_7D,DB_7E,DB_7F, - DB_80,DB_81,DB_82,DB_83,DB_84,DB_85,DB_86,DB_87, - DB_88,DB_89,DB_8A,DB_8B,DB_8C,DB_8D,DB_8E,DB_8F, - DB_90,DB_91,DB_92,DB_93,DB_94,DB_95,DB_96,DB_97, - DB_98,DB_99,DB_9A,DB_9B,DB_9C,DB_9D,DB_9E,DB_9F, - LDI,CPI,INI,OUTI,DB_A4,DB_A5,DB_A6,DB_A7, - LDD,CPD,IND,OUTD,DB_AC,DB_AD,DB_AE,DB_AF, - LDIR,CPIR,INIR,OTIR,DB_B4,DB_B5,DB_B6,DB_B7, - LDDR,CPDR,INDR,OTDR,DB_BC,DB_BD,DB_BE,DB_BF, - DB_C0,DB_C1,DB_C2,DB_C3,DB_C4,DB_C5,DB_C6,DB_C7, - DB_C8,DB_C9,DB_CA,DB_CB,DB_CC,DB_CD,DB_CE,DB_CF, - DB_D0,DB_D1,DB_D2,DB_D3,DB_D4,DB_D5,DB_D6,DB_D7, - DB_D8,DB_D9,DB_DA,DB_DB,DB_DC,DB_DD,DB_DE,DB_DF, - DB_E0,DB_E1,DB_E2,DB_E3,DB_E4,DB_E5,DB_E6,DB_E7, - DB_E8,DB_E9,DB_EA,DB_EB,DB_EC,DB_ED,DB_EE,DB_EF, - DB_F0,DB_F1,DB_F2,DB_F3,DB_F4,DB_F5,DB_F6,DB_F7, - DB_F8,DB_F9,DB_FA,DB_FB,DB_FC,DB_FD,DB_FE,DB_FF -}; - -static void CodesCB(register Z80 *R) -{ - register byte I; - - I=OpZ80(R->PC.W++); - R->ICount-=CyclesCB[I]; - switch(I) - { -#include "CodesCB.h" - default: - if(R->TrapBadOps) - printf - ( - "[Z80 %lX] Unrecognized instruction: CB %02X at PC=%04X\n", - (long)(R->User),OpZ80(R->PC.W-1),R->PC.W-2 - ); - } -} - -static void CodesDDCB(register Z80 *R) -{ - register pair J; - register byte I; - -#define XX IX - J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - I=OpZ80(R->PC.W++); - R->ICount-=CyclesXXCB[I]; - switch(I) - { -#include "CodesXCB.h" - default: - if(R->TrapBadOps) - printf - ( - "[Z80 %lX] Unrecognized instruction: DD CB %02X %02X at PC=%04X\n", - (long)(R->User),OpZ80(R->PC.W-2),OpZ80(R->PC.W-1),R->PC.W-4 - ); - } -#undef XX -} - -static void CodesFDCB(register Z80 *R) -{ - register pair J; - register byte I; - -#define XX IY - J.W=R->XX.W+(offset)OpZ80(R->PC.W++); - I=OpZ80(R->PC.W++); - R->ICount-=CyclesXXCB[I]; - switch(I) - { -#include "CodesXCB.h" - default: - if(R->TrapBadOps) - printf - ( - "[Z80 %lX] Unrecognized instruction: FD CB %02X %02X at PC=%04X\n", - (long)R->User,OpZ80(R->PC.W-2),OpZ80(R->PC.W-1),R->PC.W-4 - ); - } -#undef XX -} - -static void CodesED(register Z80 *R) -{ - register byte I; - register pair J; - - I=OpZ80(R->PC.W++); - R->ICount-=CyclesED[I]; - switch(I) - { -#include "CodesED.h" - case PFX_ED: - R->PC.W--;break; - default: - if(R->TrapBadOps) - printf - ( - "[Z80 %lX] Unrecognized instruction: ED %02X at PC=%04X\n", - (long)R->User,OpZ80(R->PC.W-1),R->PC.W-2 - ); - } -} - -static void CodesDD(register Z80 *R) -{ - register byte I; - register pair J; - -#define XX IX - I=OpZ80(R->PC.W++); - R->ICount-=CyclesXX[I]; - switch(I) - { -#include "CodesXX.h" - case PFX_FD: - case PFX_DD: - R->PC.W--;break; - case PFX_CB: - CodesDDCB(R);break; - default: - if(R->TrapBadOps) - printf - ( - "[Z80 %lX] Unrecognized instruction: DD %02X at PC=%04X\n", - (long)R->User,OpZ80(R->PC.W-1),R->PC.W-2 - ); - } -#undef XX -} - -static void CodesFD(register Z80 *R) -{ - register byte I; - register pair J; - -#define XX IY - I=OpZ80(R->PC.W++); - R->ICount-=CyclesXX[I]; - switch(I) - { -#include "CodesXX.h" - case PFX_FD: - case PFX_DD: - R->PC.W--;break; - case PFX_CB: - CodesFDCB(R);break; - default: - printf - ( - "Unrecognized instruction: FD %02X at PC=%04X\n", - OpZ80(R->PC.W-1),R->PC.W-2 - ); - } -#undef XX -} - -/** ResetZ80() ***********************************************/ -/** This function can be used to reset the register struct **/ -/** before starting execution with Z80(). It sets the **/ -/** registers to their supposed initial values. **/ -/*************************************************************/ -void ResetZ80(Z80 *R, register int Cycles) -{ - R->IPeriod = Cycles; - R->PC.W = 0x0000; - R->SP.W = 0xF000; - R->AF.W = 0x0000; - R->BC.W = 0x0000; - R->DE.W = 0x0000; - R->HL.W = 0x0000; - R->AF1.W = 0x0000; - R->BC1.W = 0x0000; - R->DE1.W = 0x0000; - R->HL1.W = 0x0000; - R->IX.W = 0x0000; - R->IY.W = 0x0000; - R->I = 0x00; - R->R = 0x00; - R->IFF = 0x00; - R->ICount = R->IPeriod; - R->IRequest = INT_NONE; - R->IBackup = 0; - - JumpZ80(R->PC.W); -} - -/** ExecZ80() ************************************************/ -/** This function will execute given number of Z80 cycles. **/ -/** It will then return the number of cycles left, possibly **/ -/** negative, and current register values in R. **/ -/*************************************************************/ -#ifdef EXECZ80 -int ExecZ80(register Z80 *R,register int RunCycles) -{ - register byte I; - register pair J; - - for(R->ICount=RunCycles;;) - { - while(R->ICount>0) - { -#ifdef DEBUG - /* Turn tracing on when reached trap address */ - if(R->PC.W==R->Trap) R->Trace=1; - /* Call single-step debugger, exit if requested */ - if(R->Trace) - if(!DebugZ80(R)) return(R->ICount); -#endif - - /* Read opcode and count cycles */ - I=OpZ80(R->PC.W++); - /* Count cycles */ - R->ICount-=Cycles[I]; - - for (int l=0; l< Cycles[I] ;l++) { - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - -#ifndef USE_VGA - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); - asm volatile("nop"); -#endif - } - /* Interpret opcode */ - switch(I) - { -#include "Codes.h" - case PFX_CB: CodesCB(R);break; - case PFX_ED: CodesED(R);break; - case PFX_FD: CodesFD(R);break; - case PFX_DD: CodesDD(R);break; - } - } - - /* Unless we have come here after EI, exit */ - if(!(R->IFF&IFF_EI)) return(R->ICount); - else - { - /* Done with AfterEI state */ - R->IFF=(R->IFF&~IFF_EI)|IFF_1; - /* Restore the ICount */ - R->ICount+=R->IBackup-1; - /* Interrupt CPU if needed */ - if((R->IRequest!=INT_NONE)&&(R->IRequest!=INT_QUIT)) IntZ80(R,R->IRequest); - } - } -} -#endif /* EXECZ80 */ - -/** IntZ80() *************************************************/ -/** This function will generate interrupt of given vector. **/ -/*************************************************************/ -void IntZ80(Z80 *R,word Vector) -{ - /* If HALTed, take CPU off HALT instruction */ - if(R->IFF&IFF_HALT) { R->PC.W++;R->IFF&=~IFF_HALT; } - - if((R->IFF&IFF_1)||(Vector==INT_NMI)) - { - /* Save PC on stack */ - M_PUSH(PC); - - /* Automatically reset IRequest if needed */ - if(R->IAutoReset&&(Vector==R->IRequest)) R->IRequest=INT_NONE; - - /* If it is NMI... */ - if(Vector==INT_NMI) - { - /* Clear IFF1 */ - R->IFF&=~(IFF_1|IFF_EI); - /* Jump to hardwired NMI vector */ - R->PC.W=0x0066; - JumpZ80(0x0066); - /* Done */ - return; - } - - /* Further interrupts off */ - R->IFF&=~(IFF_1|IFF_2|IFF_EI); - - /* If in IM2 mode... */ - if(R->IFF&IFF_IM2) - { - /* Make up the vector address */ - Vector=(Vector&0xFF)|((word)(R->I)<<8); - /* Read the vector */ - R->PC.B.l=RdZ80(Vector++); - R->PC.B.h=RdZ80(Vector); - JumpZ80(R->PC.W); - /* Done */ - return; - } - - /* If in IM1 mode, just jump to hardwired IRQ vector */ - if(R->IFF&IFF_IM1) { R->PC.W=0x0038;JumpZ80(0x0038);return; } - - /* If in IM0 mode... */ - - /* Jump to a vector */ - switch(Vector) - { - case INT_RST00: R->PC.W=0x0000;JumpZ80(0x0000);break; - case INT_RST08: R->PC.W=0x0008;JumpZ80(0x0008);break; - case INT_RST10: R->PC.W=0x0010;JumpZ80(0x0010);break; - case INT_RST18: R->PC.W=0x0018;JumpZ80(0x0018);break; - case INT_RST20: R->PC.W=0x0020;JumpZ80(0x0020);break; - case INT_RST28: R->PC.W=0x0028;JumpZ80(0x0028);break; - case INT_RST30: R->PC.W=0x0030;JumpZ80(0x0030);break; - case INT_RST38: R->PC.W=0x0038;JumpZ80(0x0038);break; - } - } -} - -/** RunZ80() *************************************************/ -/** This function will run Z80 code until an LoopZ80() call **/ -/** returns INT_QUIT. It will return the PC at which **/ -/** emulation stopped, and current register values in R. **/ -/*************************************************************/ -#ifndef EXECZ80 -word RunZ80(Z80 *R) -{ - register byte I; - register pair J; - - for(;;) - { -#ifdef DEBUG - /* Turn tracing on when reached trap address */ - if(R->PC.W==R->Trap) R->Trace=1; - /* Call single-step debugger, exit if requested */ - if(R->Trace) - if(!DebugZ80(R)) return(R->PC.W); -#endif - - I=OpZ80(R->PC.W++); - R->ICount-=Cycles[I]; - - switch(I) - { -#include "Codes.h" - case PFX_CB: CodesCB(R);break; - case PFX_ED: CodesED(R);break; - case PFX_FD: CodesFD(R);break; - case PFX_DD: CodesDD(R);break; - } - - /* If cycle counter expired... */ - if(R->ICount<=0) - { - /* If we have come after EI, get address from IRequest */ - /* Otherwise, get it from the loop handler */ - if(R->IFF&IFF_EI) - { - R->IFF=(R->IFF&~IFF_EI)|IFF_1; /* Done with AfterEI state */ - R->ICount+=R->IBackup-1; /* Restore the ICount */ - - /* Call periodic handler or set pending IRQ */ - if(R->ICount>0) J.W=R->IRequest; - else - { - J.W=LoopZ80(R); /* Call periodic handler */ - R->ICount+=R->IPeriod; /* Reset the cycle counter */ - if(J.W==INT_NONE) J.W=R->IRequest; /* Pending IRQ */ - } - } - else - { - J.W=LoopZ80(R); /* Call periodic handler */ - R->ICount+=R->IPeriod; /* Reset the cycle counter */ - if(J.W==INT_NONE) J.W=R->IRequest; /* Pending IRQ */ - } - - if(J.W==INT_QUIT) return(R->PC.W); /* Exit if INT_QUIT */ - if(J.W!=INT_NONE) IntZ80(R,J.W); /* Int-pt if needed */ - } - } - - /* Execution stopped */ - return(R->PC.W); -} -#endif /* !EXECZ80 */ +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** Z80.c **/ +/** **/ +/** This file contains implementation for Z80 CPU. Don't **/ +/** forget to provide RdZ80(), WrZ80(), InZ80(), OutZ80(), **/ +/** LoopZ80(), and PatchZ80() functions to accomodate the **/ +/** emulated machine's architecture. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ + +#include "platform_config.h" +#include "Z80.h" +#include "Tables.h" +#include + +#undef DEBUG +/** INLINE ***************************************************/ +/** C99 standard has "inline", but older compilers used **/ +/** __inline for the same purpose. **/ +/*************************************************************/ +#ifdef __C99__ +#define INLINE static inline +#else +#define INLINE static __inline +#endif + +/** System-Dependent Stuff ***********************************/ +/** This is system-dependent code put here to speed things **/ +/** up. It has to stay inlined to be fast. **/ +/*************************************************************/ +#ifdef COLEM +#define RdZ80 RDZ80 +extern byte *ROMPage[]; +INLINE byte RdZ80(word A) { return(ROMPage[A>>13][A&0x1FFF]); } +#endif + +#ifdef SPECCY +#define RdZ80 RDZ80 +#define WrZ80 WRZ80 +extern byte *Page[],*ROM; +INLINE byte RdZ80(word A) { return(Page[A>>13][A&0x1FFF]); } +INLINE void WrZ80(word A,byte V) { if(Page[A>>13]>13][A&0x1FFF]=V; } +#endif + +#ifdef MG +#define RdZ80 RDZ80 +extern byte *Page[]; +INLINE byte RdZ80(word A) { return(Page[A>>13][A&0x1FFF]); } +#endif + +#ifdef FMSX +#define FAST_RDOP +extern byte *RAM[]; +INLINE byte OpZ80(word A) { return(RAM[A>>13][A&0x1FFF]); } +#endif + +/** FAST_RDOP ************************************************/ +/** With this #define not present, RdZ80() should perform **/ +/** the functions of OpZ80(). **/ +/*************************************************************/ +#ifndef FAST_RDOP +#define OpZ80(A) RdZ80(A) +#endif + +#define S(Fl) R->AF.B.l|=Fl +#define R(Fl) R->AF.B.l&=~(Fl) +#define FLAGS(Rg,Fl) R->AF.B.l=Fl|ZSTable[Rg] + +#define M_RLC(Rg) \ + R->AF.B.l=Rg>>7;Rg=(Rg<<1)|R->AF.B.l;R->AF.B.l|=PZSTable[Rg] +#define M_RRC(Rg) \ + R->AF.B.l=Rg&0x01;Rg=(Rg>>1)|(R->AF.B.l<<7);R->AF.B.l|=PZSTable[Rg] +#define M_RL(Rg) \ + if(Rg&0x80) \ + { \ + Rg=(Rg<<1)|(R->AF.B.l&C_FLAG); \ + R->AF.B.l=PZSTable[Rg]|C_FLAG; \ + } \ + else \ + { \ + Rg=(Rg<<1)|(R->AF.B.l&C_FLAG); \ + R->AF.B.l=PZSTable[Rg]; \ + } +#define M_RR(Rg) \ + if(Rg&0x01) \ + { \ + Rg=(Rg>>1)|(R->AF.B.l<<7); \ + R->AF.B.l=PZSTable[Rg]|C_FLAG; \ + } \ + else \ + { \ + Rg=(Rg>>1)|(R->AF.B.l<<7); \ + R->AF.B.l=PZSTable[Rg]; \ + } + +#define M_SLA(Rg) \ + R->AF.B.l=Rg>>7;Rg<<=1;R->AF.B.l|=PZSTable[Rg] +#define M_SRA(Rg) \ + R->AF.B.l=Rg&C_FLAG;Rg=(Rg>>1)|(Rg&0x80);R->AF.B.l|=PZSTable[Rg] + +#define M_SLL(Rg) \ + R->AF.B.l=Rg>>7;Rg=(Rg<<1)|0x01;R->AF.B.l|=PZSTable[Rg] +#define M_SRL(Rg) \ + R->AF.B.l=Rg&0x01;Rg>>=1;R->AF.B.l|=PZSTable[Rg] + +#define M_BIT(Bit,Rg) \ + R->AF.B.l=(R->AF.B.l&C_FLAG)|H_FLAG|PZSTable[Rg&(1<Rg.B.l=OpZ80(R->SP.W++);R->Rg.B.h=OpZ80(R->SP.W++) +#define M_PUSH(Rg) \ + WrZ80(--R->SP.W,R->Rg.B.h);WrZ80(--R->SP.W,R->Rg.B.l) + +#define M_CALL \ + J.B.l=OpZ80(R->PC.W++);J.B.h=OpZ80(R->PC.W++); \ + WrZ80(--R->SP.W,R->PC.B.h);WrZ80(--R->SP.W,R->PC.B.l); \ + R->PC.W=J.W; \ + JumpZ80(J.W) + +#define M_JP J.B.l=OpZ80(R->PC.W++);J.B.h=OpZ80(R->PC.W);R->PC.W=J.W;JumpZ80(J.W) +#define M_JR R->PC.W+=(offset)OpZ80(R->PC.W)+1;JumpZ80(R->PC.W) +#define M_RET R->PC.B.l=OpZ80(R->SP.W++);R->PC.B.h=OpZ80(R->SP.W++);JumpZ80(R->PC.W) + +#define M_RST(Ad) \ + WrZ80(--R->SP.W,R->PC.B.h);WrZ80(--R->SP.W,R->PC.B.l);R->PC.W=Ad;JumpZ80(Ad) + +#define M_LDWORD(Rg) \ + R->Rg.B.l=OpZ80(R->PC.W++);R->Rg.B.h=OpZ80(R->PC.W++) + +#define M_ADD(Rg) \ + J.W=R->AF.B.h+Rg; \ + R->AF.B.l= \ + (~(R->AF.B.h^Rg)&(Rg^J.B.l)&0x80? V_FLAG:0)| \ + J.B.h|ZSTable[J.B.l]| \ + ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ + R->AF.B.h=J.B.l + +#define M_SUB(Rg) \ + J.W=R->AF.B.h-Rg; \ + R->AF.B.l= \ + ((R->AF.B.h^Rg)&(R->AF.B.h^J.B.l)&0x80? V_FLAG:0)| \ + N_FLAG|-J.B.h|ZSTable[J.B.l]| \ + ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ + R->AF.B.h=J.B.l + +#define M_ADC(Rg) \ + J.W=R->AF.B.h+Rg+(R->AF.B.l&C_FLAG); \ + R->AF.B.l= \ + (~(R->AF.B.h^Rg)&(Rg^J.B.l)&0x80? V_FLAG:0)| \ + J.B.h|ZSTable[J.B.l]| \ + ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ + R->AF.B.h=J.B.l + +#define M_SBC(Rg) \ + J.W=R->AF.B.h-Rg-(R->AF.B.l&C_FLAG); \ + R->AF.B.l= \ + ((R->AF.B.h^Rg)&(R->AF.B.h^J.B.l)&0x80? V_FLAG:0)| \ + N_FLAG|-J.B.h|ZSTable[J.B.l]| \ + ((R->AF.B.h^Rg^J.B.l)&H_FLAG); \ + R->AF.B.h=J.B.l + +#define M_CP(Rg) \ + J.W=R->AF.B.h-Rg; \ + R->AF.B.l= \ + ((R->AF.B.h^Rg)&(R->AF.B.h^J.B.l)&0x80? V_FLAG:0)| \ + N_FLAG|-J.B.h|ZSTable[J.B.l]| \ + ((R->AF.B.h^Rg^J.B.l)&H_FLAG) + +#define M_AND(Rg) R->AF.B.h&=Rg;R->AF.B.l=H_FLAG|PZSTable[R->AF.B.h] +#define M_OR(Rg) R->AF.B.h|=Rg;R->AF.B.l=PZSTable[R->AF.B.h] +#define M_XOR(Rg) R->AF.B.h^=Rg;R->AF.B.l=PZSTable[R->AF.B.h] + +#define M_IN(Rg) \ + Rg=InZ80(R->BC.W); \ + R->AF.B.l=PZSTable[Rg]|(R->AF.B.l&C_FLAG) + +#define M_INC(Rg) \ + Rg++; \ + R->AF.B.l= \ + (R->AF.B.l&C_FLAG)|ZSTable[Rg]| \ + (Rg==0x80? V_FLAG:0)|(Rg&0x0F? 0:H_FLAG) + +#define M_DEC(Rg) \ + Rg--; \ + R->AF.B.l= \ + N_FLAG|(R->AF.B.l&C_FLAG)|ZSTable[Rg]| \ + (Rg==0x7F? V_FLAG:0)|((Rg&0x0F)==0x0F? H_FLAG:0) + +#define M_ADDW(Rg1,Rg2) \ + J.W=(R->Rg1.W+R->Rg2.W)&0xFFFF; \ + R->AF.B.l= \ + (R->AF.B.l&~(H_FLAG|N_FLAG|C_FLAG))| \ + ((R->Rg1.W^R->Rg2.W^J.W)&0x1000? H_FLAG:0)| \ + (((long)R->Rg1.W+(long)R->Rg2.W)&0x10000? C_FLAG:0); \ + R->Rg1.W=J.W + +#define M_ADCW(Rg) \ + I=R->AF.B.l&C_FLAG;J.W=(R->HL.W+R->Rg.W+I)&0xFFFF; \ + R->AF.B.l= \ + (((long)R->HL.W+(long)R->Rg.W+(long)I)&0x10000? C_FLAG:0)| \ + (~(R->HL.W^R->Rg.W)&(R->Rg.W^J.W)&0x8000? V_FLAG:0)| \ + ((R->HL.W^R->Rg.W^J.W)&0x1000? H_FLAG:0)| \ + (J.W? 0:Z_FLAG)|(J.B.h&S_FLAG); \ + R->HL.W=J.W + +#define M_SBCW(Rg) \ + I=R->AF.B.l&C_FLAG;J.W=(R->HL.W-R->Rg.W-I)&0xFFFF; \ + R->AF.B.l= \ + N_FLAG| \ + (((long)R->HL.W-(long)R->Rg.W-(long)I)&0x10000? C_FLAG:0)| \ + ((R->HL.W^R->Rg.W)&(R->HL.W^J.W)&0x8000? V_FLAG:0)| \ + ((R->HL.W^R->Rg.W^J.W)&0x1000? H_FLAG:0)| \ + (J.W? 0:Z_FLAG)|(J.B.h&S_FLAG); \ + R->HL.W=J.W + +enum Codes +{ + NOP,LD_BC_WORD,LD_xBC_A,INC_BC,INC_B,DEC_B,LD_B_BYTE,RLCA, + EX_AF_AF,ADD_HL_BC,LD_A_xBC,DEC_BC,INC_C,DEC_C,LD_C_BYTE,RRCA, + DJNZ,LD_DE_WORD,LD_xDE_A,INC_DE,INC_D,DEC_D,LD_D_BYTE,RLA, + JR,ADD_HL_DE,LD_A_xDE,DEC_DE,INC_E,DEC_E,LD_E_BYTE,RRA, + JR_NZ,LD_HL_WORD,LD_xWORD_HL,INC_HL,INC_H,DEC_H,LD_H_BYTE,DAA, + JR_Z,ADD_HL_HL,LD_HL_xWORD,DEC_HL,INC_L,DEC_L,LD_L_BYTE,CPL, + JR_NC,LD_SP_WORD,LD_xWORD_A,INC_SP,INC_xHL,DEC_xHL,LD_xHL_BYTE,SCF, + JR_C,ADD_HL_SP,LD_A_xWORD,DEC_SP,INC_A,DEC_A,LD_A_BYTE,CCF, + LD_B_B,LD_B_C,LD_B_D,LD_B_E,LD_B_H,LD_B_L,LD_B_xHL,LD_B_A, + LD_C_B,LD_C_C,LD_C_D,LD_C_E,LD_C_H,LD_C_L,LD_C_xHL,LD_C_A, + LD_D_B,LD_D_C,LD_D_D,LD_D_E,LD_D_H,LD_D_L,LD_D_xHL,LD_D_A, + LD_E_B,LD_E_C,LD_E_D,LD_E_E,LD_E_H,LD_E_L,LD_E_xHL,LD_E_A, + LD_H_B,LD_H_C,LD_H_D,LD_H_E,LD_H_H,LD_H_L,LD_H_xHL,LD_H_A, + LD_L_B,LD_L_C,LD_L_D,LD_L_E,LD_L_H,LD_L_L,LD_L_xHL,LD_L_A, + LD_xHL_B,LD_xHL_C,LD_xHL_D,LD_xHL_E,LD_xHL_H,LD_xHL_L,HALT,LD_xHL_A, + LD_A_B,LD_A_C,LD_A_D,LD_A_E,LD_A_H,LD_A_L,LD_A_xHL,LD_A_A, + ADD_B,ADD_C,ADD_D,ADD_E,ADD_H,ADD_L,ADD_xHL,ADD_A, + ADC_B,ADC_C,ADC_D,ADC_E,ADC_H,ADC_L,ADC_xHL,ADC_A, + SUB_B,SUB_C,SUB_D,SUB_E,SUB_H,SUB_L,SUB_xHL,SUB_A, + SBC_B,SBC_C,SBC_D,SBC_E,SBC_H,SBC_L,SBC_xHL,SBC_A, + AND_B,AND_C,AND_D,AND_E,AND_H,AND_L,AND_xHL,AND_A, + XOR_B,XOR_C,XOR_D,XOR_E,XOR_H,XOR_L,XOR_xHL,XOR_A, + OR_B,OR_C,OR_D,OR_E,OR_H,OR_L,OR_xHL,OR_A, + CP_B,CP_C,CP_D,CP_E,CP_H,CP_L,CP_xHL,CP_A, + RET_NZ,POP_BC,JP_NZ,JP,CALL_NZ,PUSH_BC,ADD_BYTE,RST00, + RET_Z,RET,JP_Z,PFX_CB,CALL_Z,CALL,ADC_BYTE,RST08, + RET_NC,POP_DE,JP_NC,OUTA,CALL_NC,PUSH_DE,SUB_BYTE,RST10, + RET_C,EXX,JP_C,INA,CALL_C,PFX_DD,SBC_BYTE,RST18, + RET_PO,POP_HL,JP_PO,EX_HL_xSP,CALL_PO,PUSH_HL,AND_BYTE,RST20, + RET_PE,LD_PC_HL,JP_PE,EX_DE_HL,CALL_PE,PFX_ED,XOR_BYTE,RST28, + RET_P,POP_AF,JP_P,DI,CALL_P,PUSH_AF,OR_BYTE,RST30, + RET_M,LD_SP_HL,JP_M,EI,CALL_M,PFX_FD,CP_BYTE,RST38 +}; + +enum CodesCB +{ + RLC_B,RLC_C,RLC_D,RLC_E,RLC_H,RLC_L,RLC_xHL,RLC_A, + RRC_B,RRC_C,RRC_D,RRC_E,RRC_H,RRC_L,RRC_xHL,RRC_A, + RL_B,RL_C,RL_D,RL_E,RL_H,RL_L,RL_xHL,RL_A, + RR_B,RR_C,RR_D,RR_E,RR_H,RR_L,RR_xHL,RR_A, + SLA_B,SLA_C,SLA_D,SLA_E,SLA_H,SLA_L,SLA_xHL,SLA_A, + SRA_B,SRA_C,SRA_D,SRA_E,SRA_H,SRA_L,SRA_xHL,SRA_A, + SLL_B,SLL_C,SLL_D,SLL_E,SLL_H,SLL_L,SLL_xHL,SLL_A, + SRL_B,SRL_C,SRL_D,SRL_E,SRL_H,SRL_L,SRL_xHL,SRL_A, + BIT0_B,BIT0_C,BIT0_D,BIT0_E,BIT0_H,BIT0_L,BIT0_xHL,BIT0_A, + BIT1_B,BIT1_C,BIT1_D,BIT1_E,BIT1_H,BIT1_L,BIT1_xHL,BIT1_A, + BIT2_B,BIT2_C,BIT2_D,BIT2_E,BIT2_H,BIT2_L,BIT2_xHL,BIT2_A, + BIT3_B,BIT3_C,BIT3_D,BIT3_E,BIT3_H,BIT3_L,BIT3_xHL,BIT3_A, + BIT4_B,BIT4_C,BIT4_D,BIT4_E,BIT4_H,BIT4_L,BIT4_xHL,BIT4_A, + BIT5_B,BIT5_C,BIT5_D,BIT5_E,BIT5_H,BIT5_L,BIT5_xHL,BIT5_A, + BIT6_B,BIT6_C,BIT6_D,BIT6_E,BIT6_H,BIT6_L,BIT6_xHL,BIT6_A, + BIT7_B,BIT7_C,BIT7_D,BIT7_E,BIT7_H,BIT7_L,BIT7_xHL,BIT7_A, + RES0_B,RES0_C,RES0_D,RES0_E,RES0_H,RES0_L,RES0_xHL,RES0_A, + RES1_B,RES1_C,RES1_D,RES1_E,RES1_H,RES1_L,RES1_xHL,RES1_A, + RES2_B,RES2_C,RES2_D,RES2_E,RES2_H,RES2_L,RES2_xHL,RES2_A, + RES3_B,RES3_C,RES3_D,RES3_E,RES3_H,RES3_L,RES3_xHL,RES3_A, + RES4_B,RES4_C,RES4_D,RES4_E,RES4_H,RES4_L,RES4_xHL,RES4_A, + RES5_B,RES5_C,RES5_D,RES5_E,RES5_H,RES5_L,RES5_xHL,RES5_A, + RES6_B,RES6_C,RES6_D,RES6_E,RES6_H,RES6_L,RES6_xHL,RES6_A, + RES7_B,RES7_C,RES7_D,RES7_E,RES7_H,RES7_L,RES7_xHL,RES7_A, + SET0_B,SET0_C,SET0_D,SET0_E,SET0_H,SET0_L,SET0_xHL,SET0_A, + SET1_B,SET1_C,SET1_D,SET1_E,SET1_H,SET1_L,SET1_xHL,SET1_A, + SET2_B,SET2_C,SET2_D,SET2_E,SET2_H,SET2_L,SET2_xHL,SET2_A, + SET3_B,SET3_C,SET3_D,SET3_E,SET3_H,SET3_L,SET3_xHL,SET3_A, + SET4_B,SET4_C,SET4_D,SET4_E,SET4_H,SET4_L,SET4_xHL,SET4_A, + SET5_B,SET5_C,SET5_D,SET5_E,SET5_H,SET5_L,SET5_xHL,SET5_A, + SET6_B,SET6_C,SET6_D,SET6_E,SET6_H,SET6_L,SET6_xHL,SET6_A, + SET7_B,SET7_C,SET7_D,SET7_E,SET7_H,SET7_L,SET7_xHL,SET7_A +}; + +enum CodesED +{ + DB_00,DB_01,DB_02,DB_03,DB_04,DB_05,DB_06,DB_07, + DB_08,DB_09,DB_0A,DB_0B,DB_0C,DB_0D,DB_0E,DB_0F, + DB_10,DB_11,DB_12,DB_13,DB_14,DB_15,DB_16,DB_17, + DB_18,DB_19,DB_1A,DB_1B,DB_1C,DB_1D,DB_1E,DB_1F, + DB_20,DB_21,DB_22,DB_23,DB_24,DB_25,DB_26,DB_27, + DB_28,DB_29,DB_2A,DB_2B,DB_2C,DB_2D,DB_2E,DB_2F, + DB_30,DB_31,DB_32,DB_33,DB_34,DB_35,DB_36,DB_37, + DB_38,DB_39,DB_3A,DB_3B,DB_3C,DB_3D,DB_3E,DB_3F, + IN_B_xC,OUT_xC_B,SBC_HL_BC,LD_xWORDe_BC,NEG,RETN,IM_0,LD_I_A, + IN_C_xC,OUT_xC_C,ADC_HL_BC,LD_BC_xWORDe,DB_4C,RETI,DB_,LD_R_A, + IN_D_xC,OUT_xC_D,SBC_HL_DE,LD_xWORDe_DE,DB_54,DB_55,IM_1,LD_A_I, + IN_E_xC,OUT_xC_E,ADC_HL_DE,LD_DE_xWORDe,DB_5C,DB_5D,IM_2,LD_A_R, + IN_H_xC,OUT_xC_H,SBC_HL_HL,LD_xWORDe_HL,DB_64,DB_65,DB_66,RRD, + IN_L_xC,OUT_xC_L,ADC_HL_HL,LD_HL_xWORDe,DB_6C,DB_6D,DB_6E,RLD, + IN_F_xC,DB_71,SBC_HL_SP,LD_xWORDe_SP,DB_74,DB_75,DB_76,DB_77, + IN_A_xC,OUT_xC_A,ADC_HL_SP,LD_SP_xWORDe,DB_7C,DB_7D,DB_7E,DB_7F, + DB_80,DB_81,DB_82,DB_83,DB_84,DB_85,DB_86,DB_87, + DB_88,DB_89,DB_8A,DB_8B,DB_8C,DB_8D,DB_8E,DB_8F, + DB_90,DB_91,DB_92,DB_93,DB_94,DB_95,DB_96,DB_97, + DB_98,DB_99,DB_9A,DB_9B,DB_9C,DB_9D,DB_9E,DB_9F, + LDI,CPI,INI,OUTI,DB_A4,DB_A5,DB_A6,DB_A7, + LDD,CPD,IND,OUTD,DB_AC,DB_AD,DB_AE,DB_AF, + LDIR,CPIR,INIR,OTIR,DB_B4,DB_B5,DB_B6,DB_B7, + LDDR,CPDR,INDR,OTDR,DB_BC,DB_BD,DB_BE,DB_BF, + DB_C0,DB_C1,DB_C2,DB_C3,DB_C4,DB_C5,DB_C6,DB_C7, + DB_C8,DB_C9,DB_CA,DB_CB,DB_CC,DB_CD,DB_CE,DB_CF, + DB_D0,DB_D1,DB_D2,DB_D3,DB_D4,DB_D5,DB_D6,DB_D7, + DB_D8,DB_D9,DB_DA,DB_DB,DB_DC,DB_DD,DB_DE,DB_DF, + DB_E0,DB_E1,DB_E2,DB_E3,DB_E4,DB_E5,DB_E6,DB_E7, + DB_E8,DB_E9,DB_EA,DB_EB,DB_EC,DB_ED,DB_EE,DB_EF, + DB_F0,DB_F1,DB_F2,DB_F3,DB_F4,DB_F5,DB_F6,DB_F7, + DB_F8,DB_F9,DB_FA,DB_FB,DB_FC,DB_FD,DB_FE,DB_FF +}; + +static void CodesCB(register Z80 *R) +{ + register byte I; + + I=OpZ80(R->PC.W++); + R->ICount-=CyclesCB[I]; + switch(I) + { +#include "CodesCB.h" + default: + if(R->TrapBadOps) + printf + ( + "[Z80 %lX] Unrecognized instruction: CB %02X at PC=%04X\n", + (long)(R->User),OpZ80(R->PC.W-1),R->PC.W-2 + ); + } +} + +static void CodesDDCB(register Z80 *R) +{ + register pair J; + register byte I; + +#define XX IX + J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + I=OpZ80(R->PC.W++); + R->ICount-=CyclesXXCB[I]; + switch(I) + { +#include "CodesXCB.h" + default: + if(R->TrapBadOps) + printf + ( + "[Z80 %lX] Unrecognized instruction: DD CB %02X %02X at PC=%04X\n", + (long)(R->User),OpZ80(R->PC.W-2),OpZ80(R->PC.W-1),R->PC.W-4 + ); + } +#undef XX +} + +static void CodesFDCB(register Z80 *R) +{ + register pair J; + register byte I; + +#define XX IY + J.W=R->XX.W+(offset)OpZ80(R->PC.W++); + I=OpZ80(R->PC.W++); + R->ICount-=CyclesXXCB[I]; + switch(I) + { +#include "CodesXCB.h" + default: + if(R->TrapBadOps) + printf + ( + "[Z80 %lX] Unrecognized instruction: FD CB %02X %02X at PC=%04X\n", + (long)R->User,OpZ80(R->PC.W-2),OpZ80(R->PC.W-1),R->PC.W-4 + ); + } +#undef XX +} + +static void CodesED(register Z80 *R) +{ + register byte I; + register pair J; + + I=OpZ80(R->PC.W++); + R->ICount-=CyclesED[I]; + switch(I) + { +#include "CodesED.h" + case PFX_ED: + R->PC.W--;break; + default: + if(R->TrapBadOps) + printf + ( + "[Z80 %lX] Unrecognized instruction: ED %02X at PC=%04X\n", + (long)R->User,OpZ80(R->PC.W-1),R->PC.W-2 + ); + } +} + +static void CodesDD(register Z80 *R) +{ + register byte I; + register pair J; + +#define XX IX + I=OpZ80(R->PC.W++); + R->ICount-=CyclesXX[I]; + switch(I) + { +#include "CodesXX.h" + case PFX_FD: + case PFX_DD: + R->PC.W--;break; + case PFX_CB: + CodesDDCB(R);break; + default: + if(R->TrapBadOps) + printf + ( + "[Z80 %lX] Unrecognized instruction: DD %02X at PC=%04X\n", + (long)R->User,OpZ80(R->PC.W-1),R->PC.W-2 + ); + } +#undef XX +} + +static void CodesFD(register Z80 *R) +{ + register byte I; + register pair J; + +#define XX IY + I=OpZ80(R->PC.W++); + R->ICount-=CyclesXX[I]; + switch(I) + { +#include "CodesXX.h" + case PFX_FD: + case PFX_DD: + R->PC.W--;break; + case PFX_CB: + CodesFDCB(R);break; + default: + printf + ( + "Unrecognized instruction: FD %02X at PC=%04X\n", + OpZ80(R->PC.W-1),R->PC.W-2 + ); + } +#undef XX +} + +/** ResetZ80() ***********************************************/ +/** This function can be used to reset the register struct **/ +/** before starting execution with Z80(). It sets the **/ +/** registers to their supposed initial values. **/ +/*************************************************************/ +void ResetZ80(Z80 *R, register int Cycles) +{ + R->IPeriod = Cycles; + R->PC.W = 0x0000; + R->SP.W = 0xF000; + R->AF.W = 0x0000; + R->BC.W = 0x0000; + R->DE.W = 0x0000; + R->HL.W = 0x0000; + R->AF1.W = 0x0000; + R->BC1.W = 0x0000; + R->DE1.W = 0x0000; + R->HL1.W = 0x0000; + R->IX.W = 0x0000; + R->IY.W = 0x0000; + R->I = 0x00; + R->R = 0x00; + R->IFF = 0x00; + R->ICount = R->IPeriod; + R->IRequest = INT_NONE; + R->IBackup = 0; + + JumpZ80(R->PC.W); +} + +/** ExecZ80() ************************************************/ +/** This function will execute given number of Z80 cycles. **/ +/** It will then return the number of cycles left, possibly **/ +/** negative, and current register values in R. **/ +/*************************************************************/ +#ifdef EXECZ80 +int ExecZ80(register Z80 *R,register int RunCycles) +{ + register byte I; + register pair J; + + for(R->ICount=RunCycles;;) + { + while(R->ICount>0) + { +#ifdef DEBUG + /* Turn tracing on when reached trap address */ + if(R->PC.W==R->Trap) R->Trace=1; + /* Call single-step debugger, exit if requested */ + if(R->Trace) + if(!DebugZ80(R)) return(R->ICount); +#endif + + /* Read opcode and count cycles */ + I=OpZ80(R->PC.W++); + /* Count cycles */ + R->ICount-=Cycles[I]; + + for (int l=0; l< Cycles[I] ;l++) { + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + +#ifndef USE_VGA + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); + asm volatile("nop"); +#endif + } + /* Interpret opcode */ + switch(I) + { +#include "Codes.h" + case PFX_CB: CodesCB(R);break; + case PFX_ED: CodesED(R);break; + case PFX_FD: CodesFD(R);break; + case PFX_DD: CodesDD(R);break; + } + } + + /* Unless we have come here after EI, exit */ + if(!(R->IFF&IFF_EI)) return(R->ICount); + else + { + /* Done with AfterEI state */ + R->IFF=(R->IFF&~IFF_EI)|IFF_1; + /* Restore the ICount */ + R->ICount+=R->IBackup-1; + /* Interrupt CPU if needed */ + if((R->IRequest!=INT_NONE)&&(R->IRequest!=INT_QUIT)) IntZ80(R,R->IRequest); + } + } +} +#endif /* EXECZ80 */ + +/** IntZ80() *************************************************/ +/** This function will generate interrupt of given vector. **/ +/*************************************************************/ +void IntZ80(Z80 *R,word Vector) +{ + /* If HALTed, take CPU off HALT instruction */ + if(R->IFF&IFF_HALT) { R->PC.W++;R->IFF&=~IFF_HALT; } + + if((R->IFF&IFF_1)||(Vector==INT_NMI)) + { + /* Save PC on stack */ + M_PUSH(PC); + + /* Automatically reset IRequest if needed */ + if(R->IAutoReset&&(Vector==R->IRequest)) R->IRequest=INT_NONE; + + /* If it is NMI... */ + if(Vector==INT_NMI) + { + /* Clear IFF1 */ + R->IFF&=~(IFF_1|IFF_EI); + /* Jump to hardwired NMI vector */ + R->PC.W=0x0066; + JumpZ80(0x0066); + /* Done */ + return; + } + + /* Further interrupts off */ + R->IFF&=~(IFF_1|IFF_2|IFF_EI); + + /* If in IM2 mode... */ + if(R->IFF&IFF_IM2) + { + /* Make up the vector address */ + Vector=(Vector&0xFF)|((word)(R->I)<<8); + /* Read the vector */ + R->PC.B.l=RdZ80(Vector++); + R->PC.B.h=RdZ80(Vector); + JumpZ80(R->PC.W); + /* Done */ + return; + } + + /* If in IM1 mode, just jump to hardwired IRQ vector */ + if(R->IFF&IFF_IM1) { R->PC.W=0x0038;JumpZ80(0x0038);return; } + + /* If in IM0 mode... */ + + /* Jump to a vector */ + switch(Vector) + { + case INT_RST00: R->PC.W=0x0000;JumpZ80(0x0000);break; + case INT_RST08: R->PC.W=0x0008;JumpZ80(0x0008);break; + case INT_RST10: R->PC.W=0x0010;JumpZ80(0x0010);break; + case INT_RST18: R->PC.W=0x0018;JumpZ80(0x0018);break; + case INT_RST20: R->PC.W=0x0020;JumpZ80(0x0020);break; + case INT_RST28: R->PC.W=0x0028;JumpZ80(0x0028);break; + case INT_RST30: R->PC.W=0x0030;JumpZ80(0x0030);break; + case INT_RST38: R->PC.W=0x0038;JumpZ80(0x0038);break; + } + } +} + +/** RunZ80() *************************************************/ +/** This function will run Z80 code until an LoopZ80() call **/ +/** returns INT_QUIT. It will return the PC at which **/ +/** emulation stopped, and current register values in R. **/ +/*************************************************************/ +#ifndef EXECZ80 +word RunZ80(Z80 *R) +{ + register byte I; + register pair J; + + for(;;) + { +#ifdef DEBUG + /* Turn tracing on when reached trap address */ + if(R->PC.W==R->Trap) R->Trace=1; + /* Call single-step debugger, exit if requested */ + if(R->Trace) + if(!DebugZ80(R)) return(R->PC.W); +#endif + + I=OpZ80(R->PC.W++); + R->ICount-=Cycles[I]; + + switch(I) + { +#include "Codes.h" + case PFX_CB: CodesCB(R);break; + case PFX_ED: CodesED(R);break; + case PFX_FD: CodesFD(R);break; + case PFX_DD: CodesDD(R);break; + } + + /* If cycle counter expired... */ + if(R->ICount<=0) + { + /* If we have come after EI, get address from IRequest */ + /* Otherwise, get it from the loop handler */ + if(R->IFF&IFF_EI) + { + R->IFF=(R->IFF&~IFF_EI)|IFF_1; /* Done with AfterEI state */ + R->ICount+=R->IBackup-1; /* Restore the ICount */ + + /* Call periodic handler or set pending IRQ */ + if(R->ICount>0) J.W=R->IRequest; + else + { + J.W=LoopZ80(R); /* Call periodic handler */ + R->ICount+=R->IPeriod; /* Reset the cycle counter */ + if(J.W==INT_NONE) J.W=R->IRequest; /* Pending IRQ */ + } + } + else + { + J.W=LoopZ80(R); /* Call periodic handler */ + R->ICount+=R->IPeriod; /* Reset the cycle counter */ + if(J.W==INT_NONE) J.W=R->IRequest; /* Pending IRQ */ + } + + if(J.W==INT_QUIT) return(R->PC.W); /* Exit if INT_QUIT */ + if(J.W!=INT_NONE) IntZ80(R,J.W); /* Int-pt if needed */ + } + } + + /* Execution stopped */ + return(R->PC.W); +} +#endif /* !EXECZ80 */ diff --git a/MCUME_pico/picocpc/Z80.h b/MCUME_pico/picocpc/processor/Z80.h similarity index 97% rename from MCUME_pico/picocpc/Z80.h rename to MCUME_pico/picocpc/processor/Z80.h index 87a6b40..83b710d 100644 --- a/MCUME_pico/picocpc/Z80.h +++ b/MCUME_pico/picocpc/processor/Z80.h @@ -1,193 +1,193 @@ -/** Z80: portable Z80 emulator *******************************/ -/** **/ -/** Z80.h **/ -/** **/ -/** This file contains declarations relevant to emulation **/ -/** of Z80 CPU. **/ -/** **/ -/** Copyright (C) Marat Fayzullin 1994-2007 **/ -/** You are not allowed to distribute this software **/ -/** commercially. Please, notify me, if you make any **/ -/** changes to this file. **/ -/*************************************************************/ -#ifndef Z80_H -#define Z80_H - - #include - - -#define EXECZ80 // run a few cycles - -#ifdef __cplusplus -extern "C" { -#endif - - /* Compilation options: */ -/* #define DEBUG */ /* Compile debugging version */ -#define LSB_FIRST /* Compile for low-endian CPU */ -// #define MSB_FIRST /* Compile for hi-endian CPU */ - - /* LoopZ80() may return: */ -#define INT_RST00 0x00C7 /* RST 00h */ -#define INT_RST08 0x00CF /* RST 08h */ -#define INT_RST10 0x00D7 /* RST 10h */ -#define INT_RST18 0x00DF /* RST 18h */ -#define INT_RST20 0x00E7 /* RST 20h */ -#define INT_RST28 0x00EF /* RST 28h */ -#define INT_RST30 0x00F7 /* RST 30h */ -#define INT_RST38 0x00FF /* RST 38h */ -#define INT_IRQ INT_RST38 /* Default IRQ opcode is FFh */ -#define INT_NMI 0xFFFD /* Non-maskable interrupt */ -#define INT_NONE 0xFFFF /* No interrupt required */ -#define INT_QUIT 0xFFFE /* Exit the emulation */ - - /* Bits in Z80 F register: */ -#define S_FLAG 0x80 /* 1: Result negative */ -#define Z_FLAG 0x40 /* 1: Result is zero */ -#define H_FLAG 0x10 /* 1: Halfcarry/Halfborrow */ -#define P_FLAG 0x04 /* 1: Result is even */ -#define V_FLAG 0x04 /* 1: Overflow occured */ -#define N_FLAG 0x02 /* 1: Subtraction occured */ -#define C_FLAG 0x01 /* 1: Carry/Borrow occured */ - - /* Bits in IFF flip-flops: */ -#define IFF_1 0x01 /* IFF1 flip-flop */ -#define IFF_IM1 0x02 /* 1: IM1 mode */ -#define IFF_IM2 0x04 /* 1: IM2 mode */ -#define IFF_2 0x08 /* IFF2 flip-flop */ -#define IFF_EI 0x20 /* 1: EI pending */ -#define IFF_HALT 0x80 /* 1: CPU HALTed */ - -/** Simple Datatypes *****************************************/ -/** NOTICE: sizeof(byte)=1 and sizeof(word)=2 **/ -/*************************************************************/ -#ifndef BYTE_TYPE_DEFINED -#define BYTE_TYPE_DEFINED -typedef uint8_t byte; -#endif -#ifndef WORD_TYPE_DEFINED -#define WORD_TYPE_DEFINED -typedef uint16_t word; -#endif -typedef int8_t offset; - -/** Structured Datatypes *************************************/ -/** NOTICE: #define LSB_FIRST for machines where least **/ -/** signifcant byte goes first. **/ -/*************************************************************/ -typedef union -{ -#ifdef LSB_FIRST - struct { byte l,h; } B; -#else - struct { byte h,l; } B; -#endif - word W; -} pair; - -typedef struct -{ - pair AF,BC,DE,HL,IX,IY,PC,SP; /* Main registers */ - pair AF1,BC1,DE1,HL1; /* Shadow registers */ - byte IFF,I; /* Interrupt registers */ - byte R; /* Refresh register */ - - int IPeriod,ICount; /* Set IPeriod to number of CPU cycles */ - /* between calls to LoopZ80() */ - int IBackup; /* Private, don't touch */ - word IRequest; /* Set to address of pending IRQ */ - byte IAutoReset; /* Set to 1 to autom. reset IRequest */ - byte TrapBadOps; /* Set to 1 to warn of illegal opcodes */ - word Trap; /* Set Trap to address to trace from */ - byte Trace; /* Set Trace=1 to start tracing */ - void *User; /* Arbitrary user data (ID,RAM*,etc.) */ -} Z80; - -/** ResetZ80() ***********************************************/ -/** This function can be used to reset the registers before **/ -/** starting execution with RunZ80(). It sets registers to **/ -/** their initial values. **/ -/*************************************************************/ -void ResetZ80(register Z80 *R, register int Cycles); - -/** ExecZ80() ************************************************/ -/** This function will execute given number of Z80 cycles. **/ -/** It will then return the number of cycles left, possibly **/ -/** negative, and current register values in R. **/ -/*************************************************************/ -#ifdef EXECZ80 -int ExecZ80(register Z80 *R,register int RunCycles); -#endif - -/** IntZ80() *************************************************/ -/** This function will generate interrupt of given vector. **/ -/*************************************************************/ -void IntZ80(register Z80 *R,register word Vector); - -/** RunZ80() *************************************************/ -/** This function will run Z80 code until an LoopZ80() call **/ -/** returns INT_QUIT. It will return the PC at which **/ -/** emulation stopped, and current register values in R. **/ -/*************************************************************/ -#ifndef EXECZ80 -word RunZ80(register Z80 *R); -#endif - -/** RdZ80()/WrZ80() ******************************************/ -/** These functions are called when access to RAM occurs. **/ -/** They allow to control memory access. **/ -/************************************ TO BE WRITTEN BY USER **/ -void WrZ80(register word Addr,register byte Value); -byte RdZ80(register word Addr); - -/** InZ80()/OutZ80() *****************************************/ -/** Z80 emulation calls these functions to read/write from **/ -/** I/O ports. There can be 65536 I/O ports, but only first **/ -/** 256 are usually used. **/ -/************************************ TO BE WRITTEN BY USER **/ -void OutZ80(register word Port,register byte Value); -byte InZ80(register word Port); - -/** PatchZ80() ***********************************************/ -/** Z80 emulation calls this function when it encounters a **/ -/** special patch command (ED FE) provided for user needs. **/ -/** For example, it can be called to emulate BIOS calls, **/ -/** such as disk and tape access. Replace it with an empty **/ -/** macro for no patching. **/ -/************************************ TO BE WRITTEN BY USER **/ -void PatchZ80(register Z80 *R); - -/** DebugZ80() ***********************************************/ -/** This function should exist if DEBUG is #defined. When **/ -/** Trace!=0, it is called after each command executed by **/ -/** the CPU, and given the Z80 registers. Emulation exits **/ -/** if DebugZ80() returns 0. **/ -/*************************************************************/ -#ifdef DEBUG -byte DebugZ80(register Z80 *R); -#endif - -/** LoopZ80() ************************************************/ -/** Z80 emulation calls this function periodically to check **/ -/** if the system hardware requires any interrupts. This **/ -/** function must return an address of the interrupt vector **/ -/** (0x0038, 0x0066, etc.) or INT_NONE for no interrupt. **/ -/** Return INT_QUIT to exit the emulation loop. **/ -/************************************ TO BE WRITTEN BY USER **/ -word LoopZ80(register Z80 *R); - -/** JumpZ80() ************************************************/ -/** Z80 emulation calls this function when it executes a **/ -/** JP, JR, CALL, RST, or RET. You can use JumpZ80() to **/ -/** trap these opcodes and switch memory layout. **/ -/************************************ TO BE WRITTEN BY USER **/ -#ifndef JUMPZ80 -#define JumpZ80(PC) -#else -void JumpZ80(word PC); -#endif - -#ifdef __cplusplus -} -#endif -#endif /* Z80_H */ +/** Z80: portable Z80 emulator *******************************/ +/** **/ +/** Z80.h **/ +/** **/ +/** This file contains declarations relevant to emulation **/ +/** of Z80 CPU. **/ +/** **/ +/** Copyright (C) Marat Fayzullin 1994-2007 **/ +/** You are not allowed to distribute this software **/ +/** commercially. Please, notify me, if you make any **/ +/** changes to this file. **/ +/*************************************************************/ +#ifndef Z80_H +#define Z80_H + + #include + + +#define EXECZ80 // run a few cycles + +#ifdef __cplusplus +extern "C" { +#endif + + /* Compilation options: */ +/* #define DEBUG */ /* Compile debugging version */ +#define LSB_FIRST /* Compile for low-endian CPU */ +// #define MSB_FIRST /* Compile for hi-endian CPU */ + + /* LoopZ80() may return: */ +#define INT_RST00 0x00C7 /* RST 00h */ +#define INT_RST08 0x00CF /* RST 08h */ +#define INT_RST10 0x00D7 /* RST 10h */ +#define INT_RST18 0x00DF /* RST 18h */ +#define INT_RST20 0x00E7 /* RST 20h */ +#define INT_RST28 0x00EF /* RST 28h */ +#define INT_RST30 0x00F7 /* RST 30h */ +#define INT_RST38 0x00FF /* RST 38h */ +#define INT_IRQ INT_RST38 /* Default IRQ opcode is FFh */ +#define INT_NMI 0xFFFD /* Non-maskable interrupt */ +#define INT_NONE 0xFFFF /* No interrupt required */ +#define INT_QUIT 0xFFFE /* Exit the emulation */ + + /* Bits in Z80 F register: */ +#define S_FLAG 0x80 /* 1: Result negative */ +#define Z_FLAG 0x40 /* 1: Result is zero */ +#define H_FLAG 0x10 /* 1: Halfcarry/Halfborrow */ +#define P_FLAG 0x04 /* 1: Result is even */ +#define V_FLAG 0x04 /* 1: Overflow occured */ +#define N_FLAG 0x02 /* 1: Subtraction occured */ +#define C_FLAG 0x01 /* 1: Carry/Borrow occured */ + + /* Bits in IFF flip-flops: */ +#define IFF_1 0x01 /* IFF1 flip-flop */ +#define IFF_IM1 0x02 /* 1: IM1 mode */ +#define IFF_IM2 0x04 /* 1: IM2 mode */ +#define IFF_2 0x08 /* IFF2 flip-flop */ +#define IFF_EI 0x20 /* 1: EI pending */ +#define IFF_HALT 0x80 /* 1: CPU HALTed */ + +/** Simple Datatypes *****************************************/ +/** NOTICE: sizeof(byte)=1 and sizeof(word)=2 **/ +/*************************************************************/ +#ifndef BYTE_TYPE_DEFINED +#define BYTE_TYPE_DEFINED +typedef uint8_t byte; +#endif +#ifndef WORD_TYPE_DEFINED +#define WORD_TYPE_DEFINED +typedef uint16_t word; +#endif +typedef int8_t offset; + +/** Structured Datatypes *************************************/ +/** NOTICE: #define LSB_FIRST for machines where least **/ +/** signifcant byte goes first. **/ +/*************************************************************/ +typedef union +{ +#ifdef LSB_FIRST + struct { byte l,h; } B; +#else + struct { byte h,l; } B; +#endif + word W; +} pair; + +typedef struct +{ + pair AF,BC,DE,HL,IX,IY,PC,SP; /* Main registers */ + pair AF1,BC1,DE1,HL1; /* Shadow registers */ + byte IFF,I; /* Interrupt registers */ + byte R; /* Refresh register */ + + int IPeriod,ICount; /* Set IPeriod to number of CPU cycles */ + /* between calls to LoopZ80() */ + int IBackup; /* Private, don't touch */ + word IRequest; /* Set to address of pending IRQ */ + byte IAutoReset; /* Set to 1 to autom. reset IRequest */ + byte TrapBadOps; /* Set to 1 to warn of illegal opcodes */ + word Trap; /* Set Trap to address to trace from */ + byte Trace; /* Set Trace=1 to start tracing */ + void *User; /* Arbitrary user data (ID,RAM*,etc.) */ +} Z80; + +/** ResetZ80() ***********************************************/ +/** This function can be used to reset the registers before **/ +/** starting execution with RunZ80(). It sets registers to **/ +/** their initial values. **/ +/*************************************************************/ +void ResetZ80(register Z80 *R, register int Cycles); + +/** ExecZ80() ************************************************/ +/** This function will execute given number of Z80 cycles. **/ +/** It will then return the number of cycles left, possibly **/ +/** negative, and current register values in R. **/ +/*************************************************************/ +#ifdef EXECZ80 +int ExecZ80(register Z80 *R,register int RunCycles); +#endif + +/** IntZ80() *************************************************/ +/** This function will generate interrupt of given vector. **/ +/*************************************************************/ +void IntZ80(register Z80 *R,register word Vector); + +/** RunZ80() *************************************************/ +/** This function will run Z80 code until an LoopZ80() call **/ +/** returns INT_QUIT. It will return the PC at which **/ +/** emulation stopped, and current register values in R. **/ +/*************************************************************/ +#ifndef EXECZ80 +word RunZ80(register Z80 *R); +#endif + +/** RdZ80()/WrZ80() ******************************************/ +/** These functions are called when access to RAM occurs. **/ +/** They allow to control memory access. **/ +/************************************ TO BE WRITTEN BY USER **/ +void WrZ80(register word Addr,register byte Value); +byte RdZ80(register word Addr); + +/** InZ80()/OutZ80() *****************************************/ +/** Z80 emulation calls these functions to read/write from **/ +/** I/O ports. There can be 65536 I/O ports, but only first **/ +/** 256 are usually used. **/ +/************************************ TO BE WRITTEN BY USER **/ +void OutZ80(register word Port,register byte Value); +byte InZ80(register word Port); + +/** PatchZ80() ***********************************************/ +/** Z80 emulation calls this function when it encounters a **/ +/** special patch command (ED FE) provided for user needs. **/ +/** For example, it can be called to emulate BIOS calls, **/ +/** such as disk and tape access. Replace it with an empty **/ +/** macro for no patching. **/ +/************************************ TO BE WRITTEN BY USER **/ +void PatchZ80(register Z80 *R); + +/** DebugZ80() ***********************************************/ +/** This function should exist if DEBUG is #defined. When **/ +/** Trace!=0, it is called after each command executed by **/ +/** the CPU, and given the Z80 registers. Emulation exits **/ +/** if DebugZ80() returns 0. **/ +/*************************************************************/ +#ifdef DEBUG +byte DebugZ80(register Z80 *R); +#endif + +/** LoopZ80() ************************************************/ +/** Z80 emulation calls this function periodically to check **/ +/** if the system hardware requires any interrupts. This **/ +/** function must return an address of the interrupt vector **/ +/** (0x0038, 0x0066, etc.) or INT_NONE for no interrupt. **/ +/** Return INT_QUIT to exit the emulation loop. **/ +/************************************ TO BE WRITTEN BY USER **/ +word LoopZ80(register Z80 *R); + +/** JumpZ80() ************************************************/ +/** Z80 emulation calls this function when it executes a **/ +/** JP, JR, CALL, RST, or RET. You can use JumpZ80() to **/ +/** trap these opcodes and switch memory layout. **/ +/************************************ TO BE WRITTEN BY USER **/ +#ifndef JUMPZ80 +#define JumpZ80(PC) +#else +void JumpZ80(word PC); +#endif + +#ifdef __cplusplus +} +#endif +#endif /* Z80_H */ diff --git a/MCUME_pico/picocpc/rom464.h b/MCUME_pico/picocpc/roms/rom464.h similarity index 98% rename from MCUME_pico/picocpc/rom464.h rename to MCUME_pico/picocpc/roms/rom464.h index 7f7d32c..c5b63a8 100644 --- a/MCUME_pico/picocpc/rom464.h +++ b/MCUME_pico/picocpc/roms/rom464.h @@ -1,2061 +1,2061 @@ -#ifndef ROM_464_H - #define ROM_464_H -//ROM 464 32768 bytes -//ROM 0 16384 -const unsigned char gb_rom_464_0[]={ -0x01,0x89,0x7F,0xED,0x49,0xC3,0x80,0x05,0xC3,0x82,0xB9,0xC3,0x7C,0xB9,0xC5,0xC9, -0xC3,0x16,0xBA,0xC3,0x10,0xBA,0xD5,0xC9,0xC3,0xBF,0xB9,0xC3,0xB1,0xB9,0xE9,0x00, -0xC3,0xCB,0xBA,0xC3,0xB9,0xB9,0x00,0x00,0xC3,0x2E,0xBA,0x00,0xED,0x49,0xD9,0xFB, -0xF3,0xD9,0x21,0x2B,0x00,0x71,0x18,0x08,0xC3,0x39,0xB9,0xC9,0x00,0x00,0x00,0x00, -0xCB,0xD1,0x18,0xE8,0x21,0x40,0x00,0x2D,0x7E,0x77,0x20,0xFB,0x3E,0xC7,0x32,0x30, -0x00,0x21,0x91,0x03,0x11,0x00,0xB9,0x01,0xE9,0x01,0xED,0xB0,0xF3,0x3A,0xAB,0xB1, -0xED,0x5B,0xA9,0xB1,0x06,0xC0,0x21,0x00,0xB1,0x36,0x00,0x23,0x10,0xFB,0x47,0x0E, -0xFF,0xA9,0xC0,0x4F,0x5F,0x57,0xC9,0x7C,0xB5,0x79,0x20,0x04,0x7D,0x21,0x06,0xC0, -0x32,0xA8,0xB1,0x32,0xAB,0xB1,0x22,0xA9,0xB1,0x21,0xFF,0xAB,0x11,0x40,0x00,0x01, -0xFF,0xB0,0x31,0x00,0xC0,0xDF,0xA9,0xB1,0xC7,0xF3,0xED,0x5B,0x89,0xB1,0x2A,0x87, -0xB1,0xFB,0xC9,0xF3,0xAF,0x32,0x8B,0xB1,0xED,0x53,0x89,0xB1,0x22,0x87,0xB1,0xFB, -0xC9,0x21,0x87,0xB1,0x34,0x23,0x28,0xFC,0x06,0xF5,0xED,0x78,0x1F,0x30,0x08,0x2A, -0x8C,0xB1,0x7C,0xB7,0xC4,0x53,0x01,0x2A,0x8E,0xB1,0x7C,0xB7,0xC4,0x53,0x01,0xCD, -0x61,0x1F,0x21,0x92,0xB1,0x35,0xC0,0x36,0x06,0xCD,0xB7,0x1B,0x2A,0x90,0xB1,0x7C, -0xB7,0xC8,0x21,0x04,0xB1,0xCB,0xC6,0xC9,0x2B,0x36,0x00,0x2B,0x3A,0x01,0xB1,0xB7, -0x20,0x0C,0x22,0x00,0xB1,0x22,0x02,0xB1,0x21,0x04,0xB1,0xCB,0xF6,0xC9,0xED,0x5B, -0x02,0xB1,0x22,0x02,0xB1,0xEB,0x73,0x23,0x72,0xC9,0xED,0x73,0x05,0xB1,0x31,0x87, -0xB1,0xE5,0xD5,0xC5,0x21,0x04,0xB1,0xCB,0x76,0x28,0x1E,0xCB,0xFE,0x2A,0x00,0xB1, -0x7C,0xB7,0x28,0x0E,0x5E,0x23,0x56,0xED,0x53,0x00,0xB1,0x23,0xCD,0x0A,0x02,0xF3, -0x18,0xEB,0x21,0x04,0xB1,0xCB,0x46,0x28,0x10,0x36,0x00,0x37,0x08,0xCD,0x89,0x01, -0xB7,0x08,0x21,0x04,0xB1,0x7E,0xB7,0x20,0xD2,0x36,0x00,0xC1,0xD1,0xE1,0xED,0x7B, -0x05,0xB1,0xC9,0x5E,0x23,0x7E,0x23,0xB7,0xCA,0xE2,0x01,0x57,0xD5,0xCD,0xE2,0x01, -0xE1,0x18,0xF0,0xE5,0x23,0x23,0xCD,0xD2,0x01,0xE1,0x11,0x8C,0xB1,0xC3,0x73,0x03, -0x11,0x8C,0xB1,0xC3,0x82,0x03,0xE5,0x23,0x23,0xCD,0xD2,0x01,0xE1,0x11,0x8E,0xB1, -0xC3,0x73,0x03,0x11,0x8E,0xB1,0xC3,0x82,0x03,0x2A,0x90,0xB1,0x7C,0xB7,0xC8,0x5E, -0x23,0x56,0x23,0x4E,0x23,0x46,0x78,0xB1,0x28,0x16,0x0B,0x78,0xB1,0x20,0x0E,0xD5, -0x23,0x23,0xE5,0x23,0xCD,0xE2,0x01,0xE1,0x46,0x2B,0x4E,0x2B,0xD1,0x70,0x2B,0x71, -0xEB,0x18,0xD9,0xE5,0x23,0x23,0xF3,0x73,0x23,0x72,0x23,0x71,0x23,0x70,0xE1,0x11, -0x90,0xB1,0xC3,0x73,0x03,0x11,0x90,0xB1,0xCD,0x82,0x03,0xD0,0xEB,0x23,0x5E,0x23, -0x56,0xC9,0xF3,0x23,0x23,0x36,0x00,0x23,0x70,0x23,0x73,0x23,0x72,0x23,0x71,0x23, -0xFB,0xC9,0x23,0x23,0xF3,0x7E,0x34,0xFA,0x06,0x02,0xB7,0x20,0x13,0x23,0x7E,0x2B, -0xB7,0xF2,0x2F,0x02,0x08,0x30,0x12,0x08,0x87,0xF2,0xE8,0x00,0x23,0x23,0x18,0x23, -0x08,0x38,0x01,0xFB,0x08,0xC9,0x35,0x18,0xF7,0x08,0xFB,0x7E,0xB7,0xF8,0xE5,0xCD, -0x1C,0x02,0xE1,0x35,0xC8,0xF2,0x0E,0x02,0x34,0xC9,0x23,0x23,0x23,0x7E,0x23,0x1F, -0xD2,0xB9,0xB9,0x5E,0x23,0x56,0xEB,0xE9,0x21,0x00,0x00,0x22,0x94,0xB1,0xC9,0xE5, -0x47,0x11,0x96,0xB1,0xEB,0x2B,0x2B,0x56,0x2B,0x5E,0x7A,0xB7,0x28,0x07,0x13,0x13, -0x13,0x1A,0xB8,0x30,0xEF,0xD1,0x1B,0x23,0x7E,0x12,0x1B,0x72,0x2B,0x7E,0x12,0x73, -0x08,0x38,0x01,0xFB,0x08,0xC9,0xF3,0x2A,0x93,0xB1,0x7C,0xB7,0x28,0x17,0xE5,0x5E, -0x23,0x56,0x23,0x23,0x3A,0x95,0xB1,0xBE,0x30,0x0A,0xF5,0x7E,0x32,0x95,0xB1,0xED, -0x53,0x93,0xB1,0xF1,0xE1,0xFB,0xC9,0x32,0x95,0xB1,0x23,0x23,0x35,0xC8,0xF3,0xF2, -0x2F,0x02,0x34,0xFB,0xC9,0xCD,0x8E,0x02,0x11,0x93,0xB1,0xC3,0x82,0x03,0x23,0x23, -0x36,0xC0,0x2B,0x2B,0xC9,0x21,0x95,0xB1,0xCB,0xEE,0xC9,0x21,0x95,0xB1,0xCB,0xAE, -0xC9,0xE5,0xED,0x5B,0xA6,0xB1,0x22,0xA6,0xB1,0x73,0x23,0x72,0x23,0x71,0x23,0x70, -0xE1,0xC9,0x11,0x96,0xB1,0x01,0x10,0x00,0xCD,0xA6,0xBA,0xEB,0x2B,0xCB,0xFE,0x2A, -0xA6,0xB1,0x7D,0x18,0x10,0xE5,0x23,0x23,0x4E,0x23,0x46,0xCD,0xF4,0x02,0xD1,0xD8, -0xEB,0x7E,0x23,0x66,0x6F,0xB4,0x20,0xED,0x0E,0xFF,0x0C,0xCD,0x83,0xBA,0xF5,0xE6, -0x03,0x47,0xCC,0xF4,0x02,0x38,0x09,0xF1,0x87,0x30,0xEF,0x79,0xB7,0x28,0xEB,0xC9, -0xF1,0xC3,0x0B,0x06,0x21,0x04,0xC0,0x78,0xB7,0x28,0x04,0x60,0x69,0x0E,0xFF,0xCD, -0x7E,0xBA,0xC5,0x5E,0x23,0x56,0x23,0xEB,0x18,0x17,0x01,0x96,0xB1,0x0A,0xBE,0x20, -0x08,0x23,0x03,0x87,0x30,0xF7,0xEB,0x18,0x0C,0x7E,0x23,0x87,0x30,0xFB,0x13,0x13, -0x13,0x7E,0xB7,0x20,0xE5,0xC1,0xC3,0x8C,0xBA,0x0E,0x07,0xCD,0x32,0x03,0x0D,0x20, -0xFA,0xC9,0x79,0xFE,0x08,0xD0,0xCD,0x7E,0xBA,0x3A,0x00,0xC0,0xE6,0x03,0x3D,0x20, -0x1F,0xC5,0xCD,0x06,0xC0,0xD5,0x23,0xEB,0x21,0xAA,0xB1,0xED,0x4B,0xA8,0xB1,0x06, -0x00,0x09,0x09,0x73,0x23,0x72,0x21,0xFC,0xFF,0x19,0xCD,0xA1,0x02,0x2B,0xD1,0xC1, -0xC3,0x8C,0xBA,0x7E,0xBB,0x23,0x7E,0x2B,0x20,0x03,0xBA,0x37,0xC8,0xB7,0xC8,0x6E, -0x67,0x18,0xF0,0xEB,0xF3,0xCD,0x63,0x03,0x38,0x06,0x73,0x23,0x72,0x13,0xAF,0x12, -0xFB,0xC9,0xEB,0xF3,0xCD,0x63,0x03,0x30,0x06,0x1A,0x77,0x13,0x23,0x1A,0x77,0xFB, -0xC9,0xC3,0x5E,0xBA,0xC3,0x68,0xBA,0xC3,0x4A,0xBA,0xC3,0x54,0xBA,0xC3,0x72,0xBA, -0xC3,0x7E,0xBA,0xC3,0xA2,0xBA,0xC3,0x83,0xBA,0xC3,0x8C,0xBA,0xC3,0xA6,0xBA,0xC3, -0xAC,0xBA,0x3A,0x94,0xB1,0xB7,0xC8,0xE5,0xF3,0x2A,0x93,0xB1,0x7C,0xB7,0x28,0x07, -0x23,0x23,0x23,0x3A,0x95,0xB1,0xBE,0xE1,0xFB,0xC9,0xF3,0x08,0x38,0x33,0xD9,0x79, -0x37,0xFB,0x08,0xF3,0xF5,0xCB,0x91,0xED,0x49,0xCD,0xB1,0x00,0xB7,0x08,0x4F,0x06, -0x7F,0x3A,0x04,0xB1,0xB7,0x28,0x14,0xFA,0x6A,0xB9,0x79,0xE6,0x0C,0xF5,0xCB,0x91, -0xD9,0xCD,0x0A,0x01,0xD9,0xE1,0x79,0xE6,0xF3,0xB4,0x4F,0xED,0x49,0xD9,0xF1,0xFB, -0xC9,0x08,0xE1,0xF5,0xCB,0xD1,0xED,0x49,0xCD,0x3B,0x00,0x18,0xCF,0xF3,0xE5,0xD9, -0xD1,0x18,0x06,0xF3,0xD9,0xE1,0x5E,0x23,0x56,0x08,0x7A,0xCB,0xBA,0xCB,0xB2,0x07, -0x07,0x07,0x07,0xA9,0xE6,0x0C,0xA9,0xC5,0xCD,0xA8,0xB9,0xF3,0xD9,0x08,0x79,0xC1, -0xE6,0x03,0xCB,0x89,0xCB,0x81,0xB1,0x18,0x01,0xD5,0x4F,0xED,0x49,0xB7,0x08,0xD9, -0xFB,0xC9,0xF3,0x08,0x79,0xE5,0xD9,0xD1,0x18,0x15,0xF3,0xE5,0xD9,0xE1,0x18,0x09, -0xF3,0xD9,0xE1,0x5E,0x23,0x56,0x23,0xE5,0xEB,0x5E,0x23,0x56,0x23,0x08,0x7E,0xFE, -0xFC,0x30,0xBE,0x06,0xDF,0xED,0x79,0x21,0xA8,0xB1,0x46,0x77,0xC5,0xFD,0xE5,0x3D, -0xFE,0x07,0x30,0x0F,0x87,0xC6,0xAC,0x6F,0xCE,0xB1,0x95,0x67,0x7E,0x23,0x66,0x6F, -0xE5,0xFD,0xE1,0x06,0x7F,0x79,0xCB,0xD7,0xCB,0x9F,0xCD,0xA8,0xB9,0xFD,0xE1,0xF3, -0xD9,0x08,0x59,0xC1,0x78,0x06,0xDF,0xED,0x79,0x32,0xA8,0xB1,0x06,0x7F,0x7B,0x18, -0x8F,0xF3,0xE5,0xD9,0xD1,0x18,0x08,0xF3,0xD9,0xE1,0x5E,0x23,0x56,0x23,0xE5,0x08, -0x7A,0xCB,0xFA,0xCB,0xF2,0xE6,0xC0,0x07,0x07,0x21,0xAB,0xB1,0x86,0x18,0xA4,0xF3, -0xD9,0xE1,0x5E,0x23,0x56,0xCB,0x91,0xED,0x49,0xED,0x53,0x3F,0xBA,0xD9,0xFB,0xCD, -0x3E,0xBA,0xF3,0xD9,0xCB,0xD1,0xED,0x49,0xD9,0xFB,0xC9,0xF3,0xD9,0x79,0xCB,0x91, -0xED,0x49,0xD9,0xFB,0xC9,0xF3,0xD9,0x79,0xCB,0xD1,0xED,0x49,0xD9,0xFB,0xC9,0xF3, -0xD9,0x79,0xCB,0x99,0xED,0x49,0xD9,0xFB,0xC9,0xF3,0xD9,0x79,0xCB,0xD9,0xED,0x49, -0xD9,0xFB,0xC9,0xF3,0xD9,0xA9,0xE6,0x0C,0xA9,0x4F,0xED,0x49,0xD9,0xFB,0xC9,0xCD, -0x5E,0xBA,0x18,0x0F,0xCD,0x7E,0xBA,0x3A,0x00,0xC0,0x2A,0x01,0xC0,0xF5,0x78,0xCD, -0x72,0xBA,0xF1,0xE5,0xF3,0x06,0xDF,0xED,0x49,0x21,0xA8,0xB1,0x46,0x71,0x48,0x47, -0xFB,0xE1,0xC9,0x3A,0xA8,0xB1,0xC9,0xCD,0xB2,0xBA,0xED,0xB0,0xC9,0xCD,0xB2,0xBA, -0xED,0xB8,0xC9,0xF3,0xD9,0xE1,0xC5,0xCB,0xD1,0xCB,0xD9,0xED,0x49,0xCD,0xC7,0xBA, -0xF3,0xD9,0xC1,0xED,0x49,0xD9,0xFB,0xC9,0xE5,0xD9,0xFB,0xC9,0xF3,0xD9,0x59,0xCB, -0xD3,0xCB,0xDB,0xED,0x59,0xD9,0x7E,0xD9,0xED,0x49,0xD9,0xFB,0xC9,0xD9,0x79,0xF6, -0x0C,0xED,0x79,0xDD,0x7E,0x00,0xED,0x49,0xD9,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, -0xF3,0x01,0x82,0xF7,0xED,0x49,0x01,0x00,0xF4,0xED,0x49,0x01,0x00,0xF6,0xED,0x49, -0x01,0x7F,0xEF,0xED,0x49,0x06,0xF5,0xED,0x78,0xE6,0x10,0x21,0xC4,0x05,0x20,0x03, -0x21,0xD4,0x05,0x01,0x0F,0xBC,0xED,0x49,0x2B,0x7E,0x04,0xED,0x79,0x05,0x0D,0xF2, -0xA6,0x05,0x18,0x20,0x3F,0x28,0x2E,0x8E,0x26,0x00,0x19,0x1E,0x00,0x07,0x00,0x00, -0x30,0x00,0xC0,0x00,0x3F,0x28,0x2E,0x8E,0x1F,0x06,0x19,0x1B,0x00,0x07,0x00,0x00, -0x30,0x00,0xC0,0x00,0x11,0x5C,0x06,0x21,0x00,0x00,0x18,0x32,0x31,0x00,0xC0,0xE5, -0xCD,0x68,0x1E,0xF3,0x01,0xFF,0xF8,0xED,0x49,0xCD,0x5C,0x00,0xE1,0xD5,0xC5,0xE5, -0xCD,0x1E,0x1A,0xCD,0x88,0x10,0xCD,0xB1,0x0A,0xCD,0x5E,0xBA,0xE1,0xCD,0x75,0x07, -0xC1,0xD1,0x38,0x07,0xEB,0x48,0x11,0xE8,0x06,0x18,0x03,0x11,0x26,0x07,0xF3,0xED, -0x56,0xD9,0x01,0x00,0xDF,0xED,0x49,0x01,0xFF,0xF8,0xED,0x49,0x21,0x00,0xB1,0x11, -0x01,0xB1,0x01,0xFF,0x07,0x36,0x00,0xED,0xB0,0x01,0x89,0x7F,0xED,0x49,0xD9,0xAF, -0x08,0x31,0x00,0xC0,0xE5,0xC5,0xD5,0xCD,0x44,0x00,0xCD,0x88,0x08,0xCD,0xE0,0x19, -0xCD,0x68,0x1E,0xCD,0xA0,0x0A,0xCD,0x78,0x10,0xCD,0xB0,0x15,0xCD,0x70,0x23,0xCD, -0xE6,0x07,0xFB,0xE1,0xCD,0x75,0x07,0xC1,0xE1,0xC3,0x77,0x00,0xCD,0x12,0x07,0xCD, -0xEB,0x06,0x21,0x6D,0x06,0xCD,0xEB,0x06,0x21,0x93,0x06,0x18,0x7E,0x20,0x36,0x34, -0x4B,0x20,0x4D,0x69,0x63,0x72,0x6F,0x63,0x6F,0x6D,0x70,0x75,0x74,0x65,0x72,0x20, -0x20,0x28,0x76,0x31,0x29,0x0D,0x0A,0x0D,0x0A,0x00,0x43,0x6F,0x70,0x79,0x72,0x69, -0x67,0x68,0x74,0x20,0xA4,0x31,0x39,0x38,0x34,0x20,0x41,0x6D,0x73,0x74,0x72,0x61, -0x64,0x20,0x43,0x6F,0x6E,0x73,0x75,0x6D,0x65,0x72,0x20,0x45,0x6C,0x65,0x63,0x74, -0x72,0x6F,0x6E,0x69,0x63,0x73,0x20,0x70,0x6C,0x63,0x0D,0x0A,0x20,0x20,0x20,0x20, -0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x6E,0x64,0x20,0x4C,0x6F,0x63,0x6F,0x6D, -0x6F,0x74,0x69,0x76,0x65,0x20,0x53,0x6F,0x66,0x74,0x77,0x61,0x72,0x65,0x20,0x4C, -0x74,0x64,0x2E,0x0D,0x0A,0x0D,0x0A,0x00,0x21,0xF4,0x06,0x7E,0x23,0xB7,0xC8,0xCD, -0x00,0x14,0x18,0xF7,0x2A,0x2A,0x2A,0x20,0x50,0x52,0x4F,0x47,0x52,0x41,0x4D,0x20, -0x4C,0x4F,0x41,0x44,0x20,0x46,0x41,0x49,0x4C,0x45,0x44,0x20,0x2A,0x2A,0x2A,0x0D, -0x0A,0x00,0x06,0xF5,0xED,0x78,0x2F,0xE6,0x0E,0x0F,0x21,0x27,0x07,0x3C,0x47,0x7E, -0x23,0xB7,0x20,0xFB,0x10,0xF9,0xC9,0x41,0x72,0x6E,0x6F,0x6C,0x64,0x00,0x0A,0x20, -0x41,0x6D,0x73,0x74,0x72,0x61,0x64,0x00,0x0A,0x20,0x4F,0x72,0x69,0x6F,0x6E,0x00, -0x0A,0x20,0x53,0x63,0x68,0x6E,0x65,0x69,0x64,0x65,0x72,0x00,0x0A,0x20,0x41,0x77, -0x61,0x00,0x0A,0x20,0x53,0x6F,0x6C,0x61,0x76,0x6F,0x78,0x00,0x0A,0x20,0x53,0x61, -0x69,0x73,0x68,0x6F,0x00,0x0A,0x20,0x54,0x72,0x69,0x75,0x6D,0x70,0x68,0x00,0x0A, -0x20,0x49,0x73,0x70,0x00,0xE9,0xFE,0x03,0xD0,0xF3,0xD9,0xCB,0x89,0xCB,0x81,0xB1, -0x4F,0xED,0x49,0xFB,0xD9,0xC9,0xC5,0xD5,0x01,0x10,0x7F,0xCD,0xAB,0x07,0x0E,0x00, -0xCD,0xAB,0x07,0x1B,0x20,0xFA,0xD1,0xC1,0xC9,0xC5,0xD5,0x01,0x10,0x7F,0xCD,0xAB, -0x07,0x0E,0x00,0xCD,0xAB,0x07,0x20,0xFB,0xD1,0xC1,0xC9,0xED,0x49,0x1A,0x13,0xE6, -0x1F,0xF6,0x40,0xED,0x79,0x0C,0x79,0xFE,0x10,0xC9,0xF5,0xC5,0x06,0xF5,0xED,0x78, -0x1F,0x30,0xFB,0xC1,0xF1,0xC9,0xC5,0x0F,0x0F,0xE6,0x30,0x4F,0x7C,0x1F,0xE6,0x03, -0xB1,0x01,0x0C,0xBC,0xED,0x49,0x04,0xED,0x79,0x05,0x0C,0xED,0x49,0x04,0x7C,0x1F, -0x7D,0x1F,0xED,0x79,0xC1,0xC9,0x21,0xEC,0x07,0xC3,0x8A,0x0A,0x03,0xF1,0xBD,0xC3, -0xF8,0x07,0xC5,0xCD,0xF1,0xBD,0xC1,0xC9,0x01,0x32,0x00,0xCD,0x1B,0x08,0x30,0x07, -0x10,0xF9,0x0D,0x20,0xF6,0xB7,0xC9,0xC5,0x06,0xEF,0xE6,0x7F,0xED,0x79,0xF6,0x80, -0xF3,0xED,0x79,0xE6,0x7F,0xFB,0xED,0x79,0xC1,0x37,0xC9,0xC5,0x4F,0x06,0xF5,0xED, -0x78,0x17,0x17,0x79,0xC1,0xC9,0xF3,0x06,0xF4,0xED,0x79,0x06,0xF6,0xED,0x78,0xF6, -0xC0,0xED,0x79,0xE6,0x3F,0xED,0x79,0x06,0xF4,0xED,0x49,0x06,0xF6,0x4F,0xF6,0x80, -0xED,0x79,0xED,0x49,0xFB,0xC9,0x01,0x0E,0xF4,0xED,0x49,0x06,0xF6,0xED,0x78,0xE6, -0x30,0x4F,0xF6,0xC0,0xED,0x79,0xED,0x49,0x04,0x3E,0x92,0xED,0x79,0xC5,0xCB,0xF1, -0x06,0xF6,0xED,0x49,0x06,0xF4,0xED,0x78,0x46,0x77,0xA0,0x2F,0x12,0x23,0x13,0x0C, -0x79,0xE6,0x0F,0xFE,0x0A,0x20,0xE9,0xC1,0x3E,0x82,0xED,0x79,0x05,0xED,0x49,0xC9, -0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0x11,0xAC,0x08,0x21,0x00,0xBB,0x01,0xCF, -0xBF,0xCD,0x97,0x08,0x01,0xEF,0x30,0x71,0x23,0x1A,0x77,0x13,0x23,0xEB,0x79,0x2F, -0x07,0x07,0xE6,0x80,0xB6,0xEB,0x77,0x13,0x23,0x10,0xEC,0xC9,0xE0,0x19,0x1E,0x1A, -0x3C,0x1A,0x42,0x1A,0x77,0x1A,0xBD,0x1A,0x2E,0x1B,0x7B,0x1A,0x56,0x1B,0x5C,0x1B, -0xBD,0x1C,0xB3,0x1B,0x5C,0x1C,0x52,0x1D,0x3E,0x1D,0x57,0x1D,0x43,0x1D,0x5C,0x1D, -0x48,0x1D,0xAB,0x1C,0xA6,0x1C,0x6D,0x1C,0x69,0x1C,0x71,0x1C,0x82,0x1C,0x90,0x1C, -0x78,0x10,0x88,0x10,0x51,0x14,0x4B,0x14,0x00,0x14,0x34,0x13,0xAB,0x13,0xA7,0x13, -0x0C,0x12,0x56,0x12,0x40,0x15,0x5E,0x11,0x69,0x11,0x74,0x11,0x80,0x11,0x89,0x12, -0x9A,0x12,0x79,0x12,0x81,0x12,0xCE,0x11,0x68,0x12,0x68,0x12,0xA9,0x12,0xBD,0x12, -0xAE,0x12,0xC3,0x12,0xC9,0x12,0x7A,0x13,0x87,0x13,0xD3,0x12,0xF1,0x12,0xFD,0x12, -0x2A,0x13,0xCB,0x14,0xE8,0x10,0x07,0x11,0xB0,0x15,0xDF,0x15,0xF4,0x15,0xF1,0x15, -0xFC,0x15,0x04,0x16,0x12,0x16,0x34,0x17,0x79,0x17,0xA6,0x17,0xBC,0x17,0xC5,0x17, -0xF6,0x17,0x04,0x18,0xFD,0x17,0x0A,0x18,0x13,0x18,0x10,0x18,0x27,0x18,0x24,0x18, -0x39,0x18,0x36,0x18,0x45,0x19,0xA0,0x0A,0xB1,0x0A,0x3C,0x0B,0x45,0x0B,0x50,0x0B, -0xCA,0x0A,0xEC,0x0A,0xF7,0x0A,0x57,0x0B,0x64,0x0B,0xA9,0x0B,0xF9,0x0B,0x05,0x0C, -0x13,0x0C,0x2D,0x0C,0x86,0x0C,0xA0,0x0C,0xEC,0x0C,0x14,0x0D,0xF1,0x0C,0x19,0x0D, -0xE4,0x0C,0xE8,0x0C,0xB3,0x0D,0xB7,0x0D,0xDF,0x0D,0xFA,0x0D,0x3E,0x0E,0xF3,0x0E, -0x49,0x0F,0x49,0x0C,0x6B,0x0C,0xC4,0x0F,0x2F,0x10,0x70,0x23,0x7F,0x23,0x8E,0x23, -0x4B,0x2A,0x4F,0x2A,0x51,0x2A,0x92,0x23,0xFC,0x23,0x01,0x24,0x35,0x24,0xAB,0x24, -0x9A,0x24,0x96,0x24,0xAB,0x23,0x15,0x24,0x2E,0x24,0x5B,0x24,0xEA,0x24,0x28,0x25, -0x3F,0x28,0x36,0x28,0x51,0x28,0x68,0x1E,0x9F,0x1F,0x6C,0x20,0x89,0x20,0x4A,0x20, -0xCB,0x1E,0xE6,0x1E,0x38,0x23,0x3D,0x23,0x49,0x23,0x4E,0x23,0x5C,0x00,0x29,0x03, -0x32,0x03,0xA1,0x02,0xB2,0x02,0x63,0x01,0x6A,0x01,0x70,0x01,0x76,0x01,0x7D,0x01, -0x83,0x01,0xB3,0x01,0xC5,0x01,0xD2,0x01,0xE2,0x01,0x28,0x02,0x85,0x02,0x56,0x02, -0x1A,0x02,0x77,0x02,0x95,0x02,0x9B,0x02,0x8E,0x02,0x99,0x00,0xA3,0x00,0xDC,0x05, -0x0B,0x06,0xBA,0x07,0x76,0x07,0xC6,0x07,0x86,0x07,0x99,0x07,0xE6,0x07,0xF2,0x07, -0x1B,0x08,0x07,0x08,0x26,0x08,0x88,0x08,0x98,0x2A,0x18,0x2E,0x29,0x2E,0x55,0x2E, -0x66,0x2E,0x8E,0x2E,0xA1,0x2E,0xAC,0x2E,0xB6,0x2E,0x1D,0x2F,0x3F,0x33,0x37,0x33, -0x3B,0x33,0x15,0x34,0x9E,0x34,0x78,0x35,0x9A,0x35,0xF8,0x35,0xE8,0x35,0xAE,0x31, -0xA3,0x31,0x0A,0x31,0x0D,0x31,0x14,0x30,0x0F,0x30,0x90,0x30,0xBC,0x31,0xB2,0x31, -0x31,0x32,0x41,0x32,0x5E,0x2E,0x94,0x2F,0xA1,0x2F,0xB7,0x2F,0xE6,0x2F,0x08,0x37, -0x0E,0x37,0x15,0x37,0x28,0x37,0x31,0x37,0x30,0x37,0x39,0x37,0x7A,0x37,0x81,0x37, -0x50,0x37,0x8C,0x37,0xE9,0x37,0xD4,0x37,0xE0,0x37,0x4E,0x06,0x00,0x23,0x5E,0x23, -0x56,0x23,0xED,0xB0,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, -0x11,0x4D,0x10,0xCD,0x86,0x07,0x3E,0xC0,0x32,0xCB,0xB1,0xCD,0xB1,0x0A,0xC3,0xF2, -0x0A,0xAF,0xCD,0x49,0x0C,0x21,0xBE,0x0A,0xCD,0x8A,0x0A,0xC3,0xD2,0x0C,0x09,0xE5, -0xBD,0xC3,0x82,0x0C,0xC3,0x68,0x0C,0xC3,0xF7,0x0A,0xE6,0x03,0xFE,0x03,0xD0,0xF5, -0xCD,0x4F,0x0D,0xF1,0x5F,0xCD,0xB7,0x10,0xF5,0xCD,0xD6,0x15,0xE5,0x7B,0xCD,0x11, -0x0B,0xCD,0xEB,0xBD,0xE1,0xCD,0xB6,0x15,0xF1,0xC3,0xD5,0x10,0x3A,0xC8,0xB1,0xFE, -0x01,0xC9,0x3E,0x01,0xCD,0x11,0x0B,0xCD,0x4F,0x0D,0x21,0x00,0x00,0xCD,0x3C,0x0B, -0x2A,0xCA,0xB1,0x2E,0x00,0x54,0x1E,0x01,0x01,0xFF,0x3F,0x75,0xED,0xB0,0xC3,0x3C, -0x0D,0x21,0x3A,0x0B,0xFE,0x01,0x38,0x08,0x21,0x36,0x0B,0x28,0x03,0x21,0x2E,0x0B, -0x11,0xCF,0xB1,0x01,0x08,0x00,0xED,0xB0,0x32,0xC8,0xB1,0xC3,0x76,0x07,0x80,0x40, -0x20,0x10,0x08,0x04,0x02,0x01,0x88,0x44,0x22,0x11,0xAA,0x55,0x7C,0xE6,0x07,0x67, -0x22,0xC9,0xB1,0x18,0x05,0xE6,0xC0,0x32,0xCB,0xB1,0xCD,0x50,0x0B,0xC3,0xC6,0x07, -0x2A,0xC9,0xB1,0x3A,0xCB,0xB1,0xC9,0xCD,0xEC,0x0A,0x01,0x18,0x13,0xD8,0x06,0x27, -0xC8,0x06,0x4F,0xC9,0xD5,0xCD,0xEC,0x0A,0x06,0x04,0x38,0x05,0x06,0x02,0x28,0x01, -0x05,0xC5,0x5C,0x16,0x00,0x62,0xD5,0x54,0x5D,0x29,0x29,0x19,0x29,0x29,0x29,0x29, -0xD1,0x19,0x10,0xFD,0xED,0x5B,0xC9,0xB1,0x19,0x7C,0xE6,0x07,0x67,0x3A,0xCB,0xB1, -0x84,0x67,0xC1,0xD1,0xC9,0x7B,0x95,0x3C,0x87,0x87,0x87,0x5F,0x7A,0x94,0x3C,0x57, -0xCD,0x64,0x0B,0xAF,0x82,0x10,0xFD,0x57,0xC9,0xD5,0xEB,0x21,0xC7,0x00,0xB7,0xED, -0x52,0x7D,0xE6,0x07,0x87,0x87,0x87,0x4F,0x7D,0xE6,0xF8,0x6F,0x54,0x5D,0x29,0x29, -0x19,0x29,0xD1,0xCD,0xEC,0x0A,0x06,0x01,0x38,0x06,0x06,0x03,0x28,0x02,0x06,0x07, -0x78,0xA3,0xF5,0x78,0x0F,0xCB,0x3A,0xCB,0x1B,0x0F,0x38,0xF9,0x19,0xED,0x5B,0xC9, -0xB1,0x19,0x7C,0xE6,0x07,0x67,0x3A,0xCB,0xB1,0x84,0x81,0x67,0xF1,0xE5,0x16,0x00, -0x5F,0x21,0xCF,0xB1,0x19,0x4E,0xEB,0xE1,0xC9,0x2C,0xC0,0x24,0x7C,0xE6,0x07,0xC0, -0x7C,0xD6,0x08,0x67,0xC9,0x7D,0x2D,0xB7,0xC0,0x7C,0x25,0xE6,0x07,0xC0,0x7C,0xC6, -0x08,0x67,0xC9,0x7C,0xC6,0x08,0x67,0xE6,0x38,0xC0,0x7C,0xD6,0x40,0x67,0x7D,0xC6, -0x50,0x6F,0xD0,0x24,0x7C,0xE6,0x07,0xC0,0x7C,0xD6,0x08,0x67,0xC9,0x7C,0xD6,0x08, -0x67,0xE6,0x38,0xFE,0x38,0xC0,0x7C,0xC6,0x40,0x67,0x7D,0xD6,0x50,0x6F,0xD0,0x7C, -0x25,0xE6,0x07,0xC0,0x7C,0xC6,0x08,0x67,0xC9,0xE6,0x03,0x21,0x6B,0x0C,0x28,0x0F, -0xFE,0x02,0x21,0x72,0x0C,0x38,0x08,0x21,0x77,0x0C,0x28,0x03,0x21,0x7D,0x0C,0x3E, -0xC3,0x32,0xCC,0xB1,0x22,0xCD,0xB1,0xC9,0xC3,0xCC,0xB1,0x7E,0xA8,0xB1,0xA9,0xA8, -0x77,0xC9,0x78,0xA1,0xAE,0x77,0xC9,0x79,0x2F,0xB0,0xA6,0x77,0xC9,0x78,0xA1,0xB6, -0x77,0xC9,0x7E,0xC3,0xAC,0x0C,0xC5,0xD5,0xCD,0xC2,0x0C,0x5F,0x06,0x08,0x3A,0xCF, -0xB1,0x4F,0xCB,0x0B,0x17,0xCB,0x09,0x38,0x02,0xCB,0x03,0x10,0xF5,0xD1,0xC1,0xC9, -0xC5,0x47,0x3A,0xCF,0xB1,0x4F,0x78,0xCD,0xAC,0x0C,0xC1,0xC9,0xD5,0x11,0x08,0x00, -0x0F,0xCB,0x12,0xCB,0x09,0x38,0x02,0xCB,0x1A,0x1D,0x20,0xF4,0x7A,0xCD,0xC2,0x0C, -0xD1,0xC9,0x57,0xCD,0xEC,0x0A,0x7A,0xD0,0x0F,0x0F,0xCE,0x00,0x0F,0x9F,0xE6,0x06, -0xAA,0xC9,0x21,0x4D,0x10,0x11,0xD9,0xB1,0x01,0x22,0x00,0xED,0xB0,0xAF,0x32,0xFB, -0xB1,0x21,0x0A,0x0A,0x22,0xD7,0xB1,0xC9,0x2A,0xD7,0xB1,0xC9,0xE6,0x0F,0x3C,0x18, -0x01,0xAF,0x5F,0x78,0xCD,0x0A,0x0D,0x46,0x79,0xCD,0x0A,0x0D,0x4E,0x7B,0xCD,0x2F, -0x0D,0x71,0xEB,0x70,0x3E,0xFF,0x32,0xFC,0xB1,0xC9,0xE6,0x1F,0xC6,0x93,0x6F,0xCE, -0x0D,0x95,0x67,0xC9,0xE6,0x0F,0x3C,0x18,0x01,0xAF,0xCD,0x2F,0x0D,0x1A,0x5E,0xCD, -0x24,0x0D,0x41,0x7B,0x0E,0x00,0x21,0x93,0x0D,0xBE,0xC8,0x23,0x0C,0x18,0xFA,0x5F, -0x16,0x00,0x21,0xEA,0xB1,0x19,0xEB,0x21,0xEF,0xFF,0x19,0xC9,0x21,0xFE,0xB1,0xE5, -0xCD,0x70,0x01,0xCD,0x6D,0x0D,0x11,0x5B,0x0D,0x06,0x81,0xE1,0xC3,0x63,0x01,0x21, -0xFE,0xB1,0xCD,0x70,0x01,0xCD,0x81,0x0D,0xC3,0x86,0x07,0x21,0xFD,0xB1,0x35,0x28, -0x0C,0x2B,0x7E,0xB7,0xC8,0xCD,0x81,0x0D,0xCD,0x99,0x07,0x18,0x0F,0xCD,0x81,0x0D, -0x32,0xFD,0xB1,0xCD,0x99,0x07,0x21,0xFB,0xB1,0x7E,0x2F,0x77,0xAF,0x32,0xFC,0xB1, -0xC9,0x11,0xEA,0xB1,0x3A,0xFB,0xB1,0xB7,0x3A,0xD8,0xB1,0xC8,0x11,0xD9,0xB1,0x3A, -0xD7,0xB1,0xC9,0x14,0x04,0x15,0x1C,0x18,0x1D,0x0C,0x05,0x0D,0x16,0x06,0x17,0x1E, -0x00,0x1F,0x0E,0x07,0x0F,0x12,0x02,0x13,0x1A,0x19,0x1B,0x0A,0x03,0x0B,0x01,0x08, -0x09,0x10,0x11,0x4F,0xCD,0x95,0x0B,0xE5,0x7A,0xCD,0xE8,0x0E,0x30,0x09,0x42,0x71, -0xCD,0xF9,0x0B,0x10,0xFA,0x18,0x10,0xC5,0xD5,0x71,0x15,0x28,0x08,0x4A,0x06,0x00, -0x54,0x5D,0x13,0xED,0xB0,0xD1,0xC1,0xE1,0xCD,0x13,0x0C,0x1D,0x20,0xD9,0xC9,0x78, -0xA9,0x4F,0xCD,0x64,0x0B,0x16,0x08,0xE5,0xC5,0x7E,0xA9,0x77,0xCD,0xF9,0x0B,0x10, -0xF8,0xC1,0xE1,0xCD,0x13,0x0C,0x15,0x20,0xEE,0xC9,0x4F,0xC5,0x11,0xD0,0xFF,0x06, -0x30,0xCD,0x24,0x0E,0xC1,0xCD,0xBA,0x07,0x78,0xB7,0x20,0x0D,0x11,0xB0,0xFF,0xCD, -0x37,0x0E,0x11,0x00,0x00,0x06,0x20,0x18,0x0B,0x11,0x50,0x00,0xCD,0x37,0x0E,0x11, -0xB0,0xFF,0x06,0x20,0x2A,0xC9,0xB1,0x19,0x7C,0xE6,0x07,0x67,0x3A,0xCB,0xB1,0x84, -0x67,0x50,0x1E,0x08,0xC3,0xB7,0x0D,0x2A,0xC9,0xB1,0x19,0xC3,0x3C,0x0B,0xF5,0x78, -0xB7,0x28,0x30,0xE5,0xCD,0x95,0x0B,0xE3,0x2C,0xCD,0x64,0x0B,0x4A,0x7B,0xD6,0x08, -0x47,0x28,0x17,0xD1,0xCD,0xBA,0x07,0xC5,0xE5,0xD5,0xCD,0xA4,0x0E,0xE1,0xCD,0x13, -0x0C,0xEB,0xE1,0xCD,0x13,0x0C,0xC1,0x10,0xEE,0xD5,0xE1,0x51,0x1E,0x08,0xF1,0x4F, -0xC3,0xB7,0x0D,0xE5,0xD5,0xCD,0x95,0x0B,0x4A,0x7B,0xD6,0x08,0x47,0xD1,0xE3,0x28, -0xE9,0xC5,0x6B,0x54,0x1C,0xCD,0x64,0x0B,0xEB,0xCD,0x64,0x0B,0xC1,0xCD,0xBA,0x07, -0xCD,0x2D,0x0C,0xE5,0xEB,0xCD,0x2D,0x0C,0xE5,0xC5,0xCD,0xA4,0x0E,0xC1,0xD1,0xE1, -0x10,0xEE,0x18,0xC6,0x06,0x00,0xCD,0xE6,0x0E,0x38,0x16,0xCD,0xE6,0x0E,0x30,0x25, -0xC5,0xAF,0x95,0x4F,0xED,0xB0,0xC1,0x2F,0x3C,0x81,0x4F,0x7C,0xD6,0x08,0x67,0x18, -0x14,0xCD,0xE6,0x0E,0x38,0x12,0xC5,0xAF,0x93,0x4F,0xED,0xB0,0xC1,0x2F,0x3C,0x81, -0x4F,0x7A,0xD6,0x08,0x57,0xED,0xB0,0xC9,0x41,0x7E,0x12,0xCD,0xF9,0x0B,0xEB,0xCD, -0xF9,0x0B,0xEB,0x10,0xF4,0xC9,0x79,0xEB,0x3D,0x85,0xD0,0x7C,0xE6,0x07,0xEE,0x07, -0xC0,0x37,0xC9,0xCD,0xEC,0x0A,0x06,0x08,0x38,0x31,0x28,0x06,0x01,0x08,0x00,0xED, -0xB0,0xC9,0x4E,0x23,0xE5,0xC5,0x06,0x04,0x21,0xCF,0xB1,0xAF,0xCB,0x01,0x30,0x01, -0xB6,0x23,0x10,0xF8,0x12,0x13,0x06,0x04,0x21,0xCF,0xB1,0xAF,0xCB,0x01,0x30,0x01, -0xB6,0x23,0x10,0xF8,0x12,0x13,0xC1,0xE1,0x10,0xD8,0xC9,0x4E,0x23,0xE5,0xC5,0x06, -0x04,0xAF,0x21,0xCF,0xB1,0xCB,0x01,0x30,0x01,0x7E,0x23,0xCB,0x01,0x30,0x01,0xB6, -0x12,0x13,0x10,0xED,0xC1,0xE1,0x10,0xE3,0xC9,0x4F,0xCD,0x64,0x0B,0xCD,0xEC,0x0A, -0x06,0x08,0x38,0x45,0x28,0x0B,0x7E,0xA9,0x2F,0x12,0x13,0xCD,0x13,0x0C,0x10,0xF6, -0xC9,0xE5,0xD5,0xE5,0x7E,0xA9,0x21,0xCF,0xB1,0x16,0x04,0xF5,0xA6,0x20,0x01,0x37, -0xCB,0x13,0x23,0xF1,0x15,0x20,0xF4,0xE1,0xCD,0xF9,0x0B,0x7E,0xA9,0x21,0xCF,0xB1, -0x16,0x04,0xF5,0xA6,0x20,0x01,0x37,0xCB,0x13,0x23,0xF1,0x15,0x20,0xF4,0xE1,0x73, -0xEB,0x13,0xE1,0xCD,0x13,0x0C,0x10,0xC9,0xC9,0xE5,0xD5,0x16,0x04,0x7E,0xE5,0xA9, -0xF5,0x21,0xCF,0xB1,0xA6,0x20,0x01,0x37,0xCB,0x13,0xF1,0x23,0xA6,0x20,0x01,0x37, -0xCB,0x13,0xE1,0xCD,0xF9,0x0B,0x15,0x20,0xE4,0xE1,0x73,0xEB,0x13,0xE1,0xCD,0x13, -0x0C,0x10,0xD6,0xC9,0xF5,0xE5,0x7A,0x2F,0x67,0x7B,0x2F,0x6F,0x23,0x09,0x23,0xE3, -0xAF,0x93,0xF5,0xCD,0xA9,0x0B,0xE5,0x78,0x2F,0x6F,0x26,0xFF,0x22,0x07,0xB2,0xE1, -0xF1,0xA0,0x47,0x28,0x45,0xE3,0x18,0x03,0x1A,0xB1,0x4F,0x2B,0x7C,0xB5,0x28,0x34, -0x13,0x10,0xF5,0xEB,0xE1,0xF1,0x47,0xCD,0xE8,0xBD,0xCD,0xF9,0x0B,0xE5,0x2A,0x07, -0xB2,0x19,0x30,0x0C,0xEB,0xE1,0x0E,0xFF,0xCD,0xE8,0xBD,0xCD,0xF9,0x0B,0x18,0xED, -0x7B,0xB7,0x28,0x0E,0xAF,0x21,0xCF,0xB1,0xB6,0x23,0x1D,0x20,0xFB,0x4F,0xE1,0xC3, -0xE8,0xBD,0xE1,0xC9,0xE1,0xF1,0x47,0xC3,0xE8,0xBD,0xD1,0xF1,0x47,0x18,0xCE,0xF5, -0xE5,0x7C,0x2F,0x67,0x7D,0x2F,0x6F,0x23,0x09,0x23,0xE3,0xCD,0xA9,0x0B,0xD1,0xF1, -0x47,0xCD,0xE8,0xBD,0xCD,0x2D,0x0C,0x1B,0x7A,0xB3,0x20,0xF5,0xC9,0x04,0x04,0x0A, -0x13,0x0C,0x0B,0x14,0x15,0x0D,0x06,0x1E,0x1F,0x07,0x12,0x19,0x04,0x17,0x04,0x04, -0x0A,0x13,0x0C,0x0B,0x14,0x15,0x0D,0x06,0x1E,0x1F,0x07,0x12,0x19,0x0A,0x07,0xC7, -0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xCD,0x88,0x10,0xAF,0x32,0x95,0xB2,0x21, -0x01,0x00,0xCD,0x3D,0x11,0xC3,0xA3,0x10,0x21,0x91,0x10,0xCD,0x8A,0x0A,0xC3,0x5B, -0x14,0x0F,0xCD,0xBD,0xC3,0x63,0x12,0xC3,0x63,0x12,0xC3,0x4A,0x13,0xC3,0xC0,0x13, -0xC3,0x0C,0x14,0x3E,0x08,0x11,0x0D,0xB2,0x21,0x85,0xB2,0x01,0x0F,0x00,0xED,0xB0, -0x3D,0x20,0xF5,0x32,0x0C,0xB2,0xC9,0x3A,0x0C,0xB2,0x4F,0x06,0x08,0x78,0x3D,0xCD, -0xE8,0x10,0xCD,0xD0,0xBD,0xCD,0xC3,0x12,0x32,0x90,0xB2,0xCD,0xBD,0x12,0x32,0x8F, -0xB2,0x10,0xEA,0x79,0xC9,0x4F,0x06,0x08,0x78,0x3D,0xCD,0xE8,0x10,0xC5,0x2A,0x8F, -0xB2,0xCD,0x3D,0x11,0xC1,0x10,0xF1,0x79,0xE6,0x07,0x21,0x0C,0xB2,0xBE,0xC8,0xC5, -0xD5,0x4E,0x77,0x47,0x79,0xCD,0x2A,0x11,0xCD,0x22,0x11,0x78,0xCD,0x2A,0x11,0xEB, -0xCD,0x22,0x11,0x79,0xD1,0xC1,0xC9,0x3A,0x0C,0xB2,0xF5,0x79,0xCD,0xE8,0x10,0x78, -0x32,0x0C,0xB2,0xCD,0x2A,0x11,0xD5,0x79,0xCD,0x2A,0x11,0xE1,0xCD,0x22,0x11,0xF1, -0x18,0xC6,0xC5,0x01,0x0F,0x00,0xED,0xB0,0xC1,0xC9,0xE6,0x07,0x5F,0x87,0x87,0x87, -0x87,0x93,0xC6,0x0D,0x5F,0xCE,0xB2,0x93,0x57,0x21,0x85,0xB2,0xC9,0xEB,0x3E,0x03, -0x32,0x8D,0xB2,0x7A,0xCD,0xAE,0x12,0x7B,0xCD,0xA9,0x12,0xAF,0xCD,0xA7,0x13,0xCD, -0x7A,0x13,0x21,0x00,0x00,0x11,0x7F,0x7F,0xCD,0x0C,0x12,0xC3,0x51,0x14,0x3D,0x21, -0x89,0xB2,0x86,0x2A,0x85,0xB2,0x67,0x18,0x0E,0x3D,0x21,0x88,0xB2,0x86,0x2A,0x85, -0xB2,0x6F,0x18,0x03,0xCD,0x8A,0x11,0xCD,0xD0,0xBD,0x22,0x85,0xB2,0xC3,0xCD,0xBD, -0x2A,0x85,0xB2,0xCD,0x97,0x11,0x3A,0x8C,0xB2,0xC9,0x3A,0x88,0xB2,0x3D,0x85,0x6F, -0x3A,0x89,0xB2,0x3D,0x84,0x67,0xC9,0x3A,0x88,0xB2,0x95,0x2F,0x3C,0x3C,0x6F,0x3A, -0x89,0xB2,0x94,0x2F,0x3C,0x3C,0x67,0xC9,0xCD,0xD0,0xBD,0x2A,0x85,0xB2,0xCD,0xDA, -0x11,0x22,0x85,0xB2,0xD8,0xE5,0x21,0x8C,0xB2,0x78,0x87,0x3C,0x86,0x77,0xCD,0x56, -0x12,0x3A,0x90,0xB2,0xF5,0xDC,0x3E,0x0E,0xF1,0xD4,0xFA,0x0D,0xE1,0xC9,0xCD,0x8A, -0x11,0xCD,0xDA,0x11,0xF5,0xCD,0x97,0x11,0xF1,0xC9,0x3A,0x8B,0xB2,0xBC,0xF2,0xE6, -0x11,0x3A,0x89,0xB2,0x67,0x2C,0x3A,0x89,0xB2,0x3D,0xBC,0xFA,0xF3,0x11,0x3A,0x8B, -0xB2,0x67,0x2D,0x3A,0x88,0xB2,0x3D,0xBD,0xF2,0x06,0x12,0x3A,0x8A,0xB2,0xBD,0x37, -0xF0,0x6F,0x06,0xFF,0xB7,0xC9,0x3C,0x6F,0x06,0x00,0xB7,0xC9,0xCD,0x57,0x0B,0x7C, -0xCD,0x44,0x12,0x67,0x7A,0xCD,0x44,0x12,0x57,0xBC,0x30,0x02,0x54,0x67,0x7D,0xCD, -0x4D,0x12,0x6F,0x7B,0xCD,0x4D,0x12,0x5F,0xBD,0x30,0x02,0x5D,0x6F,0x22,0x88,0xB2, -0xED,0x53,0x8A,0xB2,0x7C,0xB5,0x20,0x06,0x7A,0xA8,0x20,0x02,0x7B,0xA9,0x32,0x87, -0xB2,0xC3,0x77,0x11,0xB7,0xF2,0x49,0x12,0xAF,0xB8,0xD8,0x78,0xC9,0xB7,0xF2,0x52, -0x12,0xAF,0xB9,0xD8,0x79,0xC9,0x2A,0x88,0xB2,0xED,0x5B,0x8A,0xB2,0x3A,0x87,0xB2, -0xC6,0xFF,0xC9,0x3A,0x8D,0xB2,0xB7,0xC0,0xC5,0xD5,0xE5,0xCD,0xAB,0x11,0xED,0x4B, -0x8F,0xB2,0xCD,0xDF,0x0D,0xE1,0xD1,0xC1,0xC9,0xF5,0x3E,0xFD,0xCD,0x8B,0x12,0xF1, -0xC9,0xF5,0x3E,0x02,0xCD,0x9C,0x12,0xF1,0xC9,0x3E,0xFE,0xF5,0xCD,0xD0,0xBD,0xF1, -0xE5,0x21,0x8D,0xB2,0xA6,0x77,0xE1,0xC3,0xCD,0xBD,0x3E,0x01,0xF5,0xCD,0xD0,0xBD, -0xF1,0xE5,0x21,0x8D,0xB2,0xB6,0x77,0xE1,0xC9,0x21,0x8F,0xB2,0x18,0x03,0x21,0x90, -0xB2,0xF5,0xCD,0xD0,0xBD,0xF1,0xCD,0x86,0x0C,0x77,0xC3,0xCD,0xBD,0x3A,0x8F,0xB2, -0xC3,0xA0,0x0C,0x3A,0x90,0xB2,0xC3,0xA0,0x0C,0x2A,0x8F,0xB2,0x7C,0x65,0x6F,0x22, -0x8F,0xB2,0xC9,0xD5,0x5F,0xCD,0x2A,0x13,0x30,0x09,0x57,0x7B,0x92,0x3F,0x30,0x03, -0x5F,0x18,0x03,0x21,0x00,0x38,0xF5,0x16,0x00,0xEB,0x29,0x29,0x29,0x19,0xF1,0xD1, -0xC9,0xEB,0xCD,0xD3,0x12,0xD0,0xEB,0x01,0x08,0x00,0xED,0xB0,0xC9,0xE5,0x7A,0xB7, -0x16,0x00,0x20,0x19,0x15,0xD5,0x4B,0xEB,0x79,0xCD,0xD3,0x12,0x7C,0xAA,0x20,0x04, -0x7D,0xAB,0x28,0x08,0xC5,0xCD,0xF7,0x12,0xC1,0x0C,0x20,0xEC,0xD1,0xCD,0x2A,0x13, -0xED,0x53,0x94,0xB2,0xD1,0xED,0x53,0x96,0xB2,0xC9,0x2A,0x94,0xB2,0x7C,0x0F,0x7D, -0x2A,0x96,0xB2,0xC9,0x47,0x3A,0x8E,0xB2,0xB7,0xC8,0xC5,0xCD,0xA8,0x11,0x24,0x22, -0x85,0xB2,0x25,0xF1,0xCD,0xD3,0xBD,0xC3,0xCD,0xBD,0xE5,0xCD,0xD3,0x12,0x11,0x98, -0xB2,0xD5,0xCD,0xF3,0x0E,0xD1,0xE1,0xCD,0x64,0x0B,0x0E,0x08,0xC5,0xE5,0xC5,0xD5, -0xEB,0x4E,0xCD,0x76,0x13,0xCD,0xF9,0x0B,0xD1,0x13,0xC1,0x10,0xF1,0xE1,0xCD,0x13, -0x0C,0xC1,0x0D,0x20,0xE7,0xC9,0x2A,0x91,0xB2,0xE9,0x21,0x91,0x13,0xB7,0x28,0x03, -0x21,0x9F,0x13,0x22,0x91,0xB2,0xC9,0x2A,0x91,0xB2,0x11,0x6F,0xEC,0x19,0x7C,0xB5, -0xC9,0x2A,0x8F,0xB2,0x79,0x2F,0xA4,0x47,0x79,0xA5,0xB0,0x0E,0xFF,0x18,0x03,0x3A, -0x8F,0xB2,0x47,0xEB,0xC3,0x6B,0x0C,0x32,0x93,0xB2,0xC9,0xE5,0xD5,0xC5,0xCD,0xD0, -0xBD,0x2A,0x85,0xB2,0xCD,0xD6,0xBD,0xF5,0xCD,0xCD,0xBD,0xF1,0xC1,0xD1,0xE1,0xC9, -0x3A,0x8F,0xB2,0x11,0x98,0xB2,0xE5,0xD5,0xCD,0x49,0x0F,0xCD,0xE3,0x13,0xD1,0xE1, -0x30,0x01,0xC0,0x3A,0x90,0xB2,0xD5,0xCD,0x49,0x0F,0xD1,0x06,0x08,0x1A,0x2F,0x12, -0x13,0x10,0xFA,0x0E,0x00,0x79,0xCD,0xD3,0x12,0x11,0x98,0xB2,0x06,0x08,0x1A,0xBE, -0x20,0x09,0x23,0x13,0x10,0xF8,0x79,0xFE,0x20,0x37,0xC9,0x0C,0x20,0xE7,0xAF,0xC9, -0xF5,0xC5,0xD5,0xE5,0xCD,0xD9,0xBD,0xE1,0xD1,0xC1,0xF1,0xC9,0x4F,0x3A,0x93,0xB2, -0xB7,0x79,0xC2,0x45,0x19,0x21,0xB8,0xB2,0x46,0x78,0xFE,0x0A,0x30,0x28,0xB7,0x20, -0x06,0x79,0xFE,0x20,0xD2,0x34,0x13,0x04,0x70,0x58,0x16,0x00,0x19,0x71,0x3A,0xB9, -0xB2,0x5F,0x21,0xC3,0xB2,0x19,0x19,0x19,0x7E,0xB8,0xD0,0x23,0x5E,0x23,0x56,0x21, -0xB9,0xB2,0x79,0xCD,0x16,0x00,0xAF,0x32,0xB8,0xB2,0xC9,0xCD,0x9A,0x12,0xAF,0x18, -0x05,0xCD,0x89,0x12,0x3E,0xFF,0x32,0x8E,0xB2,0x18,0xEB,0xAF,0x32,0xB8,0xB2,0x21, -0x6B,0x14,0x11,0xC3,0xB2,0x01,0x60,0x00,0xED,0xB0,0xC9,0x00,0xE2,0x14,0x01,0x34, -0x13,0x00,0x9A,0x12,0x00,0x89,0x12,0x01,0xCA,0x0A,0x01,0x45,0x19,0x00,0x51,0x14, -0x00,0xD8,0x14,0x00,0x0A,0x15,0x00,0x0F,0x15,0x00,0x14,0x15,0x00,0x19,0x15,0x00, -0x40,0x15,0x00,0x30,0x15,0x01,0xAE,0x12,0x01,0xA9,0x12,0x00,0x4F,0x15,0x00,0x8E, -0x15,0x00,0x84,0x15,0x00,0x6D,0x15,0x00,0x56,0x15,0x00,0x4B,0x14,0x01,0xE3,0x14, -0x01,0x49,0x0C,0x00,0xC9,0x12,0x09,0x04,0x15,0x04,0xF8,0x14,0x00,0xE2,0x14,0x03, -0xE8,0x14,0x02,0xF1,0x14,0x00,0x2A,0x15,0x02,0x38,0x15,0x21,0xC3,0xB2,0xC9,0x87, -0x00,0x00,0x5A,0x00,0x00,0x0B,0x14,0x00,0xDD,0xE5,0x21,0xCF,0x14,0xCD,0x9F,0x1F, -0xDD,0xE1,0xC9,0x0F,0x9F,0xC3,0x7A,0x13,0x23,0x7E,0x23,0x46,0x23,0x4E,0xC3,0xEC, -0x0C,0x23,0x46,0x23,0x4E,0xC3,0xF1,0x0C,0x23,0x56,0x23,0x7E,0x23,0x5E,0x23,0x6E, -0x67,0xC3,0x0C,0x12,0x23,0x7E,0x23,0xC3,0xF1,0x12,0x11,0x00,0xFF,0x18,0x0D,0x11, -0x00,0x01,0x18,0x08,0x11,0x01,0x00,0x18,0x03,0x11,0xFF,0x00,0xD5,0xCD,0xA8,0x11, -0xD1,0x7D,0x83,0x6F,0x7C,0x82,0x67,0xC3,0x7A,0x11,0x2A,0x88,0xB2,0xC3,0x77,0x11, -0xCD,0xA8,0x11,0x3A,0x89,0xB2,0x18,0xEE,0x23,0x56,0x23,0x5E,0xEB,0xC3,0x74,0x11, -0xCD,0xD0,0xBD,0x2A,0x88,0xB2,0x22,0x85,0xB2,0xED,0x5B,0x8A,0xB2,0x18,0x48,0xCD, -0xA8,0x11,0x54,0x5D,0x18,0x41,0xCD,0x84,0x15,0x2A,0x88,0xB2,0xED,0x5B,0x8A,0xB2, -0x3A,0x85,0xB2,0x6F,0x2C,0xBB,0x3A,0x90,0xB2,0xDC,0xB3,0x0D,0xC9,0xCD,0x8E,0x15, -0x2A,0x88,0xB2,0x3A,0x8B,0xB2,0x57,0x3A,0x85,0xB2,0x3D,0x5F,0xBD,0x3A,0x90,0xB2, -0xD4,0xB3,0x0D,0xC9,0xCD,0xA8,0x11,0x5D,0x3A,0x8B,0xB2,0x57,0x18,0x09,0xCD,0xA8, -0x11,0xEB,0x6B,0x3A,0x89,0xB2,0x67,0x3A,0x90,0xB2,0xCD,0xB3,0x0D,0xCD,0xCD,0xBD, -0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, -0xCD,0xDF,0x15,0x21,0x01,0x00,0x7C,0xCD,0xFD,0x17,0x7D,0xCD,0xF6,0x17,0x21,0x00, -0x00,0x54,0x5D,0xCD,0x04,0x16,0x11,0x00,0x80,0x21,0xFF,0x7F,0xE5,0xD5,0xCD,0x34, -0x17,0xE1,0xD1,0xC3,0x79,0x17,0xCD,0x0A,0x18,0x67,0xCD,0x04,0x18,0x6F,0xC9,0x21, -0xE5,0x15,0xC3,0x8A,0x0A,0x09,0xDC,0xBD,0xC3,0x16,0x18,0xC3,0x2A,0x18,0xC3,0x3C, -0x18,0xCD,0x57,0x16,0xED,0x53,0x2C,0xB3,0x22,0x2E,0xB3,0xC9,0xED,0x5B,0x2C,0xB3, -0x2A,0x2E,0xB3,0xC9,0xED,0x53,0x28,0xB3,0x22,0x2A,0xB3,0x11,0x00,0x00,0x62,0x6B, -0x18,0xE2,0xED,0x5B,0x28,0xB3,0x2A,0x2A,0xB3,0xC9,0xCD,0xFC,0x15,0xCD,0xF4,0x15, -0xE5,0xCD,0xEC,0x0A,0x2F,0xC6,0x01,0xCE,0x02,0x26,0x00,0x6F,0xCB,0x7A,0x28,0x03, -0xEB,0x19,0xEB,0x2F,0xA3,0x5F,0x7D,0x2A,0x28,0xB3,0x19,0x0F,0xDC,0x74,0x17,0x0F, -0xDC,0x74,0x17,0xD1,0xE5,0x7A,0x07,0x30,0x01,0x13,0x7B,0xE6,0xFE,0x5F,0x2A,0x2A, -0xB3,0x19,0xCD,0x74,0x17,0xD1,0xC9,0xE5,0x2A,0x2C,0xB3,0x19,0xD1,0xE5,0x2A,0x2E, -0xB3,0x19,0xD1,0xC9,0xD5,0xE5,0x2A,0x30,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0xAC,0x16, -0x2A,0x32,0xB3,0xB7,0xED,0x52,0xFA,0xAC,0x16,0xD1,0x2A,0x34,0xB3,0xB7,0xED,0x52, -0xFA,0xAD,0x16,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x52,0xFA,0x91,0x16,0xED,0x5B,0x36, -0xB3,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x42,0xF2,0xAD,0x16,0x2A,0x34,0xB3,0xB7,0xED, -0x42,0xF2,0xA8,0x16,0xED,0x4B,0x34,0xB3,0xEB,0xD1,0x37,0xC9,0xE1,0xD1,0xB7,0xC9, -0xE5,0xD5,0xEB,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0xF8,0x16,0x2A,0x34,0xB3, -0xB7,0xED,0x52,0xFA,0xF8,0x16,0xD1,0x2A,0x32,0xB3,0xB7,0xED,0x52,0xFA,0xF9,0x16, -0x2A,0x30,0xB3,0x2B,0xB7,0xED,0x52,0xFA,0xDE,0x16,0xED,0x5B,0x30,0xB3,0x2A,0x30, -0xB3,0x2B,0xB7,0xED,0x42,0xF2,0xF9,0x16,0x2A,0x32,0xB3,0xB7,0xED,0x42,0xF2,0xF5, -0x16,0xED,0x4B,0x32,0xB3,0xE1,0x37,0xC9,0xD1,0xE1,0xB7,0xC9,0xCD,0x1D,0x16,0xE5, -0x2A,0x30,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0x2D,0x17,0x2A,0x32,0xB3,0xB7,0xED,0x52, -0xFA,0x2D,0x17,0xE1,0xD5,0xEB,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0x30,0x17, -0x2A,0x34,0xB3,0xB7,0xED,0x52,0xFA,0x30,0x17,0xEB,0xD1,0x37,0xC9,0xE1,0xB7,0xC9, -0xEB,0xD1,0xB7,0xC9,0xE5,0xCD,0x60,0x17,0xD1,0xE5,0xCD,0x60,0x17,0xD1,0x7B,0x95, -0x7A,0x9C,0x38,0x01,0xEB,0x7B,0xE6,0xF8,0x5F,0x7D,0xF6,0x07,0x6F,0xCD,0xEC,0x0A, -0x3D,0xFC,0x70,0x17,0x3D,0xFC,0x70,0x17,0xED,0x53,0x30,0xB3,0x22,0x32,0xB3,0xC9, -0x7A,0xB7,0x21,0x00,0x00,0xF8,0x21,0x7F,0x02,0x7B,0x95,0x7A,0x9C,0xD0,0xEB,0xC9, -0xCB,0x2A,0xCB,0x1B,0xCB,0x2C,0xCB,0x1D,0xC9,0xE5,0xCD,0x92,0x17,0xD1,0xE5,0xCD, -0x92,0x17,0xD1,0x7D,0x93,0x7C,0x9A,0x38,0x01,0xEB,0xED,0x53,0x34,0xB3,0x22,0x36, -0xB3,0xC9,0x7A,0xB7,0x21,0x00,0x00,0xF8,0xCB,0x3A,0xCB,0x1B,0x21,0xC7,0x00,0x7B, -0x95,0x7A,0x9C,0xD0,0xEB,0xC9,0xED,0x5B,0x30,0xB3,0x2A,0x32,0xB3,0xCD,0xEC,0x0A, -0x3D,0xFC,0xB6,0x17,0x3D,0xF0,0x29,0x23,0xEB,0x29,0xEB,0xC9,0xED,0x5B,0x34,0xB3, -0x2A,0x36,0xB3,0x18,0xF1,0xCD,0xA6,0x17,0xB7,0xED,0x52,0x23,0xCD,0x74,0x17,0xCD, -0x74,0x17,0xCB,0x3D,0x45,0xED,0x5B,0x36,0xB3,0x2A,0x34,0xB3,0xE5,0xB7,0xED,0x52, -0x23,0x4D,0xED,0x5B,0x30,0xB3,0xE1,0xC5,0xCD,0xA9,0x0B,0xD1,0x3A,0x39,0xB3,0x4F, -0xCD,0xB7,0x0D,0xC3,0x0B,0x16,0xCD,0x86,0x0C,0x32,0x38,0xB3,0xC9,0xCD,0x86,0x0C, -0x32,0x39,0xB3,0xC9,0x3A,0x38,0xB3,0xC3,0xA0,0x0C,0x3A,0x39,0xB3,0xC3,0xA0,0x0C, -0xCD,0x57,0x16,0xC3,0xDC,0xBD,0xCD,0xFC,0x16,0xD0,0xCD,0xA9,0x0B,0x3A,0x38,0xB3, -0x47,0xC3,0xE8,0xBD,0xCD,0x57,0x16,0xC3,0xDF,0xBD,0xCD,0xFC,0x16,0xD2,0x0A,0x18, -0xCD,0xA9,0x0B,0xC3,0xE5,0xBD,0xCD,0x57,0x16,0xC3,0xE2,0xBD,0xE5,0xD5,0xCD,0x1A, -0x16,0xED,0x53,0x42,0xB3,0x22,0x44,0xB3,0xD1,0xE1,0xCD,0x1D,0x16,0xE5,0x2A,0x42, -0xB3,0xB7,0xED,0x52,0x44,0x4D,0xFA,0x69,0x18,0x2A,0x42,0xB3,0xEB,0x22,0x42,0xB3, -0x2A,0x44,0xB3,0xE3,0x22,0x44,0xB3,0x18,0x08,0x21,0x00,0x00,0xB7,0xED,0x42,0x44, -0x4D,0xD1,0x2A,0x44,0xB3,0xB7,0xED,0x52,0xEB,0xF2,0x8E,0x18,0x21,0x00,0x00,0xB7, -0xED,0x52,0x54,0x5D,0xB7,0xED,0x42,0x21,0x01,0x00,0x30,0x27,0x18,0x0A,0x62,0x6B, -0xB7,0xED,0x42,0x21,0xFF,0xFF,0x30,0x09,0x22,0x3A,0xB3,0x60,0x69,0x3E,0xFF,0x18, -0x19,0xE5,0x2A,0x42,0xB3,0x09,0x22,0x42,0xB3,0x2A,0x44,0xB3,0xB7,0xED,0x52,0x22, -0x44,0xB3,0xE1,0x22,0x3A,0xB3,0x60,0x69,0xEB,0xAF,0x32,0x46,0xB3,0x13,0xED,0x53, -0x40,0xB3,0x23,0xCD,0x8C,0x37,0x22,0x3C,0xB3,0xED,0x53,0x3E,0xB3,0xED,0x4B,0x40, -0xB3,0x50,0x59,0xCB,0x3A,0xCB,0x1B,0xC5,0xED,0x4B,0x3C,0xB3,0x2A,0x3E,0xB3,0x19, -0xEB,0x2A,0x40,0xB3,0xB7,0xED,0x52,0x30,0x07,0x19,0xEB,0xB7,0xED,0x52,0xEB,0x03, -0xD5,0x3A,0x46,0xB3,0xB7,0x28,0x23,0x2A,0x42,0xB3,0x54,0x5D,0x09,0x22,0x42,0xB3, -0x44,0x4D,0x0B,0x2A,0x44,0xB3,0xE5,0xCD,0xB0,0x16,0x3A,0x38,0xB3,0xDC,0xC4,0x0F, -0xD1,0x2A,0x3A,0xB3,0x19,0x22,0x44,0xB3,0x18,0x23,0x2A,0x44,0xB3,0x54,0x5D,0x09, -0x22,0x44,0xB3,0x44,0x4D,0x0B,0xEB,0xED,0x5B,0x42,0xB3,0xD5,0xCD,0x64,0x16,0x3A, -0x38,0xB3,0xDC,0x2F,0x10,0xD1,0x2A,0x3A,0xB3,0x19,0x22,0x42,0xB3,0xD1,0xC1,0x0B, -0x78,0xB1,0x20,0x93,0xC9,0xDD,0xE5,0xCD,0xD3,0x12,0x11,0x3A,0xB3,0xD5,0xDD,0xE1, -0x01,0x08,0x00,0xED,0xB0,0xCD,0x1A,0x16,0xCD,0xFF,0x16,0x30,0x4C,0xE5,0xD5,0x01, -0x07,0x00,0xEB,0x09,0xEB,0xB7,0xED,0x42,0xCD,0xFF,0x16,0xD1,0xE1,0x30,0x3A,0xCD, -0xA9,0x0B,0x16,0x08,0xE5,0x1E,0x08,0xCD,0xCF,0x19,0xCB,0x09,0xDC,0xF9,0x0B,0xDD, -0xCB,0x00,0x06,0x1D,0x20,0xF1,0xE1,0xCD,0x13,0x0C,0xDD,0x23,0x15,0x20,0xE5,0xDD, -0xE1,0xCD,0xFC,0x15,0xEB,0xCD,0xEC,0x0A,0x01,0x08,0x00,0xFE,0x01,0x28,0x04,0x30, -0x03,0x09,0x09,0x09,0x09,0xEB,0xC3,0xF4,0x15,0x0E,0x08,0xD5,0x06,0x08,0xCD,0xFF, -0x16,0x30,0x0C,0xE5,0xD5,0xC5,0xCD,0xA9,0x0B,0xCD,0xCF,0x19,0xC1,0xD1,0xE1,0xDD, -0xCB,0x00,0x06,0x13,0x10,0xE8,0xD1,0x2B,0xDD,0x23,0x0D,0x20,0xDE,0x18,0xC0,0xDD, -0xCB,0x00,0x7E,0x3A,0x38,0xB3,0x20,0x03,0x3A,0x39,0xB3,0x47,0xC3,0xE8,0xBD,0xC7, -0x21,0x02,0x1E,0xCD,0x6D,0x1C,0xAF,0x32,0x0B,0xB5,0x67,0x6F,0x22,0xE7,0xB4,0x21, -0x3C,0xB4,0x11,0xB0,0xFF,0x22,0x47,0xB5,0x19,0x22,0x45,0xB5,0x19,0x22,0x43,0xB5, -0x19,0x22,0x41,0xB5,0xEB,0x21,0x69,0x1D,0x01,0xFA,0x00,0xED,0xB0,0x06,0x0A,0x21, -0xEB,0xB4,0x36,0x00,0x23,0x10,0xFB,0x06,0x0A,0x36,0xFF,0x23,0x10,0xFB,0xCD,0xED, -0x1C,0xCD,0x75,0x1A,0x11,0x46,0xB4,0x21,0x98,0x00,0xCD,0x81,0x1A,0x21,0x36,0x1A, -0xCD,0x8A,0x0A,0xC3,0x82,0x1C,0x03,0xEE,0xBD,0xC3,0x2F,0x1C,0xCD,0x42,0x1A,0x30, -0xFB,0xC9,0xE5,0x21,0xE0,0xB4,0x7E,0x36,0xFF,0xBE,0x38,0x27,0x2A,0xDE,0xB4,0x7C, -0xB7,0x20,0x11,0xCD,0x5C,0x1B,0x30,0x1B,0xFE,0x80,0x38,0x17,0xFE,0xA0,0x3F,0x38, -0x12,0x67,0x2E,0x00,0xD5,0xCD,0x2E,0x1B,0x38,0x02,0x26,0x00,0x2C,0x22,0xDE,0xB4, -0xD1,0x30,0xE0,0xE1,0xC9,0x3E,0xFF,0x32,0xE0,0xB4,0xC9,0xCD,0x81,0x1A,0x3F,0xFB, -0xC9,0xF3,0x7D,0xD6,0x31,0x7C,0xDE,0x00,0xD8,0x19,0x22,0xE3,0xB4,0xEB,0x22,0xE1, -0xB4,0x01,0x30,0x0A,0x36,0x01,0x23,0x71,0x23,0x0C,0x10,0xF8,0xEB,0x21,0xB3,0x1A, -0x0E,0x0A,0xED,0xB0,0xEB,0x06,0x13,0xAF,0x77,0x23,0x10,0xFC,0x22,0xE5,0xB4,0x32, -0xDF,0xB4,0xC9,0x01,0x2E,0x01,0x0D,0x05,0x52,0x55,0x4E,0x22,0x0D,0xF3,0x78,0xCD, -0x3E,0x1B,0x30,0x1F,0xC5,0xD5,0xE5,0xCD,0xE5,0x1A,0x3F,0xE1,0xD1,0xC1,0x30,0x13, -0x1B,0x79,0x0C,0x12,0x13,0xE7,0x23,0x0D,0x20,0xF9,0x21,0xDF,0xB4,0x78,0xAE,0x20, -0x01,0x77,0x37,0xFB,0xC9,0x06,0x00,0x60,0x6F,0x79,0x95,0xC8,0x30,0x0F,0x7D,0x69, -0x4F,0x19,0xEB,0x09,0xCD,0x22,0x1B,0x28,0x23,0xED,0xB0,0x18,0x1F,0x4F,0x19,0xE5, -0x2A,0xE5,0xB4,0x09,0xEB,0x2A,0xE3,0xB4,0x7D,0x93,0x7C,0x9A,0xE1,0xD8,0xCD,0x22, -0x1B,0x2A,0xE5,0xB4,0x28,0x06,0xD5,0x1B,0x2B,0xED,0xB8,0xD1,0xED,0x53,0xE5,0xB4, -0xB7,0xC9,0x3A,0xE5,0xB4,0x95,0x4F,0x3A,0xE6,0xB4,0x9C,0x47,0xB1,0xC9,0xCD,0x3E, -0x1B,0xD0,0xBD,0xC8,0x3F,0xD0,0xE5,0x26,0x00,0x19,0x7E,0xE1,0x37,0xC9,0xE6,0x7F, -0xFE,0x20,0xD0,0xE5,0x2A,0xE1,0xB4,0x11,0x00,0x00,0x3C,0x19,0x5E,0x23,0x3D,0x20, -0xFA,0x7B,0xEB,0xE1,0x37,0xC9,0xCD,0x5C,0x1B,0x30,0xFB,0xC9,0xE5,0xC5,0xCD,0x15, -0x1D,0x30,0x3A,0x79,0xFE,0xEF,0x28,0x34,0xE6,0x0F,0x87,0x87,0x87,0x3D,0x3C,0xCB, -0x08,0x30,0xFB,0xCD,0xA0,0x1B,0x21,0xE8,0xB4,0xCB,0x7E,0x28,0x0A,0xFE,0x61,0x38, -0x06,0xFE,0x7B,0x30,0x02,0xC6,0xE0,0xFE,0xFF,0x28,0xD3,0xFE,0xFE,0x21,0xE7,0xB4, -0x28,0x05,0xFE,0xFD,0x23,0x20,0x05,0x7E,0x2F,0x77,0x18,0xC2,0x37,0xC1,0xE1,0xC9, -0xCB,0x11,0xDA,0x48,0x1D,0x47,0x3A,0xE7,0xB4,0xB1,0xE6,0x40,0x78,0xC2,0x43,0x1D, -0xC3,0x3E,0x1D,0x2A,0xE7,0xB4,0xC9,0x11,0xFF,0xB4,0x21,0xF5,0xB4,0xCD,0x46,0x08, -0x3A,0x01,0xB5,0xE6,0xA0,0x4F,0x21,0xED,0xB4,0xB6,0x77,0x21,0xFF,0xB4,0x11,0xEB, -0xB4,0x06,0x00,0x1A,0xAE,0xA6,0xC4,0x48,0x1C,0x7E,0x12,0x23,0x13,0x0C,0x79,0xE6, -0x0F,0xFE,0x0A,0x20,0xEE,0x79,0xE6,0xA0,0xCB,0x71,0x4F,0xC4,0xEE,0xBD,0x78,0xB7, -0xC0,0x21,0x09,0xB5,0x35,0xC0,0x2A,0x0A,0xB5,0xEB,0x42,0x16,0x00,0x21,0xEB,0xB4, -0x19,0x7E,0x2A,0x47,0xB5,0x19,0xA6,0xA0,0xC8,0x21,0x09,0xB5,0x34,0x3A,0x40,0xB5, -0xB7,0xC0,0x79,0xB3,0x4F,0x3A,0xE9,0xB4,0x32,0x09,0xB5,0xCD,0xFE,0x1C,0x79,0xE6, -0x0F,0x6F,0x60,0x22,0x0A,0xB5,0xFE,0x08,0xC0,0xCB,0x60,0xC0,0xCB,0xF1,0xC9,0x21, -0xF3,0xB4,0xCB,0x56,0xC8,0x79,0xEE,0xA0,0x20,0x56,0xC5,0x23,0x06,0x0A,0x8E,0x2B, -0x10,0xFC,0xC1,0xFE,0xA4,0x20,0x49,0xC7,0xE5,0xD5,0x5F,0x2F,0x3C,0xA3,0x47,0x3A, -0xEA,0xB4,0xCD,0x18,0x1C,0x78,0xAB,0x20,0xF1,0xD1,0xE1,0xC9,0x3A,0xF1,0xB4,0xE6, -0x7F,0x6F,0x3A,0xF4,0xB4,0xE6,0x7F,0x67,0xC9,0x2A,0xE9,0xB4,0xC9,0x22,0xE9,0xB4, -0xC9,0xCD,0x82,0x1C,0x21,0x0D,0xB5,0x06,0x40,0xCD,0xD2,0x01,0x3E,0xFF,0x32,0x0C, -0xB5,0xC9,0xC5,0xD5,0x21,0x0C,0xB5,0x36,0x00,0x23,0xCD,0x85,0x02,0xD1,0xC1,0xC9, -0x21,0x0C,0xB5,0x7E,0x36,0x00,0xBE,0xC8,0xC5,0xD5,0x23,0xCD,0xE2,0x01,0x0E,0xEF, -0xCD,0xFE,0x1C,0xD1,0xC1,0xC9,0x2A,0x47,0xB5,0x18,0x1D,0xFE,0x50,0xD0,0x2A,0x47, -0xB5,0xCD,0xCD,0x1C,0x4F,0x2F,0xA6,0x77,0x79,0xA0,0xB6,0x77,0xC9,0xF5,0x3A,0xED, -0xB4,0xE6,0xA0,0x4F,0xF1,0x21,0xEB,0xB4,0xCD,0xCD,0x1C,0xA6,0xC9,0xD5,0xF5,0xE6, -0xF8,0x0F,0x0F,0x0F,0x5F,0x16,0x00,0x19,0xF1,0xE5,0x21,0xE5,0x1C,0xE6,0x07,0x5F, -0x19,0x7E,0xE1,0xD1,0xC9,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0xF3,0x21,0x3C, -0xB5,0x36,0x15,0x23,0xAF,0x77,0x23,0x36,0x01,0x23,0x77,0x23,0x77,0xC9,0x21,0x3C, -0xB5,0xB7,0x35,0x28,0x0E,0xCD,0x2C,0x1D,0x71,0x23,0x70,0x21,0x40,0xB5,0x34,0x21, -0x3E,0xB5,0x37,0x34,0xC9,0x21,0x3E,0xB5,0xB7,0x35,0x28,0x0E,0xCD,0x2C,0x1D,0x4E, -0x23,0x46,0x21,0x40,0xB5,0x35,0x21,0x3C,0xB5,0x37,0x34,0xC9,0x23,0x34,0x7E,0xFE, -0x14,0x20,0x02,0xAF,0x77,0x87,0xCE,0x14,0x6F,0xCE,0xB5,0x95,0x67,0xC9,0x2A,0x41, -0xB5,0x18,0x08,0x2A,0x43,0xB5,0x18,0x03,0x2A,0x45,0xB5,0x85,0x6F,0x8C,0x95,0x67, -0x7E,0xC9,0x2A,0x41,0xB5,0x18,0x08,0x2A,0x43,0xB5,0x18,0x03,0x2A,0x45,0xB5,0xFE, -0x50,0xD0,0x85,0x6F,0x8C,0x95,0x67,0x70,0xC9,0xF0,0xF3,0xF1,0x89,0x86,0x83,0x8B, -0x8A,0xF2,0xE0,0x87,0x88,0x85,0x81,0x82,0x80,0x10,0x5B,0x0D,0x5D,0x84,0xFF,0x5C, -0xFF,0x5E,0x2D,0x40,0x70,0x3B,0x3A,0x2F,0x2E,0x30,0x39,0x6F,0x69,0x6C,0x6B,0x6D, -0x2C,0x38,0x37,0x75,0x79,0x68,0x6A,0x6E,0x20,0x36,0x35,0x72,0x74,0x67,0x66,0x62, -0x76,0x34,0x33,0x65,0x77,0x73,0x64,0x63,0x78,0x31,0x32,0xFC,0x71,0x09,0x61,0xFD, -0x7A,0x0B,0x0A,0x08,0x09,0x58,0x5A,0xFF,0x7F,0xF4,0xF7,0xF5,0x89,0x86,0x83,0x8B, -0x8A,0xF6,0xE0,0x87,0x88,0x85,0x81,0x82,0x80,0x10,0x7B,0x0D,0x7D,0x84,0xFF,0x60, -0xFF,0xA3,0x3D,0x7C,0x50,0x2B,0x2A,0x3F,0x3E,0x5F,0x29,0x4F,0x49,0x4C,0x4B,0x4D, -0x3C,0x28,0x27,0x55,0x59,0x48,0x4A,0x4E,0x20,0x26,0x25,0x52,0x54,0x47,0x46,0x42, -0x56,0x24,0x23,0x45,0x57,0x53,0x44,0x43,0x58,0x21,0x22,0xFC,0x51,0x09,0x41,0xFD, -0x5A,0x0B,0x0A,0x08,0x09,0x58,0x5A,0xFF,0x7F,0xF8,0xFB,0xF9,0x89,0x86,0x83,0x8C, -0x8A,0xFA,0xE0,0x87,0x88,0x85,0x81,0x82,0x80,0x10,0x1B,0x0D,0x1D,0x84,0xFF,0x1C, -0xFF,0x1E,0xFF,0x00,0x10,0xFF,0xFF,0xFF,0xFF,0x1F,0xFF,0x0F,0x09,0x0C,0x0B,0x0D, -0xFF,0xFF,0xFF,0x15,0x19,0x08,0x0A,0x0E,0xFF,0xFF,0xFF,0x12,0x14,0x07,0x06,0x02, -0x16,0xFF,0xFF,0x05,0x17,0x13,0x04,0x03,0x18,0xFF,0x7E,0xFC,0x11,0xE1,0x01,0xFE, -0x1A,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x07,0x03,0x4B,0xFF,0xFF,0xFF,0xFF, -0xFF,0xAB,0x8F,0xC7,0xC7,0xC7,0xC7,0xC7,0xAF,0xF3,0x32,0x52,0xB5,0x32,0x51,0xB5, -0x21,0x55,0xB5,0x11,0x03,0x1F,0x06,0x81,0xCD,0xD2,0x01,0x3E,0x3F,0x32,0x19,0xB6, -0x21,0x5C,0xB5,0x01,0x3D,0x00,0x11,0x08,0x01,0xAF,0x77,0x23,0x72,0x23,0x73,0x09, -0x3C,0xEB,0x29,0xEB,0xFE,0x03,0x20,0xF2,0x0E,0x07,0xDD,0xE5,0xE5,0x21,0x1D,0xB5, -0x41,0x11,0x3F,0x00,0x19,0xCB,0x38,0x30,0xF8,0xC5,0xE5,0xDD,0xE1,0xEB,0xCD,0x7F, -0x22,0x13,0x13,0x13,0x6B,0x62,0x13,0x01,0x3B,0x00,0x36,0x00,0xED,0xB0,0xDD,0x36, -0x1C,0x04,0xC1,0xEB,0x04,0x10,0xDE,0xE1,0xDD,0xE1,0xC9,0x21,0x52,0xB5,0xF3,0x7E, -0x36,0x00,0xFB,0xB7,0xC8,0x2B,0x77,0x2E,0x03,0x0E,0x00,0x3E,0x07,0x85,0xCD,0x26, -0x08,0x2D,0x20,0xF7,0x37,0xC9,0x3A,0x51,0xB5,0xB7,0xC8,0xDD,0x21,0x1D,0xB5,0x11, -0x3F,0x00,0xDD,0x19,0xCB,0x3F,0xF5,0xDD,0x7E,0x0F,0xDC,0x76,0x22,0xF1,0x20,0xF2, -0xC3,0x1E,0x20,0xDD,0xE5,0x21,0x50,0xB5,0xE5,0xAF,0x77,0x23,0x46,0xC5,0x23,0xB6, -0x28,0x22,0xDD,0x21,0x1D,0xB5,0x01,0x3F,0x00,0xDD,0x09,0xCB,0x3F,0x30,0xFA,0xF5, -0xDD,0x7E,0x04,0x1F,0xDC,0xC2,0x22,0xDD,0x7E,0x07,0x1F,0xDC,0xB6,0x21,0xDC,0xA8, -0x20,0xF1,0x20,0xE2,0xC1,0xE1,0x7E,0xB7,0x28,0x20,0x4F,0x23,0x7E,0x70,0xA8,0x47, -0x23,0xB6,0x77,0x78,0x2F,0xA1,0x28,0x12,0xDD,0x21,0x1D,0xB5,0x11,0x3F,0x00,0xDD, -0x19,0xCB,0x3F,0xF5,0xDC,0x7F,0x22,0xF1,0x20,0xF5,0xAF,0x32,0x54,0xB5,0xDD,0xE1, -0xC9,0x21,0x52,0xB5,0x7E,0xB7,0xC8,0x23,0x35,0xC0,0x34,0x23,0x7E,0xB7,0xC0,0x2B, -0x36,0x03,0x2B,0x46,0x21,0x22,0xB5,0x11,0x3F,0x00,0xAF,0x19,0xCB,0x38,0x30,0xFB, -0x35,0x20,0x05,0x2B,0xCB,0x06,0x8A,0x23,0x23,0x35,0x20,0x05,0x23,0xCB,0x06,0x8A, -0x2B,0x2B,0x04,0x10,0xE6,0xB7,0xC8,0x21,0x54,0xB5,0x77,0x23,0xC3,0xE2,0x01,0xCD, -0xE6,0x1E,0x7E,0xE6,0x07,0x37,0xC8,0x4F,0xB6,0xFC,0x9A,0x1E,0x41,0xDD,0x21,0x1D, -0xB5,0x11,0x3F,0x00,0xAF,0xDD,0x19,0xCB,0x38,0x30,0xFA,0xDD,0x72,0x1E,0xDD,0xBE, -0x1C,0x3F,0x9F,0x04,0x10,0xEF,0xB7,0xC0,0x41,0x7E,0x1F,0x1F,0x1F,0xB0,0xE6,0x0F, -0x4F,0x23,0xDD,0x21,0x1D,0xB5,0x11,0x3F,0x00,0xDD,0x19,0xCB,0x38,0x30,0xFA,0xE5, -0xC5,0xDD,0x7E,0x1B,0xDD,0x34,0x1B,0xDD,0x35,0x1C,0xEB,0xCD,0x3A,0x20,0xE5,0xEB, -0xDD,0x7E,0x01,0x2F,0xA1,0x12,0x13,0x7E,0x23,0x87,0x87,0x87,0x87,0x47,0x7E,0x23, -0xE6,0x0F,0xB0,0x12,0x13,0x01,0x06,0x00,0xED,0xB0,0xE1,0xF3,0xDD,0x7E,0x1A,0xDD, -0x34,0x1A,0xDD,0xB6,0x03,0xFB,0xCC,0xBD,0x20,0xC1,0xE1,0x04,0x10,0xB8,0xE5,0x21, -0x51,0xB5,0x7E,0xB7,0x28,0x11,0x36,0x00,0xF3,0x23,0x46,0xB0,0x77,0x78,0xB7,0x20, -0x05,0x23,0x36,0x03,0x23,0x77,0xFB,0xE1,0x37,0xC9,0xE6,0x03,0x87,0x87,0x87,0xC6, -0x1F,0xDD,0xE5,0xE1,0x85,0x6F,0x8C,0x95,0x67,0xC9,0x6F,0xCD,0xE6,0x1E,0x7D,0xE6, -0x07,0xC8,0xDD,0x21,0x1D,0xB5,0x11,0x3F,0x00,0xDD,0x19,0xCB,0x3F,0x30,0xFA,0xF5, -0xDD,0xCB,0x03,0x5E,0xC4,0xB7,0x20,0xF1,0x20,0xEC,0x18,0xB2,0xE6,0x07,0xC8,0x21, -0x20,0xB5,0x11,0x3F,0x00,0x19,0x1F,0x30,0xFC,0xF3,0x7E,0x87,0x87,0x87,0x11,0x19, -0x00,0x19,0xB6,0x23,0x23,0x36,0x00,0xFB,0xC9,0xE6,0x07,0xC8,0xEB,0x21,0x39,0xB5, -0x01,0x3F,0x00,0x09,0x1F,0x30,0xFC,0xAF,0xF3,0xBE,0x23,0x73,0x23,0x20,0x03,0x72, -0xFB,0xC9,0x77,0xFB,0xEB,0xC3,0xE2,0x01,0xDD,0x7E,0x1A,0xB7,0xCA,0x7F,0x22,0xDD, -0x7E,0x01,0x21,0x50,0xB5,0xB6,0x77,0xDD,0x7E,0x19,0xCD,0x3A,0x20,0x7E,0xB7,0x28, -0x0C,0xCB,0x5F,0x20,0x53,0xE5,0x36,0x00,0xCD,0x1F,0x21,0xE1,0xD0,0xDD,0x36,0x03, -0x10,0x23,0x7E,0xE6,0xF0,0xF5,0xAE,0x5F,0x23,0x4E,0x23,0x56,0x23,0xB2,0xB1,0x28, -0x08,0xE5,0xCD,0xAB,0x22,0xDD,0x56,0x01,0xE1,0x4E,0x23,0x5E,0x23,0x7E,0x23,0x66, -0x6F,0xF1,0xCD,0x75,0x21,0x21,0x51,0xB5,0xDD,0x7E,0x01,0xB6,0x77,0xDD,0x34,0x19, -0xDD,0x35,0x1A,0xDD,0x34,0x1C,0xF3,0xDD,0x7E,0x1E,0xDD,0x36,0x1E,0x00,0xFB,0xB7, -0xC8,0x67,0xDD,0x6E,0x1D,0xC3,0xE2,0x01,0xCB,0x9E,0xDD,0x36,0x03,0x08,0xC9,0xDD, -0xE5,0x47,0xDD,0x4E,0x01,0xDD,0x21,0x5C,0xB5,0xCB,0x47,0x20,0x0C,0xDD,0x21,0x9B, -0xB5,0xCB,0x4F,0x20,0x04,0xDD,0x21,0xDA,0xB5,0xF3,0xDD,0x7E,0x03,0xA1,0x28,0x2D, -0x78,0xDD,0xBE,0x01,0x28,0x1A,0xDD,0xE5,0xDD,0x21,0xDA,0xB5,0xCB,0x57,0x20,0x04, -0xDD,0x21,0x9B,0xB5,0xDD,0x7E,0x03,0xA1,0x28,0x12,0xFB,0xCD,0xB7,0x20,0xDD,0xE1, -0xDD,0x36,0x03,0x00,0xFB,0xCD,0xB7,0x20,0xDD,0xE1,0x37,0xC9,0xE1,0xDD,0xE1,0xDD, -0x70,0x03,0xFB,0xB7,0xC9,0xCB,0xFB,0xDD,0x73,0x0F,0x5F,0x7D,0xB4,0x20,0x01,0x2B, -0xDD,0x75,0x08,0xDD,0x74,0x09,0x79,0xB7,0x28,0x08,0x3E,0x06,0xCD,0x26,0x08,0xDD, -0x7E,0x02,0xB2,0xCD,0x8B,0x22,0x7B,0xB7,0x28,0x0A,0x21,0x0A,0xB6,0x16,0x00,0x19, -0x7E,0xB7,0x20,0x03,0x21,0xB2,0x21,0xDD,0x75,0x0A,0xDD,0x74,0x0B,0xCD,0x65,0x22, -0x18,0x0D,0x01,0x01,0x00,0xC8,0xDD,0x6E,0x0D,0xDD,0x66,0x0E,0xDD,0x5E,0x10,0x7B, -0xFE,0xFF,0x28,0x76,0x87,0x7E,0x23,0x38,0x4A,0x28,0x0D,0x1D,0xB7,0x20,0x06,0xDD, -0xB6,0x0F,0xF2,0xDD,0x21,0xDD,0x86,0x0F,0xE6,0x0F,0xCD,0x73,0x22,0x4E,0xDD,0x7E, -0x09,0x47,0x87,0x38,0x1B,0xAF,0x91,0xDD,0x86,0x08,0x38,0x0C,0x05,0xF2,0xF5,0x21, -0xDD,0x4E,0x08,0xAF,0x47,0xDD,0x70,0x09,0xDD,0x77,0x08,0xB0,0x20,0x02,0x1E,0xFF, -0x7B,0xB7,0xCC,0x46,0x22,0xDD,0x73,0x10,0xF3,0xDD,0x71,0x06,0xDD,0x36,0x07,0x80, -0xFB,0xB7,0xC9,0x57,0x4B,0x3E,0x0D,0xCD,0x26,0x08,0x4A,0x3E,0x0B,0xCD,0x26,0x08, -0x4E,0x3E,0x0C,0xCD,0x26,0x08,0x3E,0x10,0xCD,0x73,0x22,0xCD,0x46,0x22,0x7B,0x3C, -0x20,0x8D,0x21,0xB2,0x21,0xCD,0x65,0x22,0x18,0x85,0xAF,0xDD,0x77,0x03,0xDD,0x77, -0x07,0xDD,0x77,0x04,0x37,0xC9,0xDD,0x35,0x0C,0x20,0x1E,0xDD,0x7E,0x09,0x87,0x21, -0xB2,0x21,0x30,0x11,0xDD,0x34,0x08,0x20,0x06,0xDD,0x34,0x09,0x1E,0xFF,0xC8,0xDD, -0x6E,0x0A,0xDD,0x66,0x0B,0x7E,0xDD,0x77,0x0C,0x23,0x5E,0x23,0xDD,0x75,0x0D,0xDD, -0x74,0x0E,0xC9,0xDD,0x77,0x0F,0x4F,0xDD,0x7E,0x00,0xC6,0x08,0xC3,0x26,0x08,0xDD, -0x7E,0x01,0x2F,0x21,0x52,0xB5,0xF3,0xA6,0x77,0xFB,0xAF,0x47,0xDD,0x7E,0x01,0xDD, -0xB6,0x02,0x21,0x19,0xB6,0xF3,0xB6,0xA8,0xBE,0x77,0xFB,0x20,0x03,0x78,0xB7,0xC0, -0xAF,0xCD,0x76,0x22,0xF3,0x4E,0x3E,0x07,0xC3,0x26,0x08,0xCD,0x24,0x23,0x7B,0xCD, -0x4E,0x23,0xD0,0x7E,0xE6,0x7F,0xC8,0xDD,0x75,0x11,0xDD,0x74,0x12,0xCD,0x13,0x23, -0x18,0x09,0xDD,0x6E,0x14,0xDD,0x66,0x15,0xDD,0x5E,0x18,0x4E,0x23,0x7B,0xD6,0xF0, -0x38,0x04,0x1E,0x00,0x18,0x0E,0x1D,0x79,0x87,0x9F,0x57,0xDD,0x7E,0x16,0x81,0x4F, -0xDD,0x7E,0x17,0x8A,0x57,0xCD,0x24,0x23,0x4E,0x7B,0xB7,0x20,0x19,0xDD,0x7E,0x13, -0x3D,0x20,0x10,0xDD,0x6E,0x11,0xDD,0x66,0x12,0x7E,0xC6,0x80,0x38,0x05,0xDD,0x36, -0x04,0x00,0xC9,0xCD,0x13,0x23,0xDD,0x73,0x18,0xF3,0xDD,0x71,0x05,0xDD,0x36,0x04, -0x80,0xFB,0xC9,0xDD,0x77,0x13,0x23,0x5E,0x23,0xDD,0x75,0x14,0xDD,0x74,0x15,0x7B, -0xB7,0xC0,0x1C,0xC9,0xDD,0x7E,0x00,0x87,0xF5,0xDD,0x71,0x16,0xCD,0x26,0x08,0xF1, -0x3C,0x4A,0xDD,0x71,0x17,0xC3,0x26,0x08,0x11,0x0A,0xB6,0x18,0x03,0x11,0xFA,0xB6, -0xEB,0xCD,0x51,0x23,0xEB,0xD0,0xED,0xB0,0xC9,0x21,0x0A,0xB6,0x18,0x03,0x21,0xFA, -0xB6,0xB7,0xC8,0xFE,0x10,0xD0,0x01,0x10,0x00,0x87,0x87,0x87,0x87,0x85,0x6F,0x8C, -0x95,0x67,0x37,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, -0xCD,0x01,0x24,0xCD,0x2E,0x24,0xAF,0xCD,0x8E,0x23,0x21,0x4D,0x01,0x3E,0x19,0x29, -0x29,0x29,0x29,0x29,0x29,0x0F,0x0F,0xE6,0x3F,0x6F,0x22,0xD1,0xB8,0xC9,0x32,0x00, -0xB8,0xC9,0xDD,0x21,0x02,0xB8,0xCD,0xAF,0x23,0xD0,0xE5,0xCD,0x3F,0x25,0xED,0x5B, -0x1C,0xB8,0xED,0x4B,0x1F,0xB8,0x3A,0x19,0xB8,0xE1,0xC9,0xDD,0x21,0x47,0xB8,0xDD, -0x7E,0x00,0xB7,0xC0,0xDD,0xE5,0xE3,0x36,0x01,0x23,0x73,0x23,0x72,0x23,0x73,0x23, -0x72,0x23,0xEB,0xE1,0xD5,0x0E,0x40,0x12,0x13,0x0D,0x20,0xFB,0xD1,0xD5,0x78,0xFE, -0x10,0x38,0x02,0x06,0x10,0x04,0x48,0x18,0x07,0xE7,0x23,0xCD,0xB6,0x27,0x12,0x13, -0x10,0xF7,0x0D,0x28,0x09,0x1B,0x1A,0xEE,0x20,0x20,0x03,0x12,0x18,0xF4,0xE1,0xDD, -0x36,0x15,0x01,0xDD,0x36,0x17,0x16,0xDD,0x35,0x1C,0x37,0xC9,0x3A,0x02,0xB8,0xB7, -0xC8,0x21,0x02,0xB8,0x3E,0x01,0x36,0x00,0x23,0x5E,0x23,0x56,0x21,0xCC,0xB8,0xAE, -0x37,0xC0,0x77,0x9F,0xC9,0x3A,0x47,0xB8,0xFE,0x04,0x28,0x12,0xC6,0xFF,0xD0,0x21, -0x5D,0xB8,0x36,0xFF,0x23,0x23,0x7E,0x23,0xB6,0x37,0xC4,0x14,0x26,0xD0,0x21,0x47, -0xB8,0x3E,0x02,0x18,0xD1,0xE5,0xD5,0xC5,0x06,0x02,0xCD,0x8B,0x24,0x20,0x1A,0x2A, -0x1A,0xB8,0x7C,0xB5,0x37,0xCC,0x3F,0x25,0x30,0x0F,0x2A,0x1A,0xB8,0x2B,0x22,0x1A, -0xB8,0x2A,0x05,0xB8,0xE7,0x23,0x22,0x05,0xB8,0x18,0x2C,0xE5,0xD5,0xC5,0x4F,0x21, -0x47,0xB8,0x06,0x02,0xCD,0x8E,0x24,0x20,0x1E,0x2A,0x5F,0xB8,0x11,0x00,0x08,0xED, -0x52,0xC5,0xD4,0x14,0x26,0xC1,0x30,0x0F,0x2A,0x5F,0xB8,0x23,0x22,0x5F,0xB8,0x2A, -0x4A,0xB8,0x71,0x23,0x22,0x4A,0xB8,0xC1,0xD1,0xE1,0xC9,0x21,0x02,0xB8,0x7E,0xB8, -0xC8,0xEE,0x01,0xC0,0x70,0xC9,0xCD,0x35,0x24,0xD0,0xE5,0x2A,0x1A,0xB8,0x23,0x22, -0x1A,0xB8,0x2A,0x05,0xB8,0x2B,0x22,0x05,0xB8,0xE1,0xC9,0xEB,0x06,0x03,0xCD,0x8B, -0x24,0xC0,0xED,0x53,0x1C,0xB8,0xCD,0xCF,0x24,0x2A,0x1C,0xB8,0xED,0x5B,0x1A,0xB8, -0x19,0x22,0x1C,0xB8,0xCD,0x3F,0x25,0x38,0xF0,0xC8,0x2A,0xA6,0xB8,0x37,0xC9,0x2A, -0x03,0xB8,0xED,0x5B,0x1C,0xB8,0xED,0x4B,0x1A,0xB8,0x7B,0x95,0x7A,0x9C,0xDA,0xA6, -0xBA,0x09,0x2B,0xEB,0x09,0x2B,0xEB,0xC3,0xAC,0xBA,0xE5,0xC5,0x4F,0x21,0x47,0xB8, -0x06,0x03,0xCD,0x8E,0x24,0x79,0xC1,0xE1,0xC0,0x32,0x5E,0xB8,0xED,0x53,0x64,0xB8, -0xED,0x43,0x66,0xB8,0x22,0x48,0xB8,0xED,0x53,0x5F,0xB8,0x21,0xFF,0xF7,0x19,0x3F, -0xD8,0x21,0x00,0x08,0x22,0x5F,0xB8,0xEB,0xED,0x52,0xE5,0x2A,0x48,0xB8,0x19,0xE5, -0xCD,0x14,0x26,0xE1,0xD1,0xD0,0x18,0xDC,0x21,0x02,0xB8,0x7E,0xB7,0xC0,0x36,0x05, -0xED,0x53,0x03,0xB8,0xCD,0x8E,0x23,0xCD,0x44,0x25,0x38,0xFB,0xC3,0x01,0x24,0x3A, -0x18,0xB8,0xB7,0xC0,0x01,0x01,0x83,0xCD,0x73,0x26,0x30,0x5C,0x21,0x8C,0xB8,0x11, -0x40,0x00,0x3E,0x2C,0xCD,0x36,0x28,0x30,0x4F,0xCD,0xC5,0x25,0x20,0x57,0x06,0x8B, -0x38,0x02,0x06,0x89,0xCD,0x92,0x26,0xED,0x5B,0x9F,0xB8,0x2A,0x1C,0xB8,0x3A,0x02, -0xB8,0xFE,0x03,0x28,0x0E,0x21,0xFF,0xF7,0x19,0x3E,0x04,0x38,0x2B,0x2A,0x03,0xB8, -0x22,0x05,0xB8,0x3E,0x16,0xCD,0x36,0x28,0x30,0x1E,0x21,0x17,0xB8,0x34,0x3A,0x9D, -0xB8,0x23,0x77,0xAF,0x32,0x1E,0xB8,0x2A,0x9F,0xB8,0x22,0x1A,0xB8,0xCD,0xBF,0x27, -0x3E,0x8C,0xCC,0x0C,0x27,0x37,0x18,0x65,0xB7,0x21,0x02,0xB8,0x28,0x5D,0x06,0x85, -0xCD,0x13,0x27,0x18,0x97,0xF5,0x06,0x88,0xCD,0x92,0x26,0xF1,0x30,0x8E,0x06,0x87, -0xCD,0x11,0x27,0x18,0x87,0xCD,0xBF,0x27,0x37,0xC8,0x3A,0x1E,0xB8,0xB7,0x28,0x1B, -0x3A,0xA3,0xB8,0x2F,0xB7,0xC0,0x3A,0x07,0xB8,0xB7,0xC4,0xF3,0x25,0xC0,0x21,0x8C, -0xB8,0x11,0x07,0xB8,0x01,0x40,0x00,0xED,0xB0,0xAF,0xC9,0xCD,0xF3,0x25,0xC0,0xEB, -0x1A,0xBE,0xC9,0x21,0x07,0xB8,0x11,0x8C,0xB8,0x06,0x10,0x1A,0xCD,0xB6,0x27,0x4F, -0x7E,0xCD,0xB6,0x27,0xA9,0xC0,0x23,0x13,0x10,0xF1,0xC9,0x36,0x04,0x9F,0xF5,0xCD, -0x4F,0x2A,0xF1,0xC9,0x01,0x02,0x84,0xCD,0x73,0x26,0x30,0x4A,0x06,0x8A,0x11,0x4C, -0xB8,0xCD,0x95,0x26,0x21,0x63,0xB8,0xCD,0x88,0x26,0x30,0x3A,0x2A,0x48,0xB8,0x22, -0x4A,0xB8,0x22,0x61,0xB8,0xE5,0x21,0x4C,0xB8,0x11,0x40,0x00,0x3E,0x2C,0xCD,0x3F, -0x28,0xE1,0x30,0x22,0xED,0x5B,0x5F,0xB8,0x3E,0x16,0xCD,0x3F,0x28,0x21,0x5D,0xB8, -0xDC,0x88,0x26,0x30,0x11,0x21,0x00,0x00,0x22,0x5F,0xB8,0x21,0x5C,0xB8,0x34,0xAF, -0x32,0x63,0xB8,0x37,0x18,0xA7,0xB7,0x21,0x47,0xB8,0x28,0x9F,0x06,0x86,0xCD,0x13, -0x27,0x18,0xB9,0x21,0xCC,0xB8,0x79,0xBE,0x36,0x00,0x37,0xE5,0xC5,0xC4,0x60,0x27, -0xC1,0xE1,0x9F,0xD0,0x71,0xC3,0x4B,0x2A,0x7E,0xB7,0x37,0xC8,0x01,0x2C,0x01,0xC3, -0x72,0x2A,0x11,0x8C,0xB8,0x3A,0x00,0xB8,0xB7,0xC0,0x32,0x01,0xB8,0xCD,0x83,0x27, -0xCD,0x26,0x27,0x1A,0xB7,0x20,0x0A,0x3E,0x8E,0xCD,0x27,0x27,0x01,0x10,0x00,0x18, -0x2E,0xCD,0xBF,0x27,0x01,0x00,0x10,0x28,0x0D,0x6B,0x62,0x7E,0xB7,0x28,0x04,0x0C, -0x23,0x10,0xF8,0x78,0x41,0x4F,0xCD,0x8D,0x27,0x1A,0xCD,0xB6,0x27,0xB7,0x20,0x02, -0x3E,0x20,0xC5,0xD5,0xCD,0x34,0x13,0xD1,0xC1,0x13,0x10,0xED,0xCD,0x5C,0x27,0xEB, -0x09,0xEB,0x3E,0x8D,0xCD,0x27,0x27,0x06,0x02,0xCD,0x8D,0x27,0x1A,0xCD,0xA4,0x27, -0xCD,0x5C,0x27,0x13,0xCD,0xBF,0x27,0x20,0x0B,0x13,0x1A,0xE6,0x0F,0xC6,0x24,0xCD, -0x80,0x27,0x18,0x58,0x1A,0x21,0x01,0xB8,0xB6,0xC8,0x18,0x6F,0xCD,0x27,0x27,0x18, -0x6A,0x3E,0xFF,0xF5,0xCD,0x1F,0x27,0xF1,0xC6,0x60,0xD4,0x80,0x27,0x18,0x5C,0xCD, -0x80,0x11,0x25,0xC4,0x7B,0x27,0x78,0xE5,0xE6,0x7F,0x47,0x21,0xC5,0x27,0x28,0x07, -0x7E,0x23,0xB7,0x20,0xFB,0x10,0xF9,0x7E,0xB7,0x28,0x05,0xCD,0x43,0x27,0x18,0xF7, -0xE1,0x23,0xC9,0xFA,0x27,0x27,0xE5,0x06,0x00,0x04,0x7E,0x23,0x07,0x30,0xFA,0xCD, -0x8D,0x27,0xE1,0x7E,0x23,0xE6,0x7F,0xCD,0x80,0x27,0x10,0xF7,0x3E,0x20,0x18,0x20, -0x3A,0x00,0xB8,0xB7,0x37,0xC0,0xCD,0x1F,0x27,0xCD,0x42,0x1A,0x38,0xFB,0xCD,0x79, -0x12,0xCD,0x56,0x1B,0xCD,0x81,0x12,0xFE,0x1B,0xC8,0x37,0xCD,0x83,0x27,0x3E,0x0A, -0xC3,0x00,0x14,0xF5,0xE5,0x3E,0x01,0xCD,0x5E,0x11,0xE1,0xF1,0xC9,0xD5,0xCD,0x56, -0x12,0x5C,0xCD,0x80,0x11,0x7C,0x3D,0x83,0x80,0x3D,0xBA,0xD1,0xD8,0x3E,0xFF,0x32, -0x01,0xB8,0x18,0xD7,0x06,0xFF,0x04,0xD6,0x0A,0x30,0xFB,0xC6,0x3A,0xF5,0x78,0xB7, -0xC4,0xA4,0x27,0xF1,0x18,0xCA,0xFE,0x61,0xD8,0xFE,0x7B,0xD0,0xC6,0xE0,0xC9,0x3A, -0x02,0xB8,0xFE,0x05,0xC9,0x50,0x72,0x65,0x73,0xF3,0x00,0x50,0x4C,0x41,0xD9,0x74, -0x68,0x65,0xEE,0x61,0x6E,0xF9,0x6B,0x65,0x79,0xBA,0x00,0x65,0x72,0x72,0x6F,0xF2, -0x00,0x80,0x81,0x00,0x80,0x52,0x45,0xC3,0x61,0x6E,0xE4,0x81,0x00,0x52,0x65,0x61, -0xE4,0x82,0x00,0x57,0x72,0x69,0x74,0xE5,0x82,0x00,0x52,0x65,0x77,0x69,0x6E,0xE4, -0x74,0x61,0x70,0xE5,0x00,0x46,0x6F,0x75,0x6E,0x64,0x20,0xA0,0x00,0x4C,0x6F,0x61, -0x64,0x69,0x6E,0xE7,0x00,0x53,0x61,0x76,0x69,0x6E,0xE7,0x00,0x00,0x4F,0xEB,0x00, -0x62,0x6C,0x6F,0x63,0xEB,0x00,0x55,0x6E,0x6E,0x61,0x6D,0x65,0xE4,0x66,0x69,0x6C, -0x65,0x20,0x20,0x20,0xA0,0x00,0xCD,0x73,0x28,0xF5,0x21,0xB8,0x28,0x18,0x19,0xCD, -0x73,0x28,0xF5,0xCD,0x64,0x29,0x21,0xF7,0x28,0xDC,0x9D,0x28,0xDC,0x79,0x29,0x18, -0x0F,0xCD,0x73,0x28,0xF5,0x21,0xC7,0x28,0xE5,0xCD,0x19,0x29,0xE1,0xDC,0x9D,0x28, -0xD1,0xF5,0x01,0x82,0xF7,0xED,0x49,0x01,0x10,0xF6,0xED,0x49,0xFB,0x7A,0xCD,0x51, -0x2A,0xF1,0xC9,0x32,0xCD,0xB8,0x1B,0x1C,0xE5,0xD5,0xCD,0x68,0x1E,0xD1,0xDD,0xE1, -0xCD,0x4B,0x2A,0xF3,0x01,0x0E,0xF4,0xED,0x49,0x01,0xD0,0xF6,0xED,0x49,0x0E,0x10, -0xED,0x49,0x01,0x92,0xF7,0xED,0x49,0x01,0x58,0xF6,0xED,0x49,0xC9,0x7A,0xB7,0x28, -0x0D,0xE5,0xD5,0x1E,0x00,0xCD,0xAE,0x28,0xD1,0xE1,0xD0,0x15,0x20,0xF3,0x01,0xFF, -0xFF,0xED,0x43,0xD3,0xB8,0x16,0x01,0xE9,0xCD,0xB0,0x29,0xD0,0xDD,0x77,0x00,0xDD, -0x23,0x15,0x1D,0x20,0xF3,0x18,0x12,0xCD,0xB0,0x29,0xD0,0x47,0xCD,0xDC,0xBA,0xA8, -0x3E,0x03,0xC0,0xDD,0x23,0x15,0x1D,0x20,0xEE,0x15,0x28,0x06,0xCD,0xB0,0x29,0xD0, -0x18,0xF7,0xCD,0xA6,0x29,0xCD,0xB0,0x29,0xD0,0xAA,0x20,0x07,0xCD,0xB0,0x29,0xD0, -0xAB,0x37,0xC8,0x3E,0x02,0xB7,0xC9,0xCD,0xDC,0xBA,0xCD,0xF8,0x29,0xD0,0xDD,0x23, -0x15,0x1D,0x20,0xF3,0x15,0x28,0x07,0xAF,0xCD,0xF8,0x29,0xD0,0x18,0xF6,0xCD,0xA6, -0x29,0xCD,0xF8,0x29,0xD0,0x7B,0xC3,0xF8,0x29,0xD5,0xCD,0x23,0x29,0xD1,0xD8,0xB7, -0xC8,0x18,0xF6,0x2E,0x55,0xCD,0xCD,0x29,0xD0,0x11,0x00,0x00,0x62,0xCD,0xCD,0x29, -0xD0,0xEB,0x06,0x00,0x09,0xEB,0x25,0x20,0xF4,0x61,0x79,0x92,0x4F,0x9F,0x47,0xEB, -0x09,0xEB,0xCD,0xCD,0x29,0xD0,0x7A,0xCB,0x3F,0xCB,0x3F,0x8A,0x94,0x38,0xEA,0x91, -0x38,0xE7,0x7A,0x1F,0x8A,0x67,0x22,0xCE,0xB8,0xCD,0xB0,0x29,0xD0,0x21,0xCD,0xB8, -0xAE,0xC0,0x37,0xC9,0xCD,0x89,0x2A,0x21,0x01,0x08,0xCD,0x7C,0x29,0xD0,0xB7,0xCD, -0x08,0x2A,0xD0,0x3A,0xCD,0xB8,0xC3,0xF8,0x29,0x21,0x21,0x00,0x06,0xF4,0xED,0x78, -0xE6,0x04,0xC8,0xE5,0x37,0xCD,0x08,0x2A,0xE1,0x2B,0x7C,0xB5,0x20,0xEE,0x37,0xC9, -0x2A,0xD3,0xB8,0xAC,0xF2,0xA0,0x29,0x7C,0xEE,0x08,0x67,0x7D,0xEE,0x10,0x6F,0x37, -0xED,0x6A,0x22,0xD3,0xB8,0xC9,0x2A,0xD3,0xB8,0x7D,0x2F,0x5F,0x7C,0x2F,0x57,0xC9, -0xD5,0x1E,0x08,0x2A,0xCE,0xB8,0xCD,0xD4,0x29,0xDC,0xDD,0x29,0x30,0x0D,0x7C,0x91, -0x9F,0xCB,0x12,0xCD,0x90,0x29,0x1D,0x20,0xEA,0x7A,0x37,0xD1,0xC9,0x06,0xF4,0xED, -0x78,0xE6,0x04,0xC8,0xED,0x5F,0xC6,0x03,0x0F,0x0F,0xE6,0x1F,0x4F,0x06,0xF5,0x79, -0xC6,0x02,0x4F,0x38,0x0E,0xED,0x78,0xAD,0xE6,0x80,0x20,0xF3,0xAF,0xED,0x4F,0xCB, -0x0D,0x37,0xC9,0xAF,0xED,0x4F,0x3C,0xC9,0xD5,0x1E,0x08,0x57,0xCB,0x02,0xCD,0x08, -0x2A,0x30,0x03,0x1D,0x20,0xF6,0xD1,0xC9,0xED,0x4B,0xD0,0xB8,0x2A,0xD2,0xB8,0x9F, -0x67,0x28,0x07,0x7D,0x87,0x80,0x6F,0x79,0x90,0x4F,0x7D,0x32,0xD0,0xB8,0x2E,0x0A, -0xCD,0x37,0x2A,0x38,0x06,0x91,0x30,0x0C,0x2F,0x3C,0x4F,0x7C,0xCD,0x90,0x29,0x2E, -0x0B,0xCD,0x37,0x2A,0x3E,0x01,0xC9,0xED,0x5F,0xCB,0x3F,0x91,0x30,0x03,0x3C,0x20, -0xFD,0x06,0xF7,0xED,0x69,0xF5,0xAF,0xED,0x4F,0xF1,0xC9,0x3E,0x10,0x18,0x02,0x3E, -0xEF,0xC5,0x06,0xF6,0xED,0x48,0x04,0xE6,0x10,0x3E,0x08,0x28,0x01,0x3C,0xED,0x79, -0x37,0x28,0x0C,0x79,0xE6,0x10,0xC5,0x01,0xC8,0x00,0x37,0xCC,0x72,0x2A,0xC1,0x79, -0xC1,0xC9,0xC5,0xE5,0xCD,0x89,0x2A,0x3E,0x42,0xCD,0xBD,0x1C,0xE1,0xC1,0x20,0x07, -0x0B,0x78,0xB1,0x20,0xED,0x37,0xC9,0xAF,0xC9,0x01,0x82,0x06,0x0B,0x78,0xB1,0x20, -0xFB,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC5,0xD5,0xE5,0xE5,0x01,0xFF,0x00,0x0C, -0x7E,0x23,0xB7,0x20,0xFA,0x32,0xDD,0xB8,0xCD,0x6F,0x2C,0xE1,0xCD,0x67,0x2D,0xC5, -0xE5,0xCD,0xD9,0x2D,0xE1,0xC1,0xCD,0xC6,0x2A,0x30,0xF4,0xF5,0xCD,0xD2,0x2C,0xF1, -0xE1,0xD1,0xC1,0xFE,0xFC,0xC9,0xE5,0x21,0xE0,0x2A,0x5F,0x78,0xB1,0x7B,0x20,0x0B, -0xFE,0xF0,0x38,0x07,0xFE,0xF4,0x30,0x03,0x21,0x1C,0x2B,0xCD,0xF6,0x2D,0xE3,0xC9, -0x13,0x01,0x2C,0xFC,0x42,0x2B,0xEF,0x40,0x2B,0x0D,0x69,0x2B,0xF0,0xB3,0x2B,0xF1, -0x7E,0x2B,0xF2,0xAA,0x2B,0xF3,0x75,0x2B,0xF8,0xC7,0x2B,0xF9,0x92,0x2B,0xFA,0xBD, -0x2B,0xFB,0x89,0x2B,0xF4,0xA2,0x2C,0xF5,0xA7,0x2C,0xF6,0x9D,0x2C,0xF7,0x98,0x2C, -0xE0,0xEA,0x2C,0x7F,0x3D,0x2C,0x10,0x4A,0x2C,0xE1,0xF9,0x2B,0x04,0x2B,0x2B,0xF0, -0x2F,0x2B,0xF1,0x33,0x2B,0xF2,0x3B,0x2B,0xF3,0x37,0x2B,0x3E,0x07,0x18,0x0E,0x3E, -0x0B,0x18,0x0A,0x3E,0x0A,0x18,0x06,0x3E,0x09,0x18,0x02,0x3E,0x08,0xCD,0x00,0x14, -0xB7,0xC9,0xF5,0xCD,0x49,0x2B,0xF1,0x37,0xC9,0xCD,0x69,0x2B,0x21,0x61,0x2B,0xCD, -0x69,0x2B,0xCD,0x80,0x11,0x25,0xC8,0x3E,0x0D,0xCD,0x00,0x14,0x3E,0x0A,0xC3,0x00, -0x14,0x2A,0x42,0x72,0x65,0x61,0x6B,0x2A,0x00,0xF5,0x7E,0x23,0xB7,0xC4,0xA8,0x2D, -0x20,0xF8,0xF1,0x37,0xC9,0x16,0x01,0xCD,0x93,0x2B,0xCA,0x2B,0x2B,0xC9,0xCD,0xEB, -0x2B,0x79,0x90,0xBA,0xDA,0x2B,0x2B,0x18,0x0A,0xCD,0xEB,0x2B,0x7A,0x93,0xC8,0x57, -0x18,0x01,0x51,0x78,0xB9,0xC8,0xD5,0xCD,0x50,0x2D,0x7E,0xD4,0xA8,0x2D,0x04,0x23, -0xD4,0x67,0x2D,0xD1,0x15,0x20,0xEC,0xF6,0xFF,0xC9,0x16,0x01,0xCD,0xC8,0x2B,0xCA, -0x2B,0x2B,0xC9,0xCD,0xEB,0x2B,0x78,0xBA,0xDA,0x2B,0x2B,0x18,0x0B,0xCD,0xEB,0x2B, -0x7B,0xD6,0x01,0xC8,0x57,0x18,0x01,0x51,0x78,0xB7,0xC8,0xCD,0x4A,0x2D,0x30,0x07, -0x05,0x2B,0x15,0x20,0xF3,0x18,0x11,0x78,0xB7,0x28,0x0A,0x05,0x2B,0xD5,0xCD,0x29, -0x2D,0xD1,0x15,0x20,0xF2,0xCD,0x67,0x2D,0xF6,0xFF,0xC9,0xE5,0xCD,0x56,0x12,0x7A, -0x94,0x3C,0x57,0xCD,0x80,0x11,0x5C,0xE1,0xC9,0x3A,0xDD,0xB8,0x2F,0x32,0xDD,0xB8, -0xC9,0xB7,0xC8,0x5F,0x3A,0xDD,0xB8,0xB7,0x28,0x0D,0x78,0xB9,0x28,0x09,0x73,0x7B, -0xCD,0xA8,0x2D,0x23,0x04,0xB7,0xC9,0x79,0xFE,0xFF,0xCA,0x2B,0x2B,0xAF,0x32,0xDC, -0xB8,0x7B,0xCD,0xA8,0x2D,0x0C,0xE5,0x7E,0x73,0x5F,0x23,0xB7,0x20,0xF9,0x77,0xE1, -0x04,0x23,0xCD,0x67,0x2D,0x3A,0xDC,0xB8,0xB7,0xC4,0x29,0x2D,0xC9,0x78,0xB7,0xCA, -0x2B,0x2B,0xCD,0x4A,0x2D,0xD2,0x2B,0x2B,0x05,0x2B,0x78,0xB9,0xCA,0x2B,0x2B,0xE5, -0x23,0x7E,0x2B,0x77,0x23,0xB7,0x20,0xF8,0x2B,0x36,0x20,0x32,0xDC,0xB8,0xE3,0xCD, -0x67,0x2D,0xE3,0x36,0x00,0xE1,0x0D,0x3A,0xDC,0xB8,0xB7,0xC4,0x2D,0x2D,0xC9,0x21, -0x00,0x00,0x22,0xDE,0xB8,0xC9,0xED,0x5B,0xDE,0xB8,0x7C,0xAA,0xC0,0x7D,0xAB,0xC0, -0x37,0xC9,0x4F,0x2A,0xDE,0xB8,0x7C,0xB5,0xC8,0x7D,0x81,0x6F,0xCD,0xCE,0x11,0x38, -0x03,0x21,0x00,0x00,0x22,0xDE,0xB8,0xC9,0x11,0x00,0x01,0x18,0x0D,0x11,0x00,0xFF, -0x18,0x08,0x11,0xFF,0x00,0x18,0x03,0x11,0x01,0x00,0xC5,0xE5,0x2A,0xDE,0xB8,0x7C, -0xB5,0xCC,0x80,0x11,0x7C,0x82,0x67,0x7D,0x83,0x6F,0xCD,0xCE,0x11,0x30,0x0B,0xE5, -0xCD,0xD2,0x2C,0xE1,0x22,0xDE,0xB8,0xCD,0xCD,0x2C,0xE1,0xC1,0xC9,0x11,0x68,0x12, -0x18,0x03,0x11,0x68,0x12,0x2A,0xDE,0xB8,0x7C,0xB5,0xC8,0xE5,0xCD,0x80,0x11,0xE3, -0xCD,0x74,0x11,0xCD,0x16,0x00,0xE1,0xC3,0x74,0x11,0xC5,0xE5,0xCD,0x80,0x11,0xEB, -0x2A,0xDE,0xB8,0x7C,0xB5,0x20,0x0C,0x78,0xB1,0x20,0x26,0xCD,0x80,0x11,0x22,0xDE, -0xB8,0x18,0x06,0xCD,0x74,0x11,0xCD,0x68,0x12,0xCD,0xAB,0x13,0xF5,0xEB,0xCD,0x74, -0x11,0x2A,0xDE,0xB8,0x24,0xCD,0xCE,0x11,0x30,0x03,0x22,0xDE,0xB8,0xCD,0xCD,0x2C, -0xF1,0xE1,0xC1,0xDA,0x01,0x2C,0xC3,0x2B,0x2B,0x16,0x01,0x18,0x02,0x16,0xFF,0xC5, -0xE5,0xD5,0xCD,0xD2,0x2C,0xD1,0x2A,0xDE,0xB8,0x7C,0xB5,0x28,0x09,0x7C,0x82,0x67, -0xCD,0x8C,0x2C,0xCD,0xCD,0x2C,0xE1,0xC1,0xB7,0xC9,0xD5,0x11,0x08,0xFF,0x18,0x04, -0xD5,0x11,0x09,0x01,0xC5,0xE5,0xCD,0x80,0x11,0x7A,0x84,0x67,0xCD,0xCE,0x11,0x7B, -0xDC,0x00,0x14,0xE1,0xC1,0xD1,0xC9,0xC5,0xE5,0xEB,0xCD,0x80,0x11,0x4F,0xEB,0x7E, -0x23,0xB7,0xC4,0x85,0x2D,0x20,0xF8,0xCD,0x80,0x11,0x91,0xEB,0x85,0x6F,0xCD,0x74, -0x11,0xE1,0xC1,0xB7,0xC9,0xF5,0xC5,0xD5,0xE5,0x47,0xCD,0x80,0x11,0x91,0x83,0x5F, -0x48,0xCD,0xCE,0x11,0x38,0x05,0x78,0x87,0x3C,0x83,0x5F,0xEB,0xCD,0xCE,0x11,0x79, -0xDC,0xA8,0x2D,0xE1,0xD1,0xC1,0xF1,0xC9,0xF5,0xC5,0xD5,0xE5,0x47,0xCD,0x80,0x11, -0x4F,0xC5,0xCD,0xCE,0x11,0xC1,0xDC,0x76,0x2C,0xF5,0xDC,0xD2,0x2C,0x78,0xC5,0xCD, -0x34,0x13,0xC1,0xCD,0x80,0x11,0x91,0xC4,0x82,0x2C,0xF1,0x30,0x07,0x9F,0x32,0xDC, -0xB8,0xCD,0xCD,0x2C,0xE1,0xD1,0xC1,0xF1,0xC9,0xCD,0x80,0x11,0x4F,0xCD,0xCE,0x11, -0xCD,0x76,0x2C,0xDA,0x3C,0x1A,0xCD,0x79,0x12,0xCD,0x80,0x11,0x91,0xC4,0x82,0x2C, -0xCD,0x3C,0x1A,0xC3,0x81,0x12,0xF5,0xC5,0x46,0x23,0xE5,0x23,0x23,0xBE,0x23,0x28, -0x04,0x05,0x20,0xF7,0xE3,0xF1,0x7E,0x23,0x66,0x6F,0xC1,0xF1,0xC9,0xC7,0xC7,0xC7, -0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xE5,0xD5,0xC5,0xEB,0x01,0x05,0x00,0xED, -0xB0,0xEB,0x2B,0x7E,0xC1,0xD1,0xE1,0x37,0xC9,0xD5,0xC5,0xF6,0x7F,0x47,0xAF,0x12, -0x13,0x12,0x13,0x0E,0x90,0x7C,0xB7,0x20,0x08,0x4F,0x65,0x6F,0xB4,0x28,0x0D,0x0E, -0x88,0xFA,0x4B,0x2E,0x29,0x0D,0xB4,0xF2,0x44,0x2E,0x7C,0xA0,0xEB,0x73,0x23,0x77, -0x23,0x71,0xC1,0xE1,0xC9,0xC5,0x01,0x00,0xA0,0xCD,0x60,0x2E,0xC1,0xC9,0x06,0xA8, -0xD5,0xCD,0xA1,0x36,0xD1,0xC9,0xE5,0xDD,0xE1,0xAF,0xDD,0x96,0x04,0x28,0x1B,0xC6, -0x90,0xD0,0xD5,0xC5,0xC6,0x10,0xCD,0x3D,0x36,0xCB,0x21,0xED,0x5A,0x28,0x08,0xDD, -0x7E,0x03,0xB7,0x3F,0xC1,0xD1,0xC9,0x9F,0x18,0xF9,0x6F,0x67,0x37,0xC9,0xCD,0xA1, -0x2E,0xD0,0xF0,0xE5,0x79,0x34,0x20,0x06,0x23,0x3D,0x20,0xF9,0x34,0x0C,0xE1,0x37, -0xC9,0xE5,0xD5,0xE5,0xDD,0xE1,0xCD,0x04,0x36,0xD1,0xE1,0xC9,0xCD,0xA1,0x2E,0xD0, -0xC8,0xCB,0x78,0xC8,0x18,0xDD,0xCD,0xE8,0x35,0x47,0x28,0x52,0xFC,0xFB,0x35,0xE5, -0xDD,0x7E,0x04,0xD6,0x80,0x5F,0x9F,0x57,0x6B,0x62,0x29,0x29,0x29,0x19,0x29,0x19, -0x29,0x29,0x19,0x7C,0xD6,0x09,0x5F,0xE1,0xC5,0xD5,0xC4,0x1F,0x2F,0xFD,0x21,0x13, -0x2F,0xCD,0xA0,0x35,0x28,0x1B,0x30,0x08,0xCD,0x12,0x34,0xD1,0x1D,0xD5,0x18,0xED, -0xFD,0x21,0x18,0x2F,0xCD,0xA0,0x35,0x38,0x08,0xCD,0x9B,0x34,0xD1,0x1C,0xD5,0x18, -0xEF,0xCD,0x8E,0x2E,0x79,0xD1,0xC1,0x4F,0x3D,0x85,0x6F,0xD0,0x24,0xC9,0x5F,0x77, -0x0E,0x01,0xC9,0xF0,0x1F,0xBC,0x3E,0x96,0xFE,0x27,0x6B,0x6E,0x9E,0x2F,0x3C,0xB7, -0x37,0xC8,0x4F,0xF2,0x28,0x2F,0x2F,0x3C,0xCD,0x3E,0x2F,0x28,0x09,0xC5,0xF5,0xCD, -0x36,0x2F,0xF1,0xC1,0x18,0xF2,0x79,0xB7,0xF2,0x9E,0x34,0xC3,0x15,0x34,0x11,0x8F, -0x2F,0xD6,0x0D,0xD0,0xC6,0x0C,0x5F,0x87,0x87,0x83,0xC6,0x53,0x5F,0xCE,0x2F,0x93, -0x57,0xAF,0xC9,0x00,0x00,0x00,0x20,0x84,0x00,0x00,0x00,0x48,0x87,0x00,0x00,0x00, -0x7A,0x8A,0x00,0x00,0x40,0x1C,0x8E,0x00,0x00,0x50,0x43,0x91,0x00,0x00,0x24,0x74, -0x94,0x00,0x80,0x96,0x18,0x98,0x00,0x20,0xBC,0x3E,0x9B,0x00,0x28,0x6B,0x6E,0x9E, -0x00,0xF9,0x02,0x15,0xA2,0x40,0xB7,0x43,0x3A,0xA5,0x10,0xA5,0xD4,0x68,0xA8,0x2A, -0xE7,0x84,0x11,0xAC,0x21,0x65,0x89,0x22,0xE6,0xB8,0x21,0x07,0x6C,0x22,0xE4,0xB8, -0xC9,0xEB,0xCD,0x94,0x2F,0xEB,0xCD,0xE8,0x35,0xC8,0x11,0xE4,0xB8,0x06,0x04,0x1A, -0xAE,0x12,0x13,0x23,0x10,0xF9,0xC9,0xE5,0x2A,0xE6,0xB8,0x01,0x07,0x6C,0xCD,0xFA, -0x2F,0xE5,0x2A,0xE4,0xB8,0x01,0x65,0x89,0xCD,0xFA,0x2F,0xD5,0xE5,0x2A,0xE6,0xB8, -0xCD,0xFA,0x2F,0xE3,0x09,0x22,0xE4,0xB8,0xE1,0x01,0x07,0x6C,0xED,0x4A,0xC1,0x09, -0xC1,0x09,0x22,0xE6,0xB8,0xE1,0xE5,0xDD,0xE1,0x2A,0xE4,0xB8,0xED,0x5B,0xE6,0xB8, -0x01,0x00,0x00,0xDD,0x36,0x04,0x80,0xC3,0xB1,0x36,0xEB,0x21,0x00,0x00,0x3E,0x11, -0x3D,0xC8,0x29,0xCB,0x13,0xCB,0x12,0x30,0xF7,0x09,0x30,0xF4,0x13,0x18,0xF1,0x11, -0x8B,0x30,0x18,0x03,0x11,0x86,0x30,0xCD,0xE8,0x35,0x3D,0xFE,0x01,0xD0,0xD5,0xCD, -0x6C,0x35,0xF5,0xDD,0x36,0x04,0x80,0x11,0x81,0x30,0xCD,0x9A,0x35,0x30,0x06,0xDD, -0x34,0x04,0xF1,0x3D,0xF5,0xCD,0x16,0x33,0xD5,0x11,0x32,0x33,0xCD,0x3F,0x33,0xEB, -0xE1,0xD5,0x11,0x32,0x33,0xCD,0x37,0x33,0xD1,0xCD,0x9E,0x34,0xCD,0xA9,0x32,0x04, -0x4C,0x4B,0x57,0x5E,0x7F,0x0D,0x08,0x9B,0x13,0x80,0x23,0x93,0x38,0x76,0x80,0x20, -0x3B,0xAA,0x38,0x82,0xD5,0xCD,0x15,0x34,0xD1,0xE3,0x7C,0xB7,0xF2,0x71,0x30,0x2F, -0x3C,0x6F,0x7C,0x26,0x00,0xCD,0x29,0x2E,0xEB,0xE1,0xCD,0x3F,0x33,0xD1,0xC3,0x15, -0x34,0x34,0xF3,0x04,0x35,0x80,0xF8,0x17,0x72,0x31,0x80,0x85,0x9A,0x20,0x1A,0x7F, -0x06,0xE1,0xCD,0x07,0x33,0xD2,0x28,0x33,0x11,0x00,0x31,0xCD,0x9A,0x35,0xF2,0xEC, -0x36,0x11,0x05,0x31,0xCD,0x9A,0x35,0xFA,0xE6,0x36,0x11,0xFB,0x30,0xCD,0xD4,0x32, -0x7B,0xF2,0xB6,0x30,0xED,0x44,0xF5,0xCD,0x1D,0x33,0xCD,0x0F,0x33,0xD5,0xCD,0xAC, -0x32,0x03,0xF4,0x32,0xEB,0x0F,0x73,0x08,0xB8,0xD5,0x52,0x7B,0x00,0x00,0x00,0x00, -0x80,0xE3,0xCD,0xAC,0x32,0x02,0x09,0x60,0xDE,0x01,0x78,0xF8,0x17,0x72,0x31,0x7E, -0xCD,0x15,0x34,0xD1,0xE5,0xEB,0xCD,0x37,0x33,0xEB,0xE1,0xCD,0x9E,0x34,0x11,0xCC, -0x30,0xCD,0x3F,0x33,0xDD,0x34,0x04,0xF1,0xC3,0x7B,0x35,0x29,0x3B,0xAA,0x38,0x81, -0xC7,0x33,0x0F,0x30,0x87,0xF8,0x17,0x72,0xB1,0x87,0x11,0xCC,0x30,0xEB,0xCD,0xE8, -0x35,0xEB,0xCA,0x28,0x33,0xF5,0xCD,0xE8,0x35,0x28,0x25,0x47,0xFC,0xFB,0x35,0xE5, -0xCD,0x82,0x31,0xE1,0x38,0x25,0xE3,0xE1,0xFA,0x48,0x31,0xC5,0xD5,0xCD,0x14,0x30, -0xD1,0xDC,0x15,0x34,0xDC,0x90,0x30,0xC1,0xD0,0x78,0xB7,0xFC,0xFB,0x35,0x37,0xC9, -0xF1,0x37,0xF0,0xCD,0xEC,0x36,0xAF,0xC9,0xAF,0x3C,0xC9,0x4F,0xF1,0xC5,0xF5,0x79, -0x37,0x8F,0x30,0xFD,0x47,0xCD,0x0F,0x33,0xEB,0x78,0x87,0x28,0x15,0xF5,0xCD,0x1D, -0x33,0x30,0x16,0xF1,0x30,0xF4,0xF5,0x11,0xE8,0xB8,0xCD,0x15,0x34,0x30,0x0A,0xF1, -0x18,0xE8,0xF1,0x37,0xFC,0xFD,0x32,0x18,0xBE,0xF1,0xF1,0xC1,0xFA,0xE6,0x36,0xC3, -0xEE,0x36,0xC5,0xCD,0x17,0x33,0xCD,0xA1,0x2E,0x79,0xC1,0x30,0x02,0x28,0x03,0x78, -0xB7,0xC9,0x4F,0x7E,0x1F,0x9F,0xA0,0x47,0x79,0xFE,0x02,0x9F,0xD0,0x7E,0xFE,0x27, -0xD8,0xAF,0xC9,0x11,0xA9,0x31,0xC3,0x18,0x2E,0xA2,0xDA,0x0F,0x49,0x82,0x32,0xF7, -0xB8,0xC9,0xCD,0xE8,0x35,0xFC,0xFB,0x35,0xF6,0x01,0x18,0x01,0xAF,0xF5,0x11,0x1D, -0x32,0x06,0xF0,0x3A,0xF7,0xB8,0xB7,0x28,0x05,0x11,0x22,0x32,0x06,0xF6,0xCD,0x07, -0x33,0x30,0x3A,0xF1,0xCD,0xD5,0x32,0xD0,0x7B,0x1F,0xDC,0xFB,0x35,0x06,0xE8,0xCD, -0x07,0x33,0xD2,0xE6,0x36,0xDD,0x34,0x04,0xCD,0xA9,0x32,0x06,0x1B,0x2D,0x1A,0xE6, -0x6E,0xF8,0xFB,0x07,0x28,0x74,0x01,0x89,0x68,0x99,0x79,0xE1,0xDF,0x35,0x23,0x7D, -0x28,0xE7,0x5D,0xA5,0x80,0xA2,0xDA,0x0F,0x49,0x81,0xC3,0x15,0x34,0xF1,0xC2,0x28, -0x33,0x3A,0xF7,0xB8,0xFE,0x01,0xD8,0x11,0x27,0x32,0xC3,0x15,0x34,0x6E,0x83,0xF9, -0x22,0x7F,0xB6,0x60,0x0B,0x36,0x79,0x13,0x35,0xFA,0x0E,0x7B,0xD3,0xE0,0x2E,0x65, -0x86,0xCD,0x0F,0x33,0xD5,0xCD,0xB2,0x31,0xE3,0xDC,0xBC,0x31,0xD1,0xDA,0x9E,0x34, -0xC9,0xCD,0xE8,0x35,0xF5,0xFC,0xFB,0x35,0x06,0xF0,0xCD,0x07,0x33,0x30,0x4A,0x3D, -0xF5,0xF4,0xFD,0x32,0xCD,0xA9,0x32,0x0B,0xFF,0xC1,0x03,0x0F,0x77,0x83,0xFC,0xE8, -0xEB,0x79,0x6F,0xCA,0x78,0x36,0x7B,0xD5,0x3E,0xB0,0xB5,0x7C,0xB0,0xC1,0x8B,0x09, -0x7D,0xAF,0xE8,0x32,0xB4,0x7D,0x74,0x6C,0x65,0x62,0x7D,0xD1,0xF5,0x37,0x92,0x7E, -0x7A,0xC3,0xCB,0x4C,0x7E,0x83,0xA7,0xAA,0xAA,0x7F,0xFE,0xFF,0xFF,0x7F,0x80,0xCD, -0x15,0x34,0xF1,0x11,0x05,0x32,0xF4,0x3B,0x33,0x3A,0xF7,0xB8,0xB7,0x11,0x2C,0x32, -0xC4,0x15,0x34,0xF1,0xFC,0xFB,0x35,0x37,0xC9,0xCD,0x1D,0x33,0xCD,0x16,0x33,0xEB, -0xD1,0x1A,0x13,0x47,0xCD,0x18,0x2E,0x13,0x13,0x13,0x13,0x13,0xD5,0x11,0xED,0xB8, -0x05,0xC8,0xC5,0x11,0xF2,0xB8,0xCD,0x15,0x34,0xC1,0xD1,0xD5,0xC5,0xCD,0x3F,0x33, -0xC1,0xD1,0x18,0xE3,0xAF,0xF5,0xCD,0x15,0x34,0xF1,0x11,0xCC,0x30,0xC4,0x3F,0x33, -0xE5,0xCD,0x66,0x2E,0x30,0x13,0xD1,0xE5,0xF5,0xD5,0x11,0xED,0xB8,0xCD,0x29,0x2E, -0xEB,0xE1,0xCD,0x37,0x33,0xF1,0xD1,0x37,0xC9,0xE1,0xAF,0x3C,0xC9,0xCD,0x16,0x33, -0xEB,0xCD,0x28,0x33,0xC3,0x9E,0x34,0xCD,0x6C,0x35,0xF0,0xB8,0xC8,0x3F,0xC9,0xEB, -0x21,0xE8,0xB8,0xC3,0x18,0x2E,0xEB,0x21,0xF2,0xB8,0xC3,0x18,0x2E,0xEB,0x21,0xED, -0xB8,0xCD,0x18,0x2E,0xEB,0xC3,0x15,0x34,0xD5,0x11,0x32,0x33,0xCD,0x18,0x2E,0xD1, -0x37,0xC9,0x00,0x00,0x00,0x00,0x81,0x3E,0x01,0x18,0x05,0x3E,0x80,0x18,0x01,0xAF, -0xE5,0xDD,0xE1,0xD5,0xFD,0xE1,0xDD,0x46,0x03,0xFD,0x4E,0x03,0xB7,0x28,0x0B,0xFA, -0x58,0x33,0x3E,0x80,0xA9,0x4F,0x18,0x02,0xA8,0x47,0xDD,0x7E,0x04,0xFD,0xBE,0x04, -0x30,0x14,0x50,0x41,0x4A,0xB7,0x57,0xFD,0x7E,0x04,0xDD,0x77,0x04,0x28,0x54,0x92, -0xFE,0x21,0x30,0x4F,0x18,0x11,0xAF,0xFD,0x96,0x04,0x28,0x59,0xDD,0x86,0x04,0xFE, -0x21,0x30,0x52,0xE5,0xFD,0xE1,0xEB,0x5F,0x78,0xA9,0xF5,0xC5,0x7B,0xCD,0x43,0x36, -0x79,0xC1,0x4F,0xF1,0xFA,0xDA,0x33,0xFD,0x7E,0x00,0x85,0x6F,0xFD,0x7E,0x01,0x8C, -0x67,0xFD,0x7E,0x02,0x8B,0x5F,0xFD,0x7E,0x03,0xCB,0xFF,0x8A,0x57,0xD2,0xBA,0x36, -0xCB,0x1A,0xCB,0x1B,0xCB,0x1C,0xCB,0x1D,0xCB,0x19,0xDD,0x34,0x04,0xC2,0xBA,0x36, -0xC3,0xEE,0x36,0xFD,0x7E,0x02,0xDD,0x77,0x02,0xFD,0x7E,0x01,0xDD,0x77,0x01,0xFD, -0x7E,0x00,0xDD,0x77,0x00,0xDD,0x70,0x03,0x37,0xC9,0xAF,0x91,0x4F,0xFD,0x7E,0x00, -0x9D,0x6F,0xFD,0x7E,0x01,0x9C,0x67,0xFD,0x7E,0x02,0x9B,0x5F,0xFD,0x7E,0x03,0xCB, -0xFF,0x9A,0x57,0x30,0x16,0x78,0x2F,0x47,0xAF,0x91,0x4F,0x3E,0x00,0x9D,0x6F,0x3E, -0x00,0x9C,0x67,0x3E,0x00,0x9B,0x5F,0x3E,0x00,0x9A,0x57,0x87,0xDA,0xBA,0x36,0xC3, -0xB1,0x36,0x11,0x53,0x2F,0xD5,0xFD,0xE1,0xE5,0xDD,0xE1,0xFD,0x7E,0x04,0xB7,0x28, -0x2C,0x3D,0xCD,0x48,0x35,0x28,0x26,0x30,0x21,0xF5,0xC5,0xCD,0x50,0x34,0x79,0xC1, -0x4F,0xF1,0xCB,0x7A,0x20,0x0D,0x3D,0x28,0x14,0xCB,0x21,0xCB,0x15,0xCB,0x14,0xCB, -0x13,0xCB,0x12,0xDD,0x77,0x04,0xB7,0xC2,0xBA,0x36,0xC3,0xEE,0x36,0xC3,0xE6,0x36, -0x21,0x00,0x00,0x5D,0x54,0xFD,0x7E,0x00,0xCD,0x93,0x34,0xFD,0x7E,0x01,0xCD,0x93, -0x34,0xFD,0x7E,0x02,0xCD,0x93,0x34,0xFD,0x7E,0x03,0xF6,0x80,0x06,0x08,0x1F,0x4F, -0x30,0x14,0x7D,0xDD,0x86,0x00,0x6F,0x7C,0xDD,0x8E,0x01,0x67,0x7B,0xDD,0x8E,0x02, -0x5F,0x7A,0xDD,0x8E,0x03,0x57,0xCB,0x1A,0xCB,0x1B,0xCB,0x1C,0xCB,0x1D,0xCB,0x19, -0x10,0xDE,0xC9,0xB7,0x20,0xD6,0x6C,0x63,0x5A,0x57,0xC9,0x11,0x53,0x2F,0xD5,0xFD, -0xE1,0xE5,0xDD,0xE1,0xAF,0xFD,0x96,0x04,0x28,0x58,0xCD,0x48,0x35,0xCA,0xE6,0x36, -0x30,0x4D,0xC5,0x4F,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F,0xEB,0xFD,0x46,0x03, -0xCB,0xF8,0xCD,0x32,0x35,0x30,0x06,0x79,0xB7,0x20,0x08,0x18,0x31,0x0D,0x29,0xCB, -0x13,0xCB,0x12,0xDD,0x71,0x04,0xCD,0x07,0x35,0xDD,0x71,0x03,0xCD,0x07,0x35,0xDD, -0x71,0x02,0xCD,0x07,0x35,0xDD,0x71,0x01,0xCD,0x07,0x35,0xD4,0x32,0x35,0x9F,0x69, -0xDD,0x66,0x01,0xDD,0x5E,0x02,0xDD,0x56,0x03,0xC1,0x4F,0xC3,0xBA,0x36,0xC1,0xC3, -0xEE,0x36,0xCD,0x94,0x35,0xAF,0xC9,0x0E,0x01,0x38,0x08,0x7A,0xB8,0x3F,0xCC,0x36, -0x35,0x30,0x13,0x7D,0xFD,0x96,0x00,0x6F,0x7C,0xFD,0x9E,0x01,0x67,0x7B,0xFD,0x9E, -0x02,0x5F,0x7A,0x98,0x57,0x37,0xCB,0x11,0x9F,0x29,0xCB,0x13,0xCB,0x12,0x3C,0x20, -0xD8,0xC9,0x7A,0xB8,0x3F,0xC0,0x7B,0xFD,0xBE,0x02,0x3F,0xC0,0x7C,0xFD,0xBE,0x01, -0x3F,0xC0,0x7D,0xFD,0xBE,0x00,0x3F,0xC9,0x4F,0xDD,0x7E,0x03,0xFD,0xAE,0x03,0x47, -0xDD,0x7E,0x04,0xB7,0xC8,0x81,0x4F,0x1F,0xA9,0x79,0xF2,0x68,0x35,0xDD,0xCB,0x03, -0xFE,0xD6,0x7F,0x37,0xC0,0xFE,0x01,0xC9,0xB7,0xF8,0xAF,0xC9,0xE5,0xDD,0xE1,0xDD, -0x7E,0x04,0xB7,0xC8,0xD6,0x80,0x37,0xC9,0xE5,0xDD,0xE1,0xB7,0xFA,0x89,0x35,0xDD, -0x86,0x04,0xDD,0x77,0x04,0x3F,0xD8,0x18,0x0B,0xDD,0x86,0x04,0x38,0x02,0xAF,0x37, -0xDD,0x77,0x04,0xC9,0xDD,0x46,0x03,0xCD,0xEE,0x36,0xE5,0xDD,0xE1,0xD5,0xFD,0xE1, -0xDD,0x7E,0x04,0xFD,0xBE,0x04,0x38,0x3A,0x20,0x33,0xB7,0xC8,0xDD,0x7E,0x03,0xFD, -0xAE,0x03,0xFA,0xDD,0x35,0xDD,0x7E,0x03,0xFD,0x96,0x03,0x20,0x17,0xDD,0x7E,0x02, -0xFD,0x96,0x02,0x20,0x0F,0xDD,0x7E,0x01,0xFD,0x96,0x01,0x20,0x07,0xDD,0x7E,0x00, -0xFD,0x96,0x00,0xC8,0x9F,0xFD,0xAE,0x03,0x87,0x9F,0xD8,0x3C,0xC9,0xDD,0x7E,0x03, -0x18,0xF6,0xFD,0x7E,0x03,0x2F,0x18,0xF0,0xE5,0xDD,0xE1,0xDD,0x7E,0x04,0xB7,0xC8, -0xDD,0x7E,0x03,0x87,0x9F,0xD8,0x3C,0xC9,0xE5,0xDD,0xE1,0xDD,0x7E,0x03,0xEE,0x80, -0xDD,0x77,0x03,0xC9,0xAF,0xDD,0x96,0x04,0x20,0x0A,0x06,0x04,0x77,0x23,0x10,0xFC, -0x0E,0x01,0x37,0xC9,0xC6,0xA0,0xD0,0xE5,0xCD,0x3D,0x36,0xAF,0xB8,0x8F,0xB1,0x4D, -0x44,0xE1,0x71,0x23,0x70,0x23,0x73,0x23,0x5F,0x7E,0x72,0xE6,0x80,0x47,0x0E,0x04, -0xAF,0xB6,0x20,0x05,0x2B,0x0D,0x20,0xF9,0x0C,0x7B,0xB7,0x37,0xC9,0xFE,0x21,0x38, -0x02,0x3E,0x21,0x5E,0x23,0x56,0x23,0x4E,0x23,0x66,0x69,0xEB,0xCB,0xFA,0x01,0x00, -0x00,0x18,0x0B,0x4F,0x78,0xB5,0x47,0x79,0x4D,0x6C,0x63,0x5A,0x16,0x00,0xD6,0x08, -0x30,0xF1,0xC6,0x08,0xC8,0xCB,0x3A,0xCB,0x1B,0xCB,0x1C,0xCB,0x1D,0xCB,0x19,0x3D, -0x20,0xF3,0xC9,0x14,0x15,0xF8,0x20,0x17,0x57,0x7B,0xB4,0xB5,0xB1,0xC8,0x7A,0xD6, -0x08,0x38,0x1C,0xC8,0x53,0x5C,0x65,0x69,0x0E,0x00,0x14,0x15,0x28,0xF1,0xF8,0x3D, -0xC8,0xCB,0x21,0xCB,0x15,0xCB,0x14,0xCB,0x13,0xCB,0x12,0xF2,0x8F,0x36,0xC9,0xAF, -0xC9,0xE5,0xDD,0xE1,0xDD,0x70,0x04,0x47,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F, -0xEB,0xDD,0x7E,0x04,0xCD,0x73,0x36,0xDD,0x77,0x04,0xCB,0x21,0x30,0x13,0x2C,0x20, -0x10,0x24,0x20,0x0D,0x1C,0x20,0x0A,0x14,0x20,0x07,0xDD,0x34,0x04,0x28,0x1F,0x16, -0x80,0x78,0xF6,0x7F,0xA2,0xDD,0x77,0x03,0xDD,0x73,0x02,0xDD,0x74,0x01,0xDD,0x75, -0x00,0xDD,0xE5,0xE1,0x37,0xC9,0xAF,0xDD,0x77,0x04,0x18,0xF5,0x06,0x00,0x78,0xF6, -0x7F,0xDD,0x77,0x03,0xF6,0xFF,0xDD,0x77,0x04,0xDD,0x77,0x00,0xDD,0x77,0x01,0xDD, -0x77,0x02,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0x44,0xCD,0xD1,0x37,0x18,0x02,0x06,0x00, -0x1E,0x00,0x0E,0x02,0xC9,0x7C,0xB7,0xFA,0x20,0x37,0xB0,0xFA,0xD4,0x37,0x37,0xC9, -0xEE,0x80,0xB5,0xC0,0x78,0x37,0x8F,0xC9,0xB7,0xED,0x5A,0x37,0xE0,0xF6,0xFF,0xC9, -0xEB,0xB7,0xED,0x52,0x37,0xE0,0xF6,0xFF,0xC9,0xCD,0x45,0x37,0xCD,0x50,0x37,0xD2, -0x15,0x37,0xF6,0xFF,0xC9,0x7C,0xAA,0x47,0xEB,0xCD,0xD1,0x37,0xEB,0xC3,0xD1,0x37, -0x7C,0xB7,0x28,0x05,0x7A,0xB7,0x37,0xC0,0xEB,0xB5,0xC8,0x7A,0xB3,0x7D,0x6B,0x62, -0xC8,0xFE,0x03,0x38,0x10,0x37,0x8F,0x30,0xFD,0x29,0xD8,0x87,0x30,0x02,0x19,0xD8, -0xFE,0x80,0x20,0xF5,0xC9,0xFE,0x01,0xC8,0x29,0xC9,0xCD,0x89,0x37,0xDA,0x15,0x37, -0xC9,0x4C,0xCD,0x89,0x37,0xEB,0x41,0x18,0xF4,0xCD,0x45,0x37,0x7A,0xB3,0xC8,0xC5, -0xEB,0x06,0x01,0x7C,0xB7,0x20,0x09,0x7A,0xBD,0x38,0x05,0x65,0x2E,0x00,0x06,0x09, -0x7B,0x95,0x7A,0x9C,0x38,0x05,0x04,0x29,0x30,0xF6,0x3F,0x3F,0x78,0x44,0x4D,0x21, -0x00,0x00,0x3D,0x20,0x03,0x18,0x17,0x29,0xF5,0x78,0x1F,0x47,0x79,0x1F,0x4F,0x7B, -0x91,0x7A,0x98,0x38,0x05,0x57,0x7B,0x91,0x5F,0x2C,0xF1,0x3D,0x20,0xE9,0x37,0xC1, -0xC9,0x7C,0xB7,0xF0,0xAF,0x95,0x6F,0x9C,0x95,0xBC,0x67,0x37,0xC0,0xFE,0x01,0xC9, -0x7C,0x87,0x9F,0xD8,0xB5,0xC8,0xAF,0x3C,0xC9,0x7C,0xAA,0x7C,0xF2,0xF4,0x37,0x87, -0x9F,0xD8,0x3C,0xC9,0xBA,0x20,0xF9,0x7D,0x93,0x20,0xF5,0xC9,0xC7,0xC7,0xC7,0x01, -0xFF,0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xFF,0xFF,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0, -0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xFF,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0xFF, -0x0C,0x18,0x30,0x7E,0x0C,0x18,0x30,0x00,0xFF,0xC3,0xE7,0xDB,0xDB,0xE7,0xC3,0xFF, -0x00,0x01,0x03,0x06,0xCC,0x78,0x30,0x00,0x3C,0x66,0xC3,0xC3,0xFF,0x24,0xE7,0x00, -0x00,0x00,0x30,0x60,0xFF,0x60,0x30,0x00,0x00,0x00,0x0C,0x06,0xFF,0x06,0x0C,0x00, -0x18,0x18,0x18,0x18,0xDB,0x7E,0x3C,0x18,0x18,0x3C,0x7E,0xDB,0x18,0x18,0x18,0x18, -0x18,0x5A,0x3C,0x99,0xDB,0x7E,0x3C,0x18,0x00,0x03,0x33,0x63,0xFE,0x60,0x30,0x00, -0x3C,0x66,0xFF,0xDB,0xDB,0xFF,0x66,0x3C,0x3C,0x66,0xC3,0xDB,0xDB,0xC3,0x66,0x3C, -0xFF,0xC3,0xC3,0xFF,0xC3,0xC3,0xC3,0xFF,0x3C,0x7E,0xDB,0xDB,0xDF,0xC3,0x66,0x3C, -0x3C,0x66,0xC3,0xDF,0xDB,0xDB,0x7E,0x3C,0x3C,0x66,0xC3,0xFB,0xDB,0xDB,0x7E,0x3C, -0x3C,0x7E,0xDB,0xDB,0xFB,0xC3,0x66,0x3C,0x00,0x01,0x33,0x1E,0xCE,0x7B,0x31,0x00, -0x7E,0x66,0x66,0x66,0x66,0x66,0x66,0xE7,0x03,0x03,0x03,0xFF,0x03,0x03,0x03,0x00, -0xFF,0x66,0x3C,0x18,0x18,0x3C,0x66,0xFF,0x18,0x18,0x3C,0x3C,0x3C,0x3C,0x18,0x18, -0x3C,0x66,0x66,0x30,0x18,0x00,0x18,0x00,0x3C,0x66,0xC3,0xFF,0xC3,0xC3,0x66,0x3C, -0xFF,0xDB,0xDB,0xDB,0xFB,0xC3,0xC3,0xFF,0xFF,0xC3,0xC3,0xFB,0xDB,0xDB,0xDB,0xFF, -0xFF,0xC3,0xC3,0xDF,0xDB,0xDB,0xDB,0xFF,0xFF,0xDB,0xDB,0xDB,0xDF,0xC3,0xC3,0xFF, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x00,0x18,0x00, -0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x00,0x6C,0x6C,0xFE,0x6C,0xFE,0x6C,0x6C,0x00, -0x18,0x3E,0x58,0x3C,0x1A,0x7C,0x18,0x00,0x00,0xC6,0xCC,0x18,0x30,0x66,0xC6,0x00, -0x38,0x6C,0x38,0x76,0xDC,0xCC,0x76,0x00,0x18,0x18,0x30,0x00,0x00,0x00,0x00,0x00, -0x0C,0x18,0x30,0x30,0x30,0x18,0x0C,0x00,0x30,0x18,0x0C,0x0C,0x0C,0x18,0x30,0x00, -0x00,0x66,0x3C,0xFF,0x3C,0x66,0x00,0x00,0x00,0x18,0x18,0x7E,0x18,0x18,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x30,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x06,0x0C,0x18,0x30,0x60,0xC0,0x80,0x00, -0x7C,0xC6,0xCE,0xD6,0xE6,0xC6,0x7C,0x00,0x18,0x38,0x18,0x18,0x18,0x18,0x7E,0x00, -0x3C,0x66,0x06,0x3C,0x60,0x66,0x7E,0x00,0x3C,0x66,0x06,0x1C,0x06,0x66,0x3C,0x00, -0x1C,0x3C,0x6C,0xCC,0xFE,0x0C,0x1E,0x00,0x7E,0x62,0x60,0x7C,0x06,0x66,0x3C,0x00, -0x3C,0x66,0x60,0x7C,0x66,0x66,0x3C,0x00,0x7E,0x66,0x06,0x0C,0x18,0x18,0x18,0x00, -0x3C,0x66,0x66,0x3C,0x66,0x66,0x3C,0x00,0x3C,0x66,0x66,0x3E,0x06,0x66,0x3C,0x00, -0x00,0x00,0x18,0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x18,0x18,0x00,0x18,0x18,0x30, -0x0C,0x18,0x30,0x60,0x30,0x18,0x0C,0x00,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00, -0x60,0x30,0x18,0x0C,0x18,0x30,0x60,0x00,0x3C,0x66,0x66,0x0C,0x18,0x00,0x18,0x00, -0x7C,0xC6,0xDE,0xDE,0xDE,0xC0,0x7C,0x00,0x18,0x3C,0x66,0x66,0x7E,0x66,0x66,0x00, -0xFC,0x66,0x66,0x7C,0x66,0x66,0xFC,0x00,0x3C,0x66,0xC0,0xC0,0xC0,0x66,0x3C,0x00, -0xF8,0x6C,0x66,0x66,0x66,0x6C,0xF8,0x00,0xFE,0x62,0x68,0x78,0x68,0x62,0xFE,0x00, -0xFE,0x62,0x68,0x78,0x68,0x60,0xF0,0x00,0x3C,0x66,0xC0,0xC0,0xCE,0x66,0x3E,0x00, -0x66,0x66,0x66,0x7E,0x66,0x66,0x66,0x00,0x7E,0x18,0x18,0x18,0x18,0x18,0x7E,0x00, -0x1E,0x0C,0x0C,0x0C,0xCC,0xCC,0x78,0x00,0xE6,0x66,0x6C,0x78,0x6C,0x66,0xE6,0x00, -0xF0,0x60,0x60,0x60,0x62,0x66,0xFE,0x00,0xC6,0xEE,0xFE,0xFE,0xD6,0xC6,0xC6,0x00, -0xC6,0xE6,0xF6,0xDE,0xCE,0xC6,0xC6,0x00,0x38,0x6C,0xC6,0xC6,0xC6,0x6C,0x38,0x00, -0xFC,0x66,0x66,0x7C,0x60,0x60,0xF0,0x00,0x38,0x6C,0xC6,0xC6,0xDA,0xCC,0x76,0x00, -0xFC,0x66,0x66,0x7C,0x6C,0x66,0xE6,0x00,0x3C,0x66,0x60,0x3C,0x06,0x66,0x3C,0x00, -0x7E,0x5A,0x18,0x18,0x18,0x18,0x3C,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x00, -0x66,0x66,0x66,0x66,0x66,0x3C,0x18,0x00,0xC6,0xC6,0xC6,0xD6,0xFE,0xEE,0xC6,0x00, -0xC6,0x6C,0x38,0x38,0x6C,0xC6,0xC6,0x00,0x66,0x66,0x66,0x3C,0x18,0x18,0x3C,0x00, -0xFE,0xC6,0x8C,0x18,0x32,0x66,0xFE,0x00,0x3C,0x30,0x30,0x30,0x30,0x30,0x3C,0x00, -0xC0,0x60,0x30,0x18,0x0C,0x06,0x02,0x00,0x3C,0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x00, -0x18,0x3C,0x7E,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF, -0x30,0x18,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x0C,0x7C,0xCC,0x76,0x00, -0xE0,0x60,0x7C,0x66,0x66,0x66,0xDC,0x00,0x00,0x00,0x3C,0x66,0x60,0x66,0x3C,0x00, -0x1C,0x0C,0x7C,0xCC,0xCC,0xCC,0x76,0x00,0x00,0x00,0x3C,0x66,0x7E,0x60,0x3C,0x00, -0x1C,0x36,0x30,0x78,0x30,0x30,0x78,0x00,0x00,0x00,0x3E,0x66,0x66,0x3E,0x06,0x7C, -0xE0,0x60,0x6C,0x76,0x66,0x66,0xE6,0x00,0x18,0x00,0x38,0x18,0x18,0x18,0x3C,0x00, -0x06,0x00,0x0E,0x06,0x06,0x66,0x66,0x3C,0xE0,0x60,0x66,0x6C,0x78,0x6C,0xE6,0x00, -0x38,0x18,0x18,0x18,0x18,0x18,0x3C,0x00,0x00,0x00,0x6C,0xFE,0xD6,0xD6,0xC6,0x00, -0x00,0x00,0xDC,0x66,0x66,0x66,0x66,0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x3C,0x00, -0x00,0x00,0xDC,0x66,0x66,0x7C,0x60,0xF0,0x00,0x00,0x76,0xCC,0xCC,0x7C,0x0C,0x1E, -0x00,0x00,0xDC,0x76,0x60,0x60,0xF0,0x00,0x00,0x00,0x3C,0x60,0x3C,0x06,0x7C,0x00, -0x30,0x30,0x7C,0x30,0x30,0x36,0x1C,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x3E,0x00, -0x00,0x00,0x66,0x66,0x66,0x3C,0x18,0x00,0x00,0x00,0xC6,0xD6,0xD6,0xFE,0x6C,0x00, -0x00,0x00,0xC6,0x6C,0x38,0x6C,0xC6,0x00,0x00,0x00,0x66,0x66,0x66,0x3E,0x06,0x7C, -0x00,0x00,0x7E,0x4C,0x18,0x32,0x7E,0x00,0x0E,0x18,0x18,0x70,0x18,0x18,0x0E,0x00, -0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,0x70,0x18,0x18,0x0E,0x18,0x18,0x70,0x00, -0x76,0xDC,0x00,0x00,0x00,0x00,0x00,0x00,0xCC,0x33,0xCC,0x33,0xCC,0x33,0xCC,0x33, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0x00,0x00,0x00,0x00, -0x0F,0x0F,0x0F,0x0F,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0, -0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0xFF,0xFF,0xFF,0xFF,0xF0,0xF0,0xF0,0xF0, -0x00,0x00,0x00,0x00,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F, -0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F, -0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xF0,0xF0,0xF0,0xF0,0xFF,0xFF,0xFF,0xFF, -0x0F,0x0F,0x0F,0x0F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, -0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x00,0x00,0x00, -0x00,0x00,0x00,0x1F,0x1F,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x0F,0x00,0x00,0x00, -0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18, -0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18, -0x00,0x00,0x00,0xF8,0xF8,0x00,0x00,0x00,0x18,0x18,0x18,0xF8,0xF0,0x00,0x00,0x00, -0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x18,0x18,0x18,0xFF,0xFF,0x00,0x00,0x00, -0x00,0x00,0x00,0xF0,0xF8,0x18,0x18,0x18,0x18,0x18,0x18,0xF8,0xF8,0x18,0x18,0x18, -0x00,0x00,0x00,0xFF,0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0xFF,0xFF,0x18,0x18,0x18, -0x10,0x38,0x6C,0xC6,0x00,0x00,0x00,0x00,0x0C,0x18,0x30,0x00,0x00,0x00,0x00,0x00, -0x66,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x60,0xF8,0x60,0x66,0xFE,0x00, -0x38,0x44,0xBA,0xA2,0xBA,0x44,0x38,0x00,0x7E,0xF4,0xF4,0x74,0x34,0x34,0x34,0x00, -0x1E,0x30,0x38,0x6C,0x38,0x18,0xF0,0x00,0x18,0x18,0x0C,0x00,0x00,0x00,0x00,0x00, -0x40,0xC0,0x44,0x4C,0x54,0x1E,0x04,0x00,0x40,0xC0,0x4C,0x52,0x44,0x08,0x1E,0x00, -0xE0,0x10,0x62,0x16,0xEA,0x0F,0x02,0x00,0x00,0x18,0x18,0x7E,0x18,0x18,0x7E,0x00, -0x18,0x18,0x00,0x7E,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x7E,0x06,0x06,0x00,0x00, -0x18,0x00,0x18,0x30,0x66,0x66,0x3C,0x00,0x18,0x00,0x18,0x18,0x18,0x18,0x18,0x00, -0x00,0x00,0x73,0xDE,0xCC,0xDE,0x73,0x00,0x7C,0xC6,0xC6,0xFC,0xC6,0xC6,0xF8,0xC0, -0x00,0x66,0x66,0x3C,0x66,0x66,0x3C,0x00,0x3C,0x60,0x60,0x3C,0x66,0x66,0x3C,0x00, -0x00,0x00,0x1E,0x30,0x7C,0x30,0x1E,0x00,0x38,0x6C,0xC6,0xFE,0xC6,0x6C,0x38,0x00, -0x00,0xC0,0x60,0x30,0x38,0x6C,0xC6,0x00,0x00,0x00,0x66,0x66,0x66,0x7C,0x60,0x60, -0x00,0x00,0x00,0xFE,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x7E,0xD8,0xD8,0x70,0x00, -0x03,0x06,0x0C,0x3C,0x66,0x3C,0x60,0xC0,0x03,0x06,0x0C,0x66,0x66,0x3C,0x60,0xC0, -0x00,0xE6,0x3C,0x18,0x38,0x6C,0xC7,0x00,0x00,0x00,0x66,0xC3,0xDB,0xDB,0x7E,0x00, -0xFE,0xC6,0x60,0x30,0x60,0xC6,0xFE,0x00,0x00,0x7C,0xC6,0xC6,0xC6,0x6C,0xEE,0x00, -0x18,0x30,0x60,0xC0,0x80,0x00,0x00,0x00,0x18,0x0C,0x06,0x03,0x01,0x00,0x00,0x00, -0x00,0x00,0x00,0x01,0x03,0x06,0x0C,0x18,0x00,0x00,0x00,0x80,0xC0,0x60,0x30,0x18, -0x18,0x3C,0x66,0xC3,0x81,0x00,0x00,0x00,0x18,0x0C,0x06,0x03,0x03,0x06,0x0C,0x18, -0x00,0x00,0x00,0x81,0xC3,0x66,0x3C,0x18,0x18,0x30,0x60,0xC0,0xC0,0x60,0x30,0x18, -0x18,0x30,0x60,0xC1,0x83,0x06,0x0C,0x18,0x18,0x0C,0x06,0x83,0xC1,0x60,0x30,0x18, -0x18,0x3C,0x66,0xC3,0xC3,0x66,0x3C,0x18,0xC3,0xE7,0x7E,0x3C,0x3C,0x7E,0xE7,0xC3, -0x03,0x07,0x0E,0x1C,0x38,0x70,0xE0,0xC0,0xC0,0xE0,0x70,0x38,0x1C,0x0E,0x07,0x03, -0xCC,0xCC,0x33,0x33,0xCC,0xCC,0x33,0x33,0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55, -0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03, -0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0, -0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0xFF,0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01, -0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xFF,0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF, -0xAA,0x55,0xAA,0x55,0x00,0x00,0x00,0x00,0x0A,0x05,0x0A,0x05,0x0A,0x05,0x0A,0x05, -0x00,0x00,0x00,0x00,0xAA,0x55,0xAA,0x55,0xA0,0x50,0xA0,0x50,0xA0,0x50,0xA0,0x50, -0xAA,0x54,0xA8,0x50,0xA0,0x40,0x80,0x00,0xAA,0x55,0x2A,0x15,0x0A,0x05,0x02,0x01, -0x01,0x02,0x05,0x0A,0x15,0x2A,0x55,0xAA,0x00,0x80,0x40,0xA0,0x50,0xA8,0x54,0xAA, -0x7E,0xFF,0x99,0xFF,0xBD,0xC3,0xFF,0x7E,0x7E,0xFF,0x99,0xFF,0xC3,0xBD,0xFF,0x7E, -0x38,0x38,0xFE,0xFE,0xFE,0x10,0x38,0x00,0x10,0x38,0x7C,0xFE,0x7C,0x38,0x10,0x00, -0x6C,0xFE,0xFE,0xFE,0x7C,0x38,0x10,0x00,0x10,0x38,0x7C,0xFE,0xFE,0x10,0x38,0x00, -0x00,0x3C,0x66,0xC3,0xC3,0x66,0x3C,0x00,0x00,0x3C,0x7E,0xFF,0xFF,0x7E,0x3C,0x00, -0x00,0x7E,0x66,0x66,0x66,0x66,0x7E,0x00,0x00,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x00, -0x0F,0x07,0x0D,0x78,0xCC,0xCC,0xCC,0x78,0x3C,0x66,0x66,0x66,0x3C,0x18,0x7E,0x18, -0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x7C,0x38,0x18,0x1C,0x1E,0x1B,0x18,0x78,0xF8,0x70, -0x99,0x5A,0x24,0xC3,0xC3,0x24,0x5A,0x99,0x10,0x38,0x38,0x38,0x38,0x38,0x7C,0xD6, -0x18,0x3C,0x7E,0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xFF,0x7E,0x3C,0x18, -0x10,0x30,0x70,0xFF,0xFF,0x70,0x30,0x10,0x08,0x0C,0x0E,0xFF,0xFF,0x0E,0x0C,0x08, -0x00,0x00,0x18,0x3C,0x7E,0xFF,0xFF,0x00,0x00,0x00,0xFF,0xFF,0x7E,0x3C,0x18,0x00, -0x80,0xE0,0xF8,0xFE,0xF8,0xE0,0x80,0x00,0x02,0x0E,0x3E,0xFE,0x3E,0x0E,0x02,0x00, -0x38,0x38,0x92,0x7C,0x10,0x28,0x28,0x28,0x38,0x38,0x10,0xFE,0x10,0x28,0x44,0x82, -0x38,0x38,0x12,0x7C,0x90,0x28,0x24,0x22,0x38,0x38,0x90,0x7C,0x12,0x28,0x48,0x88, -0x00,0x3C,0x18,0x3C,0x3C,0x3C,0x18,0x00,0x3C,0xFF,0xFF,0x18,0x0C,0x18,0x30,0x18, -0x18,0x3C,0x7E,0x18,0x18,0x7E,0x3C,0x18,0x00,0x24,0x66,0xFF,0x66,0x24,0x00,0x00 -}; - - - -const unsigned char gb_rom_464_1[]={ -0x80,0x01,0x00,0x00,0x4C,0xC0,0x31,0x00,0xC0,0xCD,0xCB,0xBC,0xCD,0xC4,0xF4,0xDA, -0x00,0x00,0x21,0x00,0xAC,0x36,0x00,0x06,0x1B,0x23,0x36,0xC9,0x10,0xFB,0x21,0x3F, -0xC0,0xCD,0x37,0xC3,0xAF,0x32,0x00,0xAC,0xCD,0xCB,0xDD,0xCD,0x84,0xCA,0xCD,0x97, -0xBD,0xCD,0xD3,0xC0,0xCD,0x3E,0xC1,0x11,0xF0,0x00,0xCD,0x06,0xF7,0x18,0x25,0x20, -0x42,0x41,0x53,0x49,0x43,0x20,0x31,0x2E,0x30,0x0A,0x0A,0x00,0x42,0x41,0x53,0x49, -0xC3,0x00,0xCD,0xE1,0xCE,0xC0,0x31,0x00,0xC0,0xCD,0x9A,0xE7,0xCD,0x63,0xE1,0xCD, -0x43,0xCA,0x38,0x54,0xCD,0x01,0xAC,0x31,0x00,0xC0,0xCD,0x62,0xC1,0xCD,0xD6,0xDD, -0xDC,0xB6,0xBC,0xCD,0x48,0xBB,0xCD,0x86,0xC3,0x3A,0x45,0xAE,0xB7,0xC4,0x3E,0xC1, -0x3A,0xAA,0xAD,0xD6,0x02,0x20,0x09,0x32,0xAA,0xAD,0xCD,0xDF,0xCA,0xEB,0x38,0xC6, -0x21,0xCC,0xC0,0xCD,0x41,0xC3,0xCD,0xCB,0xDD,0x3A,0x1C,0xAC,0xB7,0x28,0x11,0xCD, -0x02,0xC1,0x30,0xC0,0x7E,0xB7,0x28,0xF1,0xCD,0xD2,0xE6,0xCD,0x7A,0xC1,0x18,0xE9, -0xCD,0x3B,0xCA,0x30,0xFB,0xCD,0x4E,0xC3,0xCD,0xBC,0xE6,0x30,0x05,0xC4,0x7A,0xC1, -0x18,0xD4,0xCD,0xBB,0xDE,0xCD,0x53,0xC4,0x2B,0xC3,0x74,0xDD,0x52,0x65,0x61,0x64, -0x79,0x0A,0x00,0xAF,0x18,0x05,0x22,0x1D,0xAC,0x3E,0xFF,0x32,0x1C,0xAC,0xC9,0x11, -0x0A,0x00,0x28,0x02,0xFE,0x2C,0xC4,0xE1,0xCE,0xD5,0x11,0x0A,0x00,0xCD,0x55,0xDD, -0xDC,0xE1,0xCE,0xCD,0x4A,0xDD,0xEB,0x22,0x1F,0xAC,0xE1,0xCD,0xD6,0xC0,0xC1,0xC3, -0x96,0xC0,0x2A,0x1D,0xAC,0xE5,0xCD,0x79,0xEE,0xD1,0xCD,0xA3,0xE7,0x3E,0x2A,0x38, -0x02,0x3E,0x20,0xCD,0x56,0xC3,0xCD,0xD3,0xC0,0xCD,0x3B,0xCA,0xD0,0xCD,0x4E,0xC3, -0xE5,0x2A,0x1F,0xAC,0x19,0xD4,0xD6,0xC0,0xE1,0x37,0xC9,0xC0,0xCD,0x3E,0xC1,0xC3, -0x64,0xC0,0xE5,0xCD,0x8C,0xC1,0xCD,0x5B,0xC1,0xCD,0x7A,0xC1,0xE1,0xC9,0x2A,0x7F, -0xAE,0xEB,0x2A,0x7B,0xAE,0xCD,0xDA,0xFF,0x62,0x6B,0x13,0xAF,0x77,0xED,0xB0,0x32, -0x45,0xAE,0xCD,0x76,0xE6,0xCD,0x8C,0xC1,0xCD,0x6B,0xC1,0xCD,0xAD,0xD2,0xAF,0xCD, -0x73,0xBD,0xCD,0xB3,0xFB,0xCD,0xFD,0xD9,0xC3,0x9D,0xC1,0xCD,0xE6,0xDD,0xCD,0xD3, -0xC0,0xCD,0xF2,0xF1,0xCD,0x76,0xE6,0xCD,0xB1,0xD5,0xCD,0xD9,0xCB,0xCD,0xAB,0xCB, -0xCD,0xED,0xC8,0xCD,0x8E,0xF5,0xCD,0xD2,0xD5,0xC3,0xE5,0xDC,0xC5,0xE5,0xCD,0xCA, -0xF5,0xCD,0xAE,0xD5,0xCD,0xFC,0xD5,0xCD,0x89,0xE9,0xE1,0xC1,0xC9,0xAF,0xCD,0xAF, -0xC1,0xAF,0xE5,0xF5,0xFE,0x08,0xDC,0xB4,0xBB,0xF1,0x21,0x21,0xAC,0x18,0x04,0xE5, -0x21,0x22,0xAC,0xD5,0x5F,0x7E,0x73,0xD1,0xE1,0xC9,0x3A,0x21,0xAC,0xFE,0x08,0xC9, -0x3A,0x22,0xAC,0xFE,0x09,0xC9,0xCD,0xE3,0xC1,0x18,0xD7,0xCD,0xE3,0xC1,0x18,0xDF, -0xCD,0xE3,0xC1,0xFE,0x08,0x30,0x2E,0xCD,0xA2,0xC1,0xC1,0xF5,0xCD,0xF9,0xFF,0xF1, -0xC3,0xA2,0xC1,0x7E,0xFE,0x23,0x3E,0x00,0xC0,0xCD,0xF5,0xC1,0xF5,0xCD,0x55,0xDD, -0xD4,0x4A,0xDD,0xF1,0xC9,0xCD,0x37,0xDD,0x23,0x3E,0x0A,0xC5,0xD5,0x47,0xCD,0x67, -0xCE,0xB8,0xD1,0xC1,0xD8,0x1E,0x05,0xC3,0x94,0xCA,0xCD,0xD0,0xC1,0x01,0x96,0xBB, -0x18,0x06,0xCD,0xD0,0xC1,0x01,0x90,0xBB,0xCD,0x4B,0xC2,0xE5,0xCD,0xF9,0xFF,0xE1, -0xC9,0xCD,0x3C,0xC2,0xE5,0xCD,0x38,0xBC,0xE1,0xC9,0xCD,0x4B,0xC2,0xF5,0xCD,0x37, -0xDD,0x2C,0xCD,0x3C,0xC2,0xF1,0xE5,0xCD,0x32,0xBC,0xE1,0xC9,0xCD,0x44,0xC2,0x41, -0xCD,0x55,0xDD,0xD0,0x3E,0x20,0xCD,0xFB,0xC1,0x4F,0xC9,0x3E,0x10,0x18,0xAC,0x3E, -0x03,0xCD,0xFB,0xC1,0xE5,0xCD,0x0E,0xBC,0xE1,0xC9,0xCD,0xD0,0xC1,0x3E,0x0C,0xC3, -0x6E,0xC3,0x01,0x67,0xC2,0x18,0x12,0x3A,0x21,0xAC,0xFE,0x08,0x30,0x97,0xCD,0x78, -0xBB,0xCD,0x87,0xBB,0x7D,0xC9,0x01,0x90,0xC2,0xCD,0xF5,0xC1,0xCD,0xA2,0xC1,0xF5, -0xCD,0x37,0xDD,0x29,0xE5,0xCD,0xF9,0xFF,0xCD,0x0A,0xFF,0xE1,0xF1,0xC3,0xA2,0xC1, -0x3A,0x21,0xAC,0xFE,0x08,0xCA,0xDF,0xC3,0x3A,0x25,0xAC,0xD0,0xC3,0x9C,0xC3,0x3A, -0x21,0xAC,0xFE,0x08,0x28,0x0D,0xD0,0xD5,0xE5,0xCD,0x69,0xBB,0x7A,0x94,0x3C,0xE1, -0xD1,0x37,0xC9,0x3A,0x24,0xAC,0xFE,0xFF,0xC9,0xE5,0xCD,0xBF,0xC2,0xE1,0xC9,0x67, -0xCD,0x9F,0xC2,0x3F,0xD8,0x6F,0xCD,0x90,0xC2,0x3D,0x37,0xC8,0x84,0x3F,0xD0,0x3D, -0xBD,0xC9,0xCD,0xD0,0xC1,0xCD,0x27,0xC3,0xE5,0xEB,0x24,0x2C,0xCD,0x75,0xBB,0xE1, -0xC9,0x7E,0xFE,0xE7,0x28,0x17,0xCD,0xD0,0xC1,0xCD,0x27,0xC3,0xD5,0xCD,0x37,0xDD, -0x2C,0xCD,0x27,0xC3,0xE3,0x7A,0x55,0x6F,0xCD,0x66,0xBB,0xE1,0xC9,0xCD,0x3F,0xDD, -0xCD,0x12,0xC3,0x48,0xCD,0x55,0xDD,0x06,0x00,0xDC,0x12,0xC3,0xE5,0xCD,0xB7,0xBB, -0xE1,0xC9,0x3E,0x08,0xCD,0xFB,0xC1,0x47,0xC9,0xCD,0xD0,0xC1,0x3E,0xFF,0x18,0x04, -0xCD,0xD0,0xC1,0xAF,0xC3,0x63,0xBB,0xCD,0x2F,0xC3,0x53,0xCD,0x37,0xDD,0x2C,0xD5, -0xCD,0x6D,0xCE,0xD1,0x5F,0x1D,0xC9,0x3E,0x84,0x32,0x24,0xAC,0xE5,0xCD,0x9D,0xC1, -0xE1,0xF5,0xE5,0x7E,0x23,0xB7,0xC4,0x56,0xC3,0x20,0xF8,0xE1,0xF1,0xC9,0xF5,0x3E, -0x0A,0xCD,0x56,0xC3,0xF1,0xC9,0xF5,0xCD,0x5C,0xC3,0xF1,0xC9,0xFE,0x0A,0x20,0x0E, -0x3A,0x21,0xAC,0xFE,0x08,0xCA,0xA8,0xC3,0xD2,0xEA,0xC3,0xC3,0x92,0xC3,0xF5,0xC5, -0x4F,0xCD,0x77,0xC3,0xC1,0xF1,0xC9,0x3A,0x21,0xAC,0xFE,0x08,0xCA,0xB5,0xC3,0xD2, -0xF8,0xC3,0x79,0xC3,0x99,0xC3,0xAF,0xCD,0x63,0xBB,0xCD,0x54,0xBB,0xCD,0x9C,0xC3, -0x3D,0xC8,0x3E,0x0D,0xCD,0x99,0xC3,0x3E,0x0A,0xC3,0x5A,0xBB,0xC5,0xE5,0xCD,0x78, -0xBB,0xCD,0x87,0xBB,0x7C,0xE1,0xC1,0xC9,0xC5,0x0E,0x0D,0xCD,0xB5,0xC3,0x0E,0x0A, -0xCD,0xB5,0xC3,0xC1,0xC9,0xE5,0x79,0xEE,0x0D,0x28,0x13,0x79,0xFE,0x20,0x38,0x14, -0x2A,0x23,0xAC,0x24,0x7D,0x28,0x07,0xBC,0xCC,0xA8,0xC3,0x3A,0x23,0xAC,0x3C,0x28, -0x03,0x32,0x23,0xAC,0xE1,0x79,0xCD,0x2B,0xBD,0xD8,0xCD,0x3C,0xC4,0x18,0xF6,0x3A, -0x23,0xAC,0xC9,0xCD,0x6D,0xCE,0x32,0x24,0xAC,0xC9,0x3E,0x01,0x32,0x25,0xAC,0x3E, -0x0D,0xCD,0x0D,0xC4,0x3E,0x0A,0x18,0x15,0xE5,0x21,0x25,0xAC,0x79,0x06,0x01,0xFE, -0x0D,0x28,0x08,0xFE,0x20,0x38,0x05,0x46,0x04,0x28,0x01,0x70,0xE1,0xCD,0x95,0xBC, -0xD8,0xC3,0x6B,0xCB,0xC3,0x86,0xBC,0xE5,0xCD,0x89,0xBC,0x28,0xF4,0x3F,0x9F,0xCD, -0x05,0xFF,0xE1,0xC9,0x3A,0x22,0xAC,0xFE,0x09,0xCA,0x80,0xBC,0xCD,0x09,0xBB,0xD8, -0xCD,0x81,0xBB,0xCD,0x06,0xBB,0xC3,0x84,0xBB,0xC3,0x09,0xBB,0xCD,0x09,0xBB,0xD0, -0xFE,0xFC,0xC0,0xC5,0xD5,0xE5,0xCD,0x6F,0xC4,0xDA,0x6B,0xCB,0xCD,0x53,0xC4,0xE1, -0xD1,0xC1,0xC9,0xE5,0x11,0x5E,0xC4,0x0E,0xFD,0xCD,0x45,0xBB,0xE1,0xC9,0xE5,0xCD, -0x09,0xBB,0x30,0x04,0xFE,0xEF,0x20,0xF7,0xCD,0x6F,0xC4,0xE1,0xC3,0x47,0xC8,0xCD, -0xB6,0xBC,0xF5,0xCD,0x30,0xC4,0xFE,0xEF,0x28,0xF9,0xFE,0xFC,0x28,0x0B,0xFE,0x20, -0xC4,0x0C,0xBB,0xF1,0xDC,0xB9,0xBC,0xB7,0xC9,0xF1,0x37,0xC9,0xCD,0x1A,0xC5,0xC5, -0xD5,0xCD,0x55,0xDD,0x30,0x18,0xCD,0x1A,0xC5,0xC5,0xD5,0xCD,0x37,0xDD,0x2C,0xCD, -0x1A,0xC5,0xC5,0xE3,0xCD,0xD2,0xBB,0xE1,0xD1,0xE3,0xCD,0xCF,0xBB,0xE1,0xD1,0xE3, -0xCD,0xC9,0xBB,0xE1,0xC9,0xCD,0x51,0xDD,0x38,0x06,0xCD,0x4B,0xC2,0xCD,0xE4,0xBB, -0xE5,0xCD,0xDB,0xBB,0xE1,0xC9,0x01,0xF6,0xBB,0x18,0x0D,0x01,0xF9,0xBB,0x18,0x08, -0x01,0xEA,0xBB,0x18,0x03,0x01,0xED,0xBB,0xC5,0xCD,0x1A,0xC5,0xCD,0x55,0xDD,0x30, -0x06,0xCD,0x4B,0xC2,0xCD,0xDE,0xBB,0x18,0x28,0x01,0xF0,0xBB,0x18,0x03,0x01,0xF3, -0xBB,0xC5,0xCD,0x1A,0xC5,0xCD,0x37,0xDD,0x29,0xE3,0xC5,0xE3,0xC1,0xCD,0xF9,0xFF, -0xCD,0x0A,0xFF,0xE1,0xC9,0x01,0xC0,0xBB,0x18,0x03,0x01,0xC3,0xBB,0xC5,0xCD,0x1A, -0xC5,0xE3,0xC5,0xE3,0xC1,0xCD,0xF9,0xFF,0xE1,0xC9,0xCD,0x86,0xCE,0xD5,0xCD,0x37, -0xDD,0x2C,0xCD,0x86,0xCE,0x42,0x4B,0xD1,0xC9,0xCD,0xB3,0xD6,0xE5,0xC5,0xD5,0xCD, -0xC5,0xC9,0x22,0x2C,0xAC,0xD5,0xE5,0xEB,0xCD,0x32,0xC6,0xCC,0xAC,0xF5,0xE1,0xCD, -0x51,0xDD,0x11,0x00,0x00,0xD4,0x86,0xD6,0x44,0x4D,0xE1,0xE3,0x7A,0xB3,0xC4,0xB8, -0xFF,0xC2,0xF6,0xC5,0xEB,0xCD,0xD2,0xDD,0xE3,0xCD,0xCE,0xDD,0xE1,0xF1,0xE3,0xD5, -0xC5,0xE5,0x01,0x05,0x16,0xB9,0x28,0x0B,0x01,0x02,0x10,0xB9,0x28,0x05,0x1E,0x0D, -0xC3,0x94,0xCA,0x78,0xCD,0xB0,0xF5,0x73,0x23,0x72,0x23,0xE3,0xCD,0x37,0xDD,0xEF, -0xCD,0xFB,0xCE,0x79,0xCD,0xD7,0xFE,0xE5,0x21,0x27,0xAC,0xCD,0x62,0xFF,0xE1,0xCD, -0x37,0xDD,0xEC,0xCD,0xFB,0xCE,0xE3,0x79,0xCD,0xD7,0xFE,0xCD,0x62,0xFF,0xEB,0xE3, -0xEB,0x21,0x01,0x00,0xCD,0x0D,0xFF,0xEB,0x7E,0xFE,0xE6,0x20,0x06,0xCD,0x3F,0xDD, -0xCD,0xFB,0xCE,0x79,0xCD,0xD7,0xFE,0xE3,0xCD,0x62,0xFF,0xCD,0xA3,0xFD,0xEB,0x77, -0x23,0xEB,0xE1,0xCD,0x4A,0xDD,0xEB,0x73,0x23,0x72,0x23,0xEB,0xCD,0xD2,0xDD,0xEB, -0x73,0x23,0x72,0x23,0xD1,0x73,0x23,0x72,0x23,0xED,0x5B,0x2C,0xAC,0x73,0x23,0x72, -0x23,0x70,0xD1,0x21,0x27,0xAC,0xCD,0x66,0xFF,0xAF,0x32,0x26,0xAC,0xE1,0xCD,0xCE, -0xDD,0x2A,0x2C,0xAC,0x18,0x0A,0x1E,0x01,0xC3,0x94,0xCA,0x3E,0xFF,0x32,0x26,0xAC, -0xEB,0xCD,0x32,0xC6,0x20,0xF0,0xEB,0xCD,0xAC,0xF5,0xEB,0xE5,0xCD,0x61,0xC6,0x28, -0x0F,0xF1,0x23,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F,0xCD,0xCE,0xDD,0xEB,0xC9, -0x01,0x05,0x00,0x09,0x5E,0x23,0x56,0xE1,0xCD,0xAC,0xF5,0xEB,0xCD,0x55,0xDD,0x38, -0xCF,0xC9,0x2A,0x8B,0xB0,0xE5,0x2B,0x46,0x23,0x7D,0x90,0x6F,0x9F,0x84,0x67,0xE3, -0x78,0xFE,0x07,0x28,0x19,0xFE,0x10,0x28,0x04,0xFE,0x16,0x20,0x0D,0xE5,0x2B,0x2B, -0x7E,0x2B,0x6E,0x67,0xCD,0xB8,0xFF,0xE1,0x20,0x04,0xEB,0xE1,0x78,0xC9,0xE1,0x18, -0xD4,0x5E,0x23,0x56,0x23,0xFE,0x10,0x28,0x2D,0xE5,0x01,0x05,0x00,0x79,0xEB,0xCD, -0x4B,0xFF,0xE1,0x3A,0x26,0xAC,0xB7,0x28,0x10,0xE5,0x09,0xCD,0xCC,0xFC,0xE1,0xE5, -0x2B,0x56,0x2B,0x5E,0xEB,0xCD,0x62,0xFF,0xE1,0xE5,0x0E,0x05,0xCD,0x09,0xFD,0xE1, -0x01,0x0A,0x00,0x09,0x96,0xC9,0xE5,0xEB,0x5E,0x23,0x56,0x3A,0x26,0xAC,0xB7,0x28, -0x16,0xE3,0xE5,0x23,0x23,0x7E,0x23,0x66,0x6F,0xCD,0xAC,0xBD,0x1E,0x06,0xD2,0x94, -0xCA,0xEB,0xE1,0xE3,0x72,0x2B,0x73,0xE1,0x7E,0x23,0xE5,0x66,0x6F,0xEB,0xCD,0xC4, -0xBD,0xE1,0x23,0x23,0x23,0x96,0xC9,0xCD,0xFB,0xCE,0xFE,0xA0,0x28,0x04,0xCD,0x37, -0xDD,0xEB,0xE5,0xCD,0xA3,0xFD,0xE1,0xCC,0x9F,0xE8,0xC8,0xCD,0x51,0xDD,0xD8,0xFE, -0x1E,0x28,0x05,0xFE,0x1D,0xC2,0xAB,0xDD,0xCD,0x67,0xE7,0xEB,0xC9,0xCD,0x67,0xE7, -0xCD,0xEF,0xE8,0xEB,0x0E,0x00,0xE5,0x3E,0x06,0xCD,0xB0,0xF5,0x71,0x23,0x73,0x23, -0x72,0x23,0xEB,0xCD,0xD2,0xDD,0xEB,0x73,0x23,0x72,0x23,0x36,0x06,0xE1,0xC9,0xC0, -0xCD,0x2E,0xC7,0xCD,0xAC,0xF5,0x4E,0x23,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F, -0xCD,0xCE,0xDD,0xEB,0x79,0xFE,0x01,0xD8,0xCA,0xA4,0xC8,0xC3,0xB6,0xC8,0x2A,0x8B, -0xB0,0x2B,0x7E,0xF5,0x7D,0x96,0x6F,0x9F,0x84,0x67,0x23,0xF1,0xFE,0x06,0xC8,0xB7, -0x20,0xEF,0x1E,0x03,0xC3,0x94,0xCA,0xE5,0xCD,0x18,0xCA,0xE5,0xEB,0x22,0x2E,0xAC, -0xCD,0xB8,0xC7,0xCC,0xAC,0xF5,0x3E,0x07,0xCD,0xB0,0xF5,0xEB,0xCD,0xD2,0xDD,0xEB, -0x73,0x23,0x72,0x23,0xD1,0x73,0x23,0x72,0x23,0xEB,0xE3,0xEB,0x73,0x23,0x72,0x23, -0x36,0x07,0xEB,0xD1,0x18,0x2A,0xC0,0xEB,0xCD,0xB8,0xC7,0x1E,0x1E,0xC2,0x94,0xCA, -0xE5,0x11,0x07,0x00,0x19,0xCD,0xAC,0xF5,0xCD,0xD2,0xDD,0x22,0x2E,0xAC,0xE1,0x5E, -0x23,0x56,0x23,0xEB,0xCD,0xCE,0xDD,0xEB,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F, -0xD5,0xCD,0xFB,0xCE,0xE5,0xCD,0xA3,0xFD,0xE1,0xD1,0xC0,0x2A,0x2E,0xAC,0xCD,0xCE, -0xDD,0x3E,0x07,0xCD,0xA0,0xF5,0xEB,0xC9,0x2A,0x8B,0xB0,0x2B,0xE5,0x7D,0x96,0x6F, -0x9F,0x84,0x67,0x23,0xE3,0x7E,0xFE,0x10,0x28,0x16,0xFE,0x16,0x28,0x12,0xFE,0x07, -0x20,0x0C,0x2B,0x2B,0x2B,0x7E,0x2B,0x6E,0x67,0xCD,0xB8,0xFF,0x20,0x02,0xE1,0xC9, -0xE1,0x18,0xD8,0xFE,0x9C,0xCA,0xE5,0xCB,0xCD,0x67,0xCE,0x4F,0x46,0x78,0xFE,0xA0, -0x28,0x05,0xCD,0x37,0xDD,0x9F,0x2B,0x0D,0x78,0xCA,0xAB,0xDD,0xCD,0x3F,0xDD,0xCD, -0xE1,0xCE,0xFE,0x2C,0x28,0xF1,0xC9,0xAF,0x32,0x30,0xAC,0xCD,0xFB,0xBC,0x30,0x1D, -0x47,0x3A,0x30,0xAC,0xE6,0x7F,0x32,0x30,0xAC,0xC5,0xE5,0xCD,0xFE,0xBC,0xE1,0xC1, -0x3A,0x30,0xAC,0x17,0xF5,0x78,0xD4,0x01,0xBD,0xF1,0x17,0x30,0xDE,0x3A,0x30,0xAC, -0xE6,0x04,0xC4,0x53,0xC4,0x2A,0x34,0xAE,0x3A,0x30,0xAC,0xE6,0x03,0xC8,0x1F,0xDA, -0x6B,0xCB,0x23,0xF1,0xC3,0x93,0xDD,0x22,0x36,0xAC,0x3E,0x04,0x30,0x50,0x2A,0x34, -0xAC,0x7C,0xB5,0xC4,0xD6,0xDD,0x3E,0x41,0x30,0x44,0x11,0x31,0xAC,0x0E,0x02,0x18, -0x25,0xD5,0xCD,0x37,0xDD,0x9F,0xCD,0x67,0xE7,0x42,0x4B,0xCD,0x61,0xDD,0xD1,0xE5, -0x21,0x0A,0x00,0x19,0x71,0x23,0x70,0xE1,0xC9,0x23,0x23,0x23,0xEB,0xCD,0xD6,0xDD, -0x3E,0x40,0x30,0x1A,0x0E,0x01,0xD5,0xCD,0xF6,0xC6,0x2A,0x34,0xAE,0xEB,0xE1,0x70, -0x23,0x73,0x23,0x72,0x23,0x5E,0x23,0x56,0xEB,0x22,0x34,0xAE,0x3E,0xC2,0x21,0x30, -0xAC,0xB6,0x77,0xC9,0x7E,0x23,0x5E,0x23,0x56,0xD5,0x01,0xF7,0xFF,0x09,0xCD,0x01, -0xBD,0xE1,0xF1,0xC3,0x74,0xDD,0x7E,0x2A,0x36,0xAC,0x01,0xFC,0xFF,0x09,0xCD,0x01, -0xBD,0xCD,0x53,0xC4,0x2A,0x32,0xAC,0xF1,0xC3,0x74,0xDD,0xFE,0xCE,0x11,0x00,0x00, -0x28,0x08,0xCD,0x37,0xDD,0x9F,0xCD,0x67,0xE7,0x2B,0xED,0x53,0x34,0xAC,0xC3,0x3F, -0xDD,0xE5,0xCD,0x04,0xBD,0xE1,0xC9,0xE5,0xCD,0x07,0xBD,0xE1,0xC9,0xCD,0xA7,0xBC, -0x21,0x5C,0xAC,0x06,0x04,0xE5,0xCD,0xEC,0xBC,0xE1,0x11,0x12,0x00,0x19,0x10,0xF5, -0xCD,0x48,0xBB,0xCD,0xF5,0xBC,0x21,0x00,0x00,0x22,0x34,0xAC,0xCD,0x53,0xC4,0x21, -0x38,0xAC,0x11,0x05,0x03,0x01,0x00,0x08,0xCD,0x24,0xC9,0x21,0x62,0xAC,0x11,0x0B, -0x04,0x01,0x01,0x02,0xC5,0xD5,0x0E,0xFD,0x11,0x79,0xC8,0xCD,0xEF,0xBC,0xD1,0xD5, -0x16,0x00,0x19,0xD1,0xC1,0x79,0xB7,0x28,0x03,0x78,0x87,0x47,0x15,0x20,0xE5,0xC9, -0xCD,0x37,0xDD,0x28,0xCD,0x67,0xCE,0xF5,0xCD,0x5D,0xC9,0xB7,0x20,0x1E,0xCD,0x37, -0xDD,0x29,0xCD,0x61,0xC8,0xF1,0xE5,0xEB,0xCD,0xB0,0xBC,0xE1,0xC9,0x1F,0x11,0x38, -0xAC,0xD8,0x1F,0x11,0x44,0xAC,0xD8,0x1F,0x11,0x50,0xAC,0xD8,0x1E,0x05,0xC3,0x94, -0xCA,0xCD,0x7C,0xCE,0x01,0x00,0x00,0x18,0x05,0xCD,0x7C,0xCE,0x42,0x4B,0xD5,0xC5, -0xCD,0x55,0xDD,0x11,0x00,0x00,0xDC,0x86,0xCE,0xEB,0xCD,0xB1,0xC9,0xE5,0x01,0x06, -0x00,0x09,0xEB,0xCD,0x61,0xC8,0xD1,0xC1,0xE3,0xEB,0xCD,0xE9,0xBC,0xE1,0xC9,0xCD, -0x8D,0xFE,0xCD,0xB1,0xC9,0xCD,0xEC,0xBC,0x38,0x03,0x11,0x00,0x00,0xEB,0xC3,0x0D, -0xFF,0x7C,0xB7,0x20,0xB7,0x7D,0xFE,0x04,0x30,0xB2,0x87,0x87,0x87,0x85,0x87,0x6F, -0x01,0x5C,0xAC,0x09,0xC9,0xEB,0xCD,0xD2,0xDD,0xEB,0x2B,0x06,0x01,0x0E,0x1A,0xCD, -0x23,0xE9,0xE5,0xCD,0x3F,0xDD,0xFE,0xB0,0x28,0x08,0xE1,0xFE,0x9E,0x20,0xEE,0x04, -0x18,0xEB,0xF1,0xEB,0xE5,0xCD,0xD2,0xDD,0xE3,0xCD,0xCE,0xDD,0xEB,0x05,0x28,0x24, -0xCD,0x3F,0xDD,0x28,0x0E,0xC5,0xD5,0xCD,0x86,0xD6,0xD1,0xC1,0xCD,0x55,0xDD,0x30, -0x02,0x10,0xF2,0x2B,0x78,0xB7,0x28,0x0C,0xEB,0xCD,0xD2,0xDD,0xE3,0xCD,0xCE,0xDD, -0xE1,0xEB,0x18,0xB9,0xD1,0xC3,0x3F,0xDD,0x2B,0xEB,0xCD,0xD2,0xDD,0xEB,0x06,0x00, -0x04,0x0E,0x1D,0xCD,0x23,0xE9,0xE5,0xCD,0x3F,0xDD,0xE1,0xFE,0xD6,0x28,0xF1,0xFE, -0xD5,0x20,0xEE,0x10,0xEC,0xCD,0x3F,0xDD,0xC3,0x3F,0xDD,0x21,0xA4,0xAC,0x36,0x00, -0xC3,0x3A,0xBD,0x21,0xA4,0xAC,0xCD,0x3A,0xBD,0xC3,0x4E,0xC3,0xC5,0xD5,0x21,0xA4, -0xAC,0xE5,0x06,0x01,0x0E,0x00,0xCD,0x80,0xBC,0xCA,0x6B,0xCB,0x30,0x22,0x77,0xFE, -0x0D,0x28,0x17,0x0E,0x00,0xFE,0x0A,0x20,0x06,0x78,0x3D,0x28,0xE7,0x0E,0xFF,0x78, -0xB7,0x1E,0x17,0xCA,0x94,0xCA,0x23,0x04,0x18,0xDC,0x79,0xB7,0x20,0xD8,0x77,0x37, -0xE1,0xD1,0xC1,0xC9,0xAF,0x32,0xAA,0xAD,0xCD,0xD2,0xDD,0x22,0xA6,0xAD,0xC9,0xCD, -0x6D,0xCE,0xC0,0x5F,0xCD,0x04,0xAC,0x7B,0xCD,0x85,0xCA,0x2A,0x34,0xAE,0x22,0xA8, -0xAD,0xCD,0xB0,0xCB,0x31,0x00,0xC0,0x2A,0x32,0xAE,0xCD,0xAC,0xF5,0xCD,0xB3,0xFB, -0xCD,0xFD,0xD9,0xCD,0xDF,0xCA,0x2A,0xAF,0xAD,0xEB,0x21,0xB1,0xAD,0x30,0x0C,0x7A, -0xB3,0x28,0x08,0xA6,0x20,0x05,0x35,0xEB,0xC3,0x93,0xDD,0x36,0x00,0x3A,0xAA,0xAD, -0xCD,0x45,0xCC,0x2A,0xA6,0xAD,0xCD,0xCE,0xDD,0xCD,0x36,0xCB,0xC3,0x64,0xC0,0x2A, -0xA6,0xAD,0xCD,0xD9,0xDD,0xD8,0x21,0x00,0x00,0xC9,0xD5,0xE5,0x21,0x13,0xCD,0x1E, -0x0B,0x18,0x07,0xD5,0xE5,0x21,0xB9,0xCC,0x1E,0x06,0xF5,0xE5,0x2A,0xAF,0xAD,0x7C, -0xB5,0xE1,0xC2,0x94,0xCA,0xAF,0xCD,0xA2,0xC1,0xF5,0xCD,0x41,0xC3,0xCD,0x4E,0xC3, -0xF1,0xCD,0xA2,0xC1,0xF1,0xE1,0xD1,0xC9,0xCD,0x86,0xC3,0x21,0x23,0xCB,0xCD,0x48, -0xCB,0x18,0x1D,0x55,0x6E,0x64,0x65,0x66,0x69,0x6E,0x65,0x64,0x20,0x6C,0x69,0x6E, -0x65,0x20,0x00,0x11,0x4F,0xCB,0xCD,0x9D,0xC1,0xCD,0x86,0xC3,0xEB,0xCD,0x41,0xC3, -0xCD,0xD6,0xDD,0xD0,0xEB,0x21,0x55,0xCB,0xCD,0x41,0xC3,0xEB,0xC3,0x79,0xEE,0x42, -0x72,0x65,0x61,0x6B,0x00,0x20,0x69,0x6E,0x20,0x00,0xC0,0xE5,0xCD,0x33,0xCB,0xE1, -0xCD,0x93,0xCB,0x18,0x2B,0xC0,0xCD,0x93,0xCB,0x18,0x1C,0xCD,0x33,0xCB,0x2A,0x34, -0xAE,0xCD,0xB0,0xCB,0x18,0x1A,0xCD,0xD6,0xDD,0x30,0x12,0xCD,0xAB,0xCB,0x3A,0xB1, -0xAD,0xB7,0x1E,0x13,0xC2,0x94,0xCA,0xCD,0x98,0xD2,0xCD,0xA1,0xD2,0xCD,0xCB,0xDD, -0xC3,0x64,0xC0,0xEB,0xCD,0xD6,0xDD,0xEB,0xD0,0x7E,0xFE,0x01,0x28,0x0B,0x23,0x7E, -0x23,0xB6,0x28,0x07,0x23,0xCD,0xCE,0xDD,0x23,0x18,0x05,0x21,0x00,0x00,0x18,0x0C, -0xEB,0xCD,0xD6,0xDD,0xD0,0xCD,0xD2,0xDD,0x22,0xAD,0xAD,0xEB,0x22,0xAB,0xAD,0xC9, -0xC0,0x2A,0xAB,0xAD,0x7C,0xB5,0x1E,0x11,0xCA,0x94,0xCA,0xE5,0x2A,0xAD,0xAD,0xCD, -0xCE,0xDD,0xCD,0xB9,0xBC,0xE1,0xC3,0x74,0xDD,0xAF,0x32,0xB1,0xAD,0x11,0x00,0x00, -0xED,0x53,0xAF,0xAD,0xC9,0xCD,0x3F,0xDD,0xCD,0x37,0xDD,0xA0,0xCD,0xE1,0xCE,0xE5, -0xCD,0x9A,0xE7,0x22,0xAF,0xAD,0xE1,0xC9,0xCD,0xDD,0xCB,0x3A,0xB1,0xAD,0xB7,0xC8, -0xC3,0xA4,0xCA,0x28,0x14,0xFE,0xB0,0x28,0x17,0xCD,0x67,0xE7,0xCD,0x4A,0xDD,0xD5, -0xCD,0x2B,0xCC,0xE1,0x23,0xF1,0xC3,0x93,0xDD,0xCD,0x2B,0xCC,0xF1,0xC3,0x74,0xDD, -0xCD,0x3F,0xDD,0xC0,0xCD,0x2B,0xCC,0x23,0xC3,0xEF,0xE8,0x3A,0xB1,0xAD,0xB7,0x1E, -0x14,0xCA,0x94,0xCA,0xAF,0x32,0xAA,0xAD,0x32,0xB1,0xAD,0x2A,0xA6,0xAD,0xCD,0xCE, -0xDD,0x2A,0xA8,0xAD,0xC9,0x11,0x5B,0xCC,0xFE,0x1F,0xD0,0xB7,0xC8,0x47,0x1A,0x13, -0xB7,0x20,0xFB,0x05,0x20,0xF8,0x1A,0xB7,0x28,0xEB,0xC9,0x55,0x6E,0x6B,0x6E,0x6F, -0x77,0x6E,0x20,0x65,0x72,0x72,0x6F,0x72,0x00,0x55,0x6E,0x65,0x78,0x70,0x65,0x63, -0x74,0x65,0x64,0x20,0x4E,0x45,0x58,0x54,0x00,0x53,0x79,0x6E,0x74,0x61,0x78,0x20, -0x65,0x72,0x72,0x6F,0x72,0x00,0x55,0x6E,0x65,0x78,0x70,0x65,0x63,0x74,0x65,0x64, -0x20,0x52,0x45,0x54,0x55,0x52,0x4E,0x00,0x44,0x41,0x54,0x41,0x20,0x65,0x78,0x68, -0x61,0x75,0x73,0x74,0x65,0x64,0x00,0x49,0x6D,0x70,0x72,0x6F,0x70,0x65,0x72,0x20, -0x61,0x72,0x67,0x75,0x6D,0x65,0x6E,0x74,0x00,0x4F,0x76,0x65,0x72,0x66,0x6C,0x6F, -0x77,0x00,0x4D,0x65,0x6D,0x6F,0x72,0x79,0x20,0x66,0x75,0x6C,0x6C,0x00,0x4C,0x69, -0x6E,0x65,0x20,0x64,0x6F,0x65,0x73,0x20,0x6E,0x6F,0x74,0x20,0x65,0x78,0x69,0x73, -0x74,0x00,0x53,0x75,0x62,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x6F,0x75,0x74,0x20, -0x6F,0x66,0x20,0x72,0x61,0x6E,0x67,0x65,0x00,0x41,0x72,0x72,0x61,0x79,0x20,0x61, -0x6C,0x72,0x65,0x61,0x64,0x79,0x20,0x64,0x69,0x6D,0x65,0x6E,0x73,0x69,0x6F,0x6E, -0x65,0x64,0x00,0x44,0x69,0x76,0x69,0x73,0x69,0x6F,0x6E,0x20,0x62,0x79,0x20,0x7A, -0x65,0x72,0x6F,0x00,0x49,0x6E,0x76,0x61,0x6C,0x69,0x64,0x20,0x64,0x69,0x72,0x65, -0x63,0x74,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x00,0x54,0x79,0x70,0x65,0x20, -0x6D,0x69,0x73,0x6D,0x61,0x74,0x63,0x68,0x00,0x53,0x74,0x72,0x69,0x6E,0x67,0x20, -0x73,0x70,0x61,0x63,0x65,0x20,0x66,0x75,0x6C,0x6C,0x00,0x53,0x74,0x72,0x69,0x6E, -0x67,0x20,0x74,0x6F,0x6F,0x20,0x6C,0x6F,0x6E,0x67,0x00,0x53,0x74,0x72,0x69,0x6E, -0x67,0x20,0x65,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6F,0x6E,0x20,0x74,0x6F,0x6F, -0x20,0x63,0x6F,0x6D,0x70,0x6C,0x65,0x78,0x00,0x43,0x61,0x6E,0x6E,0x6F,0x74,0x20, -0x43,0x4F,0x4E,0x54,0x69,0x6E,0x75,0x65,0x00,0x55,0x6E,0x6B,0x6E,0x6F,0x77,0x6E, -0x20,0x75,0x73,0x65,0x72,0x20,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x00,0x52, -0x45,0x53,0x55,0x4D,0x45,0x20,0x6D,0x69,0x73,0x73,0x69,0x6E,0x67,0x00,0x55,0x6E, -0x65,0x78,0x70,0x65,0x63,0x74,0x65,0x64,0x20,0x52,0x45,0x53,0x55,0x4D,0x45,0x00, -0x44,0x69,0x72,0x65,0x63,0x74,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x20,0x66, -0x6F,0x75,0x6E,0x64,0x00,0x4F,0x70,0x65,0x72,0x61,0x6E,0x64,0x20,0x6D,0x69,0x73, -0x73,0x69,0x6E,0x67,0x00,0x4C,0x69,0x6E,0x65,0x20,0x74,0x6F,0x6F,0x20,0x6C,0x6F, -0x6E,0x67,0x00,0x45,0x4F,0x46,0x20,0x6D,0x65,0x74,0x00,0x46,0x69,0x6C,0x65,0x20, -0x74,0x79,0x70,0x65,0x20,0x65,0x72,0x72,0x6F,0x72,0x00,0x4E,0x45,0x58,0x54,0x20, -0x6D,0x69,0x73,0x73,0x69,0x6E,0x67,0x00,0x46,0x69,0x6C,0x65,0x20,0x61,0x6C,0x72, -0x65,0x61,0x64,0x79,0x20,0x6F,0x70,0x65,0x6E,0x00,0x55,0x6E,0x6B,0x6E,0x6F,0x77, -0x6E,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x00,0x57,0x45,0x4E,0x44,0x20,0x6D, -0x69,0x73,0x73,0x69,0x6E,0x67,0x00,0x55,0x6E,0x65,0x78,0x70,0x65,0x63,0x74,0x65, -0x64,0x20,0x57,0x45,0x4E,0x44,0x00,0xCD,0x86,0xCE,0xF5,0x18,0x08,0xCD,0x86,0xCE, -0xF5,0x7A,0xB3,0x28,0x36,0x7A,0xB7,0x20,0x32,0xF1,0x7B,0xC9,0xCD,0x86,0xCE,0xF5, -0x7A,0x17,0x38,0x27,0xF1,0xC9,0xCD,0xFB,0xCE,0xF5,0xEB,0xCD,0x8D,0xFE,0xEB,0xF1, -0xC9,0xCD,0xFB,0xCE,0xF5,0xC5,0xE5,0xCD,0xC2,0xFE,0xEB,0xE1,0xC1,0xF1,0xC9,0xCD, -0xFB,0xCE,0xC3,0xDA,0xFB,0xCD,0xFB,0xCE,0xC3,0x3C,0xFF,0x1E,0x05,0xC3,0x94,0xCA, -0x01,0x01,0x00,0x11,0xFF,0xFF,0xCD,0x55,0xDD,0xD4,0x51,0xDD,0xD8,0xFE,0x23,0xC8, -0xFE,0xF5,0x28,0x0A,0xCD,0xE1,0xCE,0x42,0x4B,0xC8,0xCD,0x55,0xDD,0xD8,0xCD,0x37, -0xDD,0xF5,0x11,0xFF,0xFF,0xC8,0xCD,0x55,0xDD,0xD8,0xCD,0xE1,0xCE,0xC4,0x55,0xDD, -0xC9,0x7E,0x23,0x5E,0x23,0x56,0xFE,0x1E,0x28,0x0E,0xFE,0x1D,0xC2,0x7B,0xD0,0xE5, -0xEB,0x23,0x23,0x23,0x5E,0x23,0x56,0xE1,0xC3,0x3F,0xDD,0xC5,0x2B,0x06,0x00,0xCD, -0x07,0xCF,0xC1,0x2B,0xC3,0x3F,0xDD,0xC5,0xCD,0xCB,0xCF,0xE5,0xE1,0xC1,0x7E,0xFE, -0xEE,0xD8,0xFE,0xFE,0xD0,0xFE,0xF4,0x38,0x40,0xCC,0x45,0xFF,0x20,0x12,0xC5,0xE5, -0x2A,0xC2,0xB0,0xE3,0xCD,0xCB,0xCF,0xCD,0x3C,0xFF,0xE3,0xCD,0x63,0xF8,0x18,0xDC, -0x7E,0xD6,0xF4,0x87,0x87,0xC6,0x81,0x5F,0xCE,0xCF,0x93,0x57,0xEB,0x78,0xBE,0xEB, -0xD0,0xC5,0xCD,0x53,0xFF,0xD5,0xC5,0x1A,0x47,0xCD,0x07,0xCF,0xC1,0xE3,0x23,0xEB, -0x79,0xCD,0xA0,0xF5,0xCD,0xFB,0xFF,0x18,0xB3,0x78,0xFE,0x0A,0xD0,0xC5,0x7E,0xD6, -0xED,0x47,0xCD,0x45,0xFF,0x11,0xA9,0xCF,0x20,0xD8,0xE5,0x2A,0xC2,0xB0,0xE3,0xC5, -0x06,0x0A,0xCD,0x07,0xCF,0xC1,0xE3,0xC5,0xCD,0x97,0xF8,0xC1,0xCD,0xAF,0xCF,0x18, -0x8B,0x0C,0xC3,0xCC,0xFC,0x0C,0xC3,0xE1,0xFC,0x12,0xC3,0xF5,0xFC,0x12,0xC3,0x12, -0xFD,0x16,0xC3,0xF4,0xD4,0x10,0xC3,0x37,0xFD,0x06,0xC3,0x58,0xFD,0x0E,0xC3,0x49, -0xFD,0x04,0xC3,0x63,0xFD,0x02,0xC3,0x6D,0xFD,0x0A,0xC5,0xCD,0x09,0xFD,0xC1,0xC6, -0x01,0x8F,0xA0,0xC6,0xFF,0x9F,0xC3,0x05,0xFF,0x2B,0x06,0x14,0xCD,0x07,0xCF,0xC3, -0x89,0xFD,0x2B,0x06,0x08,0xCD,0x07,0xCF,0xC3,0x77,0xFD,0xCD,0x3F,0xDD,0x28,0x1D, -0xFE,0x0E,0x38,0x39,0xFE,0x20,0x38,0x54,0xFE,0x22,0xCA,0xCB,0xF7,0xFE,0xFF,0xCA, -0x80,0xD0,0xE5,0x21,0xF2,0xCF,0xCD,0x93,0xFF,0xE3,0xC3,0x3F,0xDD,0x1E,0x16,0xC3, -0x94,0xCA,0x08,0x78,0xD0,0xF5,0xB9,0xCF,0xF4,0xCE,0xCF,0x28,0x70,0xD0,0xFE,0xC2, -0xCF,0xE3,0xEE,0xD0,0xE4,0x30,0xD1,0xAC,0x4B,0xF9,0x40,0xFA,0xD0,0xCD,0x90,0xD6, -0x30,0x0B,0xFE,0x03,0x28,0x0F,0xE5,0xEB,0xCD,0x4B,0xFF,0xE1,0xC9,0xFE,0x03,0xC2, -0xF3,0xFE,0x11,0x2B,0xD0,0xEB,0x22,0xC2,0xB0,0xEB,0xC9,0x00,0xD6,0x0E,0xFE,0x0A, -0x38,0x1D,0x23,0xFE,0x0B,0x28,0x17,0xFE,0x0F,0x38,0x0E,0xFE,0x11,0x38,0x1A,0x20, -0x3A,0x3E,0x05,0xCD,0x4B,0xFF,0x2B,0x18,0x24,0x5E,0x23,0x56,0x18,0x04,0x7E,0x5F, -0x16,0x00,0xEB,0xCD,0x0D,0xFF,0xEB,0x18,0x14,0x5E,0x23,0x56,0xE5,0xFE,0x0F,0x20, -0x07,0x13,0xEB,0x23,0x23,0x5E,0x23,0x56,0xEB,0xCD,0x60,0xFE,0xE1,0xC3,0x3F,0xDD, -0xCD,0xFB,0xCE,0xCD,0x37,0xDD,0x29,0xC9,0xCD,0x0D,0xAC,0x1E,0x02,0xC3,0x94,0xCA, -0x23,0x4E,0xCD,0x3F,0xDD,0x79,0xFE,0x40,0x38,0x05,0xFE,0x49,0xDA,0xBB,0xD0,0xCD, -0x37,0xDD,0x28,0x79,0x87,0xC6,0x1E,0x4F,0xFE,0x59,0x30,0x0D,0xFE,0x1D,0x38,0x0E, -0xCD,0x70,0xD0,0xE5,0xCD,0xAE,0xD0,0xE1,0xC9,0xCD,0x0A,0xAC,0x18,0xCD,0xE5,0x06, -0x00,0x21,0x90,0xD1,0x09,0x7E,0x23,0x66,0x6F,0xE3,0xC9,0xE5,0x4F,0x06,0x00,0x21, -0x4A,0xD0,0x09,0x09,0x7E,0x23,0x66,0x6F,0xE3,0xC9,0x17,0xC4,0xDC,0xD0,0xF4,0xD0, -0x24,0xFA,0xDB,0xD4,0x84,0xD5,0xE5,0xD0,0x07,0xD1,0x0E,0xD1,0xE5,0x3A,0xAA,0xAD, -0xCD,0x0A,0xFF,0xE1,0xC9,0xE5,0xCD,0x0D,0xBD,0xCD,0x7C,0xFE,0xE1,0xC9,0xE5,0xCD, -0xDF,0xCA,0x18,0x0E,0xE5,0x2A,0x7B,0xAE,0x18,0x08,0xCD,0x90,0xD6,0xD2,0xAB,0xCE, -0xE5,0xEB,0xCD,0x60,0xFE,0xE1,0xC9,0xE5,0xCD,0xC6,0xBB,0xEB,0x18,0x04,0xE5,0xCD, -0xC6,0xBB,0xCD,0x0D,0xFF,0xE1,0xC9,0xCD,0x37,0xDD,0xE4,0xEB,0xCD,0xD6,0xDD,0xEB, -0x1E,0x0C,0xD2,0x94,0xCA,0xCD,0xA2,0xD6,0xEB,0x73,0x23,0x72,0xEB,0xC3,0xEF,0xE8, -0xCD,0xA2,0xD6,0xC5,0xE5,0xEB,0x5E,0x23,0x56,0xEB,0x7C,0xB5,0x1E,0x12,0xCA,0x94, -0xCA,0xCD,0x07,0xDA,0x7E,0xFE,0x28,0x20,0x2C,0xCD,0x3F,0xDD,0xE3,0xCD,0x37,0xDD, -0x28,0xE3,0xCD,0x4B,0xDA,0xE3,0xD5,0xCD,0xFB,0xCE,0xE3,0x78,0xCD,0x66,0xD6,0xE1, -0xCD,0x55,0xDD,0x30,0x07,0xE3,0xCD,0x37,0xDD,0x2C,0x18,0xE6,0xCD,0x37,0xDD,0x29, -0xE3,0xCD,0x37,0xDD,0x29,0xCD,0x27,0xDA,0xCD,0x37,0xDD,0xEF,0xCD,0xFB,0xCE,0xC2, -0x7B,0xD0,0xCD,0x30,0xDA,0xCD,0x45,0xFF,0xCC,0x49,0xFB,0xE1,0xF1,0xC3,0xD7,0xFE, -0xBA,0xF8,0xEA,0xF8,0xC4,0xF8,0xA1,0xFA,0x3C,0xF9,0xEE,0xD1,0xEA,0xD1,0x76,0xC2, -0x43,0xF9,0x19,0xD2,0x36,0xFA,0xE9,0xC4,0xEE,0xC4,0xAB,0xCE,0x62,0xC2,0x85,0xFD, -0x10,0xFA,0x3E,0xD5,0x16,0xFA,0x8D,0xFE,0x34,0xD5,0xEC,0xFE,0x20,0xD5,0xE8,0xFD, -0x2D,0xFC,0x09,0xD4,0x6D,0xF1,0xED,0xFD,0x23,0xD4,0x0A,0xFA,0x2A,0xD5,0x25,0xD5, -0x34,0xF8,0x58,0xF1,0x9F,0xC9,0x02,0xFF,0x2F,0xD5,0x57,0xFA,0x29,0xD3,0xEF,0xD4, -0x1E,0xF9,0x39,0xD5,0xC2,0xFE,0x42,0xF8,0x77,0xFA,0x06,0xFF,0x18,0x02,0x06,0x01, -0xCD,0xFB,0xCE,0xCD,0x55,0xDD,0x30,0x1C,0xCD,0x53,0xFF,0xCD,0xFB,0xCE,0xE5,0x79, -0xCD,0xA0,0xF5,0xC5,0xE5,0xCD,0x09,0xFD,0xE1,0xC1,0xB7,0x28,0x04,0xB8,0xC4,0x4E, -0xFF,0xE1,0x18,0xDF,0xCD,0x37,0xDD,0x29,0xC9,0xCD,0xFB,0xCE,0xCD,0x53,0xFF,0xCD, -0x55,0xDD,0x11,0x00,0x00,0xDC,0x86,0xCE,0xCD,0x37,0xDD,0x29,0xE5,0xD5,0x21,0x27, -0x00,0x19,0x11,0x4F,0x00,0xCD,0xB8,0xFF,0xD2,0xAB,0xCE,0xD1,0x79,0xCD,0xA0,0xF5, -0x43,0xCD,0xAF,0xFD,0xE1,0xC9,0xC0,0xE5,0xCD,0xAD,0xD2,0xCD,0x37,0xF6,0xCD,0x9B, -0xBC,0xCD,0x71,0xF6,0xE1,0xC9,0xCD,0x73,0xD2,0xCD,0x37,0xF6,0xC3,0x8C,0xBC,0xCD, -0x6A,0xD2,0xFE,0x16,0xC8,0x1E,0x19,0xC3,0x94,0xCA,0xCD,0x73,0xD2,0xCD,0x32,0xF6, -0xC3,0x77,0xBC,0xCD,0x9F,0xCE,0xE3,0xEB,0xCD,0x85,0xD2,0xCA,0x6B,0xCB,0xE1,0xD8, -0x1E,0x1B,0xC3,0x94,0xCA,0xD5,0x0E,0x00,0x78,0xB7,0x28,0x08,0x7E,0xFE,0x21,0x20, -0x03,0x23,0x05,0x0D,0x79,0xC3,0x6B,0xBC,0xE5,0xCD,0x7A,0xBC,0xCD,0x6D,0xF6,0xE1, -0xC9,0xE5,0xCD,0x8F,0xBC,0xCA,0x6B,0xCB,0xCD,0x71,0xF6,0xE1,0xC9,0xC5,0xD5,0xE5, -0xCD,0x7D,0xBC,0xCD,0x6D,0xF6,0xCD,0x92,0xBC,0xCD,0x71,0xF6,0xE1,0xD1,0xC1,0xC9, -0xCD,0x67,0xCE,0x32,0xB2,0xAD,0xCD,0x37,0xDD,0x2C,0xCD,0xFF,0xD3,0xED,0x53,0xB5, -0xAD,0xCD,0x55,0xDD,0x11,0x14,0x00,0xDC,0x86,0xCE,0xED,0x53,0xB9,0xAD,0x01,0x0C, -0x10,0xCD,0x0D,0xD3,0x32,0xB8,0xAD,0x0E,0x00,0xCD,0x0D,0xD3,0x32,0xB3,0xAD,0xCD, -0x0D,0xD3,0x32,0xB4,0xAD,0x06,0x20,0xCD,0x0D,0xD3,0x32,0xB7,0xAD,0xCD,0x4A,0xDD, -0xE5,0x21,0xB2,0xAD,0xCD,0xAA,0xBC,0xE1,0xD8,0xF1,0xC3,0x71,0xDD,0xCD,0x55,0xDD, -0x79,0xD0,0x7E,0xFE,0x2C,0x79,0xC8,0xCD,0x67,0xCE,0xB8,0xD8,0x18,0x2B,0x06,0x08, -0xCD,0x17,0xD3,0xE5,0xCD,0xB3,0xBC,0xE1,0xC9,0xCD,0x8D,0xFE,0x7D,0xB7,0x1F,0x38, -0x06,0x1F,0x38,0x03,0x1F,0x30,0x12,0xB4,0x20,0x0F,0x7D,0xCD,0xAD,0xBC,0xC3,0x0A, -0xFF,0xCD,0x86,0xCE,0x7B,0x87,0x9F,0xBA,0xC8,0x1E,0x05,0xC3,0x94,0xCA,0xCD,0x6D, -0xCE,0xFE,0x10,0x30,0xF4,0xF5,0x11,0x67,0xD3,0xCD,0xD8,0xD3,0xF1,0xE5,0x21,0xBB, -0xAD,0x71,0xCD,0xBC,0xBC,0xE1,0xC9,0x7E,0xFE,0xEF,0x20,0x12,0xCD,0x3F,0xDD,0x06, -0x10,0xCD,0x17,0xD3,0xF6,0x80,0x4F,0xCD,0x37,0xDD,0x2C,0xC3,0x91,0xCE,0x06,0x80, -0xCD,0x17,0xD3,0x18,0x40,0xCD,0x41,0xD3,0x7A,0xB7,0x7B,0x28,0x02,0x2F,0x3C,0x5F, -0xB7,0x28,0xB6,0xFE,0x10,0x30,0xB2,0xD5,0x11,0xAE,0xD3,0xCD,0xD8,0xD3,0xD1,0xE5, -0x21,0xBB,0xAD,0x7A,0xE6,0x80,0xB1,0x77,0x7B,0xCD,0xBF,0xBC,0xE1,0xC9,0x7E,0xFE, -0xEF,0x20,0x0D,0xCD,0x3F,0xDD,0xCD,0xFF,0xD3,0x7A,0xC6,0xF0,0x4F,0x43,0x18,0x0E, -0x06,0xF0,0xCD,0x17,0xD3,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0x41,0xD3,0x43,0xCD,0x37, -0xDD,0x2C,0xCD,0x67,0xCE,0x57,0x58,0xC9,0x01,0x00,0x05,0xCD,0x55,0xDD,0x30,0x1C, -0xD5,0xC5,0xCD,0xFB,0xFF,0x79,0xC1,0xC5,0xE5,0x21,0xBC,0xAD,0x06,0x00,0x09,0x09, -0x09,0x77,0x23,0x73,0x23,0x72,0xE1,0xC1,0x0C,0xD1,0x10,0xDF,0xC3,0x4A,0xDD,0xCD, -0x86,0xCE,0x7A,0xE6,0xF0,0xC2,0x49,0xD3,0xC9,0xCD,0x8D,0xFE,0x11,0x50,0x00,0xCD, -0xB8,0xFF,0x30,0x22,0x7D,0xCD,0x1E,0xBB,0x21,0xFF,0xFF,0x28,0x03,0x69,0x26,0x00, -0xC3,0x0D,0xFF,0xCD,0x24,0xBB,0xEB,0xCD,0x8D,0xFE,0x7C,0xB5,0x28,0x02,0x53,0x2B, -0x7C,0xB5,0x7A,0xCA,0x0A,0xFF,0xC3,0x49,0xD3,0xFE,0x8D,0x28,0x19,0x3E,0x20,0xCD, -0x17,0xD3,0xF5,0xCD,0x37,0xDD,0x2C,0xCD,0x9F,0xCE,0x48,0xF1,0x47,0xE5,0xEB,0xCD, -0x0F,0xBB,0xE1,0x30,0xE1,0xC9,0xCD,0x3F,0xDD,0xCD,0x67,0xCE,0x4F,0xFE,0x50,0x30, -0xD5,0xCD,0x37,0xDD,0x2C,0x06,0x02,0xCD,0x17,0xD3,0x1F,0x9F,0x47,0xC5,0xE5,0x79, -0xCD,0x39,0xBB,0xE1,0xC1,0x11,0x27,0xBB,0xCD,0x84,0xD4,0x11,0x2D,0xBB,0xCD,0x84, -0xD4,0x11,0x33,0xBB,0xCD,0x55,0xDD,0xD0,0xD5,0xCD,0x67,0xCE,0x47,0xE3,0x79,0xCD, -0xF8,0xFF,0xE1,0xC9,0xFE,0xA4,0x01,0x3F,0xBB,0x28,0x10,0xFE,0xA2,0x01,0x3E,0xBC, -0x28,0x09,0xFE,0xD9,0x28,0x1D,0x1E,0x02,0xC3,0x94,0xCA,0xC5,0xCD,0x3F,0xDD,0xCD, -0x6D,0xCE,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0x6D,0xCE,0x5F,0x51,0xC1,0xEB,0xCD,0xF9, -0xFF,0xEB,0xC9,0xCD,0x3F,0xDD,0x06,0x02,0xCD,0x17,0xD3,0xE5,0x21,0xA7,0x00,0x3D, -0x3E,0x32,0x28,0x02,0x29,0x0F,0xCD,0x68,0xBC,0xE1,0xC9,0xE5,0xCD,0x19,0xFF,0xCD, -0x1D,0xFF,0xCD,0x76,0xBD,0xE1,0xC9,0x3E,0xFF,0x18,0x01,0xAF,0xC3,0x73,0xBD,0x01, -0x79,0xBD,0x18,0x16,0xE5,0xC5,0xCD,0xEC,0xFE,0xEB,0x21,0xCB,0xAD,0xCD,0x3D,0xBD, -0xC1,0xE3,0x79,0xCD,0x4B,0xFF,0xD1,0x01,0x7C,0xBD,0xCD,0x19,0xD5,0xD8,0xCA,0xEA, -0xCA,0xFA,0xF3,0xCA,0x1E,0x05,0xC3,0x94,0xCA,0xC5,0xD5,0xCD,0xEC,0xFE,0xD1,0xC9, -0x01,0x85,0xBD,0x18,0xE5,0x01,0x82,0xBD,0x18,0xE0,0x01,0x7F,0xBD,0x18,0xDB,0x01, -0x88,0xBD,0x18,0xD6,0x01,0x8B,0xBD,0x18,0xD1,0x01,0x8E,0xBD,0x18,0xCC,0x01,0x91, -0xBD,0x18,0xC7,0x52,0x61,0x6E,0x64,0x6F,0x6D,0x20,0x6E,0x75,0x6D,0x62,0x65,0x72, -0x20,0x73,0x65,0x65,0x64,0x20,0x3F,0x20,0x00,0x28,0x06,0xCD,0xFB,0xCE,0xE5,0x18, -0x1B,0xE5,0x21,0x43,0xD5,0xCD,0x41,0xC3,0xCD,0x3B,0xCA,0xD2,0x6B,0xCB,0xCD,0x4E, -0xC3,0xCD,0xA3,0xEC,0x30,0xEC,0xCD,0x61,0xDD,0xB7,0x20,0xE6,0xCD,0xEC,0xFE,0xCD, -0x9A,0xBD,0xE1,0xC9,0x7E,0xFE,0x28,0x20,0x1C,0xCD,0x3F,0xDD,0xCD,0xFB,0xCE,0xCD, -0x37,0xDD,0x29,0xE5,0xCD,0xEC,0xFE,0xCD,0x70,0xBD,0x20,0x05,0xCD,0xA0,0xBD,0xE1, -0xC9,0xFC,0x9A,0xBD,0xE1,0xE5,0xCD,0x16,0xFF,0xCD,0x9D,0xBD,0xE1,0xC9,0xCD,0xBE, -0xD5,0x2A,0x83,0xAE,0x22,0x85,0xAE,0x22,0x87,0xAE,0x22,0x89,0xAE,0xC9,0x21,0xD0, -0xAD,0x3E,0x36,0xCD,0xCB,0xD5,0x21,0x06,0xAE,0x3E,0x06,0x36,0x00,0x23,0x3D,0x20, -0xFA,0xC9,0x21,0x00,0x00,0x22,0x04,0xAE,0xC9,0x3E,0x5B,0x2A,0x85,0xAE,0x2B,0x44, -0x4D,0x87,0xC6,0x4E,0x6F,0xCE,0xAD,0x95,0x67,0xC9,0x2A,0x87,0xAE,0x2B,0x44,0x4D, -0xE6,0x03,0x3D,0x87,0xC6,0x06,0x6F,0xCE,0xAE,0x95,0x67,0xC9,0x01,0x5A,0x41,0x1E, -0x05,0x79,0x90,0x38,0x3D,0xE5,0x3C,0x21,0xCB,0xAD,0x06,0x00,0x09,0x73,0x2B,0x3D, -0x20,0xFB,0xE1,0xC9,0x1E,0x03,0x18,0x06,0x1E,0x02,0x18,0x02,0x1E,0x05,0x7E,0xCD, -0x71,0xFF,0x30,0x1E,0x4F,0x47,0xCD,0x3F,0xDD,0xFE,0x2D,0x20,0x0C,0xCD,0x3F,0xDD, -0xCD,0x71,0xFF,0x30,0x0D,0x4F,0xCD,0x3F,0xDD,0xCD,0x01,0xD6,0xCD,0x55,0xDD,0x38, -0xDD,0xC9,0x1E,0x02,0x18,0x06,0x1E,0x09,0x18,0x02,0x1E,0x0A,0xC3,0x94,0xCA,0xFE, -0xF8,0xCA,0xA0,0xF1,0xCD,0x86,0xD6,0xD5,0xCD,0x37,0xDD,0xEF,0xCD,0xFB,0xCE,0x78, -0xE3,0xCD,0x66,0xD6,0xE1,0xC9,0x47,0xCD,0x23,0xFF,0xB8,0x78,0xC4,0xD7,0xFE,0xCD, -0x45,0xFF,0xC2,0x62,0xFF,0xE5,0xCD,0x59,0xFB,0xD1,0xC3,0x66,0xFF,0xCD,0xB5,0xD7, -0xCD,0x55,0xDD,0x38,0xF8,0xC9,0xCD,0x06,0xD9,0xCD,0xDB,0xD7,0x38,0x42,0x18,0x28, -0xCD,0x06,0xD9,0xCD,0xDB,0xD7,0x38,0x38,0xE5,0x79,0xCD,0xDB,0xD5,0xCD,0xDE,0xD6, -0x18,0x2D,0xCD,0x06,0xD9,0x38,0x21,0xE5,0xCD,0xD9,0xD5,0xCD,0xDE,0xD6,0xD4,0x3D, -0xD7,0x18,0x1C,0xCD,0x06,0xD9,0x38,0x10,0xE5,0x79,0xCD,0xDB,0xD5,0xCD,0xDE,0xD6, -0x3A,0xC1,0xB0,0xD4,0x49,0xD7,0x18,0x07,0xE5,0x2A,0x85,0xAE,0x2B,0x19,0xEB,0xE1, -0x3A,0xC1,0xB0,0x47,0x4F,0xC9,0xCD,0x06,0xD9,0xCD,0xC1,0xE8,0x18,0xF2,0xD5,0xEB, -0x2A,0x2B,0xAE,0x7C,0xB5,0x28,0x0E,0xD5,0x23,0x23,0xC5,0x01,0x00,0x00,0xCD,0x08, -0xD7,0xC1,0x38,0x10,0xD1,0xEB,0xE5,0xCD,0x08,0xD7,0x38,0x03,0xE1,0xD1,0xC9,0xF1, -0xE1,0xC3,0x6D,0xD7,0xF1,0xF1,0x37,0xC9,0x7E,0x23,0x66,0x6F,0xB4,0xC8,0x09,0xE5, -0x23,0x23,0xEB,0x2A,0x27,0xAE,0x1A,0xBE,0x20,0x14,0x23,0x13,0x17,0x30,0xF7,0xEB, -0x3A,0xC1,0xB0,0x3D,0xAE,0xE6,0x07,0x20,0x05,0xEB,0x13,0xE1,0x37,0xC9,0xE1,0x18, -0xD7,0xF5,0x54,0x5D,0x23,0x23,0x7E,0x23,0x17,0x30,0xFB,0xF1,0xC9,0x3E,0x02,0xCD, -0x49,0xD7,0x1B,0x1A,0xF6,0x40,0x12,0x13,0xC9,0xD5,0xE5,0xC5,0xF5,0xCD,0x77,0xD7, -0xF5,0x2A,0x87,0xAE,0xEB,0xCD,0xF8,0xF5,0xCD,0x3A,0xF5,0xF1,0xCD,0x8A,0xD7,0xF1, -0x2B,0x36,0x00,0x3D,0x20,0xFA,0xC1,0xE3,0xCD,0xA5,0xD7,0xD1,0xE1,0x23,0x7B,0x91, -0x77,0x23,0x7A,0x98,0x77,0x37,0xC9,0xC6,0x03,0x4F,0x2A,0x27,0xAE,0x06,0x00,0x0C, -0x04,0x7E,0x23,0x17,0x30,0xF9,0x78,0x06,0x00,0xC9,0x62,0x6B,0x09,0x4F,0x06,0x00, -0xE5,0xD5,0x13,0x13,0x2A,0x27,0xAE,0xCD,0xF2,0xFF,0x3A,0xC1,0xB0,0x3D,0x12,0x13, -0x42,0x4B,0xD1,0xE1,0xC9,0x7E,0x12,0x7B,0x91,0x77,0x23,0x7E,0xF5,0x7A,0x98,0x77, -0xF1,0x13,0x12,0x13,0xC9,0xCD,0x06,0xD9,0x7E,0xFE,0x28,0x28,0x05,0xEE,0x5B,0xC2, -0x42,0xD6,0xCD,0x5A,0xD8,0xE5,0xC5,0x3A,0xC1,0xB0,0xCD,0xEA,0xD5,0xCD,0x08,0xD7, -0xDA,0x4A,0xD6,0xC1,0x3E,0xFF,0xCD,0x8A,0xD8,0xE1,0xC9,0xF5,0x7E,0xFE,0x28,0x28, -0x10,0xEE,0x5B,0x28,0x0C,0xF1,0xD0,0xE5,0x2A,0x85,0xAE,0x2B,0x19,0xEB,0xE1,0x37, -0xC9,0xCD,0x5A,0xD8,0xF1,0xE5,0x30,0x07,0x2A,0x87,0xAE,0x2B,0x19,0x18,0x15,0xC5, -0xD5,0x3A,0xC1,0xB0,0xCD,0xEA,0xD5,0xCD,0x08,0xD7,0x30,0x0F,0x13,0x13,0xE1,0xCD, -0x6D,0xD7,0xC1,0xEB,0x78,0x96,0xC2,0x46,0xD6,0x18,0x0A,0xE1,0xC1,0xAF,0xCD,0x8A, -0xD8,0xCD,0x6D,0xD7,0xEB,0x11,0x00,0x00,0x46,0x23,0xE5,0xD5,0x5E,0x23,0x56,0x3E, -0x02,0xCD,0xA0,0xF5,0x7E,0x23,0x66,0x6F,0xCD,0xB8,0xFF,0xD2,0x46,0xD6,0xE3,0xCD, -0xBE,0xBD,0xD1,0x19,0xEB,0xE1,0x23,0x23,0x05,0x20,0xDF,0xE5,0x2A,0xC1,0xB0,0x26, -0x00,0xCD,0xBE,0xBD,0xD1,0x19,0xEB,0xE1,0x37,0xC9,0xD5,0xCD,0x3F,0xDD,0x3A,0xC1, -0xB0,0xF5,0x06,0x00,0xCD,0x7C,0xCE,0xE5,0x3E,0x02,0xCD,0xB0,0xF5,0x73,0x23,0x72, -0xE1,0x04,0xCD,0x55,0xDD,0x38,0xED,0x7E,0xFE,0x29,0x28,0x05,0xFE,0x5D,0xC2,0x42, -0xD6,0xCD,0x3F,0xDD,0xF1,0x32,0xC1,0xB0,0xD1,0xC9,0xE5,0x32,0x26,0xAE,0xC5,0x78, -0x87,0xC6,0x03,0xCD,0x77,0xD7,0xF5,0x2A,0x89,0xAE,0xEB,0xCD,0xF8,0xF5,0xF1,0xCD, -0x8A,0xD7,0x60,0x69,0xC1,0xD5,0x23,0x23,0x3A,0xC1,0xB0,0x5F,0x16,0x00,0x70,0xE5, -0x23,0xD5,0x3A,0x26,0xAE,0xB7,0x11,0x0B,0x00,0x28,0x0B,0xE5,0x3E,0x02,0xCD,0xA0, -0xF5,0x5E,0x23,0x56,0x13,0xE1,0x73,0x23,0x72,0x23,0xE3,0xCD,0xBE,0xBD,0xDA,0x46, -0xD6,0xEB,0xE1,0x10,0xDC,0x42,0x4B,0x54,0x5D,0xCD,0xFB,0xF5,0x22,0x89,0xAE,0xC5, -0x2B,0x36,0x00,0x0B,0x78,0xB1,0x20,0xF8,0xC1,0xE1,0x5E,0x16,0x00,0xEB,0x29,0x23, -0x09,0xEB,0x2B,0x2B,0x73,0x23,0x72,0x23,0xE3,0xEB,0x3A,0xC1,0xB0,0xCD,0xEA,0xD5, -0xCD,0xA5,0xD7,0xD1,0xE1,0xC9,0xCD,0x7F,0xD9,0x23,0x5E,0x23,0x56,0x7A,0xB3,0x28, -0x0A,0x23,0x7E,0x17,0x30,0xFB,0xCD,0x3F,0xDD,0x37,0xC9,0x2B,0x2B,0xEB,0xC1,0x2A, -0x27,0xAE,0xE5,0x21,0x2B,0xD9,0xE5,0xC5,0xEB,0x18,0x0E,0xE5,0x2A,0x27,0xAE,0xCD, -0xAC,0xF5,0xE1,0xE3,0x22,0x27,0xAE,0xE1,0xC9,0xE5,0x7E,0x23,0x23,0x23,0x4E,0xCB, -0xA9,0xFE,0x0B,0x38,0x19,0x79,0xE6,0x1F,0xC6,0x0B,0x5F,0xCE,0xAE,0x93,0x57,0x1A, -0x32,0xC1,0xB0,0xE3,0x36,0x0D,0xFE,0x05,0x28,0x03,0xC6,0x09,0x77,0xE3,0xEB,0x3E, -0x28,0xCD,0xB0,0xF5,0x22,0x27,0xAE,0x06,0x29,0x05,0xCA,0x42,0xD6,0x1A,0x13,0xE6, -0xDF,0x77,0x23,0x17,0x30,0xF3,0xCD,0xAC,0xF5,0xEB,0x2B,0xD1,0xC3,0x3F,0xDD,0x7E, -0xFE,0x0B,0x38,0x02,0xC6,0xF7,0xFE,0x04,0x28,0x09,0x30,0x04,0xFE,0x02,0x30,0x05, -0xC3,0x42,0xD6,0x3E,0x05,0x32,0xC1,0xB0,0xC9,0xCD,0xC6,0xD5,0x2A,0x89,0xAE,0xEB, -0x2A,0x87,0xAE,0xCD,0xB8,0xFF,0xC8,0xD5,0xCD,0x31,0xD7,0x7E,0x23,0xE6,0x07,0x3C, -0xE5,0xCD,0xEA,0xD5,0xCD,0xA5,0xD7,0xE1,0x5E,0x23,0x56,0x23,0x19,0xD1,0x18,0xE3, -0xCD,0x89,0xE9,0xCD,0xCC,0xD9,0xCD,0x55,0xDD,0x38,0xF8,0xC9,0xCD,0x06,0xD9,0xE5, -0x3A,0xC1,0xB0,0xCD,0xEA,0xD5,0xCD,0x08,0xD7,0xE5,0xEB,0x1E,0x05,0xD2,0x94,0xCA, -0x5E,0x23,0x56,0x23,0x19,0xEB,0x2A,0x89,0xAE,0xCD,0xCF,0xFF,0xE3,0xC1,0xEB,0x78, -0xB1,0xC4,0xF2,0xFF,0xEB,0x22,0x89,0xAE,0xCD,0x99,0xD9,0xE1,0xC9,0x21,0x00,0x00, -0x22,0x2B,0xAE,0x22,0x29,0xAE,0xC9,0xE5,0x2A,0x2B,0xAE,0xE5,0x2A,0x29,0xAE,0xEB, -0x3E,0x06,0xCD,0xB0,0xF5,0x22,0x29,0xAE,0x73,0x23,0x72,0x23,0xAF,0x77,0x23,0x77, -0x23,0xD1,0x73,0x23,0x72,0xE1,0xC9,0xE5,0x2A,0x29,0xAE,0x22,0x2B,0xAE,0xE1,0xC9, -0xE5,0x2A,0x29,0xAE,0xCD,0xAC,0xF5,0x5E,0x23,0x56,0x23,0xEB,0x22,0x29,0xAE,0xEB, -0x23,0x23,0x5E,0x23,0x56,0xEB,0x22,0x2B,0xAE,0xE1,0xC9,0xE5,0x3E,0x02,0xCD,0xB0, -0xF5,0xE3,0xCD,0x7F,0xD9,0xCD,0x39,0xD9,0xE3,0xEB,0x2A,0x29,0xAE,0x23,0x23,0x01, -0x00,0x00,0xCD,0xA5,0xD7,0x3A,0xC1,0xB0,0x47,0x3C,0xCD,0xB0,0xF5,0x78,0x3D,0x77, -0x23,0xEB,0xE1,0xC9,0x2A,0x29,0xAE,0x7C,0xB5,0x28,0x0E,0x4E,0x23,0x46,0x23,0xC5, -0x01,0x00,0x00,0xCD,0xCE,0xDA,0xE1,0x18,0xEE,0x01,0x41,0x1A,0xC5,0x79,0xCD,0xDB, -0xD5,0xCD,0xCE,0xDA,0xC1,0x0C,0x05,0x20,0xF3,0x3E,0x03,0xCD,0xEA,0xD5,0x4E,0x23, -0x46,0x78,0xB1,0xC8,0x2A,0x87,0xAE,0x2B,0x09,0xE5,0xD5,0xCD,0x31,0xD7,0xD1,0x23, -0x4E,0x23,0x46,0x23,0xE5,0x09,0xE3,0x4E,0x23,0x06,0x00,0x09,0x09,0xC1,0xCD,0xBE, -0xFF,0x28,0x08,0xCD,0xE7,0xDA,0x23,0x23,0x23,0x18,0xF3,0xE1,0x18,0xD0,0x7E,0x23, -0x66,0x6F,0xB4,0xC8,0x09,0xE5,0xD5,0xCD,0x31,0xD7,0xD1,0x7E,0x23,0xE6,0x07,0xFE, -0x02,0xCC,0xE7,0xDA,0xE1,0x18,0xE7,0xC5,0xD5,0xE5,0x7E,0x23,0x4E,0x23,0x46,0xEB, -0xB7,0xC4,0xF8,0xFF,0xE1,0xD1,0xC1,0xC9,0xCD,0x37,0xDD,0xA3,0xCD,0xCB,0xC1,0xF5, -0xCD,0x89,0xDB,0xCD,0x86,0xD6,0xCD,0x3C,0xFF,0xE5,0xD5,0xCD,0x1A,0xDB,0xCD,0xDC, -0xF7,0xE1,0xCD,0x6F,0xD6,0xE1,0xF1,0xC3,0xAF,0xC1,0xCD,0xC0,0xC1,0xD2,0x66,0xDC, -0xCD,0xA2,0xC1,0xF5,0xCD,0xAD,0xDB,0xF1,0xC3,0xA2,0xC1,0xCD,0xCB,0xC1,0xF5,0xCD, -0x47,0xDB,0xD5,0xCD,0x86,0xD6,0xE3,0x3E,0x00,0xCD,0xBC,0xDB,0xE3,0xCD,0x55,0xDD, -0x38,0xF1,0xD1,0xF1,0xC3,0xAF,0xC1,0xCD,0xC0,0xC1,0x30,0x3D,0xCD,0xA2,0xC1,0xF5, -0xE5,0xCD,0x89,0xDB,0x3E,0x3F,0xD4,0x56,0xC3,0x3E,0x20,0xD4,0x56,0xC3,0xE5,0xCD, -0xAD,0xDB,0xEB,0xE1,0xCD,0xD3,0xDB,0x38,0x09,0x21,0x77,0xDB,0xCD,0x41,0xC3,0xE1, -0x18,0xDE,0xF1,0xF1,0xC3,0xA2,0xC1,0x3F,0x52,0x65,0x64,0x6F,0x20,0x66,0x72,0x6F, -0x6D,0x20,0x73,0x74,0x61,0x72,0x74,0x0A,0x00,0x7E,0xFE,0x3B,0x32,0x2D,0xAE,0xCC, -0x3F,0xDD,0xEE,0x22,0xC0,0xCD,0xCB,0xF7,0xCD,0xC0,0xC1,0xF5,0xDC,0x28,0xF8,0xF1, -0xD4,0xDA,0xFB,0xCD,0x55,0xDD,0xD8,0xCD,0x37,0xDD,0x3B,0xB7,0xC9,0xCD,0x3B,0xCA, -0xD2,0x6B,0xCB,0x3A,0x2D,0xAE,0xFE,0x3B,0xC4,0x4E,0xC3,0xC9,0xD5,0xCD,0x02,0xDC, -0x30,0x0C,0xE3,0xCD,0x66,0xD6,0xE1,0x7E,0x23,0xB7,0xC8,0xEE,0x2C,0xC9,0x1E,0x0D, -0xC3,0x94,0xCA,0xD5,0xE5,0xD5,0xCD,0xD6,0xD6,0xE3,0xAF,0xCD,0x02,0xDC,0x30,0x1E, -0xFE,0x03,0xCC,0xDA,0xFB,0xE3,0xCD,0x55,0xDD,0xE3,0x30,0x0B,0xCD,0x61,0xDD,0xEE, -0x2C,0x20,0x0B,0x23,0xE3,0x18,0xDF,0xCD,0x61,0xDD,0xB7,0x20,0x01,0x37,0xE1,0xE1, -0xD1,0xC9,0x5F,0xCD,0x45,0xFF,0x57,0xD5,0x20,0x06,0xCD,0x21,0xDC,0x37,0x18,0x09, -0xCD,0xC0,0xC1,0xD4,0x38,0xDC,0xCD,0xA3,0xEC,0xF5,0xDC,0x61,0xDD,0xF1,0xD1,0x7A, -0xC9,0xCD,0xC0,0xC1,0x38,0x06,0xCD,0x47,0xDC,0xC3,0xDC,0xF7,0xCD,0x61,0xDD,0xFE, -0x22,0xCA,0xCB,0xF7,0x7B,0xC3,0xE6,0xF7,0xCD,0x9D,0xDC,0x30,0x05,0x11,0xC6,0xDC, -0x18,0x2C,0x1E,0x18,0xC3,0x94,0xCA,0xCD,0x9D,0xDC,0x30,0xF6,0xFE,0x22,0x28,0x05, -0x11,0xCA,0xDC,0x18,0x19,0xCD,0xA8,0xDC,0x11,0x63,0xDC,0x38,0x11,0x21,0xA4,0xAC, -0x36,0x00,0xC9,0xFE,0x22,0xC9,0xCD,0xA8,0xDC,0x30,0xD7,0x11,0xCD,0xDC,0x21,0xA4, -0xAC,0xE5,0x06,0xFF,0xCD,0xFB,0xFF,0x28,0x0C,0x77,0x23,0x05,0x28,0x05,0xCD,0xA8, -0xDC,0x38,0xF1,0xF6,0xFF,0x36,0x00,0xE1,0xC0,0xFE,0x0D,0xC8,0xFE,0x22,0xC4,0xD0, -0xDC,0xC0,0xCD,0x9D,0xDC,0xD0,0xCD,0xCA,0xDC,0xC4,0x14,0xC4,0xC9,0xCD,0xA8,0xDC, -0xD0,0xCD,0xD0,0xDC,0x28,0xF7,0x37,0xC9,0xCD,0x24,0xC4,0xD0,0xC5,0xFE,0x0D,0x06, -0x0A,0x28,0x05,0xB8,0x20,0x0D,0x06,0x0D,0x4F,0xCD,0x24,0xC4,0x30,0x04,0xB8,0xC4, -0x14,0xC4,0x79,0xC1,0x37,0xC9,0xCD,0xD0,0xDC,0xC8,0xFE,0x2C,0xC8,0xFE,0x0D,0xC9, -0xFE,0x20,0xC8,0xFE,0x09,0xC8,0xFE,0x0A,0xC9,0x28,0x0A,0xCD,0xE1,0xCE,0xE5,0xCD, -0x9A,0xE7,0x2B,0x18,0x2D,0xE5,0x2A,0x81,0xAE,0x18,0x27,0xE5,0x2A,0x30,0xAE,0xCD, -0x17,0xDD,0xE3,0xCD,0x86,0xD6,0xE3,0x23,0x3E,0x3A,0xCD,0xBC,0xDB,0x2B,0x28,0x0B, -0x2A,0x2E,0xAE,0xCD,0xCE,0xDD,0x1E,0x02,0xC3,0x94,0xCA,0xE3,0xCD,0x55,0xDD,0xE3, -0x38,0xDD,0x22,0x30,0xAE,0xE1,0xC9,0x7E,0xFE,0x2C,0xC8,0xCD,0xEF,0xE8,0xB7,0x20, -0x0E,0x23,0x7E,0x23,0xB6,0x23,0x1E,0x04,0xCA,0x94,0xCA,0x22,0x2E,0xAE,0x23,0xCD, -0x3F,0xDD,0xFE,0x8C,0x20,0xE5,0xC9,0xE3,0x7E,0x23,0xE3,0xBE,0xC2,0xC6,0xDD,0x23, -0x7E,0xFE,0x20,0x28,0xFA,0xFE,0x01,0xD0,0xB7,0xC9,0x7E,0xFE,0x02,0xD8,0xC3,0xC6, -0xDD,0x7E,0xFE,0x02,0xC9,0x2B,0xCD,0x3F,0xDD,0xEE,0x2C,0xC0,0xCD,0x3F,0xDD,0x37, -0xC9,0x7E,0x23,0xFE,0x20,0x28,0xFA,0xFE,0x09,0x28,0xF6,0xFE,0x0A,0x28,0xF2,0x2B, -0xC9,0x2A,0x34,0xAE,0xEB,0x2A,0x8B,0xB0,0x22,0x32,0xAE,0xEB,0x22,0x34,0xAE,0xCD, -0x21,0xB9,0xDC,0x07,0xC8,0xCD,0x3F,0xDD,0xC4,0xAB,0xDD,0x7E,0xFE,0x01,0x28,0xE4, -0x30,0x34,0x23,0x7E,0x23,0xB6,0x23,0x28,0x0F,0x22,0x36,0xAE,0x23,0x3A,0x38,0xAE, -0xB7,0x28,0xD1,0xCD,0xEB,0xDD,0x18,0xCC,0xC3,0x76,0xCB,0x87,0xD2,0x4F,0xD6,0xFE, -0xB9,0x30,0x10,0xEB,0xC6,0x01,0x6F,0xCE,0xDE,0x95,0x67,0x4E,0x23,0x46,0xC5,0xEB, -0xC3,0x3F,0xDD,0xCD,0x07,0xAC,0x1E,0x02,0xC3,0x94,0xCA,0x21,0x00,0x00,0x22,0x36, -0xAE,0xC9,0x2A,0x36,0xAE,0xC9,0x2A,0x36,0xAE,0x7C,0xB5,0xC8,0x7E,0x23,0x66,0x6F, -0x37,0xC9,0x3E,0xFF,0x18,0x01,0xAF,0x32,0x38,0xAE,0xC9,0x3E,0x5B,0xCD,0x56,0xC3, -0xE5,0x2A,0x36,0xAE,0x7E,0x23,0x66,0x6F,0xCD,0x79,0xEE,0xE1,0x3E,0x5D,0xC3,0x56, -0xC3,0x71,0xC9,0xDF,0xC0,0x21,0xC2,0xBA,0xF1,0x46,0xD2,0x3C,0xEA,0x32,0xC1,0xB5, -0xC4,0x98,0xD2,0xA1,0xD2,0x5A,0xC2,0xC0,0xCB,0xEF,0xE8,0x17,0xD1,0x18,0xD6,0x1C, -0xD6,0x14,0xD6,0xE7,0xD4,0x28,0xE7,0x7D,0xD6,0xC6,0xC4,0xCB,0xC4,0x52,0xC0,0xF3, -0xE8,0x65,0xCB,0x85,0xD3,0x4E,0xD3,0xC0,0xD9,0x8F,0xCA,0x79,0xC9,0x29,0xC5,0xED, -0xC6,0xE8,0xC6,0xC7,0xC6,0x2A,0xC2,0x2B,0xDB,0x39,0xD4,0x54,0xD6,0xF8,0xDA,0xF7, -0xE0,0xF6,0xE9,0xD2,0xC2,0xEF,0xF4,0xA6,0xEA,0x93,0xF9,0x4F,0xC2,0x05,0xC5,0x0A, -0xC5,0xFB,0xC5,0x2B,0xC1,0xE3,0xC7,0xCB,0xC8,0xF8,0xCB,0x40,0xC9,0x5F,0xD2,0x56, -0xD2,0x8C,0xC4,0x77,0xF1,0x0A,0xC2,0x12,0xC2,0xD0,0xC4,0xD5,0xC4,0x5F,0xF1,0xFD, -0xF1,0xF3,0xE8,0xEB,0xD4,0x59,0xD5,0xEB,0xDC,0x1E,0xD3,0xF3,0xE8,0xDF,0xE7,0xD9, -0xDC,0x03,0xCC,0x0F,0xC7,0xBD,0xE9,0x09,0xEC,0xC0,0xD2,0x94,0xD4,0x5A,0xCB,0x9D, -0xF6,0x19,0xC3,0x20,0xC3,0xE6,0xDD,0xE2,0xDD,0x7D,0xF1,0x76,0xC7,0x47,0xC7,0xE3, -0xC3,0xE1,0xC2,0x7B,0xF4,0xF6,0xF1,0xE1,0xC8,0xE7,0xC8,0xD5,0xEB,0x2A,0x7F,0xAE, -0xEB,0xD5,0xAF,0x32,0x39,0xAE,0x01,0x2C,0x01,0xCD,0xE1,0xDE,0x7E,0xB7,0x20,0xF9, -0x3E,0x2D,0x91,0x4F,0x3E,0x01,0x98,0x47,0xAF,0x12,0x13,0x12,0x13,0x12,0xE1,0xD1, -0xC9,0xCD,0x10,0xAC,0x7E,0xB7,0xC8,0xCD,0x71,0xFF,0x38,0x1D,0xCD,0x7F,0xFF,0xDA, -0xFF,0xDF,0xFE,0x26,0xCA,0x5A,0xE0,0x23,0xFE,0x80,0xD0,0xFE,0x20,0xC2,0x80,0xE0, -0x3A,0x00,0xAC,0xB7,0xC0,0x3E,0x20,0x18,0x1C,0xCD,0x4E,0xDF,0xD8,0xFE,0xC5,0xCA, -0xED,0xE0,0xE5,0x21,0x30,0xDF,0xCD,0xAA,0xFF,0xE1,0x38,0x19,0xF5,0xFE,0x97,0x3E, -0x01,0xCC,0x25,0xDF,0xF1,0x12,0x13,0x0B,0x79,0xB0,0xC0,0x1E,0x17,0xC3,0x94,0xCA, -0x8C,0x8E,0x90,0x8F,0x00,0xCD,0x25,0xDF,0x7E,0xB7,0xC8,0xFE,0x3A,0x28,0x0A,0x23, -0xFE,0x22,0x20,0xF1,0xCD,0xBF,0xE0,0x18,0xEF,0xAF,0x32,0x39,0xAE,0xC9,0xC5,0xD5, -0xE5,0xCD,0x16,0xAC,0x7E,0x23,0xCD,0x8A,0xFF,0xCD,0xDD,0xE2,0xCD,0x27,0xE3,0x30, -0x28,0x79,0xE6,0x7F,0xCD,0x7B,0xFF,0x30,0x0B,0x1A,0xFE,0xE4,0x28,0x06,0x7E,0xCD, -0x7B,0xFF,0x38,0x15,0xF1,0x1A,0xB7,0xFA,0xC8,0xDF,0xD1,0xC1,0xF5,0x3E,0xFF,0xCD, -0x25,0xDF,0xF1,0xCD,0x25,0xDF,0xAF,0x18,0x3A,0xE1,0xD1,0xC1,0xE5,0x2B,0x23,0x7E, -0xCD,0x7B,0xFF,0x38,0xF9,0xCD,0xEA,0xDF,0x38,0x04,0x3E,0x0D,0x18,0x06,0x23,0xFE, -0x05,0x20,0x01,0x3D,0xCD,0x25,0xDF,0xAF,0xCD,0x25,0xDF,0xAF,0xCD,0x25,0xDF,0xE3, -0x7E,0xCD,0x7B,0xFF,0x30,0x07,0x7E,0xCD,0x25,0xDF,0x23,0x18,0xF3,0xCD,0xDF,0xE0, -0xE1,0x3E,0xFF,0x32,0x39,0xAE,0x37,0xC9,0xE5,0x4F,0x21,0xDC,0xDF,0xCD,0xAA,0xFF, -0x9F,0xE6,0x01,0x32,0x39,0xAE,0x79,0xE1,0xD1,0xC1,0xB7,0xC9,0xC7,0x81,0xC6,0x92, -0x96,0xC8,0xE3,0x97,0xCA,0xA7,0xA0,0xEB,0x9F,0x00,0xFE,0x26,0xD0,0xFE,0x21,0x3F, -0xD0,0xFE,0x22,0xC8,0xFE,0x23,0xC8,0xEE,0x27,0xFE,0x04,0xCE,0xFF,0x37,0xC9,0x3A, -0x39,0xAE,0xB7,0x28,0x15,0x7E,0x23,0xFA,0x25,0xDF,0xFE,0x2E,0xCA,0x25,0xDF,0x2B, -0xD5,0xCD,0x04,0xEE,0x30,0x34,0x3E,0x1E,0x18,0x4F,0xD5,0xC5,0xCD,0xBE,0xEC,0xC1, -0x30,0x28,0xCD,0x27,0xFF,0x3E,0x1F,0x30,0x40,0xEB,0x2A,0xC2,0xB0,0xEB,0x7A,0xB7, -0x3E,0x1A,0x20,0x35,0xE3,0xEB,0x7D,0xFE,0x0A,0x30,0x04,0xC6,0x0E,0x18,0x06,0x3E, -0x19,0xCD,0x25,0xDF,0x7D,0xCD,0x25,0xDF,0xE1,0xC9,0x7E,0x23,0xE3,0xEB,0xCD,0x25, -0xDF,0xEB,0xE3,0xCD,0xB8,0xFF,0x20,0xF2,0xD1,0xC9,0xD5,0xC5,0xCD,0xBE,0xEC,0xC1, -0x30,0xE8,0xFE,0x02,0x3E,0x1B,0x28,0x01,0x3C,0xD1,0xCD,0x25,0xDF,0xE5,0x21,0xC2, -0xB0,0xCD,0x23,0xFF,0xF5,0x7E,0x23,0xCD,0x25,0xDF,0xF1,0x3D,0x20,0xF6,0xE1,0xC9, -0xFE,0x22,0x28,0x3B,0xFE,0x7C,0x28,0x45,0xC5,0xD5,0xEE,0x3F,0x06,0xBF,0x28,0x16, -0x2B,0x11,0x4B,0xE6,0xCD,0x27,0xE3,0x1A,0x38,0x08,0x7E,0xFE,0x20,0x30,0x02,0x3E, -0x20,0x23,0x47,0xCD,0xB3,0xE0,0x32,0x39,0xAE,0x78,0xD1,0xC1,0xFE,0xC0,0x28,0x36, -0xC3,0x25,0xDF,0x3D,0xC8,0xEE,0x22,0xC8,0x3A,0x39,0xAE,0x3C,0xC8,0x3D,0xC9,0xCD, -0x25,0xDF,0x7E,0xB7,0xC8,0x23,0xFE,0x22,0x20,0xF5,0xC3,0x25,0xDF,0xCD,0x25,0xDF, -0xAF,0x32,0x39,0xAE,0xCD,0x25,0xDF,0x7E,0x23,0xCD,0x7B,0xFF,0x38,0xF6,0x2B,0x1B, -0x1A,0xF6,0x80,0x12,0x13,0xC9,0x3E,0x01,0xCD,0x25,0xDF,0x3E,0xC0,0xCD,0x25,0xDF, -0x7E,0x23,0xB7,0x20,0xF8,0x2B,0xC9,0xCD,0xB0,0xCE,0xC5,0xD5,0xCD,0xC6,0xC1,0xCD, -0x4A,0xDD,0xCD,0xCB,0xDD,0xD1,0xC1,0xCD,0x0D,0xE1,0xC3,0x64,0xC0,0xD5,0x50,0x59, -0xCD,0xA3,0xE7,0xD1,0x4E,0x23,0x46,0x2B,0x78,0xB1,0xC8,0xCD,0x3C,0xC4,0xE5,0x09, -0xE3,0xD5,0xE5,0x23,0x23,0x5E,0x23,0x56,0xE1,0xE3,0xCD,0xB8,0xFF,0xE3,0x38,0x12, -0xCD,0x63,0xE1,0xCD,0x45,0xE1,0x23,0x7E,0xB7,0x20,0xF8,0xCD,0x4E,0xC3,0xD1,0xE1, -0x18,0xD2,0xE1,0xE1,0xC9,0xCD,0xBA,0xC1,0x38,0x0B,0x7E,0xCD,0x6E,0xC3,0xFE,0x0A, -0xC0,0x3E,0x0D,0x18,0x0B,0x7E,0xFE,0x20,0x30,0x06,0x3E,0x01,0xCD,0x6E,0xC3,0x7E, -0xC3,0x6E,0xC3,0xD5,0x01,0xA4,0xAC,0xC5,0x23,0x23,0x5E,0x23,0x56,0x23,0xE5,0xEB, -0xCD,0x0D,0xFF,0xCD,0x82,0xEE,0x11,0x00,0x00,0x7E,0x23,0xB7,0x28,0x05,0xCD,0xFE, -0xE1,0x18,0xF6,0x3E,0x20,0xCD,0xFE,0xE1,0xE1,0x7E,0xB7,0x28,0x05,0xCD,0x96,0xE1, -0x18,0xF7,0x02,0xE1,0xD1,0xC9,0xCD,0x13,0xAC,0xFA,0x20,0xE2,0xFE,0x02,0x38,0x1D, -0xFE,0x05,0x38,0x43,0xFE,0x0B,0x38,0x22,0xFE,0x0E,0x38,0x3B,0xFE,0x20,0x38,0x2E, -0xFE,0x7C,0x28,0x51,0xCD,0xEA,0xDF,0xDC,0x1A,0xE2,0x7E,0x18,0x0D,0x23,0x7E,0xFE, -0xC0,0x28,0x5D,0xFE,0x97,0x28,0x59,0x2B,0x3E,0x3A,0x1E,0x00,0xFE,0x22,0x20,0x0B, -0xCD,0xFE,0xE1,0x23,0x7E,0xB7,0xC8,0xFE,0x22,0x20,0xF5,0x23,0x18,0x20,0xCD,0x1A, -0xE2,0xCD,0x53,0xE2,0x1E,0x01,0xC9,0xCD,0x1A,0xE2,0x7E,0xF5,0x23,0x23,0x23,0xCD, -0x0F,0xE2,0xF1,0x1E,0x01,0xFE,0x0B,0xD0,0x1E,0x00,0xEE,0x27,0xE6,0xFD,0x02,0x03, -0x15,0xC0,0x0B,0x14,0xC9,0x1E,0x01,0xCD,0xFE,0xE1,0x23,0x7E,0x23,0xB7,0xC0,0x7E, -0xE6,0x7F,0xCD,0xFE,0xE1,0xBE,0x23,0x30,0xF6,0xC9,0x1D,0xC0,0x3E,0x20,0x18,0xDE, -0x23,0xFE,0xFF,0x20,0x02,0x7E,0x23,0xF5,0xE5,0xCD,0xED,0xE2,0xB7,0x28,0x08,0xF5, -0xCD,0x1A,0xE2,0xF1,0xCD,0xFE,0xE1,0x7E,0xE6,0x7F,0xFE,0x09,0xC4,0xFE,0xE1,0xBE, -0x23,0x28,0xF4,0xCD,0x7B,0xFF,0x1E,0x00,0x30,0x02,0x1E,0x01,0xE1,0xF1,0xD6,0xE4, -0xC0,0x5F,0xC9,0xD5,0x7E,0x23,0xFE,0x1B,0x28,0x49,0xFE,0x1C,0x28,0x50,0xFE,0x1E, -0x28,0x26,0xFE,0x1D,0x28,0x22,0xFE,0x1F,0x28,0x5E,0xFE,0x19,0x28,0x09,0xFE,0x1A, -0x28,0x0B,0xD6,0x0E,0x5F,0x18,0x02,0x5E,0x23,0x16,0x00,0x18,0x04,0x5E,0x23,0x56, -0x23,0xE3,0xEB,0xCD,0x0D,0xFF,0x18,0x47,0x5E,0x23,0x56,0x23,0xFE,0x1E,0x28,0x09, -0xE5,0xEB,0x23,0x23,0x23,0x5E,0x23,0x56,0xE1,0xE3,0xEB,0xCD,0x0D,0xFF,0xCD,0x82, -0xEE,0x18,0x2F,0xC5,0x01,0x02,0x00,0xCD,0x14,0xF1,0x3E,0x58,0x18,0x09,0xC5,0x01, -0x02,0x00,0xCD,0x19,0xF1,0x3E,0x48,0xC1,0xE3,0xEB,0xF5,0x3E,0x26,0xCD,0xFE,0xE1, -0xF1,0xFE,0x48,0xC4,0xFE,0xE1,0x18,0x0A,0x3E,0x05,0xCD,0x4B,0xFF,0xE3,0xEB,0xCD, -0x8F,0xEE,0x7E,0x23,0xCD,0xFE,0xE1,0x7E,0xB7,0x20,0xF7,0xE1,0xC9,0xE5,0xD6,0x41, -0x87,0xC6,0x54,0x6F,0xCE,0xE3,0x95,0x67,0x5E,0x23,0x56,0xE1,0xC9,0xC5,0x4F,0x06, -0x1A,0x21,0x88,0xE3,0xCD,0x13,0xE3,0x38,0x0D,0x23,0x10,0xF8,0x21,0x4B,0xE6,0xCD, -0x13,0xE3,0x30,0x07,0x06,0xC0,0x78,0xC6,0x40,0xC1,0xC9,0xCD,0x19,0xAC,0x1E,0x02, -0xC3,0x94,0xCA,0x7E,0xB7,0xC8,0xE5,0x7E,0x23,0x17,0x30,0xFB,0x7E,0x23,0xB9,0x28, -0x03,0xF1,0x18,0xEF,0xE1,0x37,0xC9,0x1A,0xB7,0xC8,0xE5,0x1A,0x13,0xFE,0x09,0x28, -0x04,0xFE,0x20,0x20,0x05,0xCD,0x61,0xDD,0x18,0xF1,0x4F,0x7E,0x23,0xCD,0x8A,0xFF, -0xA9,0x28,0xE8,0xE6,0x7F,0x28,0x0A,0x1B,0x1A,0x13,0x17,0x30,0xFB,0x13,0xE1,0x18, -0xD6,0xF1,0x37,0xC9,0x35,0xE6,0x2A,0xE6,0xEF,0xE5,0xB9,0xE5,0x8A,0xE5,0x7E,0xE5, -0x72,0xE5,0x68,0xE5,0x47,0xE5,0x43,0xE5,0x3F,0xE5,0x13,0xE5,0xED,0xE4,0xE2,0xE4, -0xAA,0xE4,0x86,0xE4,0x85,0xE4,0x3B,0xE4,0xFB,0xE3,0xCF,0xE3,0xC0,0xE3,0xB8,0xE3, -0x9A,0xE3,0x92,0xE3,0x8D,0xE3,0x88,0xE3,0x4F,0x4E,0xC5,0xDA,0x00,0x50,0x4F,0xD3, -0x48,0x00,0x50,0x4F,0xD3,0x47,0x4F,0xD2,0xFD,0x00,0x52,0x49,0x54,0xC5,0xD9,0x49, -0x4E,0x44,0x4F,0xD7,0xD8,0x49,0x44,0x54,0xC8,0xD7,0x48,0x49,0x4C,0xC5,0xD6,0x45, -0x4E,0xC4,0xD5,0x41,0x49,0xD4,0xD4,0x00,0x50,0x4F,0xD3,0x7F,0x41,0xCC,0x1D,0x00, -0x53,0x49,0x4E,0xC7,0xED,0x50,0x50,0x45,0x52,0xA4,0x1C,0x4E,0xD4,0x1B,0x00,0x52, -0x4F,0xCE,0xD3,0x52,0x4F,0x46,0xC6,0xD2,0xCF,0xEC,0x49,0x4D,0xC5,0x46,0x48,0x45, -0xCE,0xEB,0x45,0x53,0x54,0xD2,0x7D,0x45,0x53,0xD4,0x7C,0x41,0xCE,0x1A,0x41,0x47, -0x4F,0x46,0xC6,0xD1,0x41,0xC7,0xD0,0x41,0xC2,0xEA,0x00,0x59,0x4D,0x42,0x4F,0xCC, -0xCF,0x57,0x41,0xD0,0xE7,0x54,0x52,0x49,0x4E,0x47,0xA4,0x7B,0x54,0x52,0xA4,0x19, -0x54,0x4F,0xD0,0xCE,0x54,0x45,0xD0,0xE6,0x51,0xD2,0x18,0xD1,0x17,0x50,0x45,0x45, -0xC4,0xCD,0x50,0xC3,0xE5,0x50,0x41,0x43,0x45,0xA4,0x16,0x4F,0x55,0x4E,0xC4,0xCC, -0x49,0xCE,0x15,0x47,0xCE,0x14,0x41,0x56,0xC5,0xCB,0x00,0x55,0xCE,0xCA,0x4F,0x55, -0x4E,0xC4,0x7A,0x4E,0xC4,0x45,0x49,0x47,0x48,0x54,0xA4,0x79,0x45,0x54,0x55,0x52, -0xCE,0xC9,0x45,0x53,0x55,0x4D,0xC5,0xC8,0x45,0x53,0x54,0x4F,0x52,0xC5,0xC7,0x45, -0x4E,0x55,0xCD,0xC6,0x45,0x4D,0x41,0x49,0xCE,0x13,0x45,0xCD,0xC5,0x45,0x4C,0x45, -0x41,0x53,0xC5,0xC4,0x45,0x41,0xC4,0xC3,0x41,0x4E,0x44,0x4F,0x4D,0x49,0x5A,0xC5, -0xC2,0x41,0xC4,0xC1,0x00,0x00,0x52,0x49,0x4E,0xD4,0xBF,0x4F,0xD3,0x78,0x4F,0x4B, -0xC5,0xBE,0x4C,0x4F,0x54,0xD2,0xBD,0x4C,0x4F,0xD4,0xBC,0xC9,0x44,0x45,0xCE,0xBB, -0x45,0x45,0xCB,0x12,0x41,0x50,0x45,0xD2,0xBA,0x00,0x55,0xD4,0xB9,0x52,0x49,0x47, -0x49,0xCE,0xB8,0xD2,0xFC,0x50,0x45,0x4E,0x4F,0x55,0xD4,0xB7,0x50,0x45,0x4E,0x49, -0xCE,0xB6,0x4E,0x20,0x53,0xD1,0xB5,0x4E,0x20,0x45,0x52,0x52,0x4F,0x52,0x20,0x47, -0x4F,0x09,0x54,0x4F,0x20,0xB0,0xB4,0x4E,0x20,0x42,0x52,0x45,0x41,0xCB,0xB3,0xCE, -0xB2,0x00,0x4F,0xD4,0xFE,0x45,0xD7,0xB1,0x45,0x58,0xD4,0xB0,0x00,0x4F,0x56,0x45, -0xD2,0xAF,0x4F,0x56,0xC5,0xAE,0x4F,0x44,0xC5,0xAD,0x4F,0xC4,0xFB,0x49,0xCE,0x77, -0x49,0x44,0xA4,0xAC,0x45,0x52,0x47,0xC5,0xAB,0x45,0x4D,0x4F,0x52,0xD9,0xAA,0x41, -0xD8,0x76,0x00,0x4F,0x57,0x45,0x52,0xA4,0x11,0x4F,0x47,0x31,0xB0,0x10,0x4F,0xC7, -0x0F,0x4F,0x43,0x41,0x54,0xC5,0xA9,0x4F,0x41,0xC4,0xA8,0x49,0x53,0xD4,0xA7,0x49, -0x4E,0xC5,0xA6,0x45,0xD4,0xA5,0x45,0xCE,0x0E,0x45,0x46,0x54,0xA4,0x75,0x00,0x45, -0xD9,0xA4,0x00,0x4F,0xD9,0x0D,0x00,0x4E,0xD4,0x0C,0x4E,0x53,0x54,0xD2,0x74,0x4E, -0x50,0x55,0xD4,0xA3,0x4E,0xD0,0x0B,0x4E,0x4B,0x45,0x59,0xA4,0x43,0x4E,0x4B,0x45, -0xD9,0x0A,0x4E,0xCB,0xA2,0xC6,0xA1,0x00,0x49,0x4D,0x45,0xCD,0x42,0x45,0x58,0xA4, -0x73,0x00,0x4F,0x09,0x54,0xCF,0xA0,0x4F,0x09,0x53,0x55,0xC2,0x9F,0x00,0x52,0xC5, -0x09,0x4F,0xD2,0x9E,0xCE,0xE4,0x49,0xD8,0x08,0x00,0x58,0xD0,0x07,0x56,0x45,0x52, -0xD9,0x9D,0x52,0x52,0x4F,0xD2,0x9C,0x52,0xD2,0x41,0x52,0xCC,0xE3,0x52,0x41,0x53, -0xC5,0x9B,0x4F,0xC6,0x40,0x4E,0xD6,0x9A,0x4E,0xD4,0x99,0x4E,0xC4,0x98,0x4C,0x53, -0xC5,0x97,0xC9,0xDC,0x44,0x49,0xD4,0x96,0x00,0x52,0x41,0x57,0xD2,0x95,0x52,0x41, -0xD7,0x94,0x49,0xCD,0x93,0xC9,0xDB,0x45,0x4C,0x45,0x54,0xC5,0x92,0x45,0xC7,0x91, -0x45,0x46,0x53,0x54,0xD2,0x90,0x45,0x46,0x52,0x45,0x41,0xCC,0x8F,0x45,0x46,0x49, -0x4E,0xD4,0x8E,0x45,0xC6,0x8D,0x45,0x43,0xA4,0x72,0x41,0x54,0xC1,0x8C,0x00,0x52, -0x45,0x41,0xCC,0x06,0x4F,0xD3,0x05,0x4F,0x4E,0xD4,0x8B,0x4C,0xD3,0x8A,0x4C,0x4F, -0x53,0x45,0x4F,0x55,0xD4,0x89,0x4C,0x4F,0x53,0x45,0x49,0xCE,0x88,0x4C,0xC7,0x87, -0x4C,0x45,0x41,0xD2,0x86,0x49,0x4E,0xD4,0x04,0x48,0x52,0xA4,0x03,0x48,0x41,0x49, -0xCE,0x85,0x41,0xD4,0x84,0x41,0x4C,0xCC,0x83,0x00,0x4F,0x52,0x44,0x45,0xD2,0x82, -0x49,0x4E,0xA4,0x71,0x00,0x55,0x54,0xCF,0x81,0x54,0xCE,0x02,0x53,0xC3,0x01,0x4E, -0xC4,0xFA,0x46,0x54,0x45,0xD2,0x80,0x42,0xD3,0x00,0x00,0xDE,0xF8,0xDC,0xF9,0x3E, -0x09,0xBD,0xF0,0x3D,0x20,0xBE,0xF0,0xBE,0xEE,0xBD,0xEF,0x3C,0x09,0xBE,0xF2,0x3C, -0x09,0xBD,0xF3,0x3D,0x20,0xBC,0xF3,0xBC,0xF1,0xAF,0xF7,0xBA,0x01,0xAA,0xF6,0xAD, -0xF5,0xAB,0xF4,0xA7,0xC0,0x00,0xAF,0x32,0x3A,0xAE,0x2A,0x81,0xAE,0x77,0x23,0x77, -0x23,0x77,0x23,0x22,0x83,0xAE,0xC9,0x3A,0x3A,0xAE,0xB7,0xC8,0xC5,0xD5,0xE5,0x01, -0x9D,0xE6,0xCD,0xFF,0xE8,0xAF,0x32,0x3A,0xAE,0xE1,0xD1,0xC1,0xC9,0xCD,0x43,0xE9, -0xFE,0x02,0xD8,0xFE,0x1D,0x20,0xF6,0x56,0x2B,0x5E,0x2B,0xE5,0xEB,0x23,0x23,0x23, -0x5E,0x23,0x56,0xE1,0x36,0x1E,0x23,0x73,0x23,0x72,0x18,0xE1,0xCD,0x61,0xDD,0xB7, -0x37,0xC8,0xCD,0x04,0xEE,0xD0,0x7E,0xFE,0x20,0x20,0x01,0x23,0xCD,0xD2,0xE6,0x37, -0x9F,0xC9,0xCD,0x87,0xE6,0xCD,0xBB,0xDE,0xE5,0xCD,0x61,0xDD,0xB7,0x28,0x28,0xC5, -0xD5,0x21,0x04,0x00,0x09,0xE5,0xE5,0xCD,0xA3,0xE7,0xE5,0xDC,0x0B,0xE7,0xD1,0xC1, -0xCD,0xF8,0xF5,0xCD,0x2C,0xF5,0xEB,0xD1,0x73,0x23,0x72,0x23,0xD1,0x73,0x23,0x72, -0x23,0xC1,0xEB,0xE1,0xC3,0xF2,0xFF,0xE1,0xCD,0x9A,0xE7,0xC5,0xE5,0x09,0xEB,0x2A, -0x89,0xAE,0xCD,0xCF,0xFF,0x44,0x4D,0xEB,0xD1,0x78,0xB1,0xC4,0xF2,0xFF,0xD1,0x21, -0x00,0x00,0xCD,0xDA,0xFF,0xC3,0x2C,0xF5,0xCD,0x37,0xE7,0xCD,0x4A,0xDD,0xCD,0x5A, -0xE7,0xCD,0x7A,0xC1,0xC3,0x64,0xC0,0xCD,0xB0,0xCE,0xE5,0xC5,0xCD,0xC1,0xE7,0xD1, -0xE5,0xCD,0xA3,0xE7,0x22,0x3B,0xAE,0xEB,0xE1,0xCD,0xCF,0xFF,0x22,0x3D,0xAE,0x38, -0x04,0x7C,0xB5,0xE1,0xC0,0x1E,0x05,0xC3,0x94,0xCA,0xCD,0x87,0xE6,0xED,0x4B,0x3D, -0xAE,0x2A,0x3B,0xAE,0xC3,0x0B,0xE7,0x23,0x5E,0x23,0x56,0x23,0xFE,0x1D,0xC8,0xFE, -0x1E,0xC2,0xEA,0xE8,0xE5,0xCD,0xD6,0xDD,0xDC,0xB8,0xFF,0x30,0x09,0xE1,0xE5,0xCD, -0xF3,0xE8,0x23,0xCD,0xA7,0xE7,0xD4,0x9A,0xE7,0x2B,0xEB,0xE1,0xE5,0x3E,0x1D,0x32, -0x3A,0xAE,0x2B,0x72,0x2B,0x73,0x2B,0x77,0xE1,0xC9,0xCD,0xA3,0xE7,0xD8,0x1E,0x08, -0xC3,0x94,0xCA,0x2A,0x81,0xAE,0x23,0x4E,0x23,0x46,0x2B,0x78,0xB1,0xC8,0xE5,0x23, -0x23,0x7E,0x23,0x66,0x6F,0xEB,0xCD,0xB8,0xFF,0xEB,0xE1,0x3F,0xD0,0xC8,0x09,0x18, -0xE6,0x2A,0x81,0xAE,0x23,0xE5,0x4E,0x23,0x46,0x23,0x78,0xB1,0x28,0x0F,0x7E,0x23, -0x66,0x6F,0xEB,0xCD,0xB8,0xFF,0xEB,0x38,0x04,0xE1,0x09,0x18,0xE8,0xE1,0xC9,0x11, -0x0A,0x00,0x28,0x05,0xFE,0x2C,0xC4,0xE1,0xCE,0xD5,0x11,0x00,0x00,0xCD,0x55,0xDD, -0x30,0x05,0xFE,0x2C,0xC4,0xE1,0xCE,0xD5,0x11,0x0A,0x00,0xCD,0x55,0xDD,0xDC,0xE1, -0xCE,0xCD,0x4A,0xDD,0xE1,0xEB,0xE3,0xEB,0xD5,0xE5,0xCD,0xA3,0xE7,0xD1,0xE5,0xCD, -0xA3,0xE7,0xEB,0xE1,0xCD,0xB8,0xFF,0xDA,0x55,0xE7,0xEB,0xD1,0xC1,0xD5,0xE5,0xC5, -0x4E,0x23,0x46,0x78,0xB1,0x28,0x13,0x2B,0x09,0x7E,0x23,0xB6,0x28,0x0C,0x2B,0xC1, -0xE5,0xEB,0x09,0xEB,0xDA,0x55,0xE7,0xE1,0x18,0xE5,0x01,0x64,0xE8,0xCD,0xFF,0xE8, -0xC1,0xE1,0xD1,0xC5,0xE5,0x4E,0x23,0x46,0x23,0x78,0xB1,0x28,0x0C,0x73,0x23,0x72, -0x23,0xE1,0x09,0xC1,0xEB,0x09,0xEB,0x18,0xEA,0xE1,0xE1,0x01,0x88,0xE8,0xCD,0xFF, -0xE8,0xC3,0x64,0xC0,0xCD,0x43,0xE9,0xFE,0x02,0xD8,0xFE,0x1E,0x20,0xF6,0xE5,0x56, -0x2B,0x5E,0xCD,0xA3,0xE7,0x30,0x0E,0x2B,0xEB,0xE1,0xE5,0x72,0x2B,0x73,0x2B,0x3E, -0x1D,0x77,0x32,0x3A,0xAE,0xE1,0x18,0xDC,0xCD,0x43,0xE9,0xFE,0x02,0xD8,0xFE,0x1E, -0x20,0xF6,0xE5,0x56,0x2B,0x5E,0xCD,0xD6,0xDD,0xCD,0x18,0xCB,0xE1,0x18,0xE9,0x06, -0x01,0x2B,0xCD,0x43,0xE9,0xB7,0xC8,0xFE,0x01,0x28,0x07,0xFE,0xA1,0x20,0xF3,0x04, -0x18,0xF0,0xCD,0x43,0xE9,0xFE,0x97,0x20,0xEC,0x05,0x20,0xE6,0xCD,0x3F,0xDD,0x04, -0xC9,0x7E,0xFE,0x5B,0x28,0x03,0xFE,0x28,0xC0,0x06,0x00,0x04,0xCD,0x43,0xE9,0xFE, -0x5B,0x28,0xF8,0xFE,0x28,0x28,0xF4,0xFE,0x5D,0x28,0x0A,0xFE,0x29,0x28,0x06,0xFE, -0x02,0x38,0x07,0x18,0xE7,0x05,0x20,0xE4,0x23,0xC9,0x1E,0x02,0xC3,0x94,0xCA,0x06, -0x01,0x18,0x02,0x06,0x00,0x2B,0xCD,0x43,0xE9,0xB7,0xC8,0xB8,0x20,0xF8,0xC9,0xCD, -0xD2,0xDD,0xE5,0x2A,0x81,0xAE,0x23,0x7E,0x23,0xB6,0x28,0x13,0x23,0xCD,0xCE,0xDD, -0x23,0xC5,0xCD,0xF9,0xFF,0xC1,0x2B,0xCD,0x35,0xE9,0xB7,0x20,0xF4,0x18,0xE7,0xE1, -0xC3,0xCE,0xDD,0xCD,0x35,0xE9,0xB7,0xC0,0x23,0x7E,0x23,0xB6,0x59,0xCA,0x94,0xCA, -0x23,0x54,0x5D,0x23,0xC9,0xCD,0x43,0xE9,0xFE,0x02,0xD8,0xFE,0x97,0xC8,0xFE,0xEB, -0x20,0xF3,0xC9,0xCD,0x3F,0xDD,0xC8,0xFE,0x0E,0x38,0x1D,0xFE,0x20,0x38,0x29,0xFE, -0x22,0x28,0x09,0xFE,0x7C,0x28,0x19,0xFE,0xFF,0xC0,0x23,0xC9,0x23,0x7E,0xFE,0x22, -0xC8,0xB7,0x20,0xF8,0x2B,0x3E,0x22,0xC9,0xFE,0x08,0xC8,0xFE,0x07,0xC8,0x23,0x23, -0xF5,0x23,0x7E,0x17,0x30,0xFB,0xF1,0xC9,0xFE,0x18,0xD8,0xFE,0x19,0x28,0x08,0xFE, -0x1F,0x38,0x03,0x23,0x23,0x23,0x23,0x23,0xC9,0xC5,0xD5,0xE5,0x01,0x96,0xE9,0xCD, -0xFF,0xE8,0xE1,0xD1,0xC1,0xC9,0xE5,0xCD,0x43,0xE9,0xD1,0xFE,0x02,0xD8,0xFE,0x0E, -0x30,0xF4,0xFE,0x07,0x28,0xF0,0xFE,0x08,0x28,0xEC,0xEB,0xCD,0x3F,0xDD,0xFE,0x0D, -0x38,0x02,0x36,0x0D,0x23,0x36,0x00,0x23,0x36,0x00,0xEB,0x18,0xD9,0xCD,0x51,0xDD, -0xEB,0x2A,0x81,0xAE,0xEB,0x38,0x1C,0xFE,0x1E,0x28,0x15,0xFE,0x1D,0x28,0x11,0xCD, -0x0D,0xEA,0x21,0x30,0xEA,0xD2,0x13,0xBD,0xCD,0xA8,0xEB,0x2A,0x81,0xAE,0x18,0x11, -0xCD,0x67,0xE7,0xD5,0xCD,0xAD,0xD2,0xCD,0x8C,0xC1,0xCD,0x7A,0xC1,0xCD,0x5E,0xC1, -0xE1,0x23,0xF1,0xC3,0x93,0xDD,0xCD,0x0D,0xEA,0x30,0x06,0xCD,0xA8,0xEB,0xC3,0x64, -0xC0,0xE5,0xCD,0x01,0xF5,0xCD,0x30,0xEA,0xCA,0x6B,0xCB,0xE1,0xC9,0xCD,0x8F,0xEB, -0xE6,0x0E,0xEE,0x02,0x28,0x0B,0xCD,0x4A,0xDD,0xCD,0x8C,0xC1,0xCD,0x6B,0xC1,0x37, -0xC9,0xCD,0x55,0xDD,0xDC,0x91,0xCE,0xED,0x53,0x3F,0xAE,0xCD,0x4A,0xDD,0xB7,0xC9, -0x2A,0x3F,0xAE,0xCD,0x83,0xBC,0xE5,0xDC,0x7A,0xBC,0xE1,0xC9,0xEE,0xAB,0x20,0x04, -0xCD,0x3F,0xDD,0x37,0x9F,0x32,0x41,0xAE,0xCD,0x8F,0xEB,0x11,0x00,0x00,0xCD,0x55, -0xDD,0x30,0x06,0x7E,0xFE,0x2C,0xC4,0x91,0xCE,0xD5,0xCD,0x55,0xDD,0x3E,0x00,0x30, -0x09,0xCD,0x37,0xDD,0x92,0xCD,0x37,0xE7,0x3E,0xFF,0xF5,0xCD,0x4A,0xDD,0xCD,0x1B, -0xFB,0xCD,0x3E,0xFC,0xCD,0x89,0xE9,0xCD,0xD2,0xD5,0xCD,0x49,0xF5,0xF1,0xC5,0xD5, -0xB7,0xC4,0x5A,0xE7,0x3A,0x41,0xAE,0xB7,0x20,0x08,0xCD,0x6B,0xC1,0xCD,0xA8,0xEB, -0x18,0x03,0xCD,0x9D,0xEB,0xD1,0xC1,0xCD,0x71,0xF5,0xD1,0x2A,0x81,0xAE,0x7A,0xB3, -0xC8,0xCD,0x9A,0xE7,0x2B,0xC9,0xCD,0x8F,0xEB,0xCD,0x4A,0xDD,0xCD,0x8C,0xC1,0xCD, -0x9D,0xEB,0xC3,0x64,0xC0,0xCD,0x7A,0xC1,0xCD,0x87,0xE6,0x2A,0x83,0xAE,0xEB,0x2A, -0x81,0xAE,0x23,0x22,0x83,0xAE,0xEB,0xCD,0xDA,0xFF,0xEB,0x2A,0x8D,0xB0,0xEB,0x2B, -0xCD,0xF5,0xFF,0x13,0xEB,0xE5,0x2A,0x83,0xAE,0x11,0x20,0x00,0x19,0xEB,0xE1,0xCD, -0xB8,0xFF,0x38,0x50,0xCD,0x84,0xEB,0xB3,0x28,0x30,0xD5,0xCD,0x84,0xEB,0xE5,0x7E, -0x23,0xB6,0x28,0x12,0x23,0x7E,0x23,0x66,0x6F,0xCD,0xB8,0xFF,0xE1,0x28,0x0F,0x30, -0x06,0xCD,0x48,0xEB,0x18,0xE8,0xE1,0xE3,0xCD,0x5E,0xEB,0xE1,0x18,0xC7,0xE3,0xCD, -0x5E,0xEB,0xE1,0x5E,0x23,0x56,0x2B,0x19,0x18,0xBB,0x7E,0x23,0xB6,0x2B,0x28,0x05, -0xCD,0x48,0xEB,0x18,0xF5,0x2A,0x83,0xAE,0x36,0x00,0x23,0x36,0x00,0x23,0x22,0x83, -0xAE,0xC3,0xB1,0xD5,0x1E,0x07,0x18,0x02,0x1E,0x18,0xD5,0xCD,0xAD,0xD2,0xCD,0x8C, -0xC1,0xCD,0x6B,0xC1,0xD1,0xC3,0x94,0xCA,0xC5,0xD5,0xE5,0x4E,0x23,0x46,0x2A,0x83, -0xAE,0xEB,0xE1,0xCD,0xF2,0xFF,0xEB,0x22,0x83,0xAE,0xEB,0xD1,0xC1,0xC9,0xD5,0xEB, -0x2A,0x83,0xAE,0x73,0x23,0x72,0x23,0xEB,0xE3,0xEB,0x73,0x23,0x72,0x23,0xD1,0x1B, -0x1B,0x1B,0x1B,0x7A,0xB3,0x28,0x09,0xCD,0x80,0xBC,0x30,0xBC,0x77,0x23,0x18,0xF2, -0x22,0x83,0xAE,0xC9,0xCD,0x80,0xBC,0x5F,0xDC,0x80,0xBC,0x30,0xAB,0x57,0xC9,0xCD, -0xAD,0xD2,0xCD,0x6A,0xD2,0x32,0x42,0xAE,0xED,0x43,0x43,0xAE,0xC9,0x3A,0x42,0xAE, -0xB7,0xCA,0xB5,0xEA,0xFE,0x16,0x20,0x0B,0x3A,0x42,0xAE,0xFE,0x16,0x28,0x40,0xE6, -0xFE,0x28,0x05,0x1E,0x19,0xC3,0x94,0xCA,0xCD,0x7A,0xC1,0x2A,0x81,0xAE,0x23,0xEB, -0x2A,0x8D,0xB0,0x01,0x80,0xFF,0x09,0xED,0x4B,0x43,0xAE,0xCD,0xCF,0xFF,0xD4,0xBE, -0xFF,0xDA,0x34,0xEB,0x60,0x69,0x19,0x22,0x83,0xAE,0x3A,0x42,0xAE,0x1F,0x9F,0x32, -0x45,0xAE,0xEB,0xCD,0x83,0xBC,0xCA,0x38,0xEB,0xCD,0xB1,0xD5,0xC3,0x98,0xD2,0xCD, -0x7A,0xC1,0xCD,0xCB,0xDD,0xCD,0x4C,0xCA,0xD2,0x98,0xD2,0xCD,0xBC,0xE6,0x38,0xF5, -0x1E,0x15,0x28,0x02,0x1E,0x06,0xC3,0x94,0xCA,0xCD,0xAD,0xD2,0xCD,0x56,0xD2,0x06, -0x00,0xCD,0x55,0xDD,0x30,0x29,0xCD,0x37,0xDD,0x0D,0x23,0x23,0x7E,0x23,0xE6,0xDF, -0xF2,0x38,0xEC,0xE5,0x21,0x2C,0xEC,0xCD,0x93,0xFF,0xE3,0xC9,0x03,0x38,0xEC,0xC1, -0x87,0xEC,0xC2,0x5C,0xEC,0xD0,0x3D,0xEC,0x1E,0x02,0xC3,0x94,0xCA,0x06,0x01,0xCD, -0x4A,0xDD,0xE5,0xC5,0xCD,0x87,0xE6,0xCD,0x89,0xE9,0x2A,0x81,0xAE,0x23,0xEB,0x2A, -0x83,0xAE,0xCD,0xCF,0xFF,0xEB,0xF1,0x01,0x00,0x00,0x18,0x23,0x06,0x02,0xCD,0x37, -0xDD,0x2C,0xCD,0x91,0xCE,0xD5,0xCD,0x37,0xDD,0x2C,0xCD,0x91,0xCE,0xD5,0xCD,0x55, -0xDD,0x11,0x00,0x00,0xDC,0x91,0xCE,0xD5,0xCD,0x4A,0xDD,0x78,0xC1,0xD1,0xE3,0xCD, -0x98,0xBC,0xD2,0x6B,0xCB,0x18,0x17,0xCD,0x4A,0xDD,0xE5,0x3E,0x09,0xCD,0xA2,0xC1, -0xF5,0x01,0x01,0x00,0x11,0xFF,0xFF,0xCD,0x0D,0xE1,0xF1,0xCD,0xA2,0xC1,0xCD,0xA1, -0xD2,0xE1,0xC9,0xCD,0x44,0xED,0x20,0x05,0xCD,0x61,0xDD,0x18,0x2F,0xFE,0x26,0x28, -0x1C,0xCD,0x7F,0xFF,0x38,0x26,0xCD,0x10,0xFF,0xCD,0xF3,0xFE,0x37,0xC9,0xE5,0xCD, -0xC6,0xEC,0xD1,0xD8,0xEB,0xC9,0x16,0x00,0x7E,0xFE,0x26,0x20,0x0F,0xCD,0x1C,0xEE, -0xEB,0xF5,0xCD,0x0D,0xFF,0xF1,0xEB,0xD8,0xC8,0xC3,0xF3,0xCA,0xE5,0x7E,0x23,0xFE, -0x2E,0xCC,0x61,0xDD,0xCD,0x83,0xFF,0xE1,0x38,0x06,0x7E,0xEE,0x2E,0xC0,0x23,0xC9, -0xCD,0x10,0xFF,0xD5,0x01,0x00,0x00,0x11,0x46,0xAE,0xCD,0x53,0xED,0xFE,0x2E,0x20, -0x0B,0xCD,0xC9,0xED,0xCD,0x19,0xFF,0x0C,0xCD,0x53,0xED,0x0D,0xF5,0x3E,0xFF,0x12, -0xF1,0xCD,0x77,0xED,0xD1,0x5F,0xE5,0xD5,0x21,0x46,0xAE,0xCD,0xCE,0xED,0xD1,0xCD, -0x27,0xFF,0x30,0x08,0xE5,0x42,0xCD,0x06,0xFE,0xE1,0x38,0x11,0x7A,0x4E,0x23,0xCD, -0x94,0xBD,0x7B,0xCD,0x55,0xBD,0xEB,0xCD,0x16,0xFF,0xDC,0x3D,0xBD,0x3E,0x0A,0xE1, -0xD8,0xC3,0xF3,0xCA,0xCD,0x61,0xDD,0x23,0x16,0xFF,0xFE,0x2D,0xC8,0x14,0xFE,0x2B, -0xC8,0x2B,0xC9,0xE5,0xCD,0x61,0xDD,0x23,0xCD,0x83,0xFF,0x38,0x04,0xE1,0xC3,0x8A, -0xFF,0xE3,0xE1,0xD6,0x30,0x12,0xB0,0x28,0x07,0x78,0x04,0xFE,0x0C,0x30,0x01,0x13, -0x79,0xB7,0x28,0xDF,0x0C,0x18,0xDC,0xFE,0x45,0x20,0x10,0xE5,0xCD,0xC9,0xED,0xCD, -0x44,0xED,0xCC,0x61,0xDD,0xCD,0x83,0xFF,0x38,0x04,0xE1,0xAF,0x18,0x1E,0xE3,0xE1, -0xCD,0x19,0xFF,0xD5,0xC5,0xCD,0x35,0xEE,0x30,0x09,0x7B,0xD6,0x64,0x7A,0xDE,0x00, -0x7B,0x38,0x02,0x3E,0x7F,0xC1,0xD1,0x14,0x20,0x02,0x2F,0x3C,0xC6,0x80,0x5F,0x78, -0xD6,0x0C,0x30,0x01,0xAF,0x91,0x30,0x09,0x83,0x38,0x01,0xAF,0xFE,0x01,0xCE,0x80, -0xC9,0x83,0x30,0x02,0x3E,0xFF,0xD6,0x80,0xC9,0xCD,0x61,0xDD,0x23,0xC9,0xEB,0x21, -0x58,0xAE,0x01,0x01,0x05,0x2B,0x36,0x00,0x10,0xFB,0x1A,0xFE,0xFF,0xC8,0x77,0x21, -0x53,0xAE,0x13,0x1A,0xFE,0xFF,0xC8,0xD5,0x41,0x16,0x00,0xE5,0x5E,0x62,0x6B,0x29, -0x29,0x19,0x29,0x5F,0x19,0x5D,0x7C,0xE1,0x73,0x23,0x10,0xEF,0xD1,0xB7,0x28,0xDF, -0x77,0x0C,0x18,0xDB,0xC5,0xE5,0xCD,0x35,0xEE,0xEB,0xCD,0x0D,0xFF,0xEB,0xC1,0x30, -0x06,0x7A,0xB3,0xC6,0xFF,0x38,0x03,0x50,0x59,0xEB,0xC1,0xC9,0x23,0xCD,0x61,0xDD, -0xCD,0x8A,0xFF,0x06,0x02,0xFE,0x58,0x28,0x06,0x06,0x10,0xFE,0x48,0x20,0x04,0x23, -0xCD,0x61,0xDD,0x18,0x02,0x06,0x0A,0xEB,0xCD,0x61,0xEE,0x26,0x00,0x6F,0x30,0x1E, -0x0E,0x00,0xCD,0x61,0xEE,0x30,0x14,0xD5,0x16,0x00,0x5F,0xD5,0x58,0xCD,0xBE,0xBD, -0xD1,0x38,0x03,0x19,0x30,0x02,0x0E,0xFF,0xD1,0x18,0xE7,0x79,0xFE,0x01,0xEB,0x78, -0xC9,0x1A,0x13,0xCD,0x83,0xFF,0x38,0x0A,0xCD,0x8A,0xFF,0xFE,0x41,0x3F,0x30,0x05, -0xD6,0x07,0xD6,0x30,0xB8,0xD8,0x1B,0xAF,0xC9,0xCD,0x0D,0xFF,0xCD,0x82,0xEE,0xC3, -0x41,0xC3,0xD5,0xC5,0xCD,0xC3,0xFC,0xAF,0xCD,0xA7,0xEE,0x23,0xC1,0xD1,0xC9,0xD5, -0xC5,0xAF,0xCD,0x9F,0xEE,0xC1,0xD1,0x7E,0xFE,0x20,0xC0,0x23,0xC9,0x3E,0x40,0x22, -0x6E,0xAE,0xF5,0xCD,0xB3,0xFC,0xF1,0xC5,0x57,0xD5,0xEB,0x21,0x68,0xAE,0x36,0x00, -0x22,0x70,0xAE,0xCD,0xB7,0xF0,0xD1,0xCD,0xD4,0xEE,0xCD,0x3D,0xF0,0x58,0xC1,0x7B, -0xB7,0xCC,0x50,0xF0,0xCD,0x5F,0xF0,0xCD,0x69,0xF0,0xCD,0x7C,0xF0,0x7A,0x1F,0xD0, -0x2B,0x36,0x25,0xC9,0x7A,0x87,0x30,0x29,0xFA,0x27,0xEF,0x7B,0x81,0xD6,0x0A,0xFA, -0x88,0xEF,0x16,0x01,0x41,0x79,0xB7,0x28,0x15,0x83,0x3D,0x5F,0xCD,0x0E,0xF0,0x06, -0x01,0x79,0xFE,0x07,0x38,0x04,0xCB,0x72,0x20,0x26,0xB8,0xC4,0xA0,0xEF,0xC3,0x62, -0xEF,0x7B,0xB7,0xFA,0x0A,0xEF,0x20,0xDC,0x41,0xC9,0x43,0xCD,0x0E,0xF0,0x78,0xB7, -0x28,0xF6,0x93,0x58,0x47,0x81,0x83,0xFA,0xE4,0xEE,0xCD,0xB4,0xEF,0xC3,0xA0,0xEF, -0x3E,0x06,0x32,0x6E,0xAE,0x18,0x24,0x06,0x80,0xCD,0x25,0xF0,0x30,0x04,0xCD,0x96, -0xF0,0xAF,0x47,0xCC,0x36,0xF0,0x20,0x0C,0x04,0x3A,0x6E,0xAE,0xB7,0x28,0x05,0x05, -0x3C,0x32,0x6E,0xAE,0x79,0xB7,0x28,0x04,0x83,0x90,0x5F,0x78,0xF5,0x47,0xCD,0x8B, -0xEF,0xF1,0xB8,0x28,0x0D,0x1C,0x23,0x05,0xE5,0x7E,0xFE,0x2E,0x20,0x01,0x23,0x36, -0x31,0xE1,0x3E,0x45,0xCD,0x6F,0xF0,0x7B,0x87,0x3E,0x2B,0x30,0x05,0xAF,0x93,0x5F, -0x3E,0x2D,0xCD,0x6F,0xF0,0x7B,0x0E,0x2F,0x0C,0xD6,0x0A,0x30,0xFB,0x5F,0x79,0xCD, -0x6F,0xF0,0x7B,0xC6,0x3A,0xC3,0x6F,0xF0,0xCD,0xB4,0xEF,0xCD,0x36,0xF0,0x80,0xB9, -0x30,0x05,0xCD,0xC8,0xEF,0x18,0x04,0x91,0xC4,0xEF,0xEF,0x3A,0x6E,0xAE,0xB7,0xC8, -0x0E,0x2E,0x78,0xC5,0x47,0x04,0x85,0x6F,0x8C,0x95,0x67,0x2B,0x79,0x4E,0x77,0x05, -0x20,0xF9,0xC1,0xC9,0x7B,0x81,0x47,0xF0,0x2F,0x3C,0x06,0x14,0xB8,0x30,0x01,0x47, -0x2B,0x36,0x30,0x0C,0x05,0x20,0xF9,0xC9,0xE5,0x4F,0x85,0x6F,0x8C,0x95,0x67,0x7E, -0x36,0x00,0x22,0x70,0xAE,0xFE,0x35,0xD4,0xE1,0xEF,0xE1,0xD8,0x2B,0x36,0x31,0x04, -0xC9,0x79,0xB7,0xC8,0x2B,0x0D,0x7E,0x34,0xFE,0x39,0xD8,0x36,0x30,0x18,0xF2,0xD5, -0xC5,0xEB,0x47,0x7B,0x90,0x6F,0x9F,0x82,0x67,0xE5,0x0C,0x18,0x04,0x1A,0x13,0x77, -0x23,0x0D,0x20,0xF9,0x36,0x30,0x23,0x05,0x20,0xFA,0xE1,0xC1,0xD1,0xC9,0xE5,0x2A, -0x70,0xAE,0x2B,0x7E,0x23,0xFE,0x30,0x20,0x05,0x2B,0x0D,0x04,0x20,0xF4,0x36,0x00, -0x22,0x70,0xAE,0xE1,0xC9,0xCD,0x9B,0xF0,0x9F,0x3C,0x47,0x7A,0xE6,0x04,0x28,0x01, -0x04,0x3A,0x6F,0xAE,0x90,0xC9,0x3A,0x6E,0xAE,0xB7,0xC8,0x3D,0xC9,0x7A,0xE6,0x02, -0xC8,0x78,0xD6,0x03,0xD8,0xC8,0xF5,0x0E,0x2C,0xCD,0xA3,0xEF,0x04,0xF1,0x18,0xF2, -0x7A,0x87,0x30,0x07,0xC5,0xCD,0x25,0xF0,0xC1,0xD8,0xC8,0x3E,0x30,0x18,0x06,0x7A, -0xE6,0x04,0xC8,0x3E,0x24,0x1C,0x2B,0x77,0xC9,0xCD,0x9B,0xF0,0xC8,0x30,0xF6,0xE5, -0x2A,0x70,0xAE,0x77,0x23,0x36,0x00,0x22,0x70,0xAE,0xE1,0xC9,0x7A,0xB7,0xF0,0x3A, -0x6F,0xAE,0x93,0xC8,0x38,0x10,0x47,0x7A,0xE6,0x20,0x3E,0x2A,0x20,0x02,0x3E,0x20, -0x2B,0x77,0x05,0x20,0xFB,0xC9,0x7A,0xF6,0x01,0x57,0xC9,0x78,0x06,0x2D,0x87,0x38, -0x0F,0x7A,0xE6,0x98,0xEE,0x80,0x37,0xC8,0x06,0x2B,0xE6,0x08,0x20,0x02,0x06,0x20, -0x7A,0xF6,0xEF,0xC6,0x10,0x78,0xC9,0xE5,0xEB,0xCD,0xDD,0xF0,0xE1,0x78,0x87,0x4F, -0xC8,0x1A,0xE6,0x0F,0xC6,0x30,0x2B,0x77,0x1A,0xE6,0xF0,0x1F,0x1F,0x1F,0x1F,0xC6, -0x30,0x2B,0x77,0x13,0x05,0x20,0xEA,0xFE,0x30,0xC0,0x0D,0x23,0xC9,0x11,0x46,0xAE, -0xAF,0x47,0xB6,0x2B,0x20,0x04,0x0D,0x20,0xF9,0xC9,0x37,0x8F,0x30,0xFD,0xEB,0xD5, -0x57,0x18,0x11,0x1A,0x1B,0xD5,0x37,0x8F,0x57,0x58,0x7E,0x8F,0x27,0x77,0x23,0x1D, -0x20,0xF8,0x30,0x03,0x04,0x36,0x01,0x21,0x46,0xAE,0x7A,0x87,0x20,0xEA,0xD1,0x0D, -0x20,0xE1,0xEB,0xC9,0x11,0x01,0x01,0x18,0x03,0x11,0x0F,0x04,0xD5,0x79,0xCD,0x4B, -0xFF,0xE3,0xE5,0xC5,0xCD,0xC2,0xFE,0x11,0x57,0xAE,0xAF,0x12,0xF1,0xC1,0xD6,0x01, -0xCE,0x00,0xF5,0x7D,0xA1,0xF6,0xF0,0x27,0xC6,0xA0,0xCE,0x40,0x1B,0x12,0x7D,0xB1, -0xA9,0x6F,0xB4,0x28,0x0E,0xC5,0x7C,0x1F,0x67,0x7D,0x1F,0x6F,0x05,0x20,0xF7,0xC1, -0xF1,0x18,0xDB,0xF1,0x20,0xD8,0xE1,0xC9,0xCD,0xC2,0xFE,0xE7,0xC3,0x0A,0xFF,0xCD, -0x91,0xCE,0xD5,0xCD,0x37,0xDD,0x2C,0xCD,0x67,0xCE,0xD1,0x12,0xC9,0xCD,0x8D,0xFE, -0x44,0x4D,0xED,0x78,0xC3,0x0A,0xFF,0xCD,0x94,0xF1,0xED,0x79,0xC9,0xCD,0x94,0xF1, -0x57,0x1E,0x00,0x28,0x08,0xCD,0x37,0xDD,0x2C,0xCD,0x67,0xCE,0x5F,0xED,0x78,0xAB, -0xA2,0x28,0xFA,0xC9,0xCD,0x91,0xCE,0x42,0x4B,0xCD,0x37,0xDD,0x2C,0xC3,0x67,0xCE, -0x23,0x7E,0xB7,0x20,0x10,0x23,0xE5,0xCD,0xD4,0xBC,0xEB,0xE1,0x30,0x07,0x7E,0x23, -0x17,0x30,0xFB,0x18,0x0A,0x1E,0x1C,0xC3,0x94,0xCA,0xCD,0x91,0xCE,0x0E,0xFF,0xED, -0x53,0x72,0xAE,0x79,0x32,0x74,0xAE,0xED,0x73,0x77,0xAE,0x06,0x20,0xCD,0x55,0xDD, -0x30,0x06,0xCD,0x91,0xCE,0xD5,0x10,0xF5,0xCD,0x4A,0xDD,0x22,0x75,0xAE,0x3E,0x20, -0x90,0xDD,0x21,0x00,0x00,0xDD,0x39,0xDF,0x72,0xAE,0xED,0x7B,0x77,0xAE,0x2A,0x75, -0xAE,0xC9,0x3E,0x0D,0x18,0x03,0xCD,0x6D,0xCE,0x32,0x79,0xAE,0xC9,0xCD,0xC6,0xC1, -0xF5,0xCD,0x08,0xF2,0xF1,0xC3,0xA2,0xC1,0xCD,0x51,0xDD,0xDA,0x4E,0xC3,0xFE,0xED, -0xCA,0xC4,0xF2,0xEB,0x21,0x24,0xF2,0xCD,0x93,0xFF,0xEB,0xCD,0xFB,0xFF,0xCD,0x51, -0xDD,0x30,0xEB,0xC9,0x05,0x33,0xF2,0x2C,0x5C,0xF2,0xE5,0x77,0xF2,0xEA,0x80,0xF2, -0x3B,0x3F,0xDD,0xCD,0xFB,0xCE,0xF5,0xE5,0xCD,0x45,0xFF,0x28,0x0C,0xCD,0x9D,0xEE, -0xCD,0xDC,0xF7,0x36,0x20,0x2A,0xC2,0xB0,0x34,0x2A,0xC2,0xB0,0x7E,0xCD,0xB9,0xC2, -0xD4,0x4E,0xC3,0xCD,0x28,0xF8,0xE1,0xF1,0xCC,0x4E,0xC3,0xC9,0xCD,0x3F,0xDD,0x3A, -0x79,0xAE,0x4F,0xCD,0x90,0xC2,0x3D,0x91,0x30,0xFD,0x2F,0x3C,0x47,0x81,0xCD,0xB9, -0xC2,0xD2,0x4E,0xC3,0x78,0x18,0x1E,0xCD,0xA0,0xF2,0xCD,0xAF,0xF2,0x7B,0x18,0x15, -0xCD,0xA0,0xF2,0x1B,0xCD,0xAF,0xF2,0xCD,0x90,0xC2,0x2F,0x3C,0x1C,0x83,0x38,0x05, -0xCD,0x4E,0xC3,0x1D,0x7B,0x47,0x04,0x05,0xC8,0x3E,0x20,0xCD,0x56,0xC3,0x18,0xF7, -0xCD,0x3F,0xDD,0xCD,0x37,0xDD,0x28,0xCD,0x86,0xCE,0xCD,0x37,0xDD,0x29,0xC9,0x7A, -0x17,0x30,0x03,0x11,0x00,0x00,0xCD,0x9F,0xC2,0xD0,0xE5,0xEB,0x5F,0x16,0x00,0xCD, -0xC1,0xBD,0xE1,0xC9,0xCD,0x3F,0xDD,0xCD,0xA5,0xCE,0xCD,0x37,0xDD,0x3B,0xE5,0x2A, -0xC2,0xB0,0x7E,0xB7,0x28,0x75,0xE3,0xCD,0xFB,0xCE,0xAF,0x32,0x7A,0xAE,0xD1,0xD5, -0xEB,0x46,0x23,0x7E,0x23,0x66,0x6F,0xEB,0xCD,0x24,0xF3,0x30,0x5E,0xCD,0x51,0xDD, -0x38,0x1D,0xFE,0x3B,0x28,0x04,0xFE,0x2C,0x20,0x4C,0xCD,0x3F,0xDD,0x28,0x10,0xD5, -0xCD,0xFB,0xCE,0xD1,0x78,0xB7,0x28,0xD6,0xCD,0x24,0xF3,0x30,0xD1,0x18,0xDE,0xF5, -0x3E,0xFF,0x32,0x7A,0xAE,0x78,0xB7,0xC4,0x24,0xF3,0xF1,0xDC,0x4E,0xC3,0xE3,0xCD, -0xE8,0xFB,0xE1,0xC9,0xE5,0x1A,0xFE,0x5F,0x20,0x09,0x78,0xFE,0x02,0x38,0x0C,0x13, -0x05,0x18,0x08,0xCD,0x50,0xF3,0xD4,0xA3,0xF3,0x38,0x09,0x1A,0xCD,0x56,0xC3,0x13, -0x05,0x20,0xE2,0xB7,0xE1,0xC9,0x1E,0x02,0xC3,0x94,0xCA,0x1E,0x05,0xC3,0x94,0xCA, -0x1A,0xFE,0x21,0x0E,0x01,0x28,0x21,0xFE,0x26,0x0E,0x00,0x28,0x1B,0xEE,0x5C,0xC0, -0xC5,0xD5,0x0E,0x02,0x13,0x05,0x28,0x0A,0x1A,0xFE,0x5C,0x28,0x09,0x0C,0xFE,0x20, -0x28,0xF2,0xD1,0xC1,0xB7,0xC9,0xF1,0xF1,0x13,0x05,0xC5,0xD5,0x3A,0x7A,0xAE,0xB7, -0x20,0x1D,0xCD,0x3C,0xFF,0x79,0xB7,0xF5,0x41,0x0E,0x00,0x2A,0xC2,0xB0,0xEB,0xC4, -0x71,0xF9,0xCD,0x28,0xF8,0xF1,0x28,0x07,0x2A,0xC2,0xB0,0x96,0xCD,0x95,0xF2,0xD1, -0xC1,0x37,0xC9,0xCD,0xBA,0xF3,0xD0,0x3A,0x7A,0xAE,0xB7,0x20,0x0B,0xC5,0xD5,0x79, -0xCD,0x9F,0xEE,0xCD,0x41,0xC3,0xD1,0xC1,0x37,0xC9,0xC5,0xD5,0x0E,0x80,0x26,0x00, -0x1A,0xFE,0x2B,0x20,0x07,0x13,0x05,0x28,0x23,0x24,0x0E,0x88,0x1A,0xFE,0x2E,0x28, -0x1F,0xFE,0x23,0x28,0x39,0x13,0x05,0x28,0x13,0xEB,0xBE,0xEB,0x20,0x0E,0x24,0x24, -0x2E,0x04,0xFE,0x24,0x28,0x23,0x2E,0x20,0xFE,0x2A,0x28,0x11,0xD1,0xC1,0xB7,0xC9, -0x13,0x05,0x28,0xF8,0x1A,0xFE,0x23,0x20,0xF3,0x1B,0x04,0x18,0x11,0x13,0x05,0x28, -0x0A,0x1A,0xFE,0x24,0x20,0x05,0x24,0x2E,0x24,0x13,0x05,0x79,0xB5,0x4F,0xF1,0xF1, -0xCD,0x1B,0xF4,0x7C,0x85,0xFE,0x15,0xD2,0x4B,0xF3,0xC9,0x2E,0x00,0x04,0x05,0xC8, -0x1A,0xFE,0x2E,0x28,0x14,0xFE,0x2C,0x28,0x0A,0xFE,0x23,0x20,0x15,0x24,0x13,0x05, -0x20,0xEE,0xC9,0x79,0xF6,0x02,0x4F,0x18,0xF4,0x2C,0x13,0x05,0xC8,0x1A,0xFE,0x23, -0x28,0xF7,0xEB,0xE5,0xFE,0x5E,0x20,0x18,0x23,0xBE,0x20,0x14,0x23,0xBE,0x20,0x10, -0x23,0xBE,0x20,0x0C,0x23,0x78,0xD6,0x04,0x38,0x06,0x47,0xE3,0x79,0xF6,0x40,0x4F, -0xE1,0xEB,0x78,0xB7,0xC8,0x79,0xE6,0x08,0xC0,0x1A,0xFE,0x2D,0x3E,0x10,0x28,0x06, -0x1A,0xFE,0x2B,0xC0,0x3E,0x18,0xB1,0x4F,0x13,0x05,0xC9,0xCD,0xC6,0xC1,0xF5,0xCD, -0x51,0xDD,0x38,0x39,0xCD,0xFB,0xCE,0xF5,0xE5,0xCD,0x45,0xFF,0x28,0x0B,0xCD,0x8F, -0xEE,0xCD,0xDC,0xF7,0xCD,0x28,0xF8,0x18,0x0D,0x3E,0x22,0xCD,0x56,0xC3,0xCD,0x28, -0xF8,0x3E,0x22,0xCD,0x56,0xC3,0xE1,0xF1,0x28,0x13,0xFE,0x3B,0x28,0x05,0xFE,0x2C, -0xC2,0x46,0xF3,0xCD,0x3F,0xDD,0x3E,0x2C,0xCD,0x56,0xC3,0x18,0xC7,0xCD,0x4E,0xC3, -0xF1,0xC3,0xA2,0xC1,0x01,0x00,0xAC,0xCD,0xBE,0xFF,0xD0,0x22,0x7B,0xAE,0x22,0x8F, -0xB0,0x22,0x7D,0xAE,0xEB,0x22,0x7F,0xAE,0x01,0x2F,0x01,0x09,0xD8,0x22,0x81,0xAE, -0xEB,0x23,0xB7,0xED,0x52,0xD8,0x7C,0xFE,0x04,0xD8,0xAF,0x32,0x91,0xB0,0xC9,0xCD, -0x3E,0xFC,0xCD,0x91,0xCE,0xE5,0xCD,0x50,0xF7,0xCD,0x75,0xF6,0x22,0x7B,0xAE,0xE1, -0xC9,0xD5,0x2A,0x7F,0xAE,0xEB,0x2A,0x7B,0xAE,0xCD,0xCF,0xFF,0xE3,0xCD,0xCF,0xFF, -0xD1,0x13,0xCD,0xB8,0xFF,0x38,0x03,0x2B,0x09,0xD0,0xC3,0x3E,0xF7,0xD5,0xE5,0x2A, -0x8D,0xB0,0xEB,0x2A,0x8F,0xB0,0xCD,0xDA,0xFF,0xE1,0xD1,0xC9,0x2A,0x83,0xAE,0x09, -0x22,0x83,0xAE,0x2A,0x85,0xAE,0x09,0x22,0x85,0xAE,0x2A,0x87,0xAE,0x09,0x22,0x87, -0xAE,0x2A,0x89,0xAE,0x09,0x22,0x89,0xAE,0xC9,0x2A,0x85,0xAE,0xEB,0x2A,0x87,0xAE, -0xCD,0xCF,0xFF,0xE5,0x2A,0x89,0xAE,0xCD,0xDA,0xFF,0xC5,0x2A,0x8D,0xB0,0xEB,0x2A, -0x89,0xAE,0x2B,0x78,0xB1,0xC4,0xF5,0xFF,0xEB,0x22,0x8D,0xB0,0xC1,0xD1,0xC3,0xB1, -0xD5,0x2A,0x83,0xAE,0x22,0x85,0xAE,0xEB,0x19,0x22,0x87,0xAE,0x2A,0x8D,0xB0,0x23, -0x78,0xB1,0xC4,0xF2,0xFF,0x2B,0x22,0x8D,0xB0,0xEB,0x22,0x89,0xAE,0xC9,0xF5,0xE5, -0x21,0x8B,0xAE,0x22,0x8B,0xB0,0x3E,0x01,0xCD,0xB0,0xF5,0x36,0x00,0xE1,0xF1,0xC9, -0x2A,0x8B,0xB0,0x2F,0x3C,0xC8,0x85,0x6F,0x3E,0xFF,0x8C,0x67,0x22,0x8B,0xB0,0xC9, -0x2A,0x8B,0xB0,0xE5,0x85,0x6F,0x8C,0x95,0x67,0x22,0x8B,0xB0,0x3E,0x78,0x85,0x3E, -0x4F,0x8C,0xE1,0xD0,0xCD,0x8E,0xF5,0xC3,0x3E,0xF7,0x2A,0x8F,0xB0,0x22,0x8D,0xB0, -0xC9,0x2F,0x4F,0x06,0xFF,0x03,0xCD,0xE6,0xF5,0xD0,0xCD,0x3E,0xFC,0xCD,0xE6,0xF5, -0xD0,0x1E,0x0E,0xC3,0x94,0xCA,0x2A,0x89,0xAE,0xEB,0x2A,0x8D,0xB0,0x09,0xCD,0xB8, -0xFF,0xD8,0x22,0x8D,0xB0,0x23,0xEB,0xC9,0x2A,0x89,0xAE,0xC5,0xD5,0xD5,0xE5,0xCD, -0x18,0xF6,0xDA,0x3E,0xF7,0xE1,0xC1,0xD5,0x7D,0x91,0x4F,0x7C,0x98,0x47,0x2B,0x1B, -0xB1,0xC4,0xF5,0xFF,0xE1,0xD1,0xC1,0xC9,0x09,0xD8,0xEB,0xCD,0x22,0xF6,0xD0,0xCD, -0x3E,0xFC,0x2A,0x8D,0xB0,0xC3,0xB8,0xFF,0x2A,0x89,0xAE,0xEB,0x2A,0x8D,0xB0,0xC3, -0xCF,0xFF,0x11,0x01,0x00,0x18,0x03,0x11,0x02,0x08,0xC5,0xE5,0x21,0x91,0xB0,0x7E, -0xB7,0x20,0x1D,0xD5,0xE5,0x21,0x00,0x10,0x01,0x00,0x00,0xCD,0x43,0xF7,0x22,0x92, -0xB0,0xEB,0x2A,0x7D,0xAE,0x22,0x94,0xB0,0xEB,0x22,0x7D,0xAE,0xE1,0xD1,0x3E,0x04, -0xB3,0x77,0x2A,0x92,0xB0,0x23,0x1E,0x00,0x19,0xEB,0xE1,0xC1,0xC9,0x3E,0xFE,0x18, -0x06,0x3E,0xFD,0x18,0x02,0x3E,0xFF,0xC5,0xD5,0xE5,0x21,0x91,0xB0,0xA6,0x77,0xFE, -0x04,0x20,0x16,0x2A,0x92,0xB0,0xEB,0x21,0x00,0x10,0xCD,0x2E,0xF7,0x20,0x0A,0xAF, -0x32,0x91,0xB0,0x2A,0x94,0xB0,0x22,0x7D,0xAE,0xE1,0xD1,0xC1,0xC9,0xFE,0x80,0x28, -0x2C,0xCD,0x67,0xCE,0x4F,0xCD,0x37,0xDD,0x2C,0x06,0x08,0xCD,0x67,0xCE,0xF5,0x05, -0x28,0x08,0xCD,0x55,0xDD,0x38,0xF4,0xAF,0x18,0xF4,0xEB,0x79,0xCD,0xA5,0xBB,0x30, -0x68,0x01,0x08,0x00,0x09,0xF1,0x2B,0x77,0x0D,0x20,0xFA,0xEB,0xC9,0xCD,0x3F,0xDD, -0xCD,0x86,0xCE,0xE5,0x21,0x00,0x01,0xCD,0xB8,0xFF,0x38,0x4D,0xD5,0xCD,0xAE,0xBB, -0xEB,0x30,0x1D,0x2F,0x6F,0x26,0x00,0x23,0x29,0x29,0x29,0x1B,0xCD,0x2E,0xF7,0x20, -0x38,0x2A,0x96,0xB0,0x22,0x7D,0xAE,0xCD,0x75,0xF6,0x11,0x00,0x01,0xCD,0xAB,0xBB, -0xD1,0xCD,0x06,0xF7,0xE1,0xC9,0xAF,0x93,0x6F,0x3E,0x01,0x9A,0x67,0xB5,0xC8,0xD5, -0x29,0x29,0x29,0x01,0x00,0x40,0xCD,0x43,0xF7,0xEB,0x2A,0x7D,0xAE,0x22,0x96,0xB0, -0xEB,0x22,0x7D,0xAE,0xD1,0x23,0xC3,0xAB,0xBB,0x1E,0x05,0xC3,0x94,0xCA,0xE5,0x2A, -0x7B,0xAE,0xCD,0xB8,0xFF,0xE1,0xC0,0x19,0x22,0x7D,0xAE,0xEB,0x18,0x12,0x1E,0x07, -0xC3,0x94,0xCA,0xEB,0x2A,0x7B,0xAE,0xCD,0xCF,0xFF,0xCD,0xBE,0xFF,0x38,0xEF,0xEB, -0xCD,0x3E,0xFC,0xD5,0x2A,0x7D,0xAE,0xCD,0xB8,0xFF,0x38,0xE2,0xCD,0x1D,0xF5,0x2A, -0x89,0xAE,0x09,0x38,0xD9,0x2B,0xCD,0xB8,0xFF,0x30,0xD3,0x2A,0x7B,0xAE,0xEB,0xCD, -0xCF,0xFF,0x22,0x98,0xB0,0x11,0xBB,0xF7,0xCD,0x74,0xDA,0xED,0x4B,0x98,0xB0,0x78, -0x07,0x38,0x16,0xB1,0x28,0x2F,0x2A,0x8F,0xB0,0x54,0x5D,0x09,0xE5,0xCD,0x1D,0xF5, -0xEB,0x78,0xB1,0xC4,0xF5,0xFF,0xE1,0x18,0x15,0x2A,0x8D,0xB0,0x54,0x5D,0x09,0xE5, -0xCD,0x1D,0xF5,0xEB,0x23,0x13,0x78,0xB1,0xC4,0xF2,0xFF,0xEB,0x2B,0xD1,0x22,0x8F, -0xB0,0xEB,0x22,0x8D,0xB0,0xE1,0x22,0x7B,0xAE,0xAF,0xC9,0x2A,0x83,0xAE,0xCD,0xBE, -0xFF,0xD0,0x2A,0x98,0xB0,0x09,0xEB,0x72,0x2B,0x73,0xC9,0x23,0xCD,0xF9,0xF7,0x7E, -0xFE,0x22,0xCA,0x3F,0xDD,0xB7,0x28,0x37,0x04,0x23,0x18,0xF3,0xCD,0xF9,0xF7,0x7E, -0xB7,0xC8,0x23,0x04,0x18,0xF9,0xCD,0xF9,0xF7,0x4F,0x7E,0xB7,0x28,0x21,0xB9,0x28, -0x1E,0xFE,0x2C,0x28,0x1A,0x23,0x04,0x18,0xF1,0xD1,0xE5,0x06,0x00,0xCD,0xFB,0xFF, -0xD1,0xE5,0x21,0xBA,0xB0,0x70,0x23,0x73,0x23,0x72,0xCD,0xBA,0xFB,0xE1,0xC9,0xE5, -0x04,0x05,0x28,0x12,0x2B,0x7E,0xFE,0x20,0x28,0xF7,0xFE,0x09,0x28,0xF3,0xFE,0x0D, -0x28,0xEF,0xFE,0x0A,0x28,0xEB,0xE1,0xC9,0xCD,0xDA,0xFB,0xC8,0x1A,0x13,0xCD,0x6E, -0xC3,0x10,0xF9,0xC9,0x01,0x39,0xF8,0x18,0x0C,0xFE,0x41,0xD8,0xFE,0x5B,0xD0,0xC6, -0x20,0xC9,0x01,0x8A,0xFF,0xC5,0x2A,0xC2,0xB0,0x7E,0xCD,0x19,0xFC,0xD5,0xCD,0xDA, -0xFB,0xE1,0xC1,0x3C,0x3D,0xCA,0xBA,0xFB,0xF5,0x1A,0x13,0xCD,0xF9,0xFF,0x77,0x23, -0xF1,0x18,0xF1,0xE5,0x7E,0x2A,0xC2,0xB0,0x86,0x1E,0x0F,0xDA,0x94,0xCA,0xCD,0x19, -0xFC,0xE1,0xD5,0xE5,0xCD,0xDA,0xFB,0x48,0xEB,0xE3,0xCD,0xE8,0xFB,0xE1,0xE3,0x78, -0xCD,0x8B,0xF8,0xD1,0x79,0xCD,0x8B,0xF8,0xC3,0xBA,0xFB,0xC5,0xEB,0x4F,0x06,0x00, -0xB7,0xC4,0xF2,0xFF,0xEB,0xC1,0xC9,0xE5,0xCD,0xDA,0xFB,0x48,0xE1,0xD5,0xCD,0xE8, -0xFB,0xE1,0x78,0xB1,0xC8,0x79,0xB7,0x28,0x0C,0x78,0xB7,0x28,0x09,0x05,0x0D,0x1A, -0x13,0xBE,0x23,0x28,0xED,0x3F,0x9F,0xC0,0x3C,0xC9,0xCD,0xCE,0xF8,0xD5,0xCD,0x14, -0xF1,0xEB,0x18,0x5E,0xCD,0xCE,0xF8,0xD5,0xCD,0x19,0xF1,0xEB,0x18,0x54,0xCD,0xFB, -0xCE,0xCD,0x53,0xFF,0xCD,0x55,0xDD,0x9F,0xDC,0x67,0xCE,0xFE,0x11,0xD2,0x9C,0xFA, -0x47,0xCD,0x37,0xDD,0x29,0xEB,0x79,0xC3,0xA0,0xF5,0xCD,0x37,0xDD,0x28,0xCD,0xFB, -0xCE,0xCD,0x37,0xDD,0x2C,0xCD,0x53,0xFF,0xCD,0x9F,0xCE,0xCD,0x37,0xDD,0x29,0xE5, -0x79,0xCD,0xA0,0xF5,0xD5,0x79,0xCD,0x4B,0xFF,0xD1,0x78,0xB7,0xC4,0xBA,0xF3,0x30, -0x0A,0x78,0xB7,0x20,0x06,0x79,0xCD,0x9F,0xEE,0x18,0x07,0xC3,0x9C,0xFA,0xE5,0xCD, -0x9D,0xEE,0xE5,0x01,0xFF,0xFF,0x03,0x7E,0x23,0xB7,0x20,0xFA,0x79,0xCD,0x19,0xFC, -0xE1,0xB7,0xD5,0xC4,0xF2,0xFF,0xD1,0xCD,0xBA,0xFB,0xE1,0xC9,0xCD,0xE9,0xF9,0x0E, -0x00,0x18,0x2A,0xCD,0xE9,0xF9,0x1A,0x90,0x4F,0x18,0x22,0xCD,0x37,0xDD,0x28,0xCD, -0xE9,0xF9,0x78,0xB7,0xCA,0x9C,0xFA,0x05,0x48,0xD5,0xC5,0xCD,0xFB,0xF9,0xC1,0xE3, -0x7E,0x91,0x06,0x00,0x38,0x05,0xBB,0x47,0x38,0x01,0x43,0xEB,0xE1,0xCD,0x37,0xDD, -0x29,0xE5,0xEB,0x7E,0xB8,0x78,0x30,0x03,0x7E,0x0E,0x00,0xF5,0xCD,0x19,0xFC,0xD5, -0xCD,0xE8,0xFB,0xEB,0xD1,0x06,0x00,0x09,0xF1,0x4F,0xB7,0xC4,0xF2,0xFF,0xCD,0xBA, -0xFB,0xE1,0xC9,0xCD,0x37,0xDD,0x28,0xCD,0x86,0xD6,0xCD,0x3C,0xFF,0xE5,0xEB,0xCD, -0x21,0xFB,0xE3,0xCD,0x37,0xDD,0x2C,0xCD,0x6D,0xCE,0x47,0xCD,0xFB,0xF9,0x4B,0xCD, -0x37,0xDD,0x29,0xCD,0x37,0xDD,0xEF,0xC5,0xCD,0x9F,0xCE,0x78,0xC1,0xE3,0x0C,0x0D, -0x28,0x25,0xF5,0x7E,0x90,0xDA,0x9C,0xFA,0x3C,0xB9,0x38,0x01,0x79,0x4F,0x78,0x3D, -0x23,0x86,0x23,0x66,0x6F,0x8C,0x95,0x67,0xF1,0x47,0xEB,0x79,0xB8,0x38,0x01,0x78, -0x4F,0x06,0x00,0xB7,0xC4,0xF2,0xFF,0xE1,0xC9,0xCD,0xA5,0xCE,0xCD,0x37,0xDD,0x2C, -0xE5,0x2A,0xC2,0xB0,0xE3,0xCD,0x67,0xCE,0x47,0xD1,0xC9,0x1E,0xFF,0x7E,0xFE,0x29, -0xC8,0xCD,0x37,0xDD,0x2C,0xCD,0x67,0xCE,0x5F,0xC9,0xCD,0xDA,0xFB,0xC3,0x0A,0xFF, -0xCD,0x70,0xFA,0xC3,0x0A,0xFF,0xCD,0x92,0xFA,0xF5,0x3E,0x01,0xCD,0x19,0xFC,0xF1, -0x12,0xC3,0xBA,0xFB,0xE5,0xCD,0x2A,0xFA,0xE1,0xC9,0xCD,0x39,0xC4,0x38,0xEA,0xAF, -0x32,0xBA,0xB0,0xC3,0xBA,0xFB,0xCD,0x67,0xCE,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0xFB, -0xCE,0xCD,0x37,0xDD,0x29,0xE5,0xCD,0x45,0xFF,0x28,0x05,0xCD,0x92,0xFA,0x18,0x03, -0xCD,0x70,0xFA,0x41,0x4F,0x18,0x07,0xCD,0x92,0xFA,0x47,0x0E,0x20,0xE5,0x78,0xCD, -0x19,0xFC,0x04,0x05,0x28,0x05,0x79,0x12,0x13,0x18,0xF8,0xCD,0xBA,0xFB,0xE1,0xC9, -0xCD,0xDA,0xFB,0x28,0x27,0x1A,0xC9,0xCD,0xDA,0xFB,0xCA,0x0A,0xFF,0xEB,0xE5,0x5F, -0x16,0x00,0x19,0x5E,0x72,0xE3,0xD5,0xCD,0xA3,0xEC,0xD1,0xE1,0x73,0xD8,0x1E,0x0D, -0x18,0x0C,0xE5,0xCD,0x8D,0xFE,0xEB,0xE1,0x7A,0xB7,0x7B,0xC8,0x1E,0x05,0xC3,0x94, -0xCA,0xCD,0xFB,0xCE,0xCD,0x45,0xFF,0x0E,0x01,0x28,0x0F,0xCD,0x92,0xFA,0xB7,0xCA, -0x9C,0xFA,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0xA5,0xCE,0xCD,0x37,0xDD,0x2C,0xE5,0x2A, -0xC2,0xB0,0xE3,0xCD,0x9F,0xCE,0xCD,0x37,0xDD,0x29,0xE3,0x79,0xCD,0xD4,0xFA,0xCD, -0x0A,0xFF,0xE1,0xC9,0xF5,0x48,0xD5,0xCD,0xE8,0xFB,0xE1,0xF1,0xE5,0x6F,0x60,0x78, -0xBD,0x38,0x2D,0x2D,0x7D,0x83,0x5F,0x8A,0x93,0x57,0x78,0x95,0x47,0x79,0xD6,0x01, -0x7D,0x3C,0x38,0x1D,0xE3,0xC5,0xD5,0xE5,0x1A,0xBE,0x20,0x0D,0x23,0x0D,0x28,0x13, -0x13,0x05,0x20,0xF4,0xE1,0xD1,0xC1,0x18,0x07,0xE1,0xD1,0xC1,0x13,0x05,0x20,0xE5, -0xAF,0xD1,0xC9,0xE1,0xD1,0xC1,0xE1,0x7C,0x90,0x3C,0xC9,0x11,0x2E,0xFB,0xC3,0x74, -0xDA,0xE5,0x7E,0x23,0x4E,0x23,0x46,0xEB,0xB7,0xC4,0x2E,0xFB,0xE1,0xC9,0x2A,0x8D, -0xB0,0xCD,0xBE,0xFF,0x30,0x07,0x2A,0x8F,0xB0,0xCD,0xBE,0xFF,0xD0,0xEB,0x2B,0x2B, -0xE5,0xCD,0x8F,0xFB,0xEB,0xE1,0xC3,0xA6,0xFB,0x2A,0xC2,0xB0,0x11,0xBA,0xB0,0xCD, -0xB8,0xFF,0xD8,0xCD,0x8F,0xFB,0xC3,0xBA,0xFB,0x2A,0xC2,0xB0,0xE5,0x7E,0xB7,0x28, -0x26,0x23,0x5E,0x23,0x56,0x2A,0x81,0xAE,0xCD,0xB8,0xFF,0x30,0x1E,0x2A,0x8F,0xB0, -0xCD,0xB8,0xFF,0x38,0x16,0x2A,0x83,0xAE,0xCD,0xB8,0xFF,0x30,0x0A,0xE1,0xE5,0x11, -0x9C,0xB0,0xCD,0xB8,0xFF,0x20,0x04,0xE1,0xC3,0xFF,0xFB,0xE1,0xCD,0xFF,0xFB,0x7E, -0xCD,0x19,0xFC,0xD5,0x4E,0x06,0x00,0x23,0x7E,0x23,0x66,0x6F,0x78,0xB1,0xC4,0xF2, -0xFF,0xD1,0x21,0xBA,0xB0,0xC9,0x1A,0x13,0x77,0x23,0x1A,0x13,0x77,0x23,0x1A,0x13, -0x77,0x23,0xC9,0x21,0x9C,0xB0,0x22,0x9A,0xB0,0xC9,0x3E,0x03,0x32,0xC1,0xB0,0x2A, -0x9A,0xB0,0x22,0xC2,0xB0,0x11,0xBA,0xB0,0xCD,0xB8,0xFF,0x1E,0x10,0xCA,0x94,0xCA, -0x11,0xBA,0xB0,0xCD,0xA6,0xFB,0x22,0x9A,0xB0,0xC9,0xE5,0xCD,0x3C,0xFF,0x2A,0xC2, -0xB0,0xCD,0xE8,0xFB,0xE1,0x78,0xB7,0xC9,0xCD,0xFF,0xFB,0xC0,0xD5,0x1B,0x2A,0x8D, -0xB0,0xCD,0xB8,0xFF,0x20,0x07,0x58,0x16,0x00,0x19,0x22,0x8D,0xB0,0xD1,0xC9,0xE5, -0x46,0x23,0x7E,0x23,0x66,0x6F,0xE3,0xEB,0x2A,0x9A,0xB0,0x2B,0x2B,0x2B,0xCD,0xB8, -0xFF,0x20,0x03,0x22,0x9A,0xB0,0xEB,0xD1,0xC9,0xF5,0xC5,0xE5,0xF5,0xCD,0xD1,0xF5, -0xF1,0x21,0xBA,0xB0,0x77,0x23,0x73,0x23,0x72,0xE1,0xC1,0xF1,0xC9,0xCD,0x45,0xFF, -0x20,0x06,0xCD,0xDA,0xFB,0xCD,0x3E,0xFC,0xCD,0x28,0xF6,0xC3,0x60,0xFE,0xC5,0xD5, -0xE5,0x2A,0x8F,0xB0,0x22,0x8D,0xB0,0x21,0x00,0x00,0x22,0xBD,0xB0,0x2A,0x89,0xAE, -0x22,0xBF,0xB0,0xCD,0x7B,0xFC,0x2A,0xBD,0xB0,0x7C,0xB5,0x28,0x1A,0x56,0x2B,0x5E, -0xE5,0x2B,0x4E,0x06,0x00,0x2A,0x8D,0xB0,0xEB,0x09,0x2B,0xCD,0xF5,0xFF,0x13,0xE1, -0x73,0x23,0x72,0x1B,0xEB,0x18,0xCD,0xE1,0xD1,0xC1,0xC9,0x21,0x9C,0xB0,0xED,0x5B, -0x9A,0xB0,0xCD,0xB8,0xFF,0x28,0x0F,0x7E,0x23,0x4E,0x23,0x46,0xE5,0xEB,0xB7,0xC4, -0x9C,0xFC,0xE1,0x23,0x18,0xE8,0x11,0x9C,0xFC,0xC3,0x74,0xDA,0x2A,0x8D,0xB0,0xCD, -0xBE,0xFF,0xD8,0x2A,0xBF,0xB0,0xCD,0xBE,0xFF,0xD0,0xEB,0x22,0xBD,0xB0,0xED,0x43, -0xBF,0xB0,0xC9,0xCD,0x2D,0xFF,0xD2,0x52,0xBD,0xCD,0xA3,0xBD,0x22,0xC2,0xB0,0x21, -0xC3,0xB0,0xC9,0xCD,0xC2,0xFE,0x21,0xC3,0xB0,0xC3,0xA6,0xBD,0xCD,0x15,0xFE,0x30, -0x09,0xCD,0xAC,0xBD,0xDA,0x0D,0xFF,0xCD,0x4F,0xFE,0xCD,0x58,0xBD,0xD8,0xC3,0xF3, -0xCA,0xCD,0x15,0xFE,0x30,0x09,0xCD,0xB2,0xBD,0xDA,0x0D,0xFF,0xCD,0x4F,0xFE,0xCD, -0x5E,0xBD,0xD8,0x18,0xE9,0xCD,0x15,0xFE,0x30,0x09,0xCD,0xB5,0xBD,0xDA,0x0D,0xFF, -0xCD,0x4F,0xFE,0xCD,0x61,0xBD,0xD8,0x18,0xD5,0xCD,0x15,0xFE,0xDA,0xC4,0xBD,0xC3, -0x6A,0xBD,0x3A,0xC1,0xB0,0xB1,0xFE,0x02,0x20,0x05,0xCD,0x4F,0xFE,0x18,0x03,0xCD, -0x15,0xFE,0xEB,0xD5,0xCD,0x64,0xBD,0xD1,0xF5,0x01,0x05,0x00,0xCD,0xF2,0xFF,0xF1, -0xD8,0xCA,0xEA,0xCA,0xC3,0xF3,0xCA,0xCD,0x9A,0xFE,0xEB,0xCD,0xB8,0xBD,0xDA,0x0D, -0xFF,0x28,0x10,0x21,0x00,0x80,0xC3,0x60,0xFE,0xCD,0x9A,0xFE,0xEB,0xCD,0xBB,0xBD, -0xDA,0x0D,0xFF,0x1E,0x0B,0xC3,0x94,0xCA,0xCD,0x9A,0xFE,0x7B,0xA5,0x6F,0x7C,0xA2, -0xC3,0x0C,0xFF,0xCD,0x9A,0xFE,0x7B,0xB5,0x6F,0x7A,0xB4,0x18,0xF3,0xCD,0x9A,0xFE, -0x7B,0xAD,0x6F,0x7C,0xAA,0x18,0xE9,0xE5,0xCD,0x8D,0xFE,0x7D,0x2F,0x6F,0x7C,0x2F, -0xCD,0x0C,0xFF,0xE1,0xC9,0xCD,0xA3,0xFD,0xF0,0xE5,0xC5,0xCD,0x2D,0xFF,0x30,0x0D, -0xCD,0xC7,0xBD,0x22,0xC2,0xB0,0xD5,0xD4,0x60,0xFE,0xD1,0x18,0x03,0xCD,0x6D,0xBD, -0xC1,0xE1,0xC9,0xCD,0x2D,0xFF,0xDA,0xCA,0xBD,0xC5,0xCD,0x70,0xBD,0xC1,0xC9,0xE5, -0x79,0xCD,0x4B,0xFF,0xD1,0xCD,0x2D,0xFF,0x78,0x30,0x0B,0xB7,0xF0,0xCD,0x6A,0xFE, -0xCD,0xCE,0xFD,0xC3,0x8D,0xFE,0xB7,0x20,0x05,0x11,0x49,0xBD,0x18,0x26,0xD5,0xC5, -0x78,0xCD,0x55,0xBD,0xDC,0x49,0xBD,0x78,0xC1,0xD1,0x30,0x08,0xCD,0x43,0xBD,0xAF, -0x90,0xC3,0x55,0xBD,0xEB,0xC3,0x4E,0xFF,0x11,0x4C,0xBD,0x18,0x03,0x11,0x4F,0xBD, -0xCD,0x2D,0xFF,0xD8,0xCD,0xFB,0xFF,0xD0,0x3A,0xC1,0xB0,0xCD,0x06,0xFE,0xD8,0xCD, -0x1D,0xFF,0x78,0xC3,0x43,0xBD,0x79,0xFE,0x03,0xD0,0x7E,0x23,0x66,0x6F,0xCD,0xA9, -0xBD,0xD0,0xC3,0x0D,0xFF,0x79,0xFE,0x03,0x28,0x32,0x3A,0xC1,0xB0,0xFE,0x03,0x28, -0x2B,0xB9,0x28,0x17,0x30,0x0C,0xE5,0x21,0xC1,0xB0,0x71,0x23,0xCD,0x63,0xFE,0xD1, -0xB7,0xC9,0xCD,0x63,0xFE,0xEB,0x21,0xC2,0xB0,0xB7,0xC9,0xEE,0x02,0x28,0x05,0xEB, -0x21,0xC2,0xB0,0xC9,0x5E,0x23,0x56,0x2A,0xC2,0xB0,0x37,0xC9,0xC3,0x40,0xFF,0x2A, -0xC2,0xB0,0xCD,0x6A,0xFE,0x2A,0x8B,0xB0,0xCD,0x63,0xFE,0xEB,0x21,0xC2,0xB0,0xC9, -0xAF,0x18,0x08,0x5E,0x23,0x56,0x2B,0x7A,0x18,0x08,0x7C,0xEB,0x21,0xC1,0xB0,0x36, -0x05,0x23,0xEB,0xF5,0xB7,0xFC,0xC7,0xBD,0xF1,0xC3,0x40,0xBD,0x22,0xC2,0xB0,0xEB, -0x22,0xC4,0xB0,0x21,0xC1,0xB0,0x36,0x05,0x23,0xAF,0xC3,0x43,0xBD,0xCD,0x93,0xFE, -0xD8,0x18,0x3F,0xCD,0xA5,0xFE,0x22,0xC2,0xB0,0xC9,0x79,0xCD,0xAC,0xFE,0xEB,0xDC, -0xA5,0xFE,0xD8,0x18,0x2D,0x21,0xC1,0xB0,0x7E,0x36,0x02,0x23,0xFE,0x03,0x38,0x0D, -0xCA,0x40,0xFF,0xC5,0xCD,0x46,0xBD,0x47,0xDC,0xA9,0xBD,0xC1,0xC9,0x7E,0x23,0x66, -0x6F,0xC9,0xCD,0x2D,0xFF,0xD8,0xCD,0x46,0xBD,0x30,0x07,0x47,0xFC,0xA9,0xBD,0xDA, -0x0D,0xFF,0x1E,0x06,0xC3,0x94,0xCA,0xE5,0xD5,0xC5,0x21,0xC1,0xB0,0xBE,0xC4,0xE5, -0xFE,0xC1,0xD1,0xE1,0xC9,0xD6,0x03,0x38,0xA4,0xCA,0x3C,0xFF,0xCD,0x2D,0xFF,0xDA, -0x6A,0xFE,0xC9,0xE5,0x21,0x00,0x00,0x22,0xC2,0xB0,0x22,0xC4,0xB0,0x22,0xC5,0xB0, -0xE1,0xC9,0xCD,0xA3,0xFD,0x6F,0x87,0x9F,0x18,0x02,0x6F,0xAF,0x67,0x22,0xC2,0xB0, -0x3E,0x02,0x32,0xC1,0xB0,0xC9,0x21,0xC2,0xB0,0x3E,0x05,0x18,0xF5,0x21,0xC1,0xB0, -0x4E,0x23,0xC9,0x3A,0xC1,0xB0,0xC9,0x3A,0xC1,0xB0,0xFE,0x03,0xC9,0x3A,0xC1,0xB0, -0xFE,0x03,0x28,0x0C,0x2A,0xC2,0xB0,0xD8,0x21,0xC2,0xB0,0xC9,0xCD,0x45,0xFF,0xC8, -0x1E,0x0D,0xC3,0x94,0xCA,0x3A,0xC1,0xB0,0xFE,0x03,0xC9,0x32,0xC1,0xB0,0x11,0xC2, -0xB0,0x18,0x13,0xD5,0xE5,0x3A,0xC1,0xB0,0x4F,0xCD,0xB0,0xF5,0xCD,0x62,0xFF,0xE1, -0xD1,0xC9,0xEB,0x21,0xC2,0xB0,0xC5,0x3A,0xC1,0xB0,0x4F,0x06,0x00,0xED,0xB0,0xC1, -0xC9,0xCD,0x8A,0xFF,0xFE,0x41,0x3F,0xD0,0xFE,0x5B,0xC9,0xCD,0x71,0xFF,0xD8,0xFE, -0x2E,0x37,0xC8,0xFE,0x30,0x3F,0xD0,0xFE,0x3A,0xC9,0xFE,0x61,0xD8,0xFE,0x7B,0xD0, -0xD6,0x20,0xC9,0xF5,0xC5,0x46,0x23,0xE5,0x23,0x23,0xBE,0x23,0x28,0x04,0x05,0x20, -0xF7,0xE3,0xF1,0x7E,0x23,0x66,0x6F,0xC1,0xF1,0xC9,0xC5,0x4F,0x7E,0xB7,0x28,0x05, -0x23,0xB9,0x20,0xF8,0x37,0x79,0xC1,0xC9,0x7C,0x92,0xC0,0x7D,0x93,0xC9,0x7C,0x90, -0xC0,0x7D,0x91,0xC9,0xC5,0x47,0x7D,0x93,0x5F,0x7C,0x9A,0x57,0x78,0xC1,0xC9,0xC5, -0x47,0x7D,0x93,0x6F,0x7C,0x9A,0x67,0x78,0xC1,0xC9,0xE5,0x67,0xE3,0x7D,0x93,0x4F, -0x7C,0x9A,0x47,0xE3,0x7C,0xE1,0xC9,0xD5,0x57,0x7D,0x91,0x6F,0x7C,0x98,0x67,0x7A, -0xD1,0xC9,0xED,0xB0,0xC9,0xED,0xB8,0xC9,0xE9,0xC5,0xC9,0xD5,0xC9,0xC7,0xC7,0x54 -}; -#endif - +#ifndef ROM_464_H + #define ROM_464_H +//ROM 464 32768 bytes +//ROM 0 16384 +const unsigned char gb_rom_464_0[]={ +0x01,0x89,0x7F,0xED,0x49,0xC3,0x80,0x05,0xC3,0x82,0xB9,0xC3,0x7C,0xB9,0xC5,0xC9, +0xC3,0x16,0xBA,0xC3,0x10,0xBA,0xD5,0xC9,0xC3,0xBF,0xB9,0xC3,0xB1,0xB9,0xE9,0x00, +0xC3,0xCB,0xBA,0xC3,0xB9,0xB9,0x00,0x00,0xC3,0x2E,0xBA,0x00,0xED,0x49,0xD9,0xFB, +0xF3,0xD9,0x21,0x2B,0x00,0x71,0x18,0x08,0xC3,0x39,0xB9,0xC9,0x00,0x00,0x00,0x00, +0xCB,0xD1,0x18,0xE8,0x21,0x40,0x00,0x2D,0x7E,0x77,0x20,0xFB,0x3E,0xC7,0x32,0x30, +0x00,0x21,0x91,0x03,0x11,0x00,0xB9,0x01,0xE9,0x01,0xED,0xB0,0xF3,0x3A,0xAB,0xB1, +0xED,0x5B,0xA9,0xB1,0x06,0xC0,0x21,0x00,0xB1,0x36,0x00,0x23,0x10,0xFB,0x47,0x0E, +0xFF,0xA9,0xC0,0x4F,0x5F,0x57,0xC9,0x7C,0xB5,0x79,0x20,0x04,0x7D,0x21,0x06,0xC0, +0x32,0xA8,0xB1,0x32,0xAB,0xB1,0x22,0xA9,0xB1,0x21,0xFF,0xAB,0x11,0x40,0x00,0x01, +0xFF,0xB0,0x31,0x00,0xC0,0xDF,0xA9,0xB1,0xC7,0xF3,0xED,0x5B,0x89,0xB1,0x2A,0x87, +0xB1,0xFB,0xC9,0xF3,0xAF,0x32,0x8B,0xB1,0xED,0x53,0x89,0xB1,0x22,0x87,0xB1,0xFB, +0xC9,0x21,0x87,0xB1,0x34,0x23,0x28,0xFC,0x06,0xF5,0xED,0x78,0x1F,0x30,0x08,0x2A, +0x8C,0xB1,0x7C,0xB7,0xC4,0x53,0x01,0x2A,0x8E,0xB1,0x7C,0xB7,0xC4,0x53,0x01,0xCD, +0x61,0x1F,0x21,0x92,0xB1,0x35,0xC0,0x36,0x06,0xCD,0xB7,0x1B,0x2A,0x90,0xB1,0x7C, +0xB7,0xC8,0x21,0x04,0xB1,0xCB,0xC6,0xC9,0x2B,0x36,0x00,0x2B,0x3A,0x01,0xB1,0xB7, +0x20,0x0C,0x22,0x00,0xB1,0x22,0x02,0xB1,0x21,0x04,0xB1,0xCB,0xF6,0xC9,0xED,0x5B, +0x02,0xB1,0x22,0x02,0xB1,0xEB,0x73,0x23,0x72,0xC9,0xED,0x73,0x05,0xB1,0x31,0x87, +0xB1,0xE5,0xD5,0xC5,0x21,0x04,0xB1,0xCB,0x76,0x28,0x1E,0xCB,0xFE,0x2A,0x00,0xB1, +0x7C,0xB7,0x28,0x0E,0x5E,0x23,0x56,0xED,0x53,0x00,0xB1,0x23,0xCD,0x0A,0x02,0xF3, +0x18,0xEB,0x21,0x04,0xB1,0xCB,0x46,0x28,0x10,0x36,0x00,0x37,0x08,0xCD,0x89,0x01, +0xB7,0x08,0x21,0x04,0xB1,0x7E,0xB7,0x20,0xD2,0x36,0x00,0xC1,0xD1,0xE1,0xED,0x7B, +0x05,0xB1,0xC9,0x5E,0x23,0x7E,0x23,0xB7,0xCA,0xE2,0x01,0x57,0xD5,0xCD,0xE2,0x01, +0xE1,0x18,0xF0,0xE5,0x23,0x23,0xCD,0xD2,0x01,0xE1,0x11,0x8C,0xB1,0xC3,0x73,0x03, +0x11,0x8C,0xB1,0xC3,0x82,0x03,0xE5,0x23,0x23,0xCD,0xD2,0x01,0xE1,0x11,0x8E,0xB1, +0xC3,0x73,0x03,0x11,0x8E,0xB1,0xC3,0x82,0x03,0x2A,0x90,0xB1,0x7C,0xB7,0xC8,0x5E, +0x23,0x56,0x23,0x4E,0x23,0x46,0x78,0xB1,0x28,0x16,0x0B,0x78,0xB1,0x20,0x0E,0xD5, +0x23,0x23,0xE5,0x23,0xCD,0xE2,0x01,0xE1,0x46,0x2B,0x4E,0x2B,0xD1,0x70,0x2B,0x71, +0xEB,0x18,0xD9,0xE5,0x23,0x23,0xF3,0x73,0x23,0x72,0x23,0x71,0x23,0x70,0xE1,0x11, +0x90,0xB1,0xC3,0x73,0x03,0x11,0x90,0xB1,0xCD,0x82,0x03,0xD0,0xEB,0x23,0x5E,0x23, +0x56,0xC9,0xF3,0x23,0x23,0x36,0x00,0x23,0x70,0x23,0x73,0x23,0x72,0x23,0x71,0x23, +0xFB,0xC9,0x23,0x23,0xF3,0x7E,0x34,0xFA,0x06,0x02,0xB7,0x20,0x13,0x23,0x7E,0x2B, +0xB7,0xF2,0x2F,0x02,0x08,0x30,0x12,0x08,0x87,0xF2,0xE8,0x00,0x23,0x23,0x18,0x23, +0x08,0x38,0x01,0xFB,0x08,0xC9,0x35,0x18,0xF7,0x08,0xFB,0x7E,0xB7,0xF8,0xE5,0xCD, +0x1C,0x02,0xE1,0x35,0xC8,0xF2,0x0E,0x02,0x34,0xC9,0x23,0x23,0x23,0x7E,0x23,0x1F, +0xD2,0xB9,0xB9,0x5E,0x23,0x56,0xEB,0xE9,0x21,0x00,0x00,0x22,0x94,0xB1,0xC9,0xE5, +0x47,0x11,0x96,0xB1,0xEB,0x2B,0x2B,0x56,0x2B,0x5E,0x7A,0xB7,0x28,0x07,0x13,0x13, +0x13,0x1A,0xB8,0x30,0xEF,0xD1,0x1B,0x23,0x7E,0x12,0x1B,0x72,0x2B,0x7E,0x12,0x73, +0x08,0x38,0x01,0xFB,0x08,0xC9,0xF3,0x2A,0x93,0xB1,0x7C,0xB7,0x28,0x17,0xE5,0x5E, +0x23,0x56,0x23,0x23,0x3A,0x95,0xB1,0xBE,0x30,0x0A,0xF5,0x7E,0x32,0x95,0xB1,0xED, +0x53,0x93,0xB1,0xF1,0xE1,0xFB,0xC9,0x32,0x95,0xB1,0x23,0x23,0x35,0xC8,0xF3,0xF2, +0x2F,0x02,0x34,0xFB,0xC9,0xCD,0x8E,0x02,0x11,0x93,0xB1,0xC3,0x82,0x03,0x23,0x23, +0x36,0xC0,0x2B,0x2B,0xC9,0x21,0x95,0xB1,0xCB,0xEE,0xC9,0x21,0x95,0xB1,0xCB,0xAE, +0xC9,0xE5,0xED,0x5B,0xA6,0xB1,0x22,0xA6,0xB1,0x73,0x23,0x72,0x23,0x71,0x23,0x70, +0xE1,0xC9,0x11,0x96,0xB1,0x01,0x10,0x00,0xCD,0xA6,0xBA,0xEB,0x2B,0xCB,0xFE,0x2A, +0xA6,0xB1,0x7D,0x18,0x10,0xE5,0x23,0x23,0x4E,0x23,0x46,0xCD,0xF4,0x02,0xD1,0xD8, +0xEB,0x7E,0x23,0x66,0x6F,0xB4,0x20,0xED,0x0E,0xFF,0x0C,0xCD,0x83,0xBA,0xF5,0xE6, +0x03,0x47,0xCC,0xF4,0x02,0x38,0x09,0xF1,0x87,0x30,0xEF,0x79,0xB7,0x28,0xEB,0xC9, +0xF1,0xC3,0x0B,0x06,0x21,0x04,0xC0,0x78,0xB7,0x28,0x04,0x60,0x69,0x0E,0xFF,0xCD, +0x7E,0xBA,0xC5,0x5E,0x23,0x56,0x23,0xEB,0x18,0x17,0x01,0x96,0xB1,0x0A,0xBE,0x20, +0x08,0x23,0x03,0x87,0x30,0xF7,0xEB,0x18,0x0C,0x7E,0x23,0x87,0x30,0xFB,0x13,0x13, +0x13,0x7E,0xB7,0x20,0xE5,0xC1,0xC3,0x8C,0xBA,0x0E,0x07,0xCD,0x32,0x03,0x0D,0x20, +0xFA,0xC9,0x79,0xFE,0x08,0xD0,0xCD,0x7E,0xBA,0x3A,0x00,0xC0,0xE6,0x03,0x3D,0x20, +0x1F,0xC5,0xCD,0x06,0xC0,0xD5,0x23,0xEB,0x21,0xAA,0xB1,0xED,0x4B,0xA8,0xB1,0x06, +0x00,0x09,0x09,0x73,0x23,0x72,0x21,0xFC,0xFF,0x19,0xCD,0xA1,0x02,0x2B,0xD1,0xC1, +0xC3,0x8C,0xBA,0x7E,0xBB,0x23,0x7E,0x2B,0x20,0x03,0xBA,0x37,0xC8,0xB7,0xC8,0x6E, +0x67,0x18,0xF0,0xEB,0xF3,0xCD,0x63,0x03,0x38,0x06,0x73,0x23,0x72,0x13,0xAF,0x12, +0xFB,0xC9,0xEB,0xF3,0xCD,0x63,0x03,0x30,0x06,0x1A,0x77,0x13,0x23,0x1A,0x77,0xFB, +0xC9,0xC3,0x5E,0xBA,0xC3,0x68,0xBA,0xC3,0x4A,0xBA,0xC3,0x54,0xBA,0xC3,0x72,0xBA, +0xC3,0x7E,0xBA,0xC3,0xA2,0xBA,0xC3,0x83,0xBA,0xC3,0x8C,0xBA,0xC3,0xA6,0xBA,0xC3, +0xAC,0xBA,0x3A,0x94,0xB1,0xB7,0xC8,0xE5,0xF3,0x2A,0x93,0xB1,0x7C,0xB7,0x28,0x07, +0x23,0x23,0x23,0x3A,0x95,0xB1,0xBE,0xE1,0xFB,0xC9,0xF3,0x08,0x38,0x33,0xD9,0x79, +0x37,0xFB,0x08,0xF3,0xF5,0xCB,0x91,0xED,0x49,0xCD,0xB1,0x00,0xB7,0x08,0x4F,0x06, +0x7F,0x3A,0x04,0xB1,0xB7,0x28,0x14,0xFA,0x6A,0xB9,0x79,0xE6,0x0C,0xF5,0xCB,0x91, +0xD9,0xCD,0x0A,0x01,0xD9,0xE1,0x79,0xE6,0xF3,0xB4,0x4F,0xED,0x49,0xD9,0xF1,0xFB, +0xC9,0x08,0xE1,0xF5,0xCB,0xD1,0xED,0x49,0xCD,0x3B,0x00,0x18,0xCF,0xF3,0xE5,0xD9, +0xD1,0x18,0x06,0xF3,0xD9,0xE1,0x5E,0x23,0x56,0x08,0x7A,0xCB,0xBA,0xCB,0xB2,0x07, +0x07,0x07,0x07,0xA9,0xE6,0x0C,0xA9,0xC5,0xCD,0xA8,0xB9,0xF3,0xD9,0x08,0x79,0xC1, +0xE6,0x03,0xCB,0x89,0xCB,0x81,0xB1,0x18,0x01,0xD5,0x4F,0xED,0x49,0xB7,0x08,0xD9, +0xFB,0xC9,0xF3,0x08,0x79,0xE5,0xD9,0xD1,0x18,0x15,0xF3,0xE5,0xD9,0xE1,0x18,0x09, +0xF3,0xD9,0xE1,0x5E,0x23,0x56,0x23,0xE5,0xEB,0x5E,0x23,0x56,0x23,0x08,0x7E,0xFE, +0xFC,0x30,0xBE,0x06,0xDF,0xED,0x79,0x21,0xA8,0xB1,0x46,0x77,0xC5,0xFD,0xE5,0x3D, +0xFE,0x07,0x30,0x0F,0x87,0xC6,0xAC,0x6F,0xCE,0xB1,0x95,0x67,0x7E,0x23,0x66,0x6F, +0xE5,0xFD,0xE1,0x06,0x7F,0x79,0xCB,0xD7,0xCB,0x9F,0xCD,0xA8,0xB9,0xFD,0xE1,0xF3, +0xD9,0x08,0x59,0xC1,0x78,0x06,0xDF,0xED,0x79,0x32,0xA8,0xB1,0x06,0x7F,0x7B,0x18, +0x8F,0xF3,0xE5,0xD9,0xD1,0x18,0x08,0xF3,0xD9,0xE1,0x5E,0x23,0x56,0x23,0xE5,0x08, +0x7A,0xCB,0xFA,0xCB,0xF2,0xE6,0xC0,0x07,0x07,0x21,0xAB,0xB1,0x86,0x18,0xA4,0xF3, +0xD9,0xE1,0x5E,0x23,0x56,0xCB,0x91,0xED,0x49,0xED,0x53,0x3F,0xBA,0xD9,0xFB,0xCD, +0x3E,0xBA,0xF3,0xD9,0xCB,0xD1,0xED,0x49,0xD9,0xFB,0xC9,0xF3,0xD9,0x79,0xCB,0x91, +0xED,0x49,0xD9,0xFB,0xC9,0xF3,0xD9,0x79,0xCB,0xD1,0xED,0x49,0xD9,0xFB,0xC9,0xF3, +0xD9,0x79,0xCB,0x99,0xED,0x49,0xD9,0xFB,0xC9,0xF3,0xD9,0x79,0xCB,0xD9,0xED,0x49, +0xD9,0xFB,0xC9,0xF3,0xD9,0xA9,0xE6,0x0C,0xA9,0x4F,0xED,0x49,0xD9,0xFB,0xC9,0xCD, +0x5E,0xBA,0x18,0x0F,0xCD,0x7E,0xBA,0x3A,0x00,0xC0,0x2A,0x01,0xC0,0xF5,0x78,0xCD, +0x72,0xBA,0xF1,0xE5,0xF3,0x06,0xDF,0xED,0x49,0x21,0xA8,0xB1,0x46,0x71,0x48,0x47, +0xFB,0xE1,0xC9,0x3A,0xA8,0xB1,0xC9,0xCD,0xB2,0xBA,0xED,0xB0,0xC9,0xCD,0xB2,0xBA, +0xED,0xB8,0xC9,0xF3,0xD9,0xE1,0xC5,0xCB,0xD1,0xCB,0xD9,0xED,0x49,0xCD,0xC7,0xBA, +0xF3,0xD9,0xC1,0xED,0x49,0xD9,0xFB,0xC9,0xE5,0xD9,0xFB,0xC9,0xF3,0xD9,0x59,0xCB, +0xD3,0xCB,0xDB,0xED,0x59,0xD9,0x7E,0xD9,0xED,0x49,0xD9,0xFB,0xC9,0xD9,0x79,0xF6, +0x0C,0xED,0x79,0xDD,0x7E,0x00,0xED,0x49,0xD9,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, +0xF3,0x01,0x82,0xF7,0xED,0x49,0x01,0x00,0xF4,0xED,0x49,0x01,0x00,0xF6,0xED,0x49, +0x01,0x7F,0xEF,0xED,0x49,0x06,0xF5,0xED,0x78,0xE6,0x10,0x21,0xC4,0x05,0x20,0x03, +0x21,0xD4,0x05,0x01,0x0F,0xBC,0xED,0x49,0x2B,0x7E,0x04,0xED,0x79,0x05,0x0D,0xF2, +0xA6,0x05,0x18,0x20,0x3F,0x28,0x2E,0x8E,0x26,0x00,0x19,0x1E,0x00,0x07,0x00,0x00, +0x30,0x00,0xC0,0x00,0x3F,0x28,0x2E,0x8E,0x1F,0x06,0x19,0x1B,0x00,0x07,0x00,0x00, +0x30,0x00,0xC0,0x00,0x11,0x5C,0x06,0x21,0x00,0x00,0x18,0x32,0x31,0x00,0xC0,0xE5, +0xCD,0x68,0x1E,0xF3,0x01,0xFF,0xF8,0xED,0x49,0xCD,0x5C,0x00,0xE1,0xD5,0xC5,0xE5, +0xCD,0x1E,0x1A,0xCD,0x88,0x10,0xCD,0xB1,0x0A,0xCD,0x5E,0xBA,0xE1,0xCD,0x75,0x07, +0xC1,0xD1,0x38,0x07,0xEB,0x48,0x11,0xE8,0x06,0x18,0x03,0x11,0x26,0x07,0xF3,0xED, +0x56,0xD9,0x01,0x00,0xDF,0xED,0x49,0x01,0xFF,0xF8,0xED,0x49,0x21,0x00,0xB1,0x11, +0x01,0xB1,0x01,0xFF,0x07,0x36,0x00,0xED,0xB0,0x01,0x89,0x7F,0xED,0x49,0xD9,0xAF, +0x08,0x31,0x00,0xC0,0xE5,0xC5,0xD5,0xCD,0x44,0x00,0xCD,0x88,0x08,0xCD,0xE0,0x19, +0xCD,0x68,0x1E,0xCD,0xA0,0x0A,0xCD,0x78,0x10,0xCD,0xB0,0x15,0xCD,0x70,0x23,0xCD, +0xE6,0x07,0xFB,0xE1,0xCD,0x75,0x07,0xC1,0xE1,0xC3,0x77,0x00,0xCD,0x12,0x07,0xCD, +0xEB,0x06,0x21,0x6D,0x06,0xCD,0xEB,0x06,0x21,0x93,0x06,0x18,0x7E,0x20,0x36,0x34, +0x4B,0x20,0x4D,0x69,0x63,0x72,0x6F,0x63,0x6F,0x6D,0x70,0x75,0x74,0x65,0x72,0x20, +0x20,0x28,0x76,0x31,0x29,0x0D,0x0A,0x0D,0x0A,0x00,0x43,0x6F,0x70,0x79,0x72,0x69, +0x67,0x68,0x74,0x20,0xA4,0x31,0x39,0x38,0x34,0x20,0x41,0x6D,0x73,0x74,0x72,0x61, +0x64,0x20,0x43,0x6F,0x6E,0x73,0x75,0x6D,0x65,0x72,0x20,0x45,0x6C,0x65,0x63,0x74, +0x72,0x6F,0x6E,0x69,0x63,0x73,0x20,0x70,0x6C,0x63,0x0D,0x0A,0x20,0x20,0x20,0x20, +0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x6E,0x64,0x20,0x4C,0x6F,0x63,0x6F,0x6D, +0x6F,0x74,0x69,0x76,0x65,0x20,0x53,0x6F,0x66,0x74,0x77,0x61,0x72,0x65,0x20,0x4C, +0x74,0x64,0x2E,0x0D,0x0A,0x0D,0x0A,0x00,0x21,0xF4,0x06,0x7E,0x23,0xB7,0xC8,0xCD, +0x00,0x14,0x18,0xF7,0x2A,0x2A,0x2A,0x20,0x50,0x52,0x4F,0x47,0x52,0x41,0x4D,0x20, +0x4C,0x4F,0x41,0x44,0x20,0x46,0x41,0x49,0x4C,0x45,0x44,0x20,0x2A,0x2A,0x2A,0x0D, +0x0A,0x00,0x06,0xF5,0xED,0x78,0x2F,0xE6,0x0E,0x0F,0x21,0x27,0x07,0x3C,0x47,0x7E, +0x23,0xB7,0x20,0xFB,0x10,0xF9,0xC9,0x41,0x72,0x6E,0x6F,0x6C,0x64,0x00,0x0A,0x20, +0x41,0x6D,0x73,0x74,0x72,0x61,0x64,0x00,0x0A,0x20,0x4F,0x72,0x69,0x6F,0x6E,0x00, +0x0A,0x20,0x53,0x63,0x68,0x6E,0x65,0x69,0x64,0x65,0x72,0x00,0x0A,0x20,0x41,0x77, +0x61,0x00,0x0A,0x20,0x53,0x6F,0x6C,0x61,0x76,0x6F,0x78,0x00,0x0A,0x20,0x53,0x61, +0x69,0x73,0x68,0x6F,0x00,0x0A,0x20,0x54,0x72,0x69,0x75,0x6D,0x70,0x68,0x00,0x0A, +0x20,0x49,0x73,0x70,0x00,0xE9,0xFE,0x03,0xD0,0xF3,0xD9,0xCB,0x89,0xCB,0x81,0xB1, +0x4F,0xED,0x49,0xFB,0xD9,0xC9,0xC5,0xD5,0x01,0x10,0x7F,0xCD,0xAB,0x07,0x0E,0x00, +0xCD,0xAB,0x07,0x1B,0x20,0xFA,0xD1,0xC1,0xC9,0xC5,0xD5,0x01,0x10,0x7F,0xCD,0xAB, +0x07,0x0E,0x00,0xCD,0xAB,0x07,0x20,0xFB,0xD1,0xC1,0xC9,0xED,0x49,0x1A,0x13,0xE6, +0x1F,0xF6,0x40,0xED,0x79,0x0C,0x79,0xFE,0x10,0xC9,0xF5,0xC5,0x06,0xF5,0xED,0x78, +0x1F,0x30,0xFB,0xC1,0xF1,0xC9,0xC5,0x0F,0x0F,0xE6,0x30,0x4F,0x7C,0x1F,0xE6,0x03, +0xB1,0x01,0x0C,0xBC,0xED,0x49,0x04,0xED,0x79,0x05,0x0C,0xED,0x49,0x04,0x7C,0x1F, +0x7D,0x1F,0xED,0x79,0xC1,0xC9,0x21,0xEC,0x07,0xC3,0x8A,0x0A,0x03,0xF1,0xBD,0xC3, +0xF8,0x07,0xC5,0xCD,0xF1,0xBD,0xC1,0xC9,0x01,0x32,0x00,0xCD,0x1B,0x08,0x30,0x07, +0x10,0xF9,0x0D,0x20,0xF6,0xB7,0xC9,0xC5,0x06,0xEF,0xE6,0x7F,0xED,0x79,0xF6,0x80, +0xF3,0xED,0x79,0xE6,0x7F,0xFB,0xED,0x79,0xC1,0x37,0xC9,0xC5,0x4F,0x06,0xF5,0xED, +0x78,0x17,0x17,0x79,0xC1,0xC9,0xF3,0x06,0xF4,0xED,0x79,0x06,0xF6,0xED,0x78,0xF6, +0xC0,0xED,0x79,0xE6,0x3F,0xED,0x79,0x06,0xF4,0xED,0x49,0x06,0xF6,0x4F,0xF6,0x80, +0xED,0x79,0xED,0x49,0xFB,0xC9,0x01,0x0E,0xF4,0xED,0x49,0x06,0xF6,0xED,0x78,0xE6, +0x30,0x4F,0xF6,0xC0,0xED,0x79,0xED,0x49,0x04,0x3E,0x92,0xED,0x79,0xC5,0xCB,0xF1, +0x06,0xF6,0xED,0x49,0x06,0xF4,0xED,0x78,0x46,0x77,0xA0,0x2F,0x12,0x23,0x13,0x0C, +0x79,0xE6,0x0F,0xFE,0x0A,0x20,0xE9,0xC1,0x3E,0x82,0xED,0x79,0x05,0xED,0x49,0xC9, +0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0x11,0xAC,0x08,0x21,0x00,0xBB,0x01,0xCF, +0xBF,0xCD,0x97,0x08,0x01,0xEF,0x30,0x71,0x23,0x1A,0x77,0x13,0x23,0xEB,0x79,0x2F, +0x07,0x07,0xE6,0x80,0xB6,0xEB,0x77,0x13,0x23,0x10,0xEC,0xC9,0xE0,0x19,0x1E,0x1A, +0x3C,0x1A,0x42,0x1A,0x77,0x1A,0xBD,0x1A,0x2E,0x1B,0x7B,0x1A,0x56,0x1B,0x5C,0x1B, +0xBD,0x1C,0xB3,0x1B,0x5C,0x1C,0x52,0x1D,0x3E,0x1D,0x57,0x1D,0x43,0x1D,0x5C,0x1D, +0x48,0x1D,0xAB,0x1C,0xA6,0x1C,0x6D,0x1C,0x69,0x1C,0x71,0x1C,0x82,0x1C,0x90,0x1C, +0x78,0x10,0x88,0x10,0x51,0x14,0x4B,0x14,0x00,0x14,0x34,0x13,0xAB,0x13,0xA7,0x13, +0x0C,0x12,0x56,0x12,0x40,0x15,0x5E,0x11,0x69,0x11,0x74,0x11,0x80,0x11,0x89,0x12, +0x9A,0x12,0x79,0x12,0x81,0x12,0xCE,0x11,0x68,0x12,0x68,0x12,0xA9,0x12,0xBD,0x12, +0xAE,0x12,0xC3,0x12,0xC9,0x12,0x7A,0x13,0x87,0x13,0xD3,0x12,0xF1,0x12,0xFD,0x12, +0x2A,0x13,0xCB,0x14,0xE8,0x10,0x07,0x11,0xB0,0x15,0xDF,0x15,0xF4,0x15,0xF1,0x15, +0xFC,0x15,0x04,0x16,0x12,0x16,0x34,0x17,0x79,0x17,0xA6,0x17,0xBC,0x17,0xC5,0x17, +0xF6,0x17,0x04,0x18,0xFD,0x17,0x0A,0x18,0x13,0x18,0x10,0x18,0x27,0x18,0x24,0x18, +0x39,0x18,0x36,0x18,0x45,0x19,0xA0,0x0A,0xB1,0x0A,0x3C,0x0B,0x45,0x0B,0x50,0x0B, +0xCA,0x0A,0xEC,0x0A,0xF7,0x0A,0x57,0x0B,0x64,0x0B,0xA9,0x0B,0xF9,0x0B,0x05,0x0C, +0x13,0x0C,0x2D,0x0C,0x86,0x0C,0xA0,0x0C,0xEC,0x0C,0x14,0x0D,0xF1,0x0C,0x19,0x0D, +0xE4,0x0C,0xE8,0x0C,0xB3,0x0D,0xB7,0x0D,0xDF,0x0D,0xFA,0x0D,0x3E,0x0E,0xF3,0x0E, +0x49,0x0F,0x49,0x0C,0x6B,0x0C,0xC4,0x0F,0x2F,0x10,0x70,0x23,0x7F,0x23,0x8E,0x23, +0x4B,0x2A,0x4F,0x2A,0x51,0x2A,0x92,0x23,0xFC,0x23,0x01,0x24,0x35,0x24,0xAB,0x24, +0x9A,0x24,0x96,0x24,0xAB,0x23,0x15,0x24,0x2E,0x24,0x5B,0x24,0xEA,0x24,0x28,0x25, +0x3F,0x28,0x36,0x28,0x51,0x28,0x68,0x1E,0x9F,0x1F,0x6C,0x20,0x89,0x20,0x4A,0x20, +0xCB,0x1E,0xE6,0x1E,0x38,0x23,0x3D,0x23,0x49,0x23,0x4E,0x23,0x5C,0x00,0x29,0x03, +0x32,0x03,0xA1,0x02,0xB2,0x02,0x63,0x01,0x6A,0x01,0x70,0x01,0x76,0x01,0x7D,0x01, +0x83,0x01,0xB3,0x01,0xC5,0x01,0xD2,0x01,0xE2,0x01,0x28,0x02,0x85,0x02,0x56,0x02, +0x1A,0x02,0x77,0x02,0x95,0x02,0x9B,0x02,0x8E,0x02,0x99,0x00,0xA3,0x00,0xDC,0x05, +0x0B,0x06,0xBA,0x07,0x76,0x07,0xC6,0x07,0x86,0x07,0x99,0x07,0xE6,0x07,0xF2,0x07, +0x1B,0x08,0x07,0x08,0x26,0x08,0x88,0x08,0x98,0x2A,0x18,0x2E,0x29,0x2E,0x55,0x2E, +0x66,0x2E,0x8E,0x2E,0xA1,0x2E,0xAC,0x2E,0xB6,0x2E,0x1D,0x2F,0x3F,0x33,0x37,0x33, +0x3B,0x33,0x15,0x34,0x9E,0x34,0x78,0x35,0x9A,0x35,0xF8,0x35,0xE8,0x35,0xAE,0x31, +0xA3,0x31,0x0A,0x31,0x0D,0x31,0x14,0x30,0x0F,0x30,0x90,0x30,0xBC,0x31,0xB2,0x31, +0x31,0x32,0x41,0x32,0x5E,0x2E,0x94,0x2F,0xA1,0x2F,0xB7,0x2F,0xE6,0x2F,0x08,0x37, +0x0E,0x37,0x15,0x37,0x28,0x37,0x31,0x37,0x30,0x37,0x39,0x37,0x7A,0x37,0x81,0x37, +0x50,0x37,0x8C,0x37,0xE9,0x37,0xD4,0x37,0xE0,0x37,0x4E,0x06,0x00,0x23,0x5E,0x23, +0x56,0x23,0xED,0xB0,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, +0x11,0x4D,0x10,0xCD,0x86,0x07,0x3E,0xC0,0x32,0xCB,0xB1,0xCD,0xB1,0x0A,0xC3,0xF2, +0x0A,0xAF,0xCD,0x49,0x0C,0x21,0xBE,0x0A,0xCD,0x8A,0x0A,0xC3,0xD2,0x0C,0x09,0xE5, +0xBD,0xC3,0x82,0x0C,0xC3,0x68,0x0C,0xC3,0xF7,0x0A,0xE6,0x03,0xFE,0x03,0xD0,0xF5, +0xCD,0x4F,0x0D,0xF1,0x5F,0xCD,0xB7,0x10,0xF5,0xCD,0xD6,0x15,0xE5,0x7B,0xCD,0x11, +0x0B,0xCD,0xEB,0xBD,0xE1,0xCD,0xB6,0x15,0xF1,0xC3,0xD5,0x10,0x3A,0xC8,0xB1,0xFE, +0x01,0xC9,0x3E,0x01,0xCD,0x11,0x0B,0xCD,0x4F,0x0D,0x21,0x00,0x00,0xCD,0x3C,0x0B, +0x2A,0xCA,0xB1,0x2E,0x00,0x54,0x1E,0x01,0x01,0xFF,0x3F,0x75,0xED,0xB0,0xC3,0x3C, +0x0D,0x21,0x3A,0x0B,0xFE,0x01,0x38,0x08,0x21,0x36,0x0B,0x28,0x03,0x21,0x2E,0x0B, +0x11,0xCF,0xB1,0x01,0x08,0x00,0xED,0xB0,0x32,0xC8,0xB1,0xC3,0x76,0x07,0x80,0x40, +0x20,0x10,0x08,0x04,0x02,0x01,0x88,0x44,0x22,0x11,0xAA,0x55,0x7C,0xE6,0x07,0x67, +0x22,0xC9,0xB1,0x18,0x05,0xE6,0xC0,0x32,0xCB,0xB1,0xCD,0x50,0x0B,0xC3,0xC6,0x07, +0x2A,0xC9,0xB1,0x3A,0xCB,0xB1,0xC9,0xCD,0xEC,0x0A,0x01,0x18,0x13,0xD8,0x06,0x27, +0xC8,0x06,0x4F,0xC9,0xD5,0xCD,0xEC,0x0A,0x06,0x04,0x38,0x05,0x06,0x02,0x28,0x01, +0x05,0xC5,0x5C,0x16,0x00,0x62,0xD5,0x54,0x5D,0x29,0x29,0x19,0x29,0x29,0x29,0x29, +0xD1,0x19,0x10,0xFD,0xED,0x5B,0xC9,0xB1,0x19,0x7C,0xE6,0x07,0x67,0x3A,0xCB,0xB1, +0x84,0x67,0xC1,0xD1,0xC9,0x7B,0x95,0x3C,0x87,0x87,0x87,0x5F,0x7A,0x94,0x3C,0x57, +0xCD,0x64,0x0B,0xAF,0x82,0x10,0xFD,0x57,0xC9,0xD5,0xEB,0x21,0xC7,0x00,0xB7,0xED, +0x52,0x7D,0xE6,0x07,0x87,0x87,0x87,0x4F,0x7D,0xE6,0xF8,0x6F,0x54,0x5D,0x29,0x29, +0x19,0x29,0xD1,0xCD,0xEC,0x0A,0x06,0x01,0x38,0x06,0x06,0x03,0x28,0x02,0x06,0x07, +0x78,0xA3,0xF5,0x78,0x0F,0xCB,0x3A,0xCB,0x1B,0x0F,0x38,0xF9,0x19,0xED,0x5B,0xC9, +0xB1,0x19,0x7C,0xE6,0x07,0x67,0x3A,0xCB,0xB1,0x84,0x81,0x67,0xF1,0xE5,0x16,0x00, +0x5F,0x21,0xCF,0xB1,0x19,0x4E,0xEB,0xE1,0xC9,0x2C,0xC0,0x24,0x7C,0xE6,0x07,0xC0, +0x7C,0xD6,0x08,0x67,0xC9,0x7D,0x2D,0xB7,0xC0,0x7C,0x25,0xE6,0x07,0xC0,0x7C,0xC6, +0x08,0x67,0xC9,0x7C,0xC6,0x08,0x67,0xE6,0x38,0xC0,0x7C,0xD6,0x40,0x67,0x7D,0xC6, +0x50,0x6F,0xD0,0x24,0x7C,0xE6,0x07,0xC0,0x7C,0xD6,0x08,0x67,0xC9,0x7C,0xD6,0x08, +0x67,0xE6,0x38,0xFE,0x38,0xC0,0x7C,0xC6,0x40,0x67,0x7D,0xD6,0x50,0x6F,0xD0,0x7C, +0x25,0xE6,0x07,0xC0,0x7C,0xC6,0x08,0x67,0xC9,0xE6,0x03,0x21,0x6B,0x0C,0x28,0x0F, +0xFE,0x02,0x21,0x72,0x0C,0x38,0x08,0x21,0x77,0x0C,0x28,0x03,0x21,0x7D,0x0C,0x3E, +0xC3,0x32,0xCC,0xB1,0x22,0xCD,0xB1,0xC9,0xC3,0xCC,0xB1,0x7E,0xA8,0xB1,0xA9,0xA8, +0x77,0xC9,0x78,0xA1,0xAE,0x77,0xC9,0x79,0x2F,0xB0,0xA6,0x77,0xC9,0x78,0xA1,0xB6, +0x77,0xC9,0x7E,0xC3,0xAC,0x0C,0xC5,0xD5,0xCD,0xC2,0x0C,0x5F,0x06,0x08,0x3A,0xCF, +0xB1,0x4F,0xCB,0x0B,0x17,0xCB,0x09,0x38,0x02,0xCB,0x03,0x10,0xF5,0xD1,0xC1,0xC9, +0xC5,0x47,0x3A,0xCF,0xB1,0x4F,0x78,0xCD,0xAC,0x0C,0xC1,0xC9,0xD5,0x11,0x08,0x00, +0x0F,0xCB,0x12,0xCB,0x09,0x38,0x02,0xCB,0x1A,0x1D,0x20,0xF4,0x7A,0xCD,0xC2,0x0C, +0xD1,0xC9,0x57,0xCD,0xEC,0x0A,0x7A,0xD0,0x0F,0x0F,0xCE,0x00,0x0F,0x9F,0xE6,0x06, +0xAA,0xC9,0x21,0x4D,0x10,0x11,0xD9,0xB1,0x01,0x22,0x00,0xED,0xB0,0xAF,0x32,0xFB, +0xB1,0x21,0x0A,0x0A,0x22,0xD7,0xB1,0xC9,0x2A,0xD7,0xB1,0xC9,0xE6,0x0F,0x3C,0x18, +0x01,0xAF,0x5F,0x78,0xCD,0x0A,0x0D,0x46,0x79,0xCD,0x0A,0x0D,0x4E,0x7B,0xCD,0x2F, +0x0D,0x71,0xEB,0x70,0x3E,0xFF,0x32,0xFC,0xB1,0xC9,0xE6,0x1F,0xC6,0x93,0x6F,0xCE, +0x0D,0x95,0x67,0xC9,0xE6,0x0F,0x3C,0x18,0x01,0xAF,0xCD,0x2F,0x0D,0x1A,0x5E,0xCD, +0x24,0x0D,0x41,0x7B,0x0E,0x00,0x21,0x93,0x0D,0xBE,0xC8,0x23,0x0C,0x18,0xFA,0x5F, +0x16,0x00,0x21,0xEA,0xB1,0x19,0xEB,0x21,0xEF,0xFF,0x19,0xC9,0x21,0xFE,0xB1,0xE5, +0xCD,0x70,0x01,0xCD,0x6D,0x0D,0x11,0x5B,0x0D,0x06,0x81,0xE1,0xC3,0x63,0x01,0x21, +0xFE,0xB1,0xCD,0x70,0x01,0xCD,0x81,0x0D,0xC3,0x86,0x07,0x21,0xFD,0xB1,0x35,0x28, +0x0C,0x2B,0x7E,0xB7,0xC8,0xCD,0x81,0x0D,0xCD,0x99,0x07,0x18,0x0F,0xCD,0x81,0x0D, +0x32,0xFD,0xB1,0xCD,0x99,0x07,0x21,0xFB,0xB1,0x7E,0x2F,0x77,0xAF,0x32,0xFC,0xB1, +0xC9,0x11,0xEA,0xB1,0x3A,0xFB,0xB1,0xB7,0x3A,0xD8,0xB1,0xC8,0x11,0xD9,0xB1,0x3A, +0xD7,0xB1,0xC9,0x14,0x04,0x15,0x1C,0x18,0x1D,0x0C,0x05,0x0D,0x16,0x06,0x17,0x1E, +0x00,0x1F,0x0E,0x07,0x0F,0x12,0x02,0x13,0x1A,0x19,0x1B,0x0A,0x03,0x0B,0x01,0x08, +0x09,0x10,0x11,0x4F,0xCD,0x95,0x0B,0xE5,0x7A,0xCD,0xE8,0x0E,0x30,0x09,0x42,0x71, +0xCD,0xF9,0x0B,0x10,0xFA,0x18,0x10,0xC5,0xD5,0x71,0x15,0x28,0x08,0x4A,0x06,0x00, +0x54,0x5D,0x13,0xED,0xB0,0xD1,0xC1,0xE1,0xCD,0x13,0x0C,0x1D,0x20,0xD9,0xC9,0x78, +0xA9,0x4F,0xCD,0x64,0x0B,0x16,0x08,0xE5,0xC5,0x7E,0xA9,0x77,0xCD,0xF9,0x0B,0x10, +0xF8,0xC1,0xE1,0xCD,0x13,0x0C,0x15,0x20,0xEE,0xC9,0x4F,0xC5,0x11,0xD0,0xFF,0x06, +0x30,0xCD,0x24,0x0E,0xC1,0xCD,0xBA,0x07,0x78,0xB7,0x20,0x0D,0x11,0xB0,0xFF,0xCD, +0x37,0x0E,0x11,0x00,0x00,0x06,0x20,0x18,0x0B,0x11,0x50,0x00,0xCD,0x37,0x0E,0x11, +0xB0,0xFF,0x06,0x20,0x2A,0xC9,0xB1,0x19,0x7C,0xE6,0x07,0x67,0x3A,0xCB,0xB1,0x84, +0x67,0x50,0x1E,0x08,0xC3,0xB7,0x0D,0x2A,0xC9,0xB1,0x19,0xC3,0x3C,0x0B,0xF5,0x78, +0xB7,0x28,0x30,0xE5,0xCD,0x95,0x0B,0xE3,0x2C,0xCD,0x64,0x0B,0x4A,0x7B,0xD6,0x08, +0x47,0x28,0x17,0xD1,0xCD,0xBA,0x07,0xC5,0xE5,0xD5,0xCD,0xA4,0x0E,0xE1,0xCD,0x13, +0x0C,0xEB,0xE1,0xCD,0x13,0x0C,0xC1,0x10,0xEE,0xD5,0xE1,0x51,0x1E,0x08,0xF1,0x4F, +0xC3,0xB7,0x0D,0xE5,0xD5,0xCD,0x95,0x0B,0x4A,0x7B,0xD6,0x08,0x47,0xD1,0xE3,0x28, +0xE9,0xC5,0x6B,0x54,0x1C,0xCD,0x64,0x0B,0xEB,0xCD,0x64,0x0B,0xC1,0xCD,0xBA,0x07, +0xCD,0x2D,0x0C,0xE5,0xEB,0xCD,0x2D,0x0C,0xE5,0xC5,0xCD,0xA4,0x0E,0xC1,0xD1,0xE1, +0x10,0xEE,0x18,0xC6,0x06,0x00,0xCD,0xE6,0x0E,0x38,0x16,0xCD,0xE6,0x0E,0x30,0x25, +0xC5,0xAF,0x95,0x4F,0xED,0xB0,0xC1,0x2F,0x3C,0x81,0x4F,0x7C,0xD6,0x08,0x67,0x18, +0x14,0xCD,0xE6,0x0E,0x38,0x12,0xC5,0xAF,0x93,0x4F,0xED,0xB0,0xC1,0x2F,0x3C,0x81, +0x4F,0x7A,0xD6,0x08,0x57,0xED,0xB0,0xC9,0x41,0x7E,0x12,0xCD,0xF9,0x0B,0xEB,0xCD, +0xF9,0x0B,0xEB,0x10,0xF4,0xC9,0x79,0xEB,0x3D,0x85,0xD0,0x7C,0xE6,0x07,0xEE,0x07, +0xC0,0x37,0xC9,0xCD,0xEC,0x0A,0x06,0x08,0x38,0x31,0x28,0x06,0x01,0x08,0x00,0xED, +0xB0,0xC9,0x4E,0x23,0xE5,0xC5,0x06,0x04,0x21,0xCF,0xB1,0xAF,0xCB,0x01,0x30,0x01, +0xB6,0x23,0x10,0xF8,0x12,0x13,0x06,0x04,0x21,0xCF,0xB1,0xAF,0xCB,0x01,0x30,0x01, +0xB6,0x23,0x10,0xF8,0x12,0x13,0xC1,0xE1,0x10,0xD8,0xC9,0x4E,0x23,0xE5,0xC5,0x06, +0x04,0xAF,0x21,0xCF,0xB1,0xCB,0x01,0x30,0x01,0x7E,0x23,0xCB,0x01,0x30,0x01,0xB6, +0x12,0x13,0x10,0xED,0xC1,0xE1,0x10,0xE3,0xC9,0x4F,0xCD,0x64,0x0B,0xCD,0xEC,0x0A, +0x06,0x08,0x38,0x45,0x28,0x0B,0x7E,0xA9,0x2F,0x12,0x13,0xCD,0x13,0x0C,0x10,0xF6, +0xC9,0xE5,0xD5,0xE5,0x7E,0xA9,0x21,0xCF,0xB1,0x16,0x04,0xF5,0xA6,0x20,0x01,0x37, +0xCB,0x13,0x23,0xF1,0x15,0x20,0xF4,0xE1,0xCD,0xF9,0x0B,0x7E,0xA9,0x21,0xCF,0xB1, +0x16,0x04,0xF5,0xA6,0x20,0x01,0x37,0xCB,0x13,0x23,0xF1,0x15,0x20,0xF4,0xE1,0x73, +0xEB,0x13,0xE1,0xCD,0x13,0x0C,0x10,0xC9,0xC9,0xE5,0xD5,0x16,0x04,0x7E,0xE5,0xA9, +0xF5,0x21,0xCF,0xB1,0xA6,0x20,0x01,0x37,0xCB,0x13,0xF1,0x23,0xA6,0x20,0x01,0x37, +0xCB,0x13,0xE1,0xCD,0xF9,0x0B,0x15,0x20,0xE4,0xE1,0x73,0xEB,0x13,0xE1,0xCD,0x13, +0x0C,0x10,0xD6,0xC9,0xF5,0xE5,0x7A,0x2F,0x67,0x7B,0x2F,0x6F,0x23,0x09,0x23,0xE3, +0xAF,0x93,0xF5,0xCD,0xA9,0x0B,0xE5,0x78,0x2F,0x6F,0x26,0xFF,0x22,0x07,0xB2,0xE1, +0xF1,0xA0,0x47,0x28,0x45,0xE3,0x18,0x03,0x1A,0xB1,0x4F,0x2B,0x7C,0xB5,0x28,0x34, +0x13,0x10,0xF5,0xEB,0xE1,0xF1,0x47,0xCD,0xE8,0xBD,0xCD,0xF9,0x0B,0xE5,0x2A,0x07, +0xB2,0x19,0x30,0x0C,0xEB,0xE1,0x0E,0xFF,0xCD,0xE8,0xBD,0xCD,0xF9,0x0B,0x18,0xED, +0x7B,0xB7,0x28,0x0E,0xAF,0x21,0xCF,0xB1,0xB6,0x23,0x1D,0x20,0xFB,0x4F,0xE1,0xC3, +0xE8,0xBD,0xE1,0xC9,0xE1,0xF1,0x47,0xC3,0xE8,0xBD,0xD1,0xF1,0x47,0x18,0xCE,0xF5, +0xE5,0x7C,0x2F,0x67,0x7D,0x2F,0x6F,0x23,0x09,0x23,0xE3,0xCD,0xA9,0x0B,0xD1,0xF1, +0x47,0xCD,0xE8,0xBD,0xCD,0x2D,0x0C,0x1B,0x7A,0xB3,0x20,0xF5,0xC9,0x04,0x04,0x0A, +0x13,0x0C,0x0B,0x14,0x15,0x0D,0x06,0x1E,0x1F,0x07,0x12,0x19,0x04,0x17,0x04,0x04, +0x0A,0x13,0x0C,0x0B,0x14,0x15,0x0D,0x06,0x1E,0x1F,0x07,0x12,0x19,0x0A,0x07,0xC7, +0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xCD,0x88,0x10,0xAF,0x32,0x95,0xB2,0x21, +0x01,0x00,0xCD,0x3D,0x11,0xC3,0xA3,0x10,0x21,0x91,0x10,0xCD,0x8A,0x0A,0xC3,0x5B, +0x14,0x0F,0xCD,0xBD,0xC3,0x63,0x12,0xC3,0x63,0x12,0xC3,0x4A,0x13,0xC3,0xC0,0x13, +0xC3,0x0C,0x14,0x3E,0x08,0x11,0x0D,0xB2,0x21,0x85,0xB2,0x01,0x0F,0x00,0xED,0xB0, +0x3D,0x20,0xF5,0x32,0x0C,0xB2,0xC9,0x3A,0x0C,0xB2,0x4F,0x06,0x08,0x78,0x3D,0xCD, +0xE8,0x10,0xCD,0xD0,0xBD,0xCD,0xC3,0x12,0x32,0x90,0xB2,0xCD,0xBD,0x12,0x32,0x8F, +0xB2,0x10,0xEA,0x79,0xC9,0x4F,0x06,0x08,0x78,0x3D,0xCD,0xE8,0x10,0xC5,0x2A,0x8F, +0xB2,0xCD,0x3D,0x11,0xC1,0x10,0xF1,0x79,0xE6,0x07,0x21,0x0C,0xB2,0xBE,0xC8,0xC5, +0xD5,0x4E,0x77,0x47,0x79,0xCD,0x2A,0x11,0xCD,0x22,0x11,0x78,0xCD,0x2A,0x11,0xEB, +0xCD,0x22,0x11,0x79,0xD1,0xC1,0xC9,0x3A,0x0C,0xB2,0xF5,0x79,0xCD,0xE8,0x10,0x78, +0x32,0x0C,0xB2,0xCD,0x2A,0x11,0xD5,0x79,0xCD,0x2A,0x11,0xE1,0xCD,0x22,0x11,0xF1, +0x18,0xC6,0xC5,0x01,0x0F,0x00,0xED,0xB0,0xC1,0xC9,0xE6,0x07,0x5F,0x87,0x87,0x87, +0x87,0x93,0xC6,0x0D,0x5F,0xCE,0xB2,0x93,0x57,0x21,0x85,0xB2,0xC9,0xEB,0x3E,0x03, +0x32,0x8D,0xB2,0x7A,0xCD,0xAE,0x12,0x7B,0xCD,0xA9,0x12,0xAF,0xCD,0xA7,0x13,0xCD, +0x7A,0x13,0x21,0x00,0x00,0x11,0x7F,0x7F,0xCD,0x0C,0x12,0xC3,0x51,0x14,0x3D,0x21, +0x89,0xB2,0x86,0x2A,0x85,0xB2,0x67,0x18,0x0E,0x3D,0x21,0x88,0xB2,0x86,0x2A,0x85, +0xB2,0x6F,0x18,0x03,0xCD,0x8A,0x11,0xCD,0xD0,0xBD,0x22,0x85,0xB2,0xC3,0xCD,0xBD, +0x2A,0x85,0xB2,0xCD,0x97,0x11,0x3A,0x8C,0xB2,0xC9,0x3A,0x88,0xB2,0x3D,0x85,0x6F, +0x3A,0x89,0xB2,0x3D,0x84,0x67,0xC9,0x3A,0x88,0xB2,0x95,0x2F,0x3C,0x3C,0x6F,0x3A, +0x89,0xB2,0x94,0x2F,0x3C,0x3C,0x67,0xC9,0xCD,0xD0,0xBD,0x2A,0x85,0xB2,0xCD,0xDA, +0x11,0x22,0x85,0xB2,0xD8,0xE5,0x21,0x8C,0xB2,0x78,0x87,0x3C,0x86,0x77,0xCD,0x56, +0x12,0x3A,0x90,0xB2,0xF5,0xDC,0x3E,0x0E,0xF1,0xD4,0xFA,0x0D,0xE1,0xC9,0xCD,0x8A, +0x11,0xCD,0xDA,0x11,0xF5,0xCD,0x97,0x11,0xF1,0xC9,0x3A,0x8B,0xB2,0xBC,0xF2,0xE6, +0x11,0x3A,0x89,0xB2,0x67,0x2C,0x3A,0x89,0xB2,0x3D,0xBC,0xFA,0xF3,0x11,0x3A,0x8B, +0xB2,0x67,0x2D,0x3A,0x88,0xB2,0x3D,0xBD,0xF2,0x06,0x12,0x3A,0x8A,0xB2,0xBD,0x37, +0xF0,0x6F,0x06,0xFF,0xB7,0xC9,0x3C,0x6F,0x06,0x00,0xB7,0xC9,0xCD,0x57,0x0B,0x7C, +0xCD,0x44,0x12,0x67,0x7A,0xCD,0x44,0x12,0x57,0xBC,0x30,0x02,0x54,0x67,0x7D,0xCD, +0x4D,0x12,0x6F,0x7B,0xCD,0x4D,0x12,0x5F,0xBD,0x30,0x02,0x5D,0x6F,0x22,0x88,0xB2, +0xED,0x53,0x8A,0xB2,0x7C,0xB5,0x20,0x06,0x7A,0xA8,0x20,0x02,0x7B,0xA9,0x32,0x87, +0xB2,0xC3,0x77,0x11,0xB7,0xF2,0x49,0x12,0xAF,0xB8,0xD8,0x78,0xC9,0xB7,0xF2,0x52, +0x12,0xAF,0xB9,0xD8,0x79,0xC9,0x2A,0x88,0xB2,0xED,0x5B,0x8A,0xB2,0x3A,0x87,0xB2, +0xC6,0xFF,0xC9,0x3A,0x8D,0xB2,0xB7,0xC0,0xC5,0xD5,0xE5,0xCD,0xAB,0x11,0xED,0x4B, +0x8F,0xB2,0xCD,0xDF,0x0D,0xE1,0xD1,0xC1,0xC9,0xF5,0x3E,0xFD,0xCD,0x8B,0x12,0xF1, +0xC9,0xF5,0x3E,0x02,0xCD,0x9C,0x12,0xF1,0xC9,0x3E,0xFE,0xF5,0xCD,0xD0,0xBD,0xF1, +0xE5,0x21,0x8D,0xB2,0xA6,0x77,0xE1,0xC3,0xCD,0xBD,0x3E,0x01,0xF5,0xCD,0xD0,0xBD, +0xF1,0xE5,0x21,0x8D,0xB2,0xB6,0x77,0xE1,0xC9,0x21,0x8F,0xB2,0x18,0x03,0x21,0x90, +0xB2,0xF5,0xCD,0xD0,0xBD,0xF1,0xCD,0x86,0x0C,0x77,0xC3,0xCD,0xBD,0x3A,0x8F,0xB2, +0xC3,0xA0,0x0C,0x3A,0x90,0xB2,0xC3,0xA0,0x0C,0x2A,0x8F,0xB2,0x7C,0x65,0x6F,0x22, +0x8F,0xB2,0xC9,0xD5,0x5F,0xCD,0x2A,0x13,0x30,0x09,0x57,0x7B,0x92,0x3F,0x30,0x03, +0x5F,0x18,0x03,0x21,0x00,0x38,0xF5,0x16,0x00,0xEB,0x29,0x29,0x29,0x19,0xF1,0xD1, +0xC9,0xEB,0xCD,0xD3,0x12,0xD0,0xEB,0x01,0x08,0x00,0xED,0xB0,0xC9,0xE5,0x7A,0xB7, +0x16,0x00,0x20,0x19,0x15,0xD5,0x4B,0xEB,0x79,0xCD,0xD3,0x12,0x7C,0xAA,0x20,0x04, +0x7D,0xAB,0x28,0x08,0xC5,0xCD,0xF7,0x12,0xC1,0x0C,0x20,0xEC,0xD1,0xCD,0x2A,0x13, +0xED,0x53,0x94,0xB2,0xD1,0xED,0x53,0x96,0xB2,0xC9,0x2A,0x94,0xB2,0x7C,0x0F,0x7D, +0x2A,0x96,0xB2,0xC9,0x47,0x3A,0x8E,0xB2,0xB7,0xC8,0xC5,0xCD,0xA8,0x11,0x24,0x22, +0x85,0xB2,0x25,0xF1,0xCD,0xD3,0xBD,0xC3,0xCD,0xBD,0xE5,0xCD,0xD3,0x12,0x11,0x98, +0xB2,0xD5,0xCD,0xF3,0x0E,0xD1,0xE1,0xCD,0x64,0x0B,0x0E,0x08,0xC5,0xE5,0xC5,0xD5, +0xEB,0x4E,0xCD,0x76,0x13,0xCD,0xF9,0x0B,0xD1,0x13,0xC1,0x10,0xF1,0xE1,0xCD,0x13, +0x0C,0xC1,0x0D,0x20,0xE7,0xC9,0x2A,0x91,0xB2,0xE9,0x21,0x91,0x13,0xB7,0x28,0x03, +0x21,0x9F,0x13,0x22,0x91,0xB2,0xC9,0x2A,0x91,0xB2,0x11,0x6F,0xEC,0x19,0x7C,0xB5, +0xC9,0x2A,0x8F,0xB2,0x79,0x2F,0xA4,0x47,0x79,0xA5,0xB0,0x0E,0xFF,0x18,0x03,0x3A, +0x8F,0xB2,0x47,0xEB,0xC3,0x6B,0x0C,0x32,0x93,0xB2,0xC9,0xE5,0xD5,0xC5,0xCD,0xD0, +0xBD,0x2A,0x85,0xB2,0xCD,0xD6,0xBD,0xF5,0xCD,0xCD,0xBD,0xF1,0xC1,0xD1,0xE1,0xC9, +0x3A,0x8F,0xB2,0x11,0x98,0xB2,0xE5,0xD5,0xCD,0x49,0x0F,0xCD,0xE3,0x13,0xD1,0xE1, +0x30,0x01,0xC0,0x3A,0x90,0xB2,0xD5,0xCD,0x49,0x0F,0xD1,0x06,0x08,0x1A,0x2F,0x12, +0x13,0x10,0xFA,0x0E,0x00,0x79,0xCD,0xD3,0x12,0x11,0x98,0xB2,0x06,0x08,0x1A,0xBE, +0x20,0x09,0x23,0x13,0x10,0xF8,0x79,0xFE,0x20,0x37,0xC9,0x0C,0x20,0xE7,0xAF,0xC9, +0xF5,0xC5,0xD5,0xE5,0xCD,0xD9,0xBD,0xE1,0xD1,0xC1,0xF1,0xC9,0x4F,0x3A,0x93,0xB2, +0xB7,0x79,0xC2,0x45,0x19,0x21,0xB8,0xB2,0x46,0x78,0xFE,0x0A,0x30,0x28,0xB7,0x20, +0x06,0x79,0xFE,0x20,0xD2,0x34,0x13,0x04,0x70,0x58,0x16,0x00,0x19,0x71,0x3A,0xB9, +0xB2,0x5F,0x21,0xC3,0xB2,0x19,0x19,0x19,0x7E,0xB8,0xD0,0x23,0x5E,0x23,0x56,0x21, +0xB9,0xB2,0x79,0xCD,0x16,0x00,0xAF,0x32,0xB8,0xB2,0xC9,0xCD,0x9A,0x12,0xAF,0x18, +0x05,0xCD,0x89,0x12,0x3E,0xFF,0x32,0x8E,0xB2,0x18,0xEB,0xAF,0x32,0xB8,0xB2,0x21, +0x6B,0x14,0x11,0xC3,0xB2,0x01,0x60,0x00,0xED,0xB0,0xC9,0x00,0xE2,0x14,0x01,0x34, +0x13,0x00,0x9A,0x12,0x00,0x89,0x12,0x01,0xCA,0x0A,0x01,0x45,0x19,0x00,0x51,0x14, +0x00,0xD8,0x14,0x00,0x0A,0x15,0x00,0x0F,0x15,0x00,0x14,0x15,0x00,0x19,0x15,0x00, +0x40,0x15,0x00,0x30,0x15,0x01,0xAE,0x12,0x01,0xA9,0x12,0x00,0x4F,0x15,0x00,0x8E, +0x15,0x00,0x84,0x15,0x00,0x6D,0x15,0x00,0x56,0x15,0x00,0x4B,0x14,0x01,0xE3,0x14, +0x01,0x49,0x0C,0x00,0xC9,0x12,0x09,0x04,0x15,0x04,0xF8,0x14,0x00,0xE2,0x14,0x03, +0xE8,0x14,0x02,0xF1,0x14,0x00,0x2A,0x15,0x02,0x38,0x15,0x21,0xC3,0xB2,0xC9,0x87, +0x00,0x00,0x5A,0x00,0x00,0x0B,0x14,0x00,0xDD,0xE5,0x21,0xCF,0x14,0xCD,0x9F,0x1F, +0xDD,0xE1,0xC9,0x0F,0x9F,0xC3,0x7A,0x13,0x23,0x7E,0x23,0x46,0x23,0x4E,0xC3,0xEC, +0x0C,0x23,0x46,0x23,0x4E,0xC3,0xF1,0x0C,0x23,0x56,0x23,0x7E,0x23,0x5E,0x23,0x6E, +0x67,0xC3,0x0C,0x12,0x23,0x7E,0x23,0xC3,0xF1,0x12,0x11,0x00,0xFF,0x18,0x0D,0x11, +0x00,0x01,0x18,0x08,0x11,0x01,0x00,0x18,0x03,0x11,0xFF,0x00,0xD5,0xCD,0xA8,0x11, +0xD1,0x7D,0x83,0x6F,0x7C,0x82,0x67,0xC3,0x7A,0x11,0x2A,0x88,0xB2,0xC3,0x77,0x11, +0xCD,0xA8,0x11,0x3A,0x89,0xB2,0x18,0xEE,0x23,0x56,0x23,0x5E,0xEB,0xC3,0x74,0x11, +0xCD,0xD0,0xBD,0x2A,0x88,0xB2,0x22,0x85,0xB2,0xED,0x5B,0x8A,0xB2,0x18,0x48,0xCD, +0xA8,0x11,0x54,0x5D,0x18,0x41,0xCD,0x84,0x15,0x2A,0x88,0xB2,0xED,0x5B,0x8A,0xB2, +0x3A,0x85,0xB2,0x6F,0x2C,0xBB,0x3A,0x90,0xB2,0xDC,0xB3,0x0D,0xC9,0xCD,0x8E,0x15, +0x2A,0x88,0xB2,0x3A,0x8B,0xB2,0x57,0x3A,0x85,0xB2,0x3D,0x5F,0xBD,0x3A,0x90,0xB2, +0xD4,0xB3,0x0D,0xC9,0xCD,0xA8,0x11,0x5D,0x3A,0x8B,0xB2,0x57,0x18,0x09,0xCD,0xA8, +0x11,0xEB,0x6B,0x3A,0x89,0xB2,0x67,0x3A,0x90,0xB2,0xCD,0xB3,0x0D,0xCD,0xCD,0xBD, +0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, +0xCD,0xDF,0x15,0x21,0x01,0x00,0x7C,0xCD,0xFD,0x17,0x7D,0xCD,0xF6,0x17,0x21,0x00, +0x00,0x54,0x5D,0xCD,0x04,0x16,0x11,0x00,0x80,0x21,0xFF,0x7F,0xE5,0xD5,0xCD,0x34, +0x17,0xE1,0xD1,0xC3,0x79,0x17,0xCD,0x0A,0x18,0x67,0xCD,0x04,0x18,0x6F,0xC9,0x21, +0xE5,0x15,0xC3,0x8A,0x0A,0x09,0xDC,0xBD,0xC3,0x16,0x18,0xC3,0x2A,0x18,0xC3,0x3C, +0x18,0xCD,0x57,0x16,0xED,0x53,0x2C,0xB3,0x22,0x2E,0xB3,0xC9,0xED,0x5B,0x2C,0xB3, +0x2A,0x2E,0xB3,0xC9,0xED,0x53,0x28,0xB3,0x22,0x2A,0xB3,0x11,0x00,0x00,0x62,0x6B, +0x18,0xE2,0xED,0x5B,0x28,0xB3,0x2A,0x2A,0xB3,0xC9,0xCD,0xFC,0x15,0xCD,0xF4,0x15, +0xE5,0xCD,0xEC,0x0A,0x2F,0xC6,0x01,0xCE,0x02,0x26,0x00,0x6F,0xCB,0x7A,0x28,0x03, +0xEB,0x19,0xEB,0x2F,0xA3,0x5F,0x7D,0x2A,0x28,0xB3,0x19,0x0F,0xDC,0x74,0x17,0x0F, +0xDC,0x74,0x17,0xD1,0xE5,0x7A,0x07,0x30,0x01,0x13,0x7B,0xE6,0xFE,0x5F,0x2A,0x2A, +0xB3,0x19,0xCD,0x74,0x17,0xD1,0xC9,0xE5,0x2A,0x2C,0xB3,0x19,0xD1,0xE5,0x2A,0x2E, +0xB3,0x19,0xD1,0xC9,0xD5,0xE5,0x2A,0x30,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0xAC,0x16, +0x2A,0x32,0xB3,0xB7,0xED,0x52,0xFA,0xAC,0x16,0xD1,0x2A,0x34,0xB3,0xB7,0xED,0x52, +0xFA,0xAD,0x16,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x52,0xFA,0x91,0x16,0xED,0x5B,0x36, +0xB3,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x42,0xF2,0xAD,0x16,0x2A,0x34,0xB3,0xB7,0xED, +0x42,0xF2,0xA8,0x16,0xED,0x4B,0x34,0xB3,0xEB,0xD1,0x37,0xC9,0xE1,0xD1,0xB7,0xC9, +0xE5,0xD5,0xEB,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0xF8,0x16,0x2A,0x34,0xB3, +0xB7,0xED,0x52,0xFA,0xF8,0x16,0xD1,0x2A,0x32,0xB3,0xB7,0xED,0x52,0xFA,0xF9,0x16, +0x2A,0x30,0xB3,0x2B,0xB7,0xED,0x52,0xFA,0xDE,0x16,0xED,0x5B,0x30,0xB3,0x2A,0x30, +0xB3,0x2B,0xB7,0xED,0x42,0xF2,0xF9,0x16,0x2A,0x32,0xB3,0xB7,0xED,0x42,0xF2,0xF5, +0x16,0xED,0x4B,0x32,0xB3,0xE1,0x37,0xC9,0xD1,0xE1,0xB7,0xC9,0xCD,0x1D,0x16,0xE5, +0x2A,0x30,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0x2D,0x17,0x2A,0x32,0xB3,0xB7,0xED,0x52, +0xFA,0x2D,0x17,0xE1,0xD5,0xEB,0x2A,0x36,0xB3,0x2B,0xB7,0xED,0x52,0xF2,0x30,0x17, +0x2A,0x34,0xB3,0xB7,0xED,0x52,0xFA,0x30,0x17,0xEB,0xD1,0x37,0xC9,0xE1,0xB7,0xC9, +0xEB,0xD1,0xB7,0xC9,0xE5,0xCD,0x60,0x17,0xD1,0xE5,0xCD,0x60,0x17,0xD1,0x7B,0x95, +0x7A,0x9C,0x38,0x01,0xEB,0x7B,0xE6,0xF8,0x5F,0x7D,0xF6,0x07,0x6F,0xCD,0xEC,0x0A, +0x3D,0xFC,0x70,0x17,0x3D,0xFC,0x70,0x17,0xED,0x53,0x30,0xB3,0x22,0x32,0xB3,0xC9, +0x7A,0xB7,0x21,0x00,0x00,0xF8,0x21,0x7F,0x02,0x7B,0x95,0x7A,0x9C,0xD0,0xEB,0xC9, +0xCB,0x2A,0xCB,0x1B,0xCB,0x2C,0xCB,0x1D,0xC9,0xE5,0xCD,0x92,0x17,0xD1,0xE5,0xCD, +0x92,0x17,0xD1,0x7D,0x93,0x7C,0x9A,0x38,0x01,0xEB,0xED,0x53,0x34,0xB3,0x22,0x36, +0xB3,0xC9,0x7A,0xB7,0x21,0x00,0x00,0xF8,0xCB,0x3A,0xCB,0x1B,0x21,0xC7,0x00,0x7B, +0x95,0x7A,0x9C,0xD0,0xEB,0xC9,0xED,0x5B,0x30,0xB3,0x2A,0x32,0xB3,0xCD,0xEC,0x0A, +0x3D,0xFC,0xB6,0x17,0x3D,0xF0,0x29,0x23,0xEB,0x29,0xEB,0xC9,0xED,0x5B,0x34,0xB3, +0x2A,0x36,0xB3,0x18,0xF1,0xCD,0xA6,0x17,0xB7,0xED,0x52,0x23,0xCD,0x74,0x17,0xCD, +0x74,0x17,0xCB,0x3D,0x45,0xED,0x5B,0x36,0xB3,0x2A,0x34,0xB3,0xE5,0xB7,0xED,0x52, +0x23,0x4D,0xED,0x5B,0x30,0xB3,0xE1,0xC5,0xCD,0xA9,0x0B,0xD1,0x3A,0x39,0xB3,0x4F, +0xCD,0xB7,0x0D,0xC3,0x0B,0x16,0xCD,0x86,0x0C,0x32,0x38,0xB3,0xC9,0xCD,0x86,0x0C, +0x32,0x39,0xB3,0xC9,0x3A,0x38,0xB3,0xC3,0xA0,0x0C,0x3A,0x39,0xB3,0xC3,0xA0,0x0C, +0xCD,0x57,0x16,0xC3,0xDC,0xBD,0xCD,0xFC,0x16,0xD0,0xCD,0xA9,0x0B,0x3A,0x38,0xB3, +0x47,0xC3,0xE8,0xBD,0xCD,0x57,0x16,0xC3,0xDF,0xBD,0xCD,0xFC,0x16,0xD2,0x0A,0x18, +0xCD,0xA9,0x0B,0xC3,0xE5,0xBD,0xCD,0x57,0x16,0xC3,0xE2,0xBD,0xE5,0xD5,0xCD,0x1A, +0x16,0xED,0x53,0x42,0xB3,0x22,0x44,0xB3,0xD1,0xE1,0xCD,0x1D,0x16,0xE5,0x2A,0x42, +0xB3,0xB7,0xED,0x52,0x44,0x4D,0xFA,0x69,0x18,0x2A,0x42,0xB3,0xEB,0x22,0x42,0xB3, +0x2A,0x44,0xB3,0xE3,0x22,0x44,0xB3,0x18,0x08,0x21,0x00,0x00,0xB7,0xED,0x42,0x44, +0x4D,0xD1,0x2A,0x44,0xB3,0xB7,0xED,0x52,0xEB,0xF2,0x8E,0x18,0x21,0x00,0x00,0xB7, +0xED,0x52,0x54,0x5D,0xB7,0xED,0x42,0x21,0x01,0x00,0x30,0x27,0x18,0x0A,0x62,0x6B, +0xB7,0xED,0x42,0x21,0xFF,0xFF,0x30,0x09,0x22,0x3A,0xB3,0x60,0x69,0x3E,0xFF,0x18, +0x19,0xE5,0x2A,0x42,0xB3,0x09,0x22,0x42,0xB3,0x2A,0x44,0xB3,0xB7,0xED,0x52,0x22, +0x44,0xB3,0xE1,0x22,0x3A,0xB3,0x60,0x69,0xEB,0xAF,0x32,0x46,0xB3,0x13,0xED,0x53, +0x40,0xB3,0x23,0xCD,0x8C,0x37,0x22,0x3C,0xB3,0xED,0x53,0x3E,0xB3,0xED,0x4B,0x40, +0xB3,0x50,0x59,0xCB,0x3A,0xCB,0x1B,0xC5,0xED,0x4B,0x3C,0xB3,0x2A,0x3E,0xB3,0x19, +0xEB,0x2A,0x40,0xB3,0xB7,0xED,0x52,0x30,0x07,0x19,0xEB,0xB7,0xED,0x52,0xEB,0x03, +0xD5,0x3A,0x46,0xB3,0xB7,0x28,0x23,0x2A,0x42,0xB3,0x54,0x5D,0x09,0x22,0x42,0xB3, +0x44,0x4D,0x0B,0x2A,0x44,0xB3,0xE5,0xCD,0xB0,0x16,0x3A,0x38,0xB3,0xDC,0xC4,0x0F, +0xD1,0x2A,0x3A,0xB3,0x19,0x22,0x44,0xB3,0x18,0x23,0x2A,0x44,0xB3,0x54,0x5D,0x09, +0x22,0x44,0xB3,0x44,0x4D,0x0B,0xEB,0xED,0x5B,0x42,0xB3,0xD5,0xCD,0x64,0x16,0x3A, +0x38,0xB3,0xDC,0x2F,0x10,0xD1,0x2A,0x3A,0xB3,0x19,0x22,0x42,0xB3,0xD1,0xC1,0x0B, +0x78,0xB1,0x20,0x93,0xC9,0xDD,0xE5,0xCD,0xD3,0x12,0x11,0x3A,0xB3,0xD5,0xDD,0xE1, +0x01,0x08,0x00,0xED,0xB0,0xCD,0x1A,0x16,0xCD,0xFF,0x16,0x30,0x4C,0xE5,0xD5,0x01, +0x07,0x00,0xEB,0x09,0xEB,0xB7,0xED,0x42,0xCD,0xFF,0x16,0xD1,0xE1,0x30,0x3A,0xCD, +0xA9,0x0B,0x16,0x08,0xE5,0x1E,0x08,0xCD,0xCF,0x19,0xCB,0x09,0xDC,0xF9,0x0B,0xDD, +0xCB,0x00,0x06,0x1D,0x20,0xF1,0xE1,0xCD,0x13,0x0C,0xDD,0x23,0x15,0x20,0xE5,0xDD, +0xE1,0xCD,0xFC,0x15,0xEB,0xCD,0xEC,0x0A,0x01,0x08,0x00,0xFE,0x01,0x28,0x04,0x30, +0x03,0x09,0x09,0x09,0x09,0xEB,0xC3,0xF4,0x15,0x0E,0x08,0xD5,0x06,0x08,0xCD,0xFF, +0x16,0x30,0x0C,0xE5,0xD5,0xC5,0xCD,0xA9,0x0B,0xCD,0xCF,0x19,0xC1,0xD1,0xE1,0xDD, +0xCB,0x00,0x06,0x13,0x10,0xE8,0xD1,0x2B,0xDD,0x23,0x0D,0x20,0xDE,0x18,0xC0,0xDD, +0xCB,0x00,0x7E,0x3A,0x38,0xB3,0x20,0x03,0x3A,0x39,0xB3,0x47,0xC3,0xE8,0xBD,0xC7, +0x21,0x02,0x1E,0xCD,0x6D,0x1C,0xAF,0x32,0x0B,0xB5,0x67,0x6F,0x22,0xE7,0xB4,0x21, +0x3C,0xB4,0x11,0xB0,0xFF,0x22,0x47,0xB5,0x19,0x22,0x45,0xB5,0x19,0x22,0x43,0xB5, +0x19,0x22,0x41,0xB5,0xEB,0x21,0x69,0x1D,0x01,0xFA,0x00,0xED,0xB0,0x06,0x0A,0x21, +0xEB,0xB4,0x36,0x00,0x23,0x10,0xFB,0x06,0x0A,0x36,0xFF,0x23,0x10,0xFB,0xCD,0xED, +0x1C,0xCD,0x75,0x1A,0x11,0x46,0xB4,0x21,0x98,0x00,0xCD,0x81,0x1A,0x21,0x36,0x1A, +0xCD,0x8A,0x0A,0xC3,0x82,0x1C,0x03,0xEE,0xBD,0xC3,0x2F,0x1C,0xCD,0x42,0x1A,0x30, +0xFB,0xC9,0xE5,0x21,0xE0,0xB4,0x7E,0x36,0xFF,0xBE,0x38,0x27,0x2A,0xDE,0xB4,0x7C, +0xB7,0x20,0x11,0xCD,0x5C,0x1B,0x30,0x1B,0xFE,0x80,0x38,0x17,0xFE,0xA0,0x3F,0x38, +0x12,0x67,0x2E,0x00,0xD5,0xCD,0x2E,0x1B,0x38,0x02,0x26,0x00,0x2C,0x22,0xDE,0xB4, +0xD1,0x30,0xE0,0xE1,0xC9,0x3E,0xFF,0x32,0xE0,0xB4,0xC9,0xCD,0x81,0x1A,0x3F,0xFB, +0xC9,0xF3,0x7D,0xD6,0x31,0x7C,0xDE,0x00,0xD8,0x19,0x22,0xE3,0xB4,0xEB,0x22,0xE1, +0xB4,0x01,0x30,0x0A,0x36,0x01,0x23,0x71,0x23,0x0C,0x10,0xF8,0xEB,0x21,0xB3,0x1A, +0x0E,0x0A,0xED,0xB0,0xEB,0x06,0x13,0xAF,0x77,0x23,0x10,0xFC,0x22,0xE5,0xB4,0x32, +0xDF,0xB4,0xC9,0x01,0x2E,0x01,0x0D,0x05,0x52,0x55,0x4E,0x22,0x0D,0xF3,0x78,0xCD, +0x3E,0x1B,0x30,0x1F,0xC5,0xD5,0xE5,0xCD,0xE5,0x1A,0x3F,0xE1,0xD1,0xC1,0x30,0x13, +0x1B,0x79,0x0C,0x12,0x13,0xE7,0x23,0x0D,0x20,0xF9,0x21,0xDF,0xB4,0x78,0xAE,0x20, +0x01,0x77,0x37,0xFB,0xC9,0x06,0x00,0x60,0x6F,0x79,0x95,0xC8,0x30,0x0F,0x7D,0x69, +0x4F,0x19,0xEB,0x09,0xCD,0x22,0x1B,0x28,0x23,0xED,0xB0,0x18,0x1F,0x4F,0x19,0xE5, +0x2A,0xE5,0xB4,0x09,0xEB,0x2A,0xE3,0xB4,0x7D,0x93,0x7C,0x9A,0xE1,0xD8,0xCD,0x22, +0x1B,0x2A,0xE5,0xB4,0x28,0x06,0xD5,0x1B,0x2B,0xED,0xB8,0xD1,0xED,0x53,0xE5,0xB4, +0xB7,0xC9,0x3A,0xE5,0xB4,0x95,0x4F,0x3A,0xE6,0xB4,0x9C,0x47,0xB1,0xC9,0xCD,0x3E, +0x1B,0xD0,0xBD,0xC8,0x3F,0xD0,0xE5,0x26,0x00,0x19,0x7E,0xE1,0x37,0xC9,0xE6,0x7F, +0xFE,0x20,0xD0,0xE5,0x2A,0xE1,0xB4,0x11,0x00,0x00,0x3C,0x19,0x5E,0x23,0x3D,0x20, +0xFA,0x7B,0xEB,0xE1,0x37,0xC9,0xCD,0x5C,0x1B,0x30,0xFB,0xC9,0xE5,0xC5,0xCD,0x15, +0x1D,0x30,0x3A,0x79,0xFE,0xEF,0x28,0x34,0xE6,0x0F,0x87,0x87,0x87,0x3D,0x3C,0xCB, +0x08,0x30,0xFB,0xCD,0xA0,0x1B,0x21,0xE8,0xB4,0xCB,0x7E,0x28,0x0A,0xFE,0x61,0x38, +0x06,0xFE,0x7B,0x30,0x02,0xC6,0xE0,0xFE,0xFF,0x28,0xD3,0xFE,0xFE,0x21,0xE7,0xB4, +0x28,0x05,0xFE,0xFD,0x23,0x20,0x05,0x7E,0x2F,0x77,0x18,0xC2,0x37,0xC1,0xE1,0xC9, +0xCB,0x11,0xDA,0x48,0x1D,0x47,0x3A,0xE7,0xB4,0xB1,0xE6,0x40,0x78,0xC2,0x43,0x1D, +0xC3,0x3E,0x1D,0x2A,0xE7,0xB4,0xC9,0x11,0xFF,0xB4,0x21,0xF5,0xB4,0xCD,0x46,0x08, +0x3A,0x01,0xB5,0xE6,0xA0,0x4F,0x21,0xED,0xB4,0xB6,0x77,0x21,0xFF,0xB4,0x11,0xEB, +0xB4,0x06,0x00,0x1A,0xAE,0xA6,0xC4,0x48,0x1C,0x7E,0x12,0x23,0x13,0x0C,0x79,0xE6, +0x0F,0xFE,0x0A,0x20,0xEE,0x79,0xE6,0xA0,0xCB,0x71,0x4F,0xC4,0xEE,0xBD,0x78,0xB7, +0xC0,0x21,0x09,0xB5,0x35,0xC0,0x2A,0x0A,0xB5,0xEB,0x42,0x16,0x00,0x21,0xEB,0xB4, +0x19,0x7E,0x2A,0x47,0xB5,0x19,0xA6,0xA0,0xC8,0x21,0x09,0xB5,0x34,0x3A,0x40,0xB5, +0xB7,0xC0,0x79,0xB3,0x4F,0x3A,0xE9,0xB4,0x32,0x09,0xB5,0xCD,0xFE,0x1C,0x79,0xE6, +0x0F,0x6F,0x60,0x22,0x0A,0xB5,0xFE,0x08,0xC0,0xCB,0x60,0xC0,0xCB,0xF1,0xC9,0x21, +0xF3,0xB4,0xCB,0x56,0xC8,0x79,0xEE,0xA0,0x20,0x56,0xC5,0x23,0x06,0x0A,0x8E,0x2B, +0x10,0xFC,0xC1,0xFE,0xA4,0x20,0x49,0xC7,0xE5,0xD5,0x5F,0x2F,0x3C,0xA3,0x47,0x3A, +0xEA,0xB4,0xCD,0x18,0x1C,0x78,0xAB,0x20,0xF1,0xD1,0xE1,0xC9,0x3A,0xF1,0xB4,0xE6, +0x7F,0x6F,0x3A,0xF4,0xB4,0xE6,0x7F,0x67,0xC9,0x2A,0xE9,0xB4,0xC9,0x22,0xE9,0xB4, +0xC9,0xCD,0x82,0x1C,0x21,0x0D,0xB5,0x06,0x40,0xCD,0xD2,0x01,0x3E,0xFF,0x32,0x0C, +0xB5,0xC9,0xC5,0xD5,0x21,0x0C,0xB5,0x36,0x00,0x23,0xCD,0x85,0x02,0xD1,0xC1,0xC9, +0x21,0x0C,0xB5,0x7E,0x36,0x00,0xBE,0xC8,0xC5,0xD5,0x23,0xCD,0xE2,0x01,0x0E,0xEF, +0xCD,0xFE,0x1C,0xD1,0xC1,0xC9,0x2A,0x47,0xB5,0x18,0x1D,0xFE,0x50,0xD0,0x2A,0x47, +0xB5,0xCD,0xCD,0x1C,0x4F,0x2F,0xA6,0x77,0x79,0xA0,0xB6,0x77,0xC9,0xF5,0x3A,0xED, +0xB4,0xE6,0xA0,0x4F,0xF1,0x21,0xEB,0xB4,0xCD,0xCD,0x1C,0xA6,0xC9,0xD5,0xF5,0xE6, +0xF8,0x0F,0x0F,0x0F,0x5F,0x16,0x00,0x19,0xF1,0xE5,0x21,0xE5,0x1C,0xE6,0x07,0x5F, +0x19,0x7E,0xE1,0xD1,0xC9,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0xF3,0x21,0x3C, +0xB5,0x36,0x15,0x23,0xAF,0x77,0x23,0x36,0x01,0x23,0x77,0x23,0x77,0xC9,0x21,0x3C, +0xB5,0xB7,0x35,0x28,0x0E,0xCD,0x2C,0x1D,0x71,0x23,0x70,0x21,0x40,0xB5,0x34,0x21, +0x3E,0xB5,0x37,0x34,0xC9,0x21,0x3E,0xB5,0xB7,0x35,0x28,0x0E,0xCD,0x2C,0x1D,0x4E, +0x23,0x46,0x21,0x40,0xB5,0x35,0x21,0x3C,0xB5,0x37,0x34,0xC9,0x23,0x34,0x7E,0xFE, +0x14,0x20,0x02,0xAF,0x77,0x87,0xCE,0x14,0x6F,0xCE,0xB5,0x95,0x67,0xC9,0x2A,0x41, +0xB5,0x18,0x08,0x2A,0x43,0xB5,0x18,0x03,0x2A,0x45,0xB5,0x85,0x6F,0x8C,0x95,0x67, +0x7E,0xC9,0x2A,0x41,0xB5,0x18,0x08,0x2A,0x43,0xB5,0x18,0x03,0x2A,0x45,0xB5,0xFE, +0x50,0xD0,0x85,0x6F,0x8C,0x95,0x67,0x70,0xC9,0xF0,0xF3,0xF1,0x89,0x86,0x83,0x8B, +0x8A,0xF2,0xE0,0x87,0x88,0x85,0x81,0x82,0x80,0x10,0x5B,0x0D,0x5D,0x84,0xFF,0x5C, +0xFF,0x5E,0x2D,0x40,0x70,0x3B,0x3A,0x2F,0x2E,0x30,0x39,0x6F,0x69,0x6C,0x6B,0x6D, +0x2C,0x38,0x37,0x75,0x79,0x68,0x6A,0x6E,0x20,0x36,0x35,0x72,0x74,0x67,0x66,0x62, +0x76,0x34,0x33,0x65,0x77,0x73,0x64,0x63,0x78,0x31,0x32,0xFC,0x71,0x09,0x61,0xFD, +0x7A,0x0B,0x0A,0x08,0x09,0x58,0x5A,0xFF,0x7F,0xF4,0xF7,0xF5,0x89,0x86,0x83,0x8B, +0x8A,0xF6,0xE0,0x87,0x88,0x85,0x81,0x82,0x80,0x10,0x7B,0x0D,0x7D,0x84,0xFF,0x60, +0xFF,0xA3,0x3D,0x7C,0x50,0x2B,0x2A,0x3F,0x3E,0x5F,0x29,0x4F,0x49,0x4C,0x4B,0x4D, +0x3C,0x28,0x27,0x55,0x59,0x48,0x4A,0x4E,0x20,0x26,0x25,0x52,0x54,0x47,0x46,0x42, +0x56,0x24,0x23,0x45,0x57,0x53,0x44,0x43,0x58,0x21,0x22,0xFC,0x51,0x09,0x41,0xFD, +0x5A,0x0B,0x0A,0x08,0x09,0x58,0x5A,0xFF,0x7F,0xF8,0xFB,0xF9,0x89,0x86,0x83,0x8C, +0x8A,0xFA,0xE0,0x87,0x88,0x85,0x81,0x82,0x80,0x10,0x1B,0x0D,0x1D,0x84,0xFF,0x1C, +0xFF,0x1E,0xFF,0x00,0x10,0xFF,0xFF,0xFF,0xFF,0x1F,0xFF,0x0F,0x09,0x0C,0x0B,0x0D, +0xFF,0xFF,0xFF,0x15,0x19,0x08,0x0A,0x0E,0xFF,0xFF,0xFF,0x12,0x14,0x07,0x06,0x02, +0x16,0xFF,0xFF,0x05,0x17,0x13,0x04,0x03,0x18,0xFF,0x7E,0xFC,0x11,0xE1,0x01,0xFE, +0x1A,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x07,0x03,0x4B,0xFF,0xFF,0xFF,0xFF, +0xFF,0xAB,0x8F,0xC7,0xC7,0xC7,0xC7,0xC7,0xAF,0xF3,0x32,0x52,0xB5,0x32,0x51,0xB5, +0x21,0x55,0xB5,0x11,0x03,0x1F,0x06,0x81,0xCD,0xD2,0x01,0x3E,0x3F,0x32,0x19,0xB6, +0x21,0x5C,0xB5,0x01,0x3D,0x00,0x11,0x08,0x01,0xAF,0x77,0x23,0x72,0x23,0x73,0x09, +0x3C,0xEB,0x29,0xEB,0xFE,0x03,0x20,0xF2,0x0E,0x07,0xDD,0xE5,0xE5,0x21,0x1D,0xB5, +0x41,0x11,0x3F,0x00,0x19,0xCB,0x38,0x30,0xF8,0xC5,0xE5,0xDD,0xE1,0xEB,0xCD,0x7F, +0x22,0x13,0x13,0x13,0x6B,0x62,0x13,0x01,0x3B,0x00,0x36,0x00,0xED,0xB0,0xDD,0x36, +0x1C,0x04,0xC1,0xEB,0x04,0x10,0xDE,0xE1,0xDD,0xE1,0xC9,0x21,0x52,0xB5,0xF3,0x7E, +0x36,0x00,0xFB,0xB7,0xC8,0x2B,0x77,0x2E,0x03,0x0E,0x00,0x3E,0x07,0x85,0xCD,0x26, +0x08,0x2D,0x20,0xF7,0x37,0xC9,0x3A,0x51,0xB5,0xB7,0xC8,0xDD,0x21,0x1D,0xB5,0x11, +0x3F,0x00,0xDD,0x19,0xCB,0x3F,0xF5,0xDD,0x7E,0x0F,0xDC,0x76,0x22,0xF1,0x20,0xF2, +0xC3,0x1E,0x20,0xDD,0xE5,0x21,0x50,0xB5,0xE5,0xAF,0x77,0x23,0x46,0xC5,0x23,0xB6, +0x28,0x22,0xDD,0x21,0x1D,0xB5,0x01,0x3F,0x00,0xDD,0x09,0xCB,0x3F,0x30,0xFA,0xF5, +0xDD,0x7E,0x04,0x1F,0xDC,0xC2,0x22,0xDD,0x7E,0x07,0x1F,0xDC,0xB6,0x21,0xDC,0xA8, +0x20,0xF1,0x20,0xE2,0xC1,0xE1,0x7E,0xB7,0x28,0x20,0x4F,0x23,0x7E,0x70,0xA8,0x47, +0x23,0xB6,0x77,0x78,0x2F,0xA1,0x28,0x12,0xDD,0x21,0x1D,0xB5,0x11,0x3F,0x00,0xDD, +0x19,0xCB,0x3F,0xF5,0xDC,0x7F,0x22,0xF1,0x20,0xF5,0xAF,0x32,0x54,0xB5,0xDD,0xE1, +0xC9,0x21,0x52,0xB5,0x7E,0xB7,0xC8,0x23,0x35,0xC0,0x34,0x23,0x7E,0xB7,0xC0,0x2B, +0x36,0x03,0x2B,0x46,0x21,0x22,0xB5,0x11,0x3F,0x00,0xAF,0x19,0xCB,0x38,0x30,0xFB, +0x35,0x20,0x05,0x2B,0xCB,0x06,0x8A,0x23,0x23,0x35,0x20,0x05,0x23,0xCB,0x06,0x8A, +0x2B,0x2B,0x04,0x10,0xE6,0xB7,0xC8,0x21,0x54,0xB5,0x77,0x23,0xC3,0xE2,0x01,0xCD, +0xE6,0x1E,0x7E,0xE6,0x07,0x37,0xC8,0x4F,0xB6,0xFC,0x9A,0x1E,0x41,0xDD,0x21,0x1D, +0xB5,0x11,0x3F,0x00,0xAF,0xDD,0x19,0xCB,0x38,0x30,0xFA,0xDD,0x72,0x1E,0xDD,0xBE, +0x1C,0x3F,0x9F,0x04,0x10,0xEF,0xB7,0xC0,0x41,0x7E,0x1F,0x1F,0x1F,0xB0,0xE6,0x0F, +0x4F,0x23,0xDD,0x21,0x1D,0xB5,0x11,0x3F,0x00,0xDD,0x19,0xCB,0x38,0x30,0xFA,0xE5, +0xC5,0xDD,0x7E,0x1B,0xDD,0x34,0x1B,0xDD,0x35,0x1C,0xEB,0xCD,0x3A,0x20,0xE5,0xEB, +0xDD,0x7E,0x01,0x2F,0xA1,0x12,0x13,0x7E,0x23,0x87,0x87,0x87,0x87,0x47,0x7E,0x23, +0xE6,0x0F,0xB0,0x12,0x13,0x01,0x06,0x00,0xED,0xB0,0xE1,0xF3,0xDD,0x7E,0x1A,0xDD, +0x34,0x1A,0xDD,0xB6,0x03,0xFB,0xCC,0xBD,0x20,0xC1,0xE1,0x04,0x10,0xB8,0xE5,0x21, +0x51,0xB5,0x7E,0xB7,0x28,0x11,0x36,0x00,0xF3,0x23,0x46,0xB0,0x77,0x78,0xB7,0x20, +0x05,0x23,0x36,0x03,0x23,0x77,0xFB,0xE1,0x37,0xC9,0xE6,0x03,0x87,0x87,0x87,0xC6, +0x1F,0xDD,0xE5,0xE1,0x85,0x6F,0x8C,0x95,0x67,0xC9,0x6F,0xCD,0xE6,0x1E,0x7D,0xE6, +0x07,0xC8,0xDD,0x21,0x1D,0xB5,0x11,0x3F,0x00,0xDD,0x19,0xCB,0x3F,0x30,0xFA,0xF5, +0xDD,0xCB,0x03,0x5E,0xC4,0xB7,0x20,0xF1,0x20,0xEC,0x18,0xB2,0xE6,0x07,0xC8,0x21, +0x20,0xB5,0x11,0x3F,0x00,0x19,0x1F,0x30,0xFC,0xF3,0x7E,0x87,0x87,0x87,0x11,0x19, +0x00,0x19,0xB6,0x23,0x23,0x36,0x00,0xFB,0xC9,0xE6,0x07,0xC8,0xEB,0x21,0x39,0xB5, +0x01,0x3F,0x00,0x09,0x1F,0x30,0xFC,0xAF,0xF3,0xBE,0x23,0x73,0x23,0x20,0x03,0x72, +0xFB,0xC9,0x77,0xFB,0xEB,0xC3,0xE2,0x01,0xDD,0x7E,0x1A,0xB7,0xCA,0x7F,0x22,0xDD, +0x7E,0x01,0x21,0x50,0xB5,0xB6,0x77,0xDD,0x7E,0x19,0xCD,0x3A,0x20,0x7E,0xB7,0x28, +0x0C,0xCB,0x5F,0x20,0x53,0xE5,0x36,0x00,0xCD,0x1F,0x21,0xE1,0xD0,0xDD,0x36,0x03, +0x10,0x23,0x7E,0xE6,0xF0,0xF5,0xAE,0x5F,0x23,0x4E,0x23,0x56,0x23,0xB2,0xB1,0x28, +0x08,0xE5,0xCD,0xAB,0x22,0xDD,0x56,0x01,0xE1,0x4E,0x23,0x5E,0x23,0x7E,0x23,0x66, +0x6F,0xF1,0xCD,0x75,0x21,0x21,0x51,0xB5,0xDD,0x7E,0x01,0xB6,0x77,0xDD,0x34,0x19, +0xDD,0x35,0x1A,0xDD,0x34,0x1C,0xF3,0xDD,0x7E,0x1E,0xDD,0x36,0x1E,0x00,0xFB,0xB7, +0xC8,0x67,0xDD,0x6E,0x1D,0xC3,0xE2,0x01,0xCB,0x9E,0xDD,0x36,0x03,0x08,0xC9,0xDD, +0xE5,0x47,0xDD,0x4E,0x01,0xDD,0x21,0x5C,0xB5,0xCB,0x47,0x20,0x0C,0xDD,0x21,0x9B, +0xB5,0xCB,0x4F,0x20,0x04,0xDD,0x21,0xDA,0xB5,0xF3,0xDD,0x7E,0x03,0xA1,0x28,0x2D, +0x78,0xDD,0xBE,0x01,0x28,0x1A,0xDD,0xE5,0xDD,0x21,0xDA,0xB5,0xCB,0x57,0x20,0x04, +0xDD,0x21,0x9B,0xB5,0xDD,0x7E,0x03,0xA1,0x28,0x12,0xFB,0xCD,0xB7,0x20,0xDD,0xE1, +0xDD,0x36,0x03,0x00,0xFB,0xCD,0xB7,0x20,0xDD,0xE1,0x37,0xC9,0xE1,0xDD,0xE1,0xDD, +0x70,0x03,0xFB,0xB7,0xC9,0xCB,0xFB,0xDD,0x73,0x0F,0x5F,0x7D,0xB4,0x20,0x01,0x2B, +0xDD,0x75,0x08,0xDD,0x74,0x09,0x79,0xB7,0x28,0x08,0x3E,0x06,0xCD,0x26,0x08,0xDD, +0x7E,0x02,0xB2,0xCD,0x8B,0x22,0x7B,0xB7,0x28,0x0A,0x21,0x0A,0xB6,0x16,0x00,0x19, +0x7E,0xB7,0x20,0x03,0x21,0xB2,0x21,0xDD,0x75,0x0A,0xDD,0x74,0x0B,0xCD,0x65,0x22, +0x18,0x0D,0x01,0x01,0x00,0xC8,0xDD,0x6E,0x0D,0xDD,0x66,0x0E,0xDD,0x5E,0x10,0x7B, +0xFE,0xFF,0x28,0x76,0x87,0x7E,0x23,0x38,0x4A,0x28,0x0D,0x1D,0xB7,0x20,0x06,0xDD, +0xB6,0x0F,0xF2,0xDD,0x21,0xDD,0x86,0x0F,0xE6,0x0F,0xCD,0x73,0x22,0x4E,0xDD,0x7E, +0x09,0x47,0x87,0x38,0x1B,0xAF,0x91,0xDD,0x86,0x08,0x38,0x0C,0x05,0xF2,0xF5,0x21, +0xDD,0x4E,0x08,0xAF,0x47,0xDD,0x70,0x09,0xDD,0x77,0x08,0xB0,0x20,0x02,0x1E,0xFF, +0x7B,0xB7,0xCC,0x46,0x22,0xDD,0x73,0x10,0xF3,0xDD,0x71,0x06,0xDD,0x36,0x07,0x80, +0xFB,0xB7,0xC9,0x57,0x4B,0x3E,0x0D,0xCD,0x26,0x08,0x4A,0x3E,0x0B,0xCD,0x26,0x08, +0x4E,0x3E,0x0C,0xCD,0x26,0x08,0x3E,0x10,0xCD,0x73,0x22,0xCD,0x46,0x22,0x7B,0x3C, +0x20,0x8D,0x21,0xB2,0x21,0xCD,0x65,0x22,0x18,0x85,0xAF,0xDD,0x77,0x03,0xDD,0x77, +0x07,0xDD,0x77,0x04,0x37,0xC9,0xDD,0x35,0x0C,0x20,0x1E,0xDD,0x7E,0x09,0x87,0x21, +0xB2,0x21,0x30,0x11,0xDD,0x34,0x08,0x20,0x06,0xDD,0x34,0x09,0x1E,0xFF,0xC8,0xDD, +0x6E,0x0A,0xDD,0x66,0x0B,0x7E,0xDD,0x77,0x0C,0x23,0x5E,0x23,0xDD,0x75,0x0D,0xDD, +0x74,0x0E,0xC9,0xDD,0x77,0x0F,0x4F,0xDD,0x7E,0x00,0xC6,0x08,0xC3,0x26,0x08,0xDD, +0x7E,0x01,0x2F,0x21,0x52,0xB5,0xF3,0xA6,0x77,0xFB,0xAF,0x47,0xDD,0x7E,0x01,0xDD, +0xB6,0x02,0x21,0x19,0xB6,0xF3,0xB6,0xA8,0xBE,0x77,0xFB,0x20,0x03,0x78,0xB7,0xC0, +0xAF,0xCD,0x76,0x22,0xF3,0x4E,0x3E,0x07,0xC3,0x26,0x08,0xCD,0x24,0x23,0x7B,0xCD, +0x4E,0x23,0xD0,0x7E,0xE6,0x7F,0xC8,0xDD,0x75,0x11,0xDD,0x74,0x12,0xCD,0x13,0x23, +0x18,0x09,0xDD,0x6E,0x14,0xDD,0x66,0x15,0xDD,0x5E,0x18,0x4E,0x23,0x7B,0xD6,0xF0, +0x38,0x04,0x1E,0x00,0x18,0x0E,0x1D,0x79,0x87,0x9F,0x57,0xDD,0x7E,0x16,0x81,0x4F, +0xDD,0x7E,0x17,0x8A,0x57,0xCD,0x24,0x23,0x4E,0x7B,0xB7,0x20,0x19,0xDD,0x7E,0x13, +0x3D,0x20,0x10,0xDD,0x6E,0x11,0xDD,0x66,0x12,0x7E,0xC6,0x80,0x38,0x05,0xDD,0x36, +0x04,0x00,0xC9,0xCD,0x13,0x23,0xDD,0x73,0x18,0xF3,0xDD,0x71,0x05,0xDD,0x36,0x04, +0x80,0xFB,0xC9,0xDD,0x77,0x13,0x23,0x5E,0x23,0xDD,0x75,0x14,0xDD,0x74,0x15,0x7B, +0xB7,0xC0,0x1C,0xC9,0xDD,0x7E,0x00,0x87,0xF5,0xDD,0x71,0x16,0xCD,0x26,0x08,0xF1, +0x3C,0x4A,0xDD,0x71,0x17,0xC3,0x26,0x08,0x11,0x0A,0xB6,0x18,0x03,0x11,0xFA,0xB6, +0xEB,0xCD,0x51,0x23,0xEB,0xD0,0xED,0xB0,0xC9,0x21,0x0A,0xB6,0x18,0x03,0x21,0xFA, +0xB6,0xB7,0xC8,0xFE,0x10,0xD0,0x01,0x10,0x00,0x87,0x87,0x87,0x87,0x85,0x6F,0x8C, +0x95,0x67,0x37,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7, +0xCD,0x01,0x24,0xCD,0x2E,0x24,0xAF,0xCD,0x8E,0x23,0x21,0x4D,0x01,0x3E,0x19,0x29, +0x29,0x29,0x29,0x29,0x29,0x0F,0x0F,0xE6,0x3F,0x6F,0x22,0xD1,0xB8,0xC9,0x32,0x00, +0xB8,0xC9,0xDD,0x21,0x02,0xB8,0xCD,0xAF,0x23,0xD0,0xE5,0xCD,0x3F,0x25,0xED,0x5B, +0x1C,0xB8,0xED,0x4B,0x1F,0xB8,0x3A,0x19,0xB8,0xE1,0xC9,0xDD,0x21,0x47,0xB8,0xDD, +0x7E,0x00,0xB7,0xC0,0xDD,0xE5,0xE3,0x36,0x01,0x23,0x73,0x23,0x72,0x23,0x73,0x23, +0x72,0x23,0xEB,0xE1,0xD5,0x0E,0x40,0x12,0x13,0x0D,0x20,0xFB,0xD1,0xD5,0x78,0xFE, +0x10,0x38,0x02,0x06,0x10,0x04,0x48,0x18,0x07,0xE7,0x23,0xCD,0xB6,0x27,0x12,0x13, +0x10,0xF7,0x0D,0x28,0x09,0x1B,0x1A,0xEE,0x20,0x20,0x03,0x12,0x18,0xF4,0xE1,0xDD, +0x36,0x15,0x01,0xDD,0x36,0x17,0x16,0xDD,0x35,0x1C,0x37,0xC9,0x3A,0x02,0xB8,0xB7, +0xC8,0x21,0x02,0xB8,0x3E,0x01,0x36,0x00,0x23,0x5E,0x23,0x56,0x21,0xCC,0xB8,0xAE, +0x37,0xC0,0x77,0x9F,0xC9,0x3A,0x47,0xB8,0xFE,0x04,0x28,0x12,0xC6,0xFF,0xD0,0x21, +0x5D,0xB8,0x36,0xFF,0x23,0x23,0x7E,0x23,0xB6,0x37,0xC4,0x14,0x26,0xD0,0x21,0x47, +0xB8,0x3E,0x02,0x18,0xD1,0xE5,0xD5,0xC5,0x06,0x02,0xCD,0x8B,0x24,0x20,0x1A,0x2A, +0x1A,0xB8,0x7C,0xB5,0x37,0xCC,0x3F,0x25,0x30,0x0F,0x2A,0x1A,0xB8,0x2B,0x22,0x1A, +0xB8,0x2A,0x05,0xB8,0xE7,0x23,0x22,0x05,0xB8,0x18,0x2C,0xE5,0xD5,0xC5,0x4F,0x21, +0x47,0xB8,0x06,0x02,0xCD,0x8E,0x24,0x20,0x1E,0x2A,0x5F,0xB8,0x11,0x00,0x08,0xED, +0x52,0xC5,0xD4,0x14,0x26,0xC1,0x30,0x0F,0x2A,0x5F,0xB8,0x23,0x22,0x5F,0xB8,0x2A, +0x4A,0xB8,0x71,0x23,0x22,0x4A,0xB8,0xC1,0xD1,0xE1,0xC9,0x21,0x02,0xB8,0x7E,0xB8, +0xC8,0xEE,0x01,0xC0,0x70,0xC9,0xCD,0x35,0x24,0xD0,0xE5,0x2A,0x1A,0xB8,0x23,0x22, +0x1A,0xB8,0x2A,0x05,0xB8,0x2B,0x22,0x05,0xB8,0xE1,0xC9,0xEB,0x06,0x03,0xCD,0x8B, +0x24,0xC0,0xED,0x53,0x1C,0xB8,0xCD,0xCF,0x24,0x2A,0x1C,0xB8,0xED,0x5B,0x1A,0xB8, +0x19,0x22,0x1C,0xB8,0xCD,0x3F,0x25,0x38,0xF0,0xC8,0x2A,0xA6,0xB8,0x37,0xC9,0x2A, +0x03,0xB8,0xED,0x5B,0x1C,0xB8,0xED,0x4B,0x1A,0xB8,0x7B,0x95,0x7A,0x9C,0xDA,0xA6, +0xBA,0x09,0x2B,0xEB,0x09,0x2B,0xEB,0xC3,0xAC,0xBA,0xE5,0xC5,0x4F,0x21,0x47,0xB8, +0x06,0x03,0xCD,0x8E,0x24,0x79,0xC1,0xE1,0xC0,0x32,0x5E,0xB8,0xED,0x53,0x64,0xB8, +0xED,0x43,0x66,0xB8,0x22,0x48,0xB8,0xED,0x53,0x5F,0xB8,0x21,0xFF,0xF7,0x19,0x3F, +0xD8,0x21,0x00,0x08,0x22,0x5F,0xB8,0xEB,0xED,0x52,0xE5,0x2A,0x48,0xB8,0x19,0xE5, +0xCD,0x14,0x26,0xE1,0xD1,0xD0,0x18,0xDC,0x21,0x02,0xB8,0x7E,0xB7,0xC0,0x36,0x05, +0xED,0x53,0x03,0xB8,0xCD,0x8E,0x23,0xCD,0x44,0x25,0x38,0xFB,0xC3,0x01,0x24,0x3A, +0x18,0xB8,0xB7,0xC0,0x01,0x01,0x83,0xCD,0x73,0x26,0x30,0x5C,0x21,0x8C,0xB8,0x11, +0x40,0x00,0x3E,0x2C,0xCD,0x36,0x28,0x30,0x4F,0xCD,0xC5,0x25,0x20,0x57,0x06,0x8B, +0x38,0x02,0x06,0x89,0xCD,0x92,0x26,0xED,0x5B,0x9F,0xB8,0x2A,0x1C,0xB8,0x3A,0x02, +0xB8,0xFE,0x03,0x28,0x0E,0x21,0xFF,0xF7,0x19,0x3E,0x04,0x38,0x2B,0x2A,0x03,0xB8, +0x22,0x05,0xB8,0x3E,0x16,0xCD,0x36,0x28,0x30,0x1E,0x21,0x17,0xB8,0x34,0x3A,0x9D, +0xB8,0x23,0x77,0xAF,0x32,0x1E,0xB8,0x2A,0x9F,0xB8,0x22,0x1A,0xB8,0xCD,0xBF,0x27, +0x3E,0x8C,0xCC,0x0C,0x27,0x37,0x18,0x65,0xB7,0x21,0x02,0xB8,0x28,0x5D,0x06,0x85, +0xCD,0x13,0x27,0x18,0x97,0xF5,0x06,0x88,0xCD,0x92,0x26,0xF1,0x30,0x8E,0x06,0x87, +0xCD,0x11,0x27,0x18,0x87,0xCD,0xBF,0x27,0x37,0xC8,0x3A,0x1E,0xB8,0xB7,0x28,0x1B, +0x3A,0xA3,0xB8,0x2F,0xB7,0xC0,0x3A,0x07,0xB8,0xB7,0xC4,0xF3,0x25,0xC0,0x21,0x8C, +0xB8,0x11,0x07,0xB8,0x01,0x40,0x00,0xED,0xB0,0xAF,0xC9,0xCD,0xF3,0x25,0xC0,0xEB, +0x1A,0xBE,0xC9,0x21,0x07,0xB8,0x11,0x8C,0xB8,0x06,0x10,0x1A,0xCD,0xB6,0x27,0x4F, +0x7E,0xCD,0xB6,0x27,0xA9,0xC0,0x23,0x13,0x10,0xF1,0xC9,0x36,0x04,0x9F,0xF5,0xCD, +0x4F,0x2A,0xF1,0xC9,0x01,0x02,0x84,0xCD,0x73,0x26,0x30,0x4A,0x06,0x8A,0x11,0x4C, +0xB8,0xCD,0x95,0x26,0x21,0x63,0xB8,0xCD,0x88,0x26,0x30,0x3A,0x2A,0x48,0xB8,0x22, +0x4A,0xB8,0x22,0x61,0xB8,0xE5,0x21,0x4C,0xB8,0x11,0x40,0x00,0x3E,0x2C,0xCD,0x3F, +0x28,0xE1,0x30,0x22,0xED,0x5B,0x5F,0xB8,0x3E,0x16,0xCD,0x3F,0x28,0x21,0x5D,0xB8, +0xDC,0x88,0x26,0x30,0x11,0x21,0x00,0x00,0x22,0x5F,0xB8,0x21,0x5C,0xB8,0x34,0xAF, +0x32,0x63,0xB8,0x37,0x18,0xA7,0xB7,0x21,0x47,0xB8,0x28,0x9F,0x06,0x86,0xCD,0x13, +0x27,0x18,0xB9,0x21,0xCC,0xB8,0x79,0xBE,0x36,0x00,0x37,0xE5,0xC5,0xC4,0x60,0x27, +0xC1,0xE1,0x9F,0xD0,0x71,0xC3,0x4B,0x2A,0x7E,0xB7,0x37,0xC8,0x01,0x2C,0x01,0xC3, +0x72,0x2A,0x11,0x8C,0xB8,0x3A,0x00,0xB8,0xB7,0xC0,0x32,0x01,0xB8,0xCD,0x83,0x27, +0xCD,0x26,0x27,0x1A,0xB7,0x20,0x0A,0x3E,0x8E,0xCD,0x27,0x27,0x01,0x10,0x00,0x18, +0x2E,0xCD,0xBF,0x27,0x01,0x00,0x10,0x28,0x0D,0x6B,0x62,0x7E,0xB7,0x28,0x04,0x0C, +0x23,0x10,0xF8,0x78,0x41,0x4F,0xCD,0x8D,0x27,0x1A,0xCD,0xB6,0x27,0xB7,0x20,0x02, +0x3E,0x20,0xC5,0xD5,0xCD,0x34,0x13,0xD1,0xC1,0x13,0x10,0xED,0xCD,0x5C,0x27,0xEB, +0x09,0xEB,0x3E,0x8D,0xCD,0x27,0x27,0x06,0x02,0xCD,0x8D,0x27,0x1A,0xCD,0xA4,0x27, +0xCD,0x5C,0x27,0x13,0xCD,0xBF,0x27,0x20,0x0B,0x13,0x1A,0xE6,0x0F,0xC6,0x24,0xCD, +0x80,0x27,0x18,0x58,0x1A,0x21,0x01,0xB8,0xB6,0xC8,0x18,0x6F,0xCD,0x27,0x27,0x18, +0x6A,0x3E,0xFF,0xF5,0xCD,0x1F,0x27,0xF1,0xC6,0x60,0xD4,0x80,0x27,0x18,0x5C,0xCD, +0x80,0x11,0x25,0xC4,0x7B,0x27,0x78,0xE5,0xE6,0x7F,0x47,0x21,0xC5,0x27,0x28,0x07, +0x7E,0x23,0xB7,0x20,0xFB,0x10,0xF9,0x7E,0xB7,0x28,0x05,0xCD,0x43,0x27,0x18,0xF7, +0xE1,0x23,0xC9,0xFA,0x27,0x27,0xE5,0x06,0x00,0x04,0x7E,0x23,0x07,0x30,0xFA,0xCD, +0x8D,0x27,0xE1,0x7E,0x23,0xE6,0x7F,0xCD,0x80,0x27,0x10,0xF7,0x3E,0x20,0x18,0x20, +0x3A,0x00,0xB8,0xB7,0x37,0xC0,0xCD,0x1F,0x27,0xCD,0x42,0x1A,0x38,0xFB,0xCD,0x79, +0x12,0xCD,0x56,0x1B,0xCD,0x81,0x12,0xFE,0x1B,0xC8,0x37,0xCD,0x83,0x27,0x3E,0x0A, +0xC3,0x00,0x14,0xF5,0xE5,0x3E,0x01,0xCD,0x5E,0x11,0xE1,0xF1,0xC9,0xD5,0xCD,0x56, +0x12,0x5C,0xCD,0x80,0x11,0x7C,0x3D,0x83,0x80,0x3D,0xBA,0xD1,0xD8,0x3E,0xFF,0x32, +0x01,0xB8,0x18,0xD7,0x06,0xFF,0x04,0xD6,0x0A,0x30,0xFB,0xC6,0x3A,0xF5,0x78,0xB7, +0xC4,0xA4,0x27,0xF1,0x18,0xCA,0xFE,0x61,0xD8,0xFE,0x7B,0xD0,0xC6,0xE0,0xC9,0x3A, +0x02,0xB8,0xFE,0x05,0xC9,0x50,0x72,0x65,0x73,0xF3,0x00,0x50,0x4C,0x41,0xD9,0x74, +0x68,0x65,0xEE,0x61,0x6E,0xF9,0x6B,0x65,0x79,0xBA,0x00,0x65,0x72,0x72,0x6F,0xF2, +0x00,0x80,0x81,0x00,0x80,0x52,0x45,0xC3,0x61,0x6E,0xE4,0x81,0x00,0x52,0x65,0x61, +0xE4,0x82,0x00,0x57,0x72,0x69,0x74,0xE5,0x82,0x00,0x52,0x65,0x77,0x69,0x6E,0xE4, +0x74,0x61,0x70,0xE5,0x00,0x46,0x6F,0x75,0x6E,0x64,0x20,0xA0,0x00,0x4C,0x6F,0x61, +0x64,0x69,0x6E,0xE7,0x00,0x53,0x61,0x76,0x69,0x6E,0xE7,0x00,0x00,0x4F,0xEB,0x00, +0x62,0x6C,0x6F,0x63,0xEB,0x00,0x55,0x6E,0x6E,0x61,0x6D,0x65,0xE4,0x66,0x69,0x6C, +0x65,0x20,0x20,0x20,0xA0,0x00,0xCD,0x73,0x28,0xF5,0x21,0xB8,0x28,0x18,0x19,0xCD, +0x73,0x28,0xF5,0xCD,0x64,0x29,0x21,0xF7,0x28,0xDC,0x9D,0x28,0xDC,0x79,0x29,0x18, +0x0F,0xCD,0x73,0x28,0xF5,0x21,0xC7,0x28,0xE5,0xCD,0x19,0x29,0xE1,0xDC,0x9D,0x28, +0xD1,0xF5,0x01,0x82,0xF7,0xED,0x49,0x01,0x10,0xF6,0xED,0x49,0xFB,0x7A,0xCD,0x51, +0x2A,0xF1,0xC9,0x32,0xCD,0xB8,0x1B,0x1C,0xE5,0xD5,0xCD,0x68,0x1E,0xD1,0xDD,0xE1, +0xCD,0x4B,0x2A,0xF3,0x01,0x0E,0xF4,0xED,0x49,0x01,0xD0,0xF6,0xED,0x49,0x0E,0x10, +0xED,0x49,0x01,0x92,0xF7,0xED,0x49,0x01,0x58,0xF6,0xED,0x49,0xC9,0x7A,0xB7,0x28, +0x0D,0xE5,0xD5,0x1E,0x00,0xCD,0xAE,0x28,0xD1,0xE1,0xD0,0x15,0x20,0xF3,0x01,0xFF, +0xFF,0xED,0x43,0xD3,0xB8,0x16,0x01,0xE9,0xCD,0xB0,0x29,0xD0,0xDD,0x77,0x00,0xDD, +0x23,0x15,0x1D,0x20,0xF3,0x18,0x12,0xCD,0xB0,0x29,0xD0,0x47,0xCD,0xDC,0xBA,0xA8, +0x3E,0x03,0xC0,0xDD,0x23,0x15,0x1D,0x20,0xEE,0x15,0x28,0x06,0xCD,0xB0,0x29,0xD0, +0x18,0xF7,0xCD,0xA6,0x29,0xCD,0xB0,0x29,0xD0,0xAA,0x20,0x07,0xCD,0xB0,0x29,0xD0, +0xAB,0x37,0xC8,0x3E,0x02,0xB7,0xC9,0xCD,0xDC,0xBA,0xCD,0xF8,0x29,0xD0,0xDD,0x23, +0x15,0x1D,0x20,0xF3,0x15,0x28,0x07,0xAF,0xCD,0xF8,0x29,0xD0,0x18,0xF6,0xCD,0xA6, +0x29,0xCD,0xF8,0x29,0xD0,0x7B,0xC3,0xF8,0x29,0xD5,0xCD,0x23,0x29,0xD1,0xD8,0xB7, +0xC8,0x18,0xF6,0x2E,0x55,0xCD,0xCD,0x29,0xD0,0x11,0x00,0x00,0x62,0xCD,0xCD,0x29, +0xD0,0xEB,0x06,0x00,0x09,0xEB,0x25,0x20,0xF4,0x61,0x79,0x92,0x4F,0x9F,0x47,0xEB, +0x09,0xEB,0xCD,0xCD,0x29,0xD0,0x7A,0xCB,0x3F,0xCB,0x3F,0x8A,0x94,0x38,0xEA,0x91, +0x38,0xE7,0x7A,0x1F,0x8A,0x67,0x22,0xCE,0xB8,0xCD,0xB0,0x29,0xD0,0x21,0xCD,0xB8, +0xAE,0xC0,0x37,0xC9,0xCD,0x89,0x2A,0x21,0x01,0x08,0xCD,0x7C,0x29,0xD0,0xB7,0xCD, +0x08,0x2A,0xD0,0x3A,0xCD,0xB8,0xC3,0xF8,0x29,0x21,0x21,0x00,0x06,0xF4,0xED,0x78, +0xE6,0x04,0xC8,0xE5,0x37,0xCD,0x08,0x2A,0xE1,0x2B,0x7C,0xB5,0x20,0xEE,0x37,0xC9, +0x2A,0xD3,0xB8,0xAC,0xF2,0xA0,0x29,0x7C,0xEE,0x08,0x67,0x7D,0xEE,0x10,0x6F,0x37, +0xED,0x6A,0x22,0xD3,0xB8,0xC9,0x2A,0xD3,0xB8,0x7D,0x2F,0x5F,0x7C,0x2F,0x57,0xC9, +0xD5,0x1E,0x08,0x2A,0xCE,0xB8,0xCD,0xD4,0x29,0xDC,0xDD,0x29,0x30,0x0D,0x7C,0x91, +0x9F,0xCB,0x12,0xCD,0x90,0x29,0x1D,0x20,0xEA,0x7A,0x37,0xD1,0xC9,0x06,0xF4,0xED, +0x78,0xE6,0x04,0xC8,0xED,0x5F,0xC6,0x03,0x0F,0x0F,0xE6,0x1F,0x4F,0x06,0xF5,0x79, +0xC6,0x02,0x4F,0x38,0x0E,0xED,0x78,0xAD,0xE6,0x80,0x20,0xF3,0xAF,0xED,0x4F,0xCB, +0x0D,0x37,0xC9,0xAF,0xED,0x4F,0x3C,0xC9,0xD5,0x1E,0x08,0x57,0xCB,0x02,0xCD,0x08, +0x2A,0x30,0x03,0x1D,0x20,0xF6,0xD1,0xC9,0xED,0x4B,0xD0,0xB8,0x2A,0xD2,0xB8,0x9F, +0x67,0x28,0x07,0x7D,0x87,0x80,0x6F,0x79,0x90,0x4F,0x7D,0x32,0xD0,0xB8,0x2E,0x0A, +0xCD,0x37,0x2A,0x38,0x06,0x91,0x30,0x0C,0x2F,0x3C,0x4F,0x7C,0xCD,0x90,0x29,0x2E, +0x0B,0xCD,0x37,0x2A,0x3E,0x01,0xC9,0xED,0x5F,0xCB,0x3F,0x91,0x30,0x03,0x3C,0x20, +0xFD,0x06,0xF7,0xED,0x69,0xF5,0xAF,0xED,0x4F,0xF1,0xC9,0x3E,0x10,0x18,0x02,0x3E, +0xEF,0xC5,0x06,0xF6,0xED,0x48,0x04,0xE6,0x10,0x3E,0x08,0x28,0x01,0x3C,0xED,0x79, +0x37,0x28,0x0C,0x79,0xE6,0x10,0xC5,0x01,0xC8,0x00,0x37,0xCC,0x72,0x2A,0xC1,0x79, +0xC1,0xC9,0xC5,0xE5,0xCD,0x89,0x2A,0x3E,0x42,0xCD,0xBD,0x1C,0xE1,0xC1,0x20,0x07, +0x0B,0x78,0xB1,0x20,0xED,0x37,0xC9,0xAF,0xC9,0x01,0x82,0x06,0x0B,0x78,0xB1,0x20, +0xFB,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC5,0xD5,0xE5,0xE5,0x01,0xFF,0x00,0x0C, +0x7E,0x23,0xB7,0x20,0xFA,0x32,0xDD,0xB8,0xCD,0x6F,0x2C,0xE1,0xCD,0x67,0x2D,0xC5, +0xE5,0xCD,0xD9,0x2D,0xE1,0xC1,0xCD,0xC6,0x2A,0x30,0xF4,0xF5,0xCD,0xD2,0x2C,0xF1, +0xE1,0xD1,0xC1,0xFE,0xFC,0xC9,0xE5,0x21,0xE0,0x2A,0x5F,0x78,0xB1,0x7B,0x20,0x0B, +0xFE,0xF0,0x38,0x07,0xFE,0xF4,0x30,0x03,0x21,0x1C,0x2B,0xCD,0xF6,0x2D,0xE3,0xC9, +0x13,0x01,0x2C,0xFC,0x42,0x2B,0xEF,0x40,0x2B,0x0D,0x69,0x2B,0xF0,0xB3,0x2B,0xF1, +0x7E,0x2B,0xF2,0xAA,0x2B,0xF3,0x75,0x2B,0xF8,0xC7,0x2B,0xF9,0x92,0x2B,0xFA,0xBD, +0x2B,0xFB,0x89,0x2B,0xF4,0xA2,0x2C,0xF5,0xA7,0x2C,0xF6,0x9D,0x2C,0xF7,0x98,0x2C, +0xE0,0xEA,0x2C,0x7F,0x3D,0x2C,0x10,0x4A,0x2C,0xE1,0xF9,0x2B,0x04,0x2B,0x2B,0xF0, +0x2F,0x2B,0xF1,0x33,0x2B,0xF2,0x3B,0x2B,0xF3,0x37,0x2B,0x3E,0x07,0x18,0x0E,0x3E, +0x0B,0x18,0x0A,0x3E,0x0A,0x18,0x06,0x3E,0x09,0x18,0x02,0x3E,0x08,0xCD,0x00,0x14, +0xB7,0xC9,0xF5,0xCD,0x49,0x2B,0xF1,0x37,0xC9,0xCD,0x69,0x2B,0x21,0x61,0x2B,0xCD, +0x69,0x2B,0xCD,0x80,0x11,0x25,0xC8,0x3E,0x0D,0xCD,0x00,0x14,0x3E,0x0A,0xC3,0x00, +0x14,0x2A,0x42,0x72,0x65,0x61,0x6B,0x2A,0x00,0xF5,0x7E,0x23,0xB7,0xC4,0xA8,0x2D, +0x20,0xF8,0xF1,0x37,0xC9,0x16,0x01,0xCD,0x93,0x2B,0xCA,0x2B,0x2B,0xC9,0xCD,0xEB, +0x2B,0x79,0x90,0xBA,0xDA,0x2B,0x2B,0x18,0x0A,0xCD,0xEB,0x2B,0x7A,0x93,0xC8,0x57, +0x18,0x01,0x51,0x78,0xB9,0xC8,0xD5,0xCD,0x50,0x2D,0x7E,0xD4,0xA8,0x2D,0x04,0x23, +0xD4,0x67,0x2D,0xD1,0x15,0x20,0xEC,0xF6,0xFF,0xC9,0x16,0x01,0xCD,0xC8,0x2B,0xCA, +0x2B,0x2B,0xC9,0xCD,0xEB,0x2B,0x78,0xBA,0xDA,0x2B,0x2B,0x18,0x0B,0xCD,0xEB,0x2B, +0x7B,0xD6,0x01,0xC8,0x57,0x18,0x01,0x51,0x78,0xB7,0xC8,0xCD,0x4A,0x2D,0x30,0x07, +0x05,0x2B,0x15,0x20,0xF3,0x18,0x11,0x78,0xB7,0x28,0x0A,0x05,0x2B,0xD5,0xCD,0x29, +0x2D,0xD1,0x15,0x20,0xF2,0xCD,0x67,0x2D,0xF6,0xFF,0xC9,0xE5,0xCD,0x56,0x12,0x7A, +0x94,0x3C,0x57,0xCD,0x80,0x11,0x5C,0xE1,0xC9,0x3A,0xDD,0xB8,0x2F,0x32,0xDD,0xB8, +0xC9,0xB7,0xC8,0x5F,0x3A,0xDD,0xB8,0xB7,0x28,0x0D,0x78,0xB9,0x28,0x09,0x73,0x7B, +0xCD,0xA8,0x2D,0x23,0x04,0xB7,0xC9,0x79,0xFE,0xFF,0xCA,0x2B,0x2B,0xAF,0x32,0xDC, +0xB8,0x7B,0xCD,0xA8,0x2D,0x0C,0xE5,0x7E,0x73,0x5F,0x23,0xB7,0x20,0xF9,0x77,0xE1, +0x04,0x23,0xCD,0x67,0x2D,0x3A,0xDC,0xB8,0xB7,0xC4,0x29,0x2D,0xC9,0x78,0xB7,0xCA, +0x2B,0x2B,0xCD,0x4A,0x2D,0xD2,0x2B,0x2B,0x05,0x2B,0x78,0xB9,0xCA,0x2B,0x2B,0xE5, +0x23,0x7E,0x2B,0x77,0x23,0xB7,0x20,0xF8,0x2B,0x36,0x20,0x32,0xDC,0xB8,0xE3,0xCD, +0x67,0x2D,0xE3,0x36,0x00,0xE1,0x0D,0x3A,0xDC,0xB8,0xB7,0xC4,0x2D,0x2D,0xC9,0x21, +0x00,0x00,0x22,0xDE,0xB8,0xC9,0xED,0x5B,0xDE,0xB8,0x7C,0xAA,0xC0,0x7D,0xAB,0xC0, +0x37,0xC9,0x4F,0x2A,0xDE,0xB8,0x7C,0xB5,0xC8,0x7D,0x81,0x6F,0xCD,0xCE,0x11,0x38, +0x03,0x21,0x00,0x00,0x22,0xDE,0xB8,0xC9,0x11,0x00,0x01,0x18,0x0D,0x11,0x00,0xFF, +0x18,0x08,0x11,0xFF,0x00,0x18,0x03,0x11,0x01,0x00,0xC5,0xE5,0x2A,0xDE,0xB8,0x7C, +0xB5,0xCC,0x80,0x11,0x7C,0x82,0x67,0x7D,0x83,0x6F,0xCD,0xCE,0x11,0x30,0x0B,0xE5, +0xCD,0xD2,0x2C,0xE1,0x22,0xDE,0xB8,0xCD,0xCD,0x2C,0xE1,0xC1,0xC9,0x11,0x68,0x12, +0x18,0x03,0x11,0x68,0x12,0x2A,0xDE,0xB8,0x7C,0xB5,0xC8,0xE5,0xCD,0x80,0x11,0xE3, +0xCD,0x74,0x11,0xCD,0x16,0x00,0xE1,0xC3,0x74,0x11,0xC5,0xE5,0xCD,0x80,0x11,0xEB, +0x2A,0xDE,0xB8,0x7C,0xB5,0x20,0x0C,0x78,0xB1,0x20,0x26,0xCD,0x80,0x11,0x22,0xDE, +0xB8,0x18,0x06,0xCD,0x74,0x11,0xCD,0x68,0x12,0xCD,0xAB,0x13,0xF5,0xEB,0xCD,0x74, +0x11,0x2A,0xDE,0xB8,0x24,0xCD,0xCE,0x11,0x30,0x03,0x22,0xDE,0xB8,0xCD,0xCD,0x2C, +0xF1,0xE1,0xC1,0xDA,0x01,0x2C,0xC3,0x2B,0x2B,0x16,0x01,0x18,0x02,0x16,0xFF,0xC5, +0xE5,0xD5,0xCD,0xD2,0x2C,0xD1,0x2A,0xDE,0xB8,0x7C,0xB5,0x28,0x09,0x7C,0x82,0x67, +0xCD,0x8C,0x2C,0xCD,0xCD,0x2C,0xE1,0xC1,0xB7,0xC9,0xD5,0x11,0x08,0xFF,0x18,0x04, +0xD5,0x11,0x09,0x01,0xC5,0xE5,0xCD,0x80,0x11,0x7A,0x84,0x67,0xCD,0xCE,0x11,0x7B, +0xDC,0x00,0x14,0xE1,0xC1,0xD1,0xC9,0xC5,0xE5,0xEB,0xCD,0x80,0x11,0x4F,0xEB,0x7E, +0x23,0xB7,0xC4,0x85,0x2D,0x20,0xF8,0xCD,0x80,0x11,0x91,0xEB,0x85,0x6F,0xCD,0x74, +0x11,0xE1,0xC1,0xB7,0xC9,0xF5,0xC5,0xD5,0xE5,0x47,0xCD,0x80,0x11,0x91,0x83,0x5F, +0x48,0xCD,0xCE,0x11,0x38,0x05,0x78,0x87,0x3C,0x83,0x5F,0xEB,0xCD,0xCE,0x11,0x79, +0xDC,0xA8,0x2D,0xE1,0xD1,0xC1,0xF1,0xC9,0xF5,0xC5,0xD5,0xE5,0x47,0xCD,0x80,0x11, +0x4F,0xC5,0xCD,0xCE,0x11,0xC1,0xDC,0x76,0x2C,0xF5,0xDC,0xD2,0x2C,0x78,0xC5,0xCD, +0x34,0x13,0xC1,0xCD,0x80,0x11,0x91,0xC4,0x82,0x2C,0xF1,0x30,0x07,0x9F,0x32,0xDC, +0xB8,0xCD,0xCD,0x2C,0xE1,0xD1,0xC1,0xF1,0xC9,0xCD,0x80,0x11,0x4F,0xCD,0xCE,0x11, +0xCD,0x76,0x2C,0xDA,0x3C,0x1A,0xCD,0x79,0x12,0xCD,0x80,0x11,0x91,0xC4,0x82,0x2C, +0xCD,0x3C,0x1A,0xC3,0x81,0x12,0xF5,0xC5,0x46,0x23,0xE5,0x23,0x23,0xBE,0x23,0x28, +0x04,0x05,0x20,0xF7,0xE3,0xF1,0x7E,0x23,0x66,0x6F,0xC1,0xF1,0xC9,0xC7,0xC7,0xC7, +0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xC7,0xE5,0xD5,0xC5,0xEB,0x01,0x05,0x00,0xED, +0xB0,0xEB,0x2B,0x7E,0xC1,0xD1,0xE1,0x37,0xC9,0xD5,0xC5,0xF6,0x7F,0x47,0xAF,0x12, +0x13,0x12,0x13,0x0E,0x90,0x7C,0xB7,0x20,0x08,0x4F,0x65,0x6F,0xB4,0x28,0x0D,0x0E, +0x88,0xFA,0x4B,0x2E,0x29,0x0D,0xB4,0xF2,0x44,0x2E,0x7C,0xA0,0xEB,0x73,0x23,0x77, +0x23,0x71,0xC1,0xE1,0xC9,0xC5,0x01,0x00,0xA0,0xCD,0x60,0x2E,0xC1,0xC9,0x06,0xA8, +0xD5,0xCD,0xA1,0x36,0xD1,0xC9,0xE5,0xDD,0xE1,0xAF,0xDD,0x96,0x04,0x28,0x1B,0xC6, +0x90,0xD0,0xD5,0xC5,0xC6,0x10,0xCD,0x3D,0x36,0xCB,0x21,0xED,0x5A,0x28,0x08,0xDD, +0x7E,0x03,0xB7,0x3F,0xC1,0xD1,0xC9,0x9F,0x18,0xF9,0x6F,0x67,0x37,0xC9,0xCD,0xA1, +0x2E,0xD0,0xF0,0xE5,0x79,0x34,0x20,0x06,0x23,0x3D,0x20,0xF9,0x34,0x0C,0xE1,0x37, +0xC9,0xE5,0xD5,0xE5,0xDD,0xE1,0xCD,0x04,0x36,0xD1,0xE1,0xC9,0xCD,0xA1,0x2E,0xD0, +0xC8,0xCB,0x78,0xC8,0x18,0xDD,0xCD,0xE8,0x35,0x47,0x28,0x52,0xFC,0xFB,0x35,0xE5, +0xDD,0x7E,0x04,0xD6,0x80,0x5F,0x9F,0x57,0x6B,0x62,0x29,0x29,0x29,0x19,0x29,0x19, +0x29,0x29,0x19,0x7C,0xD6,0x09,0x5F,0xE1,0xC5,0xD5,0xC4,0x1F,0x2F,0xFD,0x21,0x13, +0x2F,0xCD,0xA0,0x35,0x28,0x1B,0x30,0x08,0xCD,0x12,0x34,0xD1,0x1D,0xD5,0x18,0xED, +0xFD,0x21,0x18,0x2F,0xCD,0xA0,0x35,0x38,0x08,0xCD,0x9B,0x34,0xD1,0x1C,0xD5,0x18, +0xEF,0xCD,0x8E,0x2E,0x79,0xD1,0xC1,0x4F,0x3D,0x85,0x6F,0xD0,0x24,0xC9,0x5F,0x77, +0x0E,0x01,0xC9,0xF0,0x1F,0xBC,0x3E,0x96,0xFE,0x27,0x6B,0x6E,0x9E,0x2F,0x3C,0xB7, +0x37,0xC8,0x4F,0xF2,0x28,0x2F,0x2F,0x3C,0xCD,0x3E,0x2F,0x28,0x09,0xC5,0xF5,0xCD, +0x36,0x2F,0xF1,0xC1,0x18,0xF2,0x79,0xB7,0xF2,0x9E,0x34,0xC3,0x15,0x34,0x11,0x8F, +0x2F,0xD6,0x0D,0xD0,0xC6,0x0C,0x5F,0x87,0x87,0x83,0xC6,0x53,0x5F,0xCE,0x2F,0x93, +0x57,0xAF,0xC9,0x00,0x00,0x00,0x20,0x84,0x00,0x00,0x00,0x48,0x87,0x00,0x00,0x00, +0x7A,0x8A,0x00,0x00,0x40,0x1C,0x8E,0x00,0x00,0x50,0x43,0x91,0x00,0x00,0x24,0x74, +0x94,0x00,0x80,0x96,0x18,0x98,0x00,0x20,0xBC,0x3E,0x9B,0x00,0x28,0x6B,0x6E,0x9E, +0x00,0xF9,0x02,0x15,0xA2,0x40,0xB7,0x43,0x3A,0xA5,0x10,0xA5,0xD4,0x68,0xA8,0x2A, +0xE7,0x84,0x11,0xAC,0x21,0x65,0x89,0x22,0xE6,0xB8,0x21,0x07,0x6C,0x22,0xE4,0xB8, +0xC9,0xEB,0xCD,0x94,0x2F,0xEB,0xCD,0xE8,0x35,0xC8,0x11,0xE4,0xB8,0x06,0x04,0x1A, +0xAE,0x12,0x13,0x23,0x10,0xF9,0xC9,0xE5,0x2A,0xE6,0xB8,0x01,0x07,0x6C,0xCD,0xFA, +0x2F,0xE5,0x2A,0xE4,0xB8,0x01,0x65,0x89,0xCD,0xFA,0x2F,0xD5,0xE5,0x2A,0xE6,0xB8, +0xCD,0xFA,0x2F,0xE3,0x09,0x22,0xE4,0xB8,0xE1,0x01,0x07,0x6C,0xED,0x4A,0xC1,0x09, +0xC1,0x09,0x22,0xE6,0xB8,0xE1,0xE5,0xDD,0xE1,0x2A,0xE4,0xB8,0xED,0x5B,0xE6,0xB8, +0x01,0x00,0x00,0xDD,0x36,0x04,0x80,0xC3,0xB1,0x36,0xEB,0x21,0x00,0x00,0x3E,0x11, +0x3D,0xC8,0x29,0xCB,0x13,0xCB,0x12,0x30,0xF7,0x09,0x30,0xF4,0x13,0x18,0xF1,0x11, +0x8B,0x30,0x18,0x03,0x11,0x86,0x30,0xCD,0xE8,0x35,0x3D,0xFE,0x01,0xD0,0xD5,0xCD, +0x6C,0x35,0xF5,0xDD,0x36,0x04,0x80,0x11,0x81,0x30,0xCD,0x9A,0x35,0x30,0x06,0xDD, +0x34,0x04,0xF1,0x3D,0xF5,0xCD,0x16,0x33,0xD5,0x11,0x32,0x33,0xCD,0x3F,0x33,0xEB, +0xE1,0xD5,0x11,0x32,0x33,0xCD,0x37,0x33,0xD1,0xCD,0x9E,0x34,0xCD,0xA9,0x32,0x04, +0x4C,0x4B,0x57,0x5E,0x7F,0x0D,0x08,0x9B,0x13,0x80,0x23,0x93,0x38,0x76,0x80,0x20, +0x3B,0xAA,0x38,0x82,0xD5,0xCD,0x15,0x34,0xD1,0xE3,0x7C,0xB7,0xF2,0x71,0x30,0x2F, +0x3C,0x6F,0x7C,0x26,0x00,0xCD,0x29,0x2E,0xEB,0xE1,0xCD,0x3F,0x33,0xD1,0xC3,0x15, +0x34,0x34,0xF3,0x04,0x35,0x80,0xF8,0x17,0x72,0x31,0x80,0x85,0x9A,0x20,0x1A,0x7F, +0x06,0xE1,0xCD,0x07,0x33,0xD2,0x28,0x33,0x11,0x00,0x31,0xCD,0x9A,0x35,0xF2,0xEC, +0x36,0x11,0x05,0x31,0xCD,0x9A,0x35,0xFA,0xE6,0x36,0x11,0xFB,0x30,0xCD,0xD4,0x32, +0x7B,0xF2,0xB6,0x30,0xED,0x44,0xF5,0xCD,0x1D,0x33,0xCD,0x0F,0x33,0xD5,0xCD,0xAC, +0x32,0x03,0xF4,0x32,0xEB,0x0F,0x73,0x08,0xB8,0xD5,0x52,0x7B,0x00,0x00,0x00,0x00, +0x80,0xE3,0xCD,0xAC,0x32,0x02,0x09,0x60,0xDE,0x01,0x78,0xF8,0x17,0x72,0x31,0x7E, +0xCD,0x15,0x34,0xD1,0xE5,0xEB,0xCD,0x37,0x33,0xEB,0xE1,0xCD,0x9E,0x34,0x11,0xCC, +0x30,0xCD,0x3F,0x33,0xDD,0x34,0x04,0xF1,0xC3,0x7B,0x35,0x29,0x3B,0xAA,0x38,0x81, +0xC7,0x33,0x0F,0x30,0x87,0xF8,0x17,0x72,0xB1,0x87,0x11,0xCC,0x30,0xEB,0xCD,0xE8, +0x35,0xEB,0xCA,0x28,0x33,0xF5,0xCD,0xE8,0x35,0x28,0x25,0x47,0xFC,0xFB,0x35,0xE5, +0xCD,0x82,0x31,0xE1,0x38,0x25,0xE3,0xE1,0xFA,0x48,0x31,0xC5,0xD5,0xCD,0x14,0x30, +0xD1,0xDC,0x15,0x34,0xDC,0x90,0x30,0xC1,0xD0,0x78,0xB7,0xFC,0xFB,0x35,0x37,0xC9, +0xF1,0x37,0xF0,0xCD,0xEC,0x36,0xAF,0xC9,0xAF,0x3C,0xC9,0x4F,0xF1,0xC5,0xF5,0x79, +0x37,0x8F,0x30,0xFD,0x47,0xCD,0x0F,0x33,0xEB,0x78,0x87,0x28,0x15,0xF5,0xCD,0x1D, +0x33,0x30,0x16,0xF1,0x30,0xF4,0xF5,0x11,0xE8,0xB8,0xCD,0x15,0x34,0x30,0x0A,0xF1, +0x18,0xE8,0xF1,0x37,0xFC,0xFD,0x32,0x18,0xBE,0xF1,0xF1,0xC1,0xFA,0xE6,0x36,0xC3, +0xEE,0x36,0xC5,0xCD,0x17,0x33,0xCD,0xA1,0x2E,0x79,0xC1,0x30,0x02,0x28,0x03,0x78, +0xB7,0xC9,0x4F,0x7E,0x1F,0x9F,0xA0,0x47,0x79,0xFE,0x02,0x9F,0xD0,0x7E,0xFE,0x27, +0xD8,0xAF,0xC9,0x11,0xA9,0x31,0xC3,0x18,0x2E,0xA2,0xDA,0x0F,0x49,0x82,0x32,0xF7, +0xB8,0xC9,0xCD,0xE8,0x35,0xFC,0xFB,0x35,0xF6,0x01,0x18,0x01,0xAF,0xF5,0x11,0x1D, +0x32,0x06,0xF0,0x3A,0xF7,0xB8,0xB7,0x28,0x05,0x11,0x22,0x32,0x06,0xF6,0xCD,0x07, +0x33,0x30,0x3A,0xF1,0xCD,0xD5,0x32,0xD0,0x7B,0x1F,0xDC,0xFB,0x35,0x06,0xE8,0xCD, +0x07,0x33,0xD2,0xE6,0x36,0xDD,0x34,0x04,0xCD,0xA9,0x32,0x06,0x1B,0x2D,0x1A,0xE6, +0x6E,0xF8,0xFB,0x07,0x28,0x74,0x01,0x89,0x68,0x99,0x79,0xE1,0xDF,0x35,0x23,0x7D, +0x28,0xE7,0x5D,0xA5,0x80,0xA2,0xDA,0x0F,0x49,0x81,0xC3,0x15,0x34,0xF1,0xC2,0x28, +0x33,0x3A,0xF7,0xB8,0xFE,0x01,0xD8,0x11,0x27,0x32,0xC3,0x15,0x34,0x6E,0x83,0xF9, +0x22,0x7F,0xB6,0x60,0x0B,0x36,0x79,0x13,0x35,0xFA,0x0E,0x7B,0xD3,0xE0,0x2E,0x65, +0x86,0xCD,0x0F,0x33,0xD5,0xCD,0xB2,0x31,0xE3,0xDC,0xBC,0x31,0xD1,0xDA,0x9E,0x34, +0xC9,0xCD,0xE8,0x35,0xF5,0xFC,0xFB,0x35,0x06,0xF0,0xCD,0x07,0x33,0x30,0x4A,0x3D, +0xF5,0xF4,0xFD,0x32,0xCD,0xA9,0x32,0x0B,0xFF,0xC1,0x03,0x0F,0x77,0x83,0xFC,0xE8, +0xEB,0x79,0x6F,0xCA,0x78,0x36,0x7B,0xD5,0x3E,0xB0,0xB5,0x7C,0xB0,0xC1,0x8B,0x09, +0x7D,0xAF,0xE8,0x32,0xB4,0x7D,0x74,0x6C,0x65,0x62,0x7D,0xD1,0xF5,0x37,0x92,0x7E, +0x7A,0xC3,0xCB,0x4C,0x7E,0x83,0xA7,0xAA,0xAA,0x7F,0xFE,0xFF,0xFF,0x7F,0x80,0xCD, +0x15,0x34,0xF1,0x11,0x05,0x32,0xF4,0x3B,0x33,0x3A,0xF7,0xB8,0xB7,0x11,0x2C,0x32, +0xC4,0x15,0x34,0xF1,0xFC,0xFB,0x35,0x37,0xC9,0xCD,0x1D,0x33,0xCD,0x16,0x33,0xEB, +0xD1,0x1A,0x13,0x47,0xCD,0x18,0x2E,0x13,0x13,0x13,0x13,0x13,0xD5,0x11,0xED,0xB8, +0x05,0xC8,0xC5,0x11,0xF2,0xB8,0xCD,0x15,0x34,0xC1,0xD1,0xD5,0xC5,0xCD,0x3F,0x33, +0xC1,0xD1,0x18,0xE3,0xAF,0xF5,0xCD,0x15,0x34,0xF1,0x11,0xCC,0x30,0xC4,0x3F,0x33, +0xE5,0xCD,0x66,0x2E,0x30,0x13,0xD1,0xE5,0xF5,0xD5,0x11,0xED,0xB8,0xCD,0x29,0x2E, +0xEB,0xE1,0xCD,0x37,0x33,0xF1,0xD1,0x37,0xC9,0xE1,0xAF,0x3C,0xC9,0xCD,0x16,0x33, +0xEB,0xCD,0x28,0x33,0xC3,0x9E,0x34,0xCD,0x6C,0x35,0xF0,0xB8,0xC8,0x3F,0xC9,0xEB, +0x21,0xE8,0xB8,0xC3,0x18,0x2E,0xEB,0x21,0xF2,0xB8,0xC3,0x18,0x2E,0xEB,0x21,0xED, +0xB8,0xCD,0x18,0x2E,0xEB,0xC3,0x15,0x34,0xD5,0x11,0x32,0x33,0xCD,0x18,0x2E,0xD1, +0x37,0xC9,0x00,0x00,0x00,0x00,0x81,0x3E,0x01,0x18,0x05,0x3E,0x80,0x18,0x01,0xAF, +0xE5,0xDD,0xE1,0xD5,0xFD,0xE1,0xDD,0x46,0x03,0xFD,0x4E,0x03,0xB7,0x28,0x0B,0xFA, +0x58,0x33,0x3E,0x80,0xA9,0x4F,0x18,0x02,0xA8,0x47,0xDD,0x7E,0x04,0xFD,0xBE,0x04, +0x30,0x14,0x50,0x41,0x4A,0xB7,0x57,0xFD,0x7E,0x04,0xDD,0x77,0x04,0x28,0x54,0x92, +0xFE,0x21,0x30,0x4F,0x18,0x11,0xAF,0xFD,0x96,0x04,0x28,0x59,0xDD,0x86,0x04,0xFE, +0x21,0x30,0x52,0xE5,0xFD,0xE1,0xEB,0x5F,0x78,0xA9,0xF5,0xC5,0x7B,0xCD,0x43,0x36, +0x79,0xC1,0x4F,0xF1,0xFA,0xDA,0x33,0xFD,0x7E,0x00,0x85,0x6F,0xFD,0x7E,0x01,0x8C, +0x67,0xFD,0x7E,0x02,0x8B,0x5F,0xFD,0x7E,0x03,0xCB,0xFF,0x8A,0x57,0xD2,0xBA,0x36, +0xCB,0x1A,0xCB,0x1B,0xCB,0x1C,0xCB,0x1D,0xCB,0x19,0xDD,0x34,0x04,0xC2,0xBA,0x36, +0xC3,0xEE,0x36,0xFD,0x7E,0x02,0xDD,0x77,0x02,0xFD,0x7E,0x01,0xDD,0x77,0x01,0xFD, +0x7E,0x00,0xDD,0x77,0x00,0xDD,0x70,0x03,0x37,0xC9,0xAF,0x91,0x4F,0xFD,0x7E,0x00, +0x9D,0x6F,0xFD,0x7E,0x01,0x9C,0x67,0xFD,0x7E,0x02,0x9B,0x5F,0xFD,0x7E,0x03,0xCB, +0xFF,0x9A,0x57,0x30,0x16,0x78,0x2F,0x47,0xAF,0x91,0x4F,0x3E,0x00,0x9D,0x6F,0x3E, +0x00,0x9C,0x67,0x3E,0x00,0x9B,0x5F,0x3E,0x00,0x9A,0x57,0x87,0xDA,0xBA,0x36,0xC3, +0xB1,0x36,0x11,0x53,0x2F,0xD5,0xFD,0xE1,0xE5,0xDD,0xE1,0xFD,0x7E,0x04,0xB7,0x28, +0x2C,0x3D,0xCD,0x48,0x35,0x28,0x26,0x30,0x21,0xF5,0xC5,0xCD,0x50,0x34,0x79,0xC1, +0x4F,0xF1,0xCB,0x7A,0x20,0x0D,0x3D,0x28,0x14,0xCB,0x21,0xCB,0x15,0xCB,0x14,0xCB, +0x13,0xCB,0x12,0xDD,0x77,0x04,0xB7,0xC2,0xBA,0x36,0xC3,0xEE,0x36,0xC3,0xE6,0x36, +0x21,0x00,0x00,0x5D,0x54,0xFD,0x7E,0x00,0xCD,0x93,0x34,0xFD,0x7E,0x01,0xCD,0x93, +0x34,0xFD,0x7E,0x02,0xCD,0x93,0x34,0xFD,0x7E,0x03,0xF6,0x80,0x06,0x08,0x1F,0x4F, +0x30,0x14,0x7D,0xDD,0x86,0x00,0x6F,0x7C,0xDD,0x8E,0x01,0x67,0x7B,0xDD,0x8E,0x02, +0x5F,0x7A,0xDD,0x8E,0x03,0x57,0xCB,0x1A,0xCB,0x1B,0xCB,0x1C,0xCB,0x1D,0xCB,0x19, +0x10,0xDE,0xC9,0xB7,0x20,0xD6,0x6C,0x63,0x5A,0x57,0xC9,0x11,0x53,0x2F,0xD5,0xFD, +0xE1,0xE5,0xDD,0xE1,0xAF,0xFD,0x96,0x04,0x28,0x58,0xCD,0x48,0x35,0xCA,0xE6,0x36, +0x30,0x4D,0xC5,0x4F,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F,0xEB,0xFD,0x46,0x03, +0xCB,0xF8,0xCD,0x32,0x35,0x30,0x06,0x79,0xB7,0x20,0x08,0x18,0x31,0x0D,0x29,0xCB, +0x13,0xCB,0x12,0xDD,0x71,0x04,0xCD,0x07,0x35,0xDD,0x71,0x03,0xCD,0x07,0x35,0xDD, +0x71,0x02,0xCD,0x07,0x35,0xDD,0x71,0x01,0xCD,0x07,0x35,0xD4,0x32,0x35,0x9F,0x69, +0xDD,0x66,0x01,0xDD,0x5E,0x02,0xDD,0x56,0x03,0xC1,0x4F,0xC3,0xBA,0x36,0xC1,0xC3, +0xEE,0x36,0xCD,0x94,0x35,0xAF,0xC9,0x0E,0x01,0x38,0x08,0x7A,0xB8,0x3F,0xCC,0x36, +0x35,0x30,0x13,0x7D,0xFD,0x96,0x00,0x6F,0x7C,0xFD,0x9E,0x01,0x67,0x7B,0xFD,0x9E, +0x02,0x5F,0x7A,0x98,0x57,0x37,0xCB,0x11,0x9F,0x29,0xCB,0x13,0xCB,0x12,0x3C,0x20, +0xD8,0xC9,0x7A,0xB8,0x3F,0xC0,0x7B,0xFD,0xBE,0x02,0x3F,0xC0,0x7C,0xFD,0xBE,0x01, +0x3F,0xC0,0x7D,0xFD,0xBE,0x00,0x3F,0xC9,0x4F,0xDD,0x7E,0x03,0xFD,0xAE,0x03,0x47, +0xDD,0x7E,0x04,0xB7,0xC8,0x81,0x4F,0x1F,0xA9,0x79,0xF2,0x68,0x35,0xDD,0xCB,0x03, +0xFE,0xD6,0x7F,0x37,0xC0,0xFE,0x01,0xC9,0xB7,0xF8,0xAF,0xC9,0xE5,0xDD,0xE1,0xDD, +0x7E,0x04,0xB7,0xC8,0xD6,0x80,0x37,0xC9,0xE5,0xDD,0xE1,0xB7,0xFA,0x89,0x35,0xDD, +0x86,0x04,0xDD,0x77,0x04,0x3F,0xD8,0x18,0x0B,0xDD,0x86,0x04,0x38,0x02,0xAF,0x37, +0xDD,0x77,0x04,0xC9,0xDD,0x46,0x03,0xCD,0xEE,0x36,0xE5,0xDD,0xE1,0xD5,0xFD,0xE1, +0xDD,0x7E,0x04,0xFD,0xBE,0x04,0x38,0x3A,0x20,0x33,0xB7,0xC8,0xDD,0x7E,0x03,0xFD, +0xAE,0x03,0xFA,0xDD,0x35,0xDD,0x7E,0x03,0xFD,0x96,0x03,0x20,0x17,0xDD,0x7E,0x02, +0xFD,0x96,0x02,0x20,0x0F,0xDD,0x7E,0x01,0xFD,0x96,0x01,0x20,0x07,0xDD,0x7E,0x00, +0xFD,0x96,0x00,0xC8,0x9F,0xFD,0xAE,0x03,0x87,0x9F,0xD8,0x3C,0xC9,0xDD,0x7E,0x03, +0x18,0xF6,0xFD,0x7E,0x03,0x2F,0x18,0xF0,0xE5,0xDD,0xE1,0xDD,0x7E,0x04,0xB7,0xC8, +0xDD,0x7E,0x03,0x87,0x9F,0xD8,0x3C,0xC9,0xE5,0xDD,0xE1,0xDD,0x7E,0x03,0xEE,0x80, +0xDD,0x77,0x03,0xC9,0xAF,0xDD,0x96,0x04,0x20,0x0A,0x06,0x04,0x77,0x23,0x10,0xFC, +0x0E,0x01,0x37,0xC9,0xC6,0xA0,0xD0,0xE5,0xCD,0x3D,0x36,0xAF,0xB8,0x8F,0xB1,0x4D, +0x44,0xE1,0x71,0x23,0x70,0x23,0x73,0x23,0x5F,0x7E,0x72,0xE6,0x80,0x47,0x0E,0x04, +0xAF,0xB6,0x20,0x05,0x2B,0x0D,0x20,0xF9,0x0C,0x7B,0xB7,0x37,0xC9,0xFE,0x21,0x38, +0x02,0x3E,0x21,0x5E,0x23,0x56,0x23,0x4E,0x23,0x66,0x69,0xEB,0xCB,0xFA,0x01,0x00, +0x00,0x18,0x0B,0x4F,0x78,0xB5,0x47,0x79,0x4D,0x6C,0x63,0x5A,0x16,0x00,0xD6,0x08, +0x30,0xF1,0xC6,0x08,0xC8,0xCB,0x3A,0xCB,0x1B,0xCB,0x1C,0xCB,0x1D,0xCB,0x19,0x3D, +0x20,0xF3,0xC9,0x14,0x15,0xF8,0x20,0x17,0x57,0x7B,0xB4,0xB5,0xB1,0xC8,0x7A,0xD6, +0x08,0x38,0x1C,0xC8,0x53,0x5C,0x65,0x69,0x0E,0x00,0x14,0x15,0x28,0xF1,0xF8,0x3D, +0xC8,0xCB,0x21,0xCB,0x15,0xCB,0x14,0xCB,0x13,0xCB,0x12,0xF2,0x8F,0x36,0xC9,0xAF, +0xC9,0xE5,0xDD,0xE1,0xDD,0x70,0x04,0x47,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F, +0xEB,0xDD,0x7E,0x04,0xCD,0x73,0x36,0xDD,0x77,0x04,0xCB,0x21,0x30,0x13,0x2C,0x20, +0x10,0x24,0x20,0x0D,0x1C,0x20,0x0A,0x14,0x20,0x07,0xDD,0x34,0x04,0x28,0x1F,0x16, +0x80,0x78,0xF6,0x7F,0xA2,0xDD,0x77,0x03,0xDD,0x73,0x02,0xDD,0x74,0x01,0xDD,0x75, +0x00,0xDD,0xE5,0xE1,0x37,0xC9,0xAF,0xDD,0x77,0x04,0x18,0xF5,0x06,0x00,0x78,0xF6, +0x7F,0xDD,0x77,0x03,0xF6,0xFF,0xDD,0x77,0x04,0xDD,0x77,0x00,0xDD,0x77,0x01,0xDD, +0x77,0x02,0xC9,0xC7,0xC7,0xC7,0xC7,0xC7,0x44,0xCD,0xD1,0x37,0x18,0x02,0x06,0x00, +0x1E,0x00,0x0E,0x02,0xC9,0x7C,0xB7,0xFA,0x20,0x37,0xB0,0xFA,0xD4,0x37,0x37,0xC9, +0xEE,0x80,0xB5,0xC0,0x78,0x37,0x8F,0xC9,0xB7,0xED,0x5A,0x37,0xE0,0xF6,0xFF,0xC9, +0xEB,0xB7,0xED,0x52,0x37,0xE0,0xF6,0xFF,0xC9,0xCD,0x45,0x37,0xCD,0x50,0x37,0xD2, +0x15,0x37,0xF6,0xFF,0xC9,0x7C,0xAA,0x47,0xEB,0xCD,0xD1,0x37,0xEB,0xC3,0xD1,0x37, +0x7C,0xB7,0x28,0x05,0x7A,0xB7,0x37,0xC0,0xEB,0xB5,0xC8,0x7A,0xB3,0x7D,0x6B,0x62, +0xC8,0xFE,0x03,0x38,0x10,0x37,0x8F,0x30,0xFD,0x29,0xD8,0x87,0x30,0x02,0x19,0xD8, +0xFE,0x80,0x20,0xF5,0xC9,0xFE,0x01,0xC8,0x29,0xC9,0xCD,0x89,0x37,0xDA,0x15,0x37, +0xC9,0x4C,0xCD,0x89,0x37,0xEB,0x41,0x18,0xF4,0xCD,0x45,0x37,0x7A,0xB3,0xC8,0xC5, +0xEB,0x06,0x01,0x7C,0xB7,0x20,0x09,0x7A,0xBD,0x38,0x05,0x65,0x2E,0x00,0x06,0x09, +0x7B,0x95,0x7A,0x9C,0x38,0x05,0x04,0x29,0x30,0xF6,0x3F,0x3F,0x78,0x44,0x4D,0x21, +0x00,0x00,0x3D,0x20,0x03,0x18,0x17,0x29,0xF5,0x78,0x1F,0x47,0x79,0x1F,0x4F,0x7B, +0x91,0x7A,0x98,0x38,0x05,0x57,0x7B,0x91,0x5F,0x2C,0xF1,0x3D,0x20,0xE9,0x37,0xC1, +0xC9,0x7C,0xB7,0xF0,0xAF,0x95,0x6F,0x9C,0x95,0xBC,0x67,0x37,0xC0,0xFE,0x01,0xC9, +0x7C,0x87,0x9F,0xD8,0xB5,0xC8,0xAF,0x3C,0xC9,0x7C,0xAA,0x7C,0xF2,0xF4,0x37,0x87, +0x9F,0xD8,0x3C,0xC9,0xBA,0x20,0xF9,0x7D,0x93,0x20,0xF5,0xC9,0xC7,0xC7,0xC7,0x01, +0xFF,0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xFF,0xFF,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0, +0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xFF,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0xFF, +0x0C,0x18,0x30,0x7E,0x0C,0x18,0x30,0x00,0xFF,0xC3,0xE7,0xDB,0xDB,0xE7,0xC3,0xFF, +0x00,0x01,0x03,0x06,0xCC,0x78,0x30,0x00,0x3C,0x66,0xC3,0xC3,0xFF,0x24,0xE7,0x00, +0x00,0x00,0x30,0x60,0xFF,0x60,0x30,0x00,0x00,0x00,0x0C,0x06,0xFF,0x06,0x0C,0x00, +0x18,0x18,0x18,0x18,0xDB,0x7E,0x3C,0x18,0x18,0x3C,0x7E,0xDB,0x18,0x18,0x18,0x18, +0x18,0x5A,0x3C,0x99,0xDB,0x7E,0x3C,0x18,0x00,0x03,0x33,0x63,0xFE,0x60,0x30,0x00, +0x3C,0x66,0xFF,0xDB,0xDB,0xFF,0x66,0x3C,0x3C,0x66,0xC3,0xDB,0xDB,0xC3,0x66,0x3C, +0xFF,0xC3,0xC3,0xFF,0xC3,0xC3,0xC3,0xFF,0x3C,0x7E,0xDB,0xDB,0xDF,0xC3,0x66,0x3C, +0x3C,0x66,0xC3,0xDF,0xDB,0xDB,0x7E,0x3C,0x3C,0x66,0xC3,0xFB,0xDB,0xDB,0x7E,0x3C, +0x3C,0x7E,0xDB,0xDB,0xFB,0xC3,0x66,0x3C,0x00,0x01,0x33,0x1E,0xCE,0x7B,0x31,0x00, +0x7E,0x66,0x66,0x66,0x66,0x66,0x66,0xE7,0x03,0x03,0x03,0xFF,0x03,0x03,0x03,0x00, +0xFF,0x66,0x3C,0x18,0x18,0x3C,0x66,0xFF,0x18,0x18,0x3C,0x3C,0x3C,0x3C,0x18,0x18, +0x3C,0x66,0x66,0x30,0x18,0x00,0x18,0x00,0x3C,0x66,0xC3,0xFF,0xC3,0xC3,0x66,0x3C, +0xFF,0xDB,0xDB,0xDB,0xFB,0xC3,0xC3,0xFF,0xFF,0xC3,0xC3,0xFB,0xDB,0xDB,0xDB,0xFF, +0xFF,0xC3,0xC3,0xDF,0xDB,0xDB,0xDB,0xFF,0xFF,0xDB,0xDB,0xDB,0xDF,0xC3,0xC3,0xFF, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x00,0x18,0x00, +0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x00,0x6C,0x6C,0xFE,0x6C,0xFE,0x6C,0x6C,0x00, +0x18,0x3E,0x58,0x3C,0x1A,0x7C,0x18,0x00,0x00,0xC6,0xCC,0x18,0x30,0x66,0xC6,0x00, +0x38,0x6C,0x38,0x76,0xDC,0xCC,0x76,0x00,0x18,0x18,0x30,0x00,0x00,0x00,0x00,0x00, +0x0C,0x18,0x30,0x30,0x30,0x18,0x0C,0x00,0x30,0x18,0x0C,0x0C,0x0C,0x18,0x30,0x00, +0x00,0x66,0x3C,0xFF,0x3C,0x66,0x00,0x00,0x00,0x18,0x18,0x7E,0x18,0x18,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x30,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x06,0x0C,0x18,0x30,0x60,0xC0,0x80,0x00, +0x7C,0xC6,0xCE,0xD6,0xE6,0xC6,0x7C,0x00,0x18,0x38,0x18,0x18,0x18,0x18,0x7E,0x00, +0x3C,0x66,0x06,0x3C,0x60,0x66,0x7E,0x00,0x3C,0x66,0x06,0x1C,0x06,0x66,0x3C,0x00, +0x1C,0x3C,0x6C,0xCC,0xFE,0x0C,0x1E,0x00,0x7E,0x62,0x60,0x7C,0x06,0x66,0x3C,0x00, +0x3C,0x66,0x60,0x7C,0x66,0x66,0x3C,0x00,0x7E,0x66,0x06,0x0C,0x18,0x18,0x18,0x00, +0x3C,0x66,0x66,0x3C,0x66,0x66,0x3C,0x00,0x3C,0x66,0x66,0x3E,0x06,0x66,0x3C,0x00, +0x00,0x00,0x18,0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x18,0x18,0x00,0x18,0x18,0x30, +0x0C,0x18,0x30,0x60,0x30,0x18,0x0C,0x00,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00, +0x60,0x30,0x18,0x0C,0x18,0x30,0x60,0x00,0x3C,0x66,0x66,0x0C,0x18,0x00,0x18,0x00, +0x7C,0xC6,0xDE,0xDE,0xDE,0xC0,0x7C,0x00,0x18,0x3C,0x66,0x66,0x7E,0x66,0x66,0x00, +0xFC,0x66,0x66,0x7C,0x66,0x66,0xFC,0x00,0x3C,0x66,0xC0,0xC0,0xC0,0x66,0x3C,0x00, +0xF8,0x6C,0x66,0x66,0x66,0x6C,0xF8,0x00,0xFE,0x62,0x68,0x78,0x68,0x62,0xFE,0x00, +0xFE,0x62,0x68,0x78,0x68,0x60,0xF0,0x00,0x3C,0x66,0xC0,0xC0,0xCE,0x66,0x3E,0x00, +0x66,0x66,0x66,0x7E,0x66,0x66,0x66,0x00,0x7E,0x18,0x18,0x18,0x18,0x18,0x7E,0x00, +0x1E,0x0C,0x0C,0x0C,0xCC,0xCC,0x78,0x00,0xE6,0x66,0x6C,0x78,0x6C,0x66,0xE6,0x00, +0xF0,0x60,0x60,0x60,0x62,0x66,0xFE,0x00,0xC6,0xEE,0xFE,0xFE,0xD6,0xC6,0xC6,0x00, +0xC6,0xE6,0xF6,0xDE,0xCE,0xC6,0xC6,0x00,0x38,0x6C,0xC6,0xC6,0xC6,0x6C,0x38,0x00, +0xFC,0x66,0x66,0x7C,0x60,0x60,0xF0,0x00,0x38,0x6C,0xC6,0xC6,0xDA,0xCC,0x76,0x00, +0xFC,0x66,0x66,0x7C,0x6C,0x66,0xE6,0x00,0x3C,0x66,0x60,0x3C,0x06,0x66,0x3C,0x00, +0x7E,0x5A,0x18,0x18,0x18,0x18,0x3C,0x00,0x66,0x66,0x66,0x66,0x66,0x66,0x3C,0x00, +0x66,0x66,0x66,0x66,0x66,0x3C,0x18,0x00,0xC6,0xC6,0xC6,0xD6,0xFE,0xEE,0xC6,0x00, +0xC6,0x6C,0x38,0x38,0x6C,0xC6,0xC6,0x00,0x66,0x66,0x66,0x3C,0x18,0x18,0x3C,0x00, +0xFE,0xC6,0x8C,0x18,0x32,0x66,0xFE,0x00,0x3C,0x30,0x30,0x30,0x30,0x30,0x3C,0x00, +0xC0,0x60,0x30,0x18,0x0C,0x06,0x02,0x00,0x3C,0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x00, +0x18,0x3C,0x7E,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF, +0x30,0x18,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x0C,0x7C,0xCC,0x76,0x00, +0xE0,0x60,0x7C,0x66,0x66,0x66,0xDC,0x00,0x00,0x00,0x3C,0x66,0x60,0x66,0x3C,0x00, +0x1C,0x0C,0x7C,0xCC,0xCC,0xCC,0x76,0x00,0x00,0x00,0x3C,0x66,0x7E,0x60,0x3C,0x00, +0x1C,0x36,0x30,0x78,0x30,0x30,0x78,0x00,0x00,0x00,0x3E,0x66,0x66,0x3E,0x06,0x7C, +0xE0,0x60,0x6C,0x76,0x66,0x66,0xE6,0x00,0x18,0x00,0x38,0x18,0x18,0x18,0x3C,0x00, +0x06,0x00,0x0E,0x06,0x06,0x66,0x66,0x3C,0xE0,0x60,0x66,0x6C,0x78,0x6C,0xE6,0x00, +0x38,0x18,0x18,0x18,0x18,0x18,0x3C,0x00,0x00,0x00,0x6C,0xFE,0xD6,0xD6,0xC6,0x00, +0x00,0x00,0xDC,0x66,0x66,0x66,0x66,0x00,0x00,0x00,0x3C,0x66,0x66,0x66,0x3C,0x00, +0x00,0x00,0xDC,0x66,0x66,0x7C,0x60,0xF0,0x00,0x00,0x76,0xCC,0xCC,0x7C,0x0C,0x1E, +0x00,0x00,0xDC,0x76,0x60,0x60,0xF0,0x00,0x00,0x00,0x3C,0x60,0x3C,0x06,0x7C,0x00, +0x30,0x30,0x7C,0x30,0x30,0x36,0x1C,0x00,0x00,0x00,0x66,0x66,0x66,0x66,0x3E,0x00, +0x00,0x00,0x66,0x66,0x66,0x3C,0x18,0x00,0x00,0x00,0xC6,0xD6,0xD6,0xFE,0x6C,0x00, +0x00,0x00,0xC6,0x6C,0x38,0x6C,0xC6,0x00,0x00,0x00,0x66,0x66,0x66,0x3E,0x06,0x7C, +0x00,0x00,0x7E,0x4C,0x18,0x32,0x7E,0x00,0x0E,0x18,0x18,0x70,0x18,0x18,0x0E,0x00, +0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,0x70,0x18,0x18,0x0E,0x18,0x18,0x70,0x00, +0x76,0xDC,0x00,0x00,0x00,0x00,0x00,0x00,0xCC,0x33,0xCC,0x33,0xCC,0x33,0xCC,0x33, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0x00,0x00,0x00,0x00, +0x0F,0x0F,0x0F,0x0F,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF0, +0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0xFF,0xFF,0xFF,0xFF,0xF0,0xF0,0xF0,0xF0, +0x00,0x00,0x00,0x00,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F, +0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x0F,0x0F, +0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xF0,0xF0,0xF0,0xF0,0xFF,0xFF,0xFF,0xFF, +0x0F,0x0F,0x0F,0x0F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x00,0x00,0x00, +0x00,0x00,0x00,0x1F,0x1F,0x00,0x00,0x00,0x18,0x18,0x18,0x1F,0x0F,0x00,0x00,0x00, +0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18, +0x00,0x00,0x00,0x0F,0x1F,0x18,0x18,0x18,0x18,0x18,0x18,0x1F,0x1F,0x18,0x18,0x18, +0x00,0x00,0x00,0xF8,0xF8,0x00,0x00,0x00,0x18,0x18,0x18,0xF8,0xF0,0x00,0x00,0x00, +0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x18,0x18,0x18,0xFF,0xFF,0x00,0x00,0x00, +0x00,0x00,0x00,0xF0,0xF8,0x18,0x18,0x18,0x18,0x18,0x18,0xF8,0xF8,0x18,0x18,0x18, +0x00,0x00,0x00,0xFF,0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0xFF,0xFF,0x18,0x18,0x18, +0x10,0x38,0x6C,0xC6,0x00,0x00,0x00,0x00,0x0C,0x18,0x30,0x00,0x00,0x00,0x00,0x00, +0x66,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x66,0x60,0xF8,0x60,0x66,0xFE,0x00, +0x38,0x44,0xBA,0xA2,0xBA,0x44,0x38,0x00,0x7E,0xF4,0xF4,0x74,0x34,0x34,0x34,0x00, +0x1E,0x30,0x38,0x6C,0x38,0x18,0xF0,0x00,0x18,0x18,0x0C,0x00,0x00,0x00,0x00,0x00, +0x40,0xC0,0x44,0x4C,0x54,0x1E,0x04,0x00,0x40,0xC0,0x4C,0x52,0x44,0x08,0x1E,0x00, +0xE0,0x10,0x62,0x16,0xEA,0x0F,0x02,0x00,0x00,0x18,0x18,0x7E,0x18,0x18,0x7E,0x00, +0x18,0x18,0x00,0x7E,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x7E,0x06,0x06,0x00,0x00, +0x18,0x00,0x18,0x30,0x66,0x66,0x3C,0x00,0x18,0x00,0x18,0x18,0x18,0x18,0x18,0x00, +0x00,0x00,0x73,0xDE,0xCC,0xDE,0x73,0x00,0x7C,0xC6,0xC6,0xFC,0xC6,0xC6,0xF8,0xC0, +0x00,0x66,0x66,0x3C,0x66,0x66,0x3C,0x00,0x3C,0x60,0x60,0x3C,0x66,0x66,0x3C,0x00, +0x00,0x00,0x1E,0x30,0x7C,0x30,0x1E,0x00,0x38,0x6C,0xC6,0xFE,0xC6,0x6C,0x38,0x00, +0x00,0xC0,0x60,0x30,0x38,0x6C,0xC6,0x00,0x00,0x00,0x66,0x66,0x66,0x7C,0x60,0x60, +0x00,0x00,0x00,0xFE,0x6C,0x6C,0x6C,0x00,0x00,0x00,0x00,0x7E,0xD8,0xD8,0x70,0x00, +0x03,0x06,0x0C,0x3C,0x66,0x3C,0x60,0xC0,0x03,0x06,0x0C,0x66,0x66,0x3C,0x60,0xC0, +0x00,0xE6,0x3C,0x18,0x38,0x6C,0xC7,0x00,0x00,0x00,0x66,0xC3,0xDB,0xDB,0x7E,0x00, +0xFE,0xC6,0x60,0x30,0x60,0xC6,0xFE,0x00,0x00,0x7C,0xC6,0xC6,0xC6,0x6C,0xEE,0x00, +0x18,0x30,0x60,0xC0,0x80,0x00,0x00,0x00,0x18,0x0C,0x06,0x03,0x01,0x00,0x00,0x00, +0x00,0x00,0x00,0x01,0x03,0x06,0x0C,0x18,0x00,0x00,0x00,0x80,0xC0,0x60,0x30,0x18, +0x18,0x3C,0x66,0xC3,0x81,0x00,0x00,0x00,0x18,0x0C,0x06,0x03,0x03,0x06,0x0C,0x18, +0x00,0x00,0x00,0x81,0xC3,0x66,0x3C,0x18,0x18,0x30,0x60,0xC0,0xC0,0x60,0x30,0x18, +0x18,0x30,0x60,0xC1,0x83,0x06,0x0C,0x18,0x18,0x0C,0x06,0x83,0xC1,0x60,0x30,0x18, +0x18,0x3C,0x66,0xC3,0xC3,0x66,0x3C,0x18,0xC3,0xE7,0x7E,0x3C,0x3C,0x7E,0xE7,0xC3, +0x03,0x07,0x0E,0x1C,0x38,0x70,0xE0,0xC0,0xC0,0xE0,0x70,0x38,0x1C,0x0E,0x07,0x03, +0xCC,0xCC,0x33,0x33,0xCC,0xCC,0x33,0x33,0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55, +0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x03, +0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0, +0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0xFF,0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01, +0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xFF,0x80,0xC0,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF, +0xAA,0x55,0xAA,0x55,0x00,0x00,0x00,0x00,0x0A,0x05,0x0A,0x05,0x0A,0x05,0x0A,0x05, +0x00,0x00,0x00,0x00,0xAA,0x55,0xAA,0x55,0xA0,0x50,0xA0,0x50,0xA0,0x50,0xA0,0x50, +0xAA,0x54,0xA8,0x50,0xA0,0x40,0x80,0x00,0xAA,0x55,0x2A,0x15,0x0A,0x05,0x02,0x01, +0x01,0x02,0x05,0x0A,0x15,0x2A,0x55,0xAA,0x00,0x80,0x40,0xA0,0x50,0xA8,0x54,0xAA, +0x7E,0xFF,0x99,0xFF,0xBD,0xC3,0xFF,0x7E,0x7E,0xFF,0x99,0xFF,0xC3,0xBD,0xFF,0x7E, +0x38,0x38,0xFE,0xFE,0xFE,0x10,0x38,0x00,0x10,0x38,0x7C,0xFE,0x7C,0x38,0x10,0x00, +0x6C,0xFE,0xFE,0xFE,0x7C,0x38,0x10,0x00,0x10,0x38,0x7C,0xFE,0xFE,0x10,0x38,0x00, +0x00,0x3C,0x66,0xC3,0xC3,0x66,0x3C,0x00,0x00,0x3C,0x7E,0xFF,0xFF,0x7E,0x3C,0x00, +0x00,0x7E,0x66,0x66,0x66,0x66,0x7E,0x00,0x00,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x00, +0x0F,0x07,0x0D,0x78,0xCC,0xCC,0xCC,0x78,0x3C,0x66,0x66,0x66,0x3C,0x18,0x7E,0x18, +0x0C,0x0C,0x0C,0x0C,0x0C,0x3C,0x7C,0x38,0x18,0x1C,0x1E,0x1B,0x18,0x78,0xF8,0x70, +0x99,0x5A,0x24,0xC3,0xC3,0x24,0x5A,0x99,0x10,0x38,0x38,0x38,0x38,0x38,0x7C,0xD6, +0x18,0x3C,0x7E,0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0xFF,0x7E,0x3C,0x18, +0x10,0x30,0x70,0xFF,0xFF,0x70,0x30,0x10,0x08,0x0C,0x0E,0xFF,0xFF,0x0E,0x0C,0x08, +0x00,0x00,0x18,0x3C,0x7E,0xFF,0xFF,0x00,0x00,0x00,0xFF,0xFF,0x7E,0x3C,0x18,0x00, +0x80,0xE0,0xF8,0xFE,0xF8,0xE0,0x80,0x00,0x02,0x0E,0x3E,0xFE,0x3E,0x0E,0x02,0x00, +0x38,0x38,0x92,0x7C,0x10,0x28,0x28,0x28,0x38,0x38,0x10,0xFE,0x10,0x28,0x44,0x82, +0x38,0x38,0x12,0x7C,0x90,0x28,0x24,0x22,0x38,0x38,0x90,0x7C,0x12,0x28,0x48,0x88, +0x00,0x3C,0x18,0x3C,0x3C,0x3C,0x18,0x00,0x3C,0xFF,0xFF,0x18,0x0C,0x18,0x30,0x18, +0x18,0x3C,0x7E,0x18,0x18,0x7E,0x3C,0x18,0x00,0x24,0x66,0xFF,0x66,0x24,0x00,0x00 +}; + + + +const unsigned char gb_rom_464_1[]={ +0x80,0x01,0x00,0x00,0x4C,0xC0,0x31,0x00,0xC0,0xCD,0xCB,0xBC,0xCD,0xC4,0xF4,0xDA, +0x00,0x00,0x21,0x00,0xAC,0x36,0x00,0x06,0x1B,0x23,0x36,0xC9,0x10,0xFB,0x21,0x3F, +0xC0,0xCD,0x37,0xC3,0xAF,0x32,0x00,0xAC,0xCD,0xCB,0xDD,0xCD,0x84,0xCA,0xCD,0x97, +0xBD,0xCD,0xD3,0xC0,0xCD,0x3E,0xC1,0x11,0xF0,0x00,0xCD,0x06,0xF7,0x18,0x25,0x20, +0x42,0x41,0x53,0x49,0x43,0x20,0x31,0x2E,0x30,0x0A,0x0A,0x00,0x42,0x41,0x53,0x49, +0xC3,0x00,0xCD,0xE1,0xCE,0xC0,0x31,0x00,0xC0,0xCD,0x9A,0xE7,0xCD,0x63,0xE1,0xCD, +0x43,0xCA,0x38,0x54,0xCD,0x01,0xAC,0x31,0x00,0xC0,0xCD,0x62,0xC1,0xCD,0xD6,0xDD, +0xDC,0xB6,0xBC,0xCD,0x48,0xBB,0xCD,0x86,0xC3,0x3A,0x45,0xAE,0xB7,0xC4,0x3E,0xC1, +0x3A,0xAA,0xAD,0xD6,0x02,0x20,0x09,0x32,0xAA,0xAD,0xCD,0xDF,0xCA,0xEB,0x38,0xC6, +0x21,0xCC,0xC0,0xCD,0x41,0xC3,0xCD,0xCB,0xDD,0x3A,0x1C,0xAC,0xB7,0x28,0x11,0xCD, +0x02,0xC1,0x30,0xC0,0x7E,0xB7,0x28,0xF1,0xCD,0xD2,0xE6,0xCD,0x7A,0xC1,0x18,0xE9, +0xCD,0x3B,0xCA,0x30,0xFB,0xCD,0x4E,0xC3,0xCD,0xBC,0xE6,0x30,0x05,0xC4,0x7A,0xC1, +0x18,0xD4,0xCD,0xBB,0xDE,0xCD,0x53,0xC4,0x2B,0xC3,0x74,0xDD,0x52,0x65,0x61,0x64, +0x79,0x0A,0x00,0xAF,0x18,0x05,0x22,0x1D,0xAC,0x3E,0xFF,0x32,0x1C,0xAC,0xC9,0x11, +0x0A,0x00,0x28,0x02,0xFE,0x2C,0xC4,0xE1,0xCE,0xD5,0x11,0x0A,0x00,0xCD,0x55,0xDD, +0xDC,0xE1,0xCE,0xCD,0x4A,0xDD,0xEB,0x22,0x1F,0xAC,0xE1,0xCD,0xD6,0xC0,0xC1,0xC3, +0x96,0xC0,0x2A,0x1D,0xAC,0xE5,0xCD,0x79,0xEE,0xD1,0xCD,0xA3,0xE7,0x3E,0x2A,0x38, +0x02,0x3E,0x20,0xCD,0x56,0xC3,0xCD,0xD3,0xC0,0xCD,0x3B,0xCA,0xD0,0xCD,0x4E,0xC3, +0xE5,0x2A,0x1F,0xAC,0x19,0xD4,0xD6,0xC0,0xE1,0x37,0xC9,0xC0,0xCD,0x3E,0xC1,0xC3, +0x64,0xC0,0xE5,0xCD,0x8C,0xC1,0xCD,0x5B,0xC1,0xCD,0x7A,0xC1,0xE1,0xC9,0x2A,0x7F, +0xAE,0xEB,0x2A,0x7B,0xAE,0xCD,0xDA,0xFF,0x62,0x6B,0x13,0xAF,0x77,0xED,0xB0,0x32, +0x45,0xAE,0xCD,0x76,0xE6,0xCD,0x8C,0xC1,0xCD,0x6B,0xC1,0xCD,0xAD,0xD2,0xAF,0xCD, +0x73,0xBD,0xCD,0xB3,0xFB,0xCD,0xFD,0xD9,0xC3,0x9D,0xC1,0xCD,0xE6,0xDD,0xCD,0xD3, +0xC0,0xCD,0xF2,0xF1,0xCD,0x76,0xE6,0xCD,0xB1,0xD5,0xCD,0xD9,0xCB,0xCD,0xAB,0xCB, +0xCD,0xED,0xC8,0xCD,0x8E,0xF5,0xCD,0xD2,0xD5,0xC3,0xE5,0xDC,0xC5,0xE5,0xCD,0xCA, +0xF5,0xCD,0xAE,0xD5,0xCD,0xFC,0xD5,0xCD,0x89,0xE9,0xE1,0xC1,0xC9,0xAF,0xCD,0xAF, +0xC1,0xAF,0xE5,0xF5,0xFE,0x08,0xDC,0xB4,0xBB,0xF1,0x21,0x21,0xAC,0x18,0x04,0xE5, +0x21,0x22,0xAC,0xD5,0x5F,0x7E,0x73,0xD1,0xE1,0xC9,0x3A,0x21,0xAC,0xFE,0x08,0xC9, +0x3A,0x22,0xAC,0xFE,0x09,0xC9,0xCD,0xE3,0xC1,0x18,0xD7,0xCD,0xE3,0xC1,0x18,0xDF, +0xCD,0xE3,0xC1,0xFE,0x08,0x30,0x2E,0xCD,0xA2,0xC1,0xC1,0xF5,0xCD,0xF9,0xFF,0xF1, +0xC3,0xA2,0xC1,0x7E,0xFE,0x23,0x3E,0x00,0xC0,0xCD,0xF5,0xC1,0xF5,0xCD,0x55,0xDD, +0xD4,0x4A,0xDD,0xF1,0xC9,0xCD,0x37,0xDD,0x23,0x3E,0x0A,0xC5,0xD5,0x47,0xCD,0x67, +0xCE,0xB8,0xD1,0xC1,0xD8,0x1E,0x05,0xC3,0x94,0xCA,0xCD,0xD0,0xC1,0x01,0x96,0xBB, +0x18,0x06,0xCD,0xD0,0xC1,0x01,0x90,0xBB,0xCD,0x4B,0xC2,0xE5,0xCD,0xF9,0xFF,0xE1, +0xC9,0xCD,0x3C,0xC2,0xE5,0xCD,0x38,0xBC,0xE1,0xC9,0xCD,0x4B,0xC2,0xF5,0xCD,0x37, +0xDD,0x2C,0xCD,0x3C,0xC2,0xF1,0xE5,0xCD,0x32,0xBC,0xE1,0xC9,0xCD,0x44,0xC2,0x41, +0xCD,0x55,0xDD,0xD0,0x3E,0x20,0xCD,0xFB,0xC1,0x4F,0xC9,0x3E,0x10,0x18,0xAC,0x3E, +0x03,0xCD,0xFB,0xC1,0xE5,0xCD,0x0E,0xBC,0xE1,0xC9,0xCD,0xD0,0xC1,0x3E,0x0C,0xC3, +0x6E,0xC3,0x01,0x67,0xC2,0x18,0x12,0x3A,0x21,0xAC,0xFE,0x08,0x30,0x97,0xCD,0x78, +0xBB,0xCD,0x87,0xBB,0x7D,0xC9,0x01,0x90,0xC2,0xCD,0xF5,0xC1,0xCD,0xA2,0xC1,0xF5, +0xCD,0x37,0xDD,0x29,0xE5,0xCD,0xF9,0xFF,0xCD,0x0A,0xFF,0xE1,0xF1,0xC3,0xA2,0xC1, +0x3A,0x21,0xAC,0xFE,0x08,0xCA,0xDF,0xC3,0x3A,0x25,0xAC,0xD0,0xC3,0x9C,0xC3,0x3A, +0x21,0xAC,0xFE,0x08,0x28,0x0D,0xD0,0xD5,0xE5,0xCD,0x69,0xBB,0x7A,0x94,0x3C,0xE1, +0xD1,0x37,0xC9,0x3A,0x24,0xAC,0xFE,0xFF,0xC9,0xE5,0xCD,0xBF,0xC2,0xE1,0xC9,0x67, +0xCD,0x9F,0xC2,0x3F,0xD8,0x6F,0xCD,0x90,0xC2,0x3D,0x37,0xC8,0x84,0x3F,0xD0,0x3D, +0xBD,0xC9,0xCD,0xD0,0xC1,0xCD,0x27,0xC3,0xE5,0xEB,0x24,0x2C,0xCD,0x75,0xBB,0xE1, +0xC9,0x7E,0xFE,0xE7,0x28,0x17,0xCD,0xD0,0xC1,0xCD,0x27,0xC3,0xD5,0xCD,0x37,0xDD, +0x2C,0xCD,0x27,0xC3,0xE3,0x7A,0x55,0x6F,0xCD,0x66,0xBB,0xE1,0xC9,0xCD,0x3F,0xDD, +0xCD,0x12,0xC3,0x48,0xCD,0x55,0xDD,0x06,0x00,0xDC,0x12,0xC3,0xE5,0xCD,0xB7,0xBB, +0xE1,0xC9,0x3E,0x08,0xCD,0xFB,0xC1,0x47,0xC9,0xCD,0xD0,0xC1,0x3E,0xFF,0x18,0x04, +0xCD,0xD0,0xC1,0xAF,0xC3,0x63,0xBB,0xCD,0x2F,0xC3,0x53,0xCD,0x37,0xDD,0x2C,0xD5, +0xCD,0x6D,0xCE,0xD1,0x5F,0x1D,0xC9,0x3E,0x84,0x32,0x24,0xAC,0xE5,0xCD,0x9D,0xC1, +0xE1,0xF5,0xE5,0x7E,0x23,0xB7,0xC4,0x56,0xC3,0x20,0xF8,0xE1,0xF1,0xC9,0xF5,0x3E, +0x0A,0xCD,0x56,0xC3,0xF1,0xC9,0xF5,0xCD,0x5C,0xC3,0xF1,0xC9,0xFE,0x0A,0x20,0x0E, +0x3A,0x21,0xAC,0xFE,0x08,0xCA,0xA8,0xC3,0xD2,0xEA,0xC3,0xC3,0x92,0xC3,0xF5,0xC5, +0x4F,0xCD,0x77,0xC3,0xC1,0xF1,0xC9,0x3A,0x21,0xAC,0xFE,0x08,0xCA,0xB5,0xC3,0xD2, +0xF8,0xC3,0x79,0xC3,0x99,0xC3,0xAF,0xCD,0x63,0xBB,0xCD,0x54,0xBB,0xCD,0x9C,0xC3, +0x3D,0xC8,0x3E,0x0D,0xCD,0x99,0xC3,0x3E,0x0A,0xC3,0x5A,0xBB,0xC5,0xE5,0xCD,0x78, +0xBB,0xCD,0x87,0xBB,0x7C,0xE1,0xC1,0xC9,0xC5,0x0E,0x0D,0xCD,0xB5,0xC3,0x0E,0x0A, +0xCD,0xB5,0xC3,0xC1,0xC9,0xE5,0x79,0xEE,0x0D,0x28,0x13,0x79,0xFE,0x20,0x38,0x14, +0x2A,0x23,0xAC,0x24,0x7D,0x28,0x07,0xBC,0xCC,0xA8,0xC3,0x3A,0x23,0xAC,0x3C,0x28, +0x03,0x32,0x23,0xAC,0xE1,0x79,0xCD,0x2B,0xBD,0xD8,0xCD,0x3C,0xC4,0x18,0xF6,0x3A, +0x23,0xAC,0xC9,0xCD,0x6D,0xCE,0x32,0x24,0xAC,0xC9,0x3E,0x01,0x32,0x25,0xAC,0x3E, +0x0D,0xCD,0x0D,0xC4,0x3E,0x0A,0x18,0x15,0xE5,0x21,0x25,0xAC,0x79,0x06,0x01,0xFE, +0x0D,0x28,0x08,0xFE,0x20,0x38,0x05,0x46,0x04,0x28,0x01,0x70,0xE1,0xCD,0x95,0xBC, +0xD8,0xC3,0x6B,0xCB,0xC3,0x86,0xBC,0xE5,0xCD,0x89,0xBC,0x28,0xF4,0x3F,0x9F,0xCD, +0x05,0xFF,0xE1,0xC9,0x3A,0x22,0xAC,0xFE,0x09,0xCA,0x80,0xBC,0xCD,0x09,0xBB,0xD8, +0xCD,0x81,0xBB,0xCD,0x06,0xBB,0xC3,0x84,0xBB,0xC3,0x09,0xBB,0xCD,0x09,0xBB,0xD0, +0xFE,0xFC,0xC0,0xC5,0xD5,0xE5,0xCD,0x6F,0xC4,0xDA,0x6B,0xCB,0xCD,0x53,0xC4,0xE1, +0xD1,0xC1,0xC9,0xE5,0x11,0x5E,0xC4,0x0E,0xFD,0xCD,0x45,0xBB,0xE1,0xC9,0xE5,0xCD, +0x09,0xBB,0x30,0x04,0xFE,0xEF,0x20,0xF7,0xCD,0x6F,0xC4,0xE1,0xC3,0x47,0xC8,0xCD, +0xB6,0xBC,0xF5,0xCD,0x30,0xC4,0xFE,0xEF,0x28,0xF9,0xFE,0xFC,0x28,0x0B,0xFE,0x20, +0xC4,0x0C,0xBB,0xF1,0xDC,0xB9,0xBC,0xB7,0xC9,0xF1,0x37,0xC9,0xCD,0x1A,0xC5,0xC5, +0xD5,0xCD,0x55,0xDD,0x30,0x18,0xCD,0x1A,0xC5,0xC5,0xD5,0xCD,0x37,0xDD,0x2C,0xCD, +0x1A,0xC5,0xC5,0xE3,0xCD,0xD2,0xBB,0xE1,0xD1,0xE3,0xCD,0xCF,0xBB,0xE1,0xD1,0xE3, +0xCD,0xC9,0xBB,0xE1,0xC9,0xCD,0x51,0xDD,0x38,0x06,0xCD,0x4B,0xC2,0xCD,0xE4,0xBB, +0xE5,0xCD,0xDB,0xBB,0xE1,0xC9,0x01,0xF6,0xBB,0x18,0x0D,0x01,0xF9,0xBB,0x18,0x08, +0x01,0xEA,0xBB,0x18,0x03,0x01,0xED,0xBB,0xC5,0xCD,0x1A,0xC5,0xCD,0x55,0xDD,0x30, +0x06,0xCD,0x4B,0xC2,0xCD,0xDE,0xBB,0x18,0x28,0x01,0xF0,0xBB,0x18,0x03,0x01,0xF3, +0xBB,0xC5,0xCD,0x1A,0xC5,0xCD,0x37,0xDD,0x29,0xE3,0xC5,0xE3,0xC1,0xCD,0xF9,0xFF, +0xCD,0x0A,0xFF,0xE1,0xC9,0x01,0xC0,0xBB,0x18,0x03,0x01,0xC3,0xBB,0xC5,0xCD,0x1A, +0xC5,0xE3,0xC5,0xE3,0xC1,0xCD,0xF9,0xFF,0xE1,0xC9,0xCD,0x86,0xCE,0xD5,0xCD,0x37, +0xDD,0x2C,0xCD,0x86,0xCE,0x42,0x4B,0xD1,0xC9,0xCD,0xB3,0xD6,0xE5,0xC5,0xD5,0xCD, +0xC5,0xC9,0x22,0x2C,0xAC,0xD5,0xE5,0xEB,0xCD,0x32,0xC6,0xCC,0xAC,0xF5,0xE1,0xCD, +0x51,0xDD,0x11,0x00,0x00,0xD4,0x86,0xD6,0x44,0x4D,0xE1,0xE3,0x7A,0xB3,0xC4,0xB8, +0xFF,0xC2,0xF6,0xC5,0xEB,0xCD,0xD2,0xDD,0xE3,0xCD,0xCE,0xDD,0xE1,0xF1,0xE3,0xD5, +0xC5,0xE5,0x01,0x05,0x16,0xB9,0x28,0x0B,0x01,0x02,0x10,0xB9,0x28,0x05,0x1E,0x0D, +0xC3,0x94,0xCA,0x78,0xCD,0xB0,0xF5,0x73,0x23,0x72,0x23,0xE3,0xCD,0x37,0xDD,0xEF, +0xCD,0xFB,0xCE,0x79,0xCD,0xD7,0xFE,0xE5,0x21,0x27,0xAC,0xCD,0x62,0xFF,0xE1,0xCD, +0x37,0xDD,0xEC,0xCD,0xFB,0xCE,0xE3,0x79,0xCD,0xD7,0xFE,0xCD,0x62,0xFF,0xEB,0xE3, +0xEB,0x21,0x01,0x00,0xCD,0x0D,0xFF,0xEB,0x7E,0xFE,0xE6,0x20,0x06,0xCD,0x3F,0xDD, +0xCD,0xFB,0xCE,0x79,0xCD,0xD7,0xFE,0xE3,0xCD,0x62,0xFF,0xCD,0xA3,0xFD,0xEB,0x77, +0x23,0xEB,0xE1,0xCD,0x4A,0xDD,0xEB,0x73,0x23,0x72,0x23,0xEB,0xCD,0xD2,0xDD,0xEB, +0x73,0x23,0x72,0x23,0xD1,0x73,0x23,0x72,0x23,0xED,0x5B,0x2C,0xAC,0x73,0x23,0x72, +0x23,0x70,0xD1,0x21,0x27,0xAC,0xCD,0x66,0xFF,0xAF,0x32,0x26,0xAC,0xE1,0xCD,0xCE, +0xDD,0x2A,0x2C,0xAC,0x18,0x0A,0x1E,0x01,0xC3,0x94,0xCA,0x3E,0xFF,0x32,0x26,0xAC, +0xEB,0xCD,0x32,0xC6,0x20,0xF0,0xEB,0xCD,0xAC,0xF5,0xEB,0xE5,0xCD,0x61,0xC6,0x28, +0x0F,0xF1,0x23,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F,0xCD,0xCE,0xDD,0xEB,0xC9, +0x01,0x05,0x00,0x09,0x5E,0x23,0x56,0xE1,0xCD,0xAC,0xF5,0xEB,0xCD,0x55,0xDD,0x38, +0xCF,0xC9,0x2A,0x8B,0xB0,0xE5,0x2B,0x46,0x23,0x7D,0x90,0x6F,0x9F,0x84,0x67,0xE3, +0x78,0xFE,0x07,0x28,0x19,0xFE,0x10,0x28,0x04,0xFE,0x16,0x20,0x0D,0xE5,0x2B,0x2B, +0x7E,0x2B,0x6E,0x67,0xCD,0xB8,0xFF,0xE1,0x20,0x04,0xEB,0xE1,0x78,0xC9,0xE1,0x18, +0xD4,0x5E,0x23,0x56,0x23,0xFE,0x10,0x28,0x2D,0xE5,0x01,0x05,0x00,0x79,0xEB,0xCD, +0x4B,0xFF,0xE1,0x3A,0x26,0xAC,0xB7,0x28,0x10,0xE5,0x09,0xCD,0xCC,0xFC,0xE1,0xE5, +0x2B,0x56,0x2B,0x5E,0xEB,0xCD,0x62,0xFF,0xE1,0xE5,0x0E,0x05,0xCD,0x09,0xFD,0xE1, +0x01,0x0A,0x00,0x09,0x96,0xC9,0xE5,0xEB,0x5E,0x23,0x56,0x3A,0x26,0xAC,0xB7,0x28, +0x16,0xE3,0xE5,0x23,0x23,0x7E,0x23,0x66,0x6F,0xCD,0xAC,0xBD,0x1E,0x06,0xD2,0x94, +0xCA,0xEB,0xE1,0xE3,0x72,0x2B,0x73,0xE1,0x7E,0x23,0xE5,0x66,0x6F,0xEB,0xCD,0xC4, +0xBD,0xE1,0x23,0x23,0x23,0x96,0xC9,0xCD,0xFB,0xCE,0xFE,0xA0,0x28,0x04,0xCD,0x37, +0xDD,0xEB,0xE5,0xCD,0xA3,0xFD,0xE1,0xCC,0x9F,0xE8,0xC8,0xCD,0x51,0xDD,0xD8,0xFE, +0x1E,0x28,0x05,0xFE,0x1D,0xC2,0xAB,0xDD,0xCD,0x67,0xE7,0xEB,0xC9,0xCD,0x67,0xE7, +0xCD,0xEF,0xE8,0xEB,0x0E,0x00,0xE5,0x3E,0x06,0xCD,0xB0,0xF5,0x71,0x23,0x73,0x23, +0x72,0x23,0xEB,0xCD,0xD2,0xDD,0xEB,0x73,0x23,0x72,0x23,0x36,0x06,0xE1,0xC9,0xC0, +0xCD,0x2E,0xC7,0xCD,0xAC,0xF5,0x4E,0x23,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F, +0xCD,0xCE,0xDD,0xEB,0x79,0xFE,0x01,0xD8,0xCA,0xA4,0xC8,0xC3,0xB6,0xC8,0x2A,0x8B, +0xB0,0x2B,0x7E,0xF5,0x7D,0x96,0x6F,0x9F,0x84,0x67,0x23,0xF1,0xFE,0x06,0xC8,0xB7, +0x20,0xEF,0x1E,0x03,0xC3,0x94,0xCA,0xE5,0xCD,0x18,0xCA,0xE5,0xEB,0x22,0x2E,0xAC, +0xCD,0xB8,0xC7,0xCC,0xAC,0xF5,0x3E,0x07,0xCD,0xB0,0xF5,0xEB,0xCD,0xD2,0xDD,0xEB, +0x73,0x23,0x72,0x23,0xD1,0x73,0x23,0x72,0x23,0xEB,0xE3,0xEB,0x73,0x23,0x72,0x23, +0x36,0x07,0xEB,0xD1,0x18,0x2A,0xC0,0xEB,0xCD,0xB8,0xC7,0x1E,0x1E,0xC2,0x94,0xCA, +0xE5,0x11,0x07,0x00,0x19,0xCD,0xAC,0xF5,0xCD,0xD2,0xDD,0x22,0x2E,0xAC,0xE1,0x5E, +0x23,0x56,0x23,0xEB,0xCD,0xCE,0xDD,0xEB,0x5E,0x23,0x56,0x23,0x7E,0x23,0x66,0x6F, +0xD5,0xCD,0xFB,0xCE,0xE5,0xCD,0xA3,0xFD,0xE1,0xD1,0xC0,0x2A,0x2E,0xAC,0xCD,0xCE, +0xDD,0x3E,0x07,0xCD,0xA0,0xF5,0xEB,0xC9,0x2A,0x8B,0xB0,0x2B,0xE5,0x7D,0x96,0x6F, +0x9F,0x84,0x67,0x23,0xE3,0x7E,0xFE,0x10,0x28,0x16,0xFE,0x16,0x28,0x12,0xFE,0x07, +0x20,0x0C,0x2B,0x2B,0x2B,0x7E,0x2B,0x6E,0x67,0xCD,0xB8,0xFF,0x20,0x02,0xE1,0xC9, +0xE1,0x18,0xD8,0xFE,0x9C,0xCA,0xE5,0xCB,0xCD,0x67,0xCE,0x4F,0x46,0x78,0xFE,0xA0, +0x28,0x05,0xCD,0x37,0xDD,0x9F,0x2B,0x0D,0x78,0xCA,0xAB,0xDD,0xCD,0x3F,0xDD,0xCD, +0xE1,0xCE,0xFE,0x2C,0x28,0xF1,0xC9,0xAF,0x32,0x30,0xAC,0xCD,0xFB,0xBC,0x30,0x1D, +0x47,0x3A,0x30,0xAC,0xE6,0x7F,0x32,0x30,0xAC,0xC5,0xE5,0xCD,0xFE,0xBC,0xE1,0xC1, +0x3A,0x30,0xAC,0x17,0xF5,0x78,0xD4,0x01,0xBD,0xF1,0x17,0x30,0xDE,0x3A,0x30,0xAC, +0xE6,0x04,0xC4,0x53,0xC4,0x2A,0x34,0xAE,0x3A,0x30,0xAC,0xE6,0x03,0xC8,0x1F,0xDA, +0x6B,0xCB,0x23,0xF1,0xC3,0x93,0xDD,0x22,0x36,0xAC,0x3E,0x04,0x30,0x50,0x2A,0x34, +0xAC,0x7C,0xB5,0xC4,0xD6,0xDD,0x3E,0x41,0x30,0x44,0x11,0x31,0xAC,0x0E,0x02,0x18, +0x25,0xD5,0xCD,0x37,0xDD,0x9F,0xCD,0x67,0xE7,0x42,0x4B,0xCD,0x61,0xDD,0xD1,0xE5, +0x21,0x0A,0x00,0x19,0x71,0x23,0x70,0xE1,0xC9,0x23,0x23,0x23,0xEB,0xCD,0xD6,0xDD, +0x3E,0x40,0x30,0x1A,0x0E,0x01,0xD5,0xCD,0xF6,0xC6,0x2A,0x34,0xAE,0xEB,0xE1,0x70, +0x23,0x73,0x23,0x72,0x23,0x5E,0x23,0x56,0xEB,0x22,0x34,0xAE,0x3E,0xC2,0x21,0x30, +0xAC,0xB6,0x77,0xC9,0x7E,0x23,0x5E,0x23,0x56,0xD5,0x01,0xF7,0xFF,0x09,0xCD,0x01, +0xBD,0xE1,0xF1,0xC3,0x74,0xDD,0x7E,0x2A,0x36,0xAC,0x01,0xFC,0xFF,0x09,0xCD,0x01, +0xBD,0xCD,0x53,0xC4,0x2A,0x32,0xAC,0xF1,0xC3,0x74,0xDD,0xFE,0xCE,0x11,0x00,0x00, +0x28,0x08,0xCD,0x37,0xDD,0x9F,0xCD,0x67,0xE7,0x2B,0xED,0x53,0x34,0xAC,0xC3,0x3F, +0xDD,0xE5,0xCD,0x04,0xBD,0xE1,0xC9,0xE5,0xCD,0x07,0xBD,0xE1,0xC9,0xCD,0xA7,0xBC, +0x21,0x5C,0xAC,0x06,0x04,0xE5,0xCD,0xEC,0xBC,0xE1,0x11,0x12,0x00,0x19,0x10,0xF5, +0xCD,0x48,0xBB,0xCD,0xF5,0xBC,0x21,0x00,0x00,0x22,0x34,0xAC,0xCD,0x53,0xC4,0x21, +0x38,0xAC,0x11,0x05,0x03,0x01,0x00,0x08,0xCD,0x24,0xC9,0x21,0x62,0xAC,0x11,0x0B, +0x04,0x01,0x01,0x02,0xC5,0xD5,0x0E,0xFD,0x11,0x79,0xC8,0xCD,0xEF,0xBC,0xD1,0xD5, +0x16,0x00,0x19,0xD1,0xC1,0x79,0xB7,0x28,0x03,0x78,0x87,0x47,0x15,0x20,0xE5,0xC9, +0xCD,0x37,0xDD,0x28,0xCD,0x67,0xCE,0xF5,0xCD,0x5D,0xC9,0xB7,0x20,0x1E,0xCD,0x37, +0xDD,0x29,0xCD,0x61,0xC8,0xF1,0xE5,0xEB,0xCD,0xB0,0xBC,0xE1,0xC9,0x1F,0x11,0x38, +0xAC,0xD8,0x1F,0x11,0x44,0xAC,0xD8,0x1F,0x11,0x50,0xAC,0xD8,0x1E,0x05,0xC3,0x94, +0xCA,0xCD,0x7C,0xCE,0x01,0x00,0x00,0x18,0x05,0xCD,0x7C,0xCE,0x42,0x4B,0xD5,0xC5, +0xCD,0x55,0xDD,0x11,0x00,0x00,0xDC,0x86,0xCE,0xEB,0xCD,0xB1,0xC9,0xE5,0x01,0x06, +0x00,0x09,0xEB,0xCD,0x61,0xC8,0xD1,0xC1,0xE3,0xEB,0xCD,0xE9,0xBC,0xE1,0xC9,0xCD, +0x8D,0xFE,0xCD,0xB1,0xC9,0xCD,0xEC,0xBC,0x38,0x03,0x11,0x00,0x00,0xEB,0xC3,0x0D, +0xFF,0x7C,0xB7,0x20,0xB7,0x7D,0xFE,0x04,0x30,0xB2,0x87,0x87,0x87,0x85,0x87,0x6F, +0x01,0x5C,0xAC,0x09,0xC9,0xEB,0xCD,0xD2,0xDD,0xEB,0x2B,0x06,0x01,0x0E,0x1A,0xCD, +0x23,0xE9,0xE5,0xCD,0x3F,0xDD,0xFE,0xB0,0x28,0x08,0xE1,0xFE,0x9E,0x20,0xEE,0x04, +0x18,0xEB,0xF1,0xEB,0xE5,0xCD,0xD2,0xDD,0xE3,0xCD,0xCE,0xDD,0xEB,0x05,0x28,0x24, +0xCD,0x3F,0xDD,0x28,0x0E,0xC5,0xD5,0xCD,0x86,0xD6,0xD1,0xC1,0xCD,0x55,0xDD,0x30, +0x02,0x10,0xF2,0x2B,0x78,0xB7,0x28,0x0C,0xEB,0xCD,0xD2,0xDD,0xE3,0xCD,0xCE,0xDD, +0xE1,0xEB,0x18,0xB9,0xD1,0xC3,0x3F,0xDD,0x2B,0xEB,0xCD,0xD2,0xDD,0xEB,0x06,0x00, +0x04,0x0E,0x1D,0xCD,0x23,0xE9,0xE5,0xCD,0x3F,0xDD,0xE1,0xFE,0xD6,0x28,0xF1,0xFE, +0xD5,0x20,0xEE,0x10,0xEC,0xCD,0x3F,0xDD,0xC3,0x3F,0xDD,0x21,0xA4,0xAC,0x36,0x00, +0xC3,0x3A,0xBD,0x21,0xA4,0xAC,0xCD,0x3A,0xBD,0xC3,0x4E,0xC3,0xC5,0xD5,0x21,0xA4, +0xAC,0xE5,0x06,0x01,0x0E,0x00,0xCD,0x80,0xBC,0xCA,0x6B,0xCB,0x30,0x22,0x77,0xFE, +0x0D,0x28,0x17,0x0E,0x00,0xFE,0x0A,0x20,0x06,0x78,0x3D,0x28,0xE7,0x0E,0xFF,0x78, +0xB7,0x1E,0x17,0xCA,0x94,0xCA,0x23,0x04,0x18,0xDC,0x79,0xB7,0x20,0xD8,0x77,0x37, +0xE1,0xD1,0xC1,0xC9,0xAF,0x32,0xAA,0xAD,0xCD,0xD2,0xDD,0x22,0xA6,0xAD,0xC9,0xCD, +0x6D,0xCE,0xC0,0x5F,0xCD,0x04,0xAC,0x7B,0xCD,0x85,0xCA,0x2A,0x34,0xAE,0x22,0xA8, +0xAD,0xCD,0xB0,0xCB,0x31,0x00,0xC0,0x2A,0x32,0xAE,0xCD,0xAC,0xF5,0xCD,0xB3,0xFB, +0xCD,0xFD,0xD9,0xCD,0xDF,0xCA,0x2A,0xAF,0xAD,0xEB,0x21,0xB1,0xAD,0x30,0x0C,0x7A, +0xB3,0x28,0x08,0xA6,0x20,0x05,0x35,0xEB,0xC3,0x93,0xDD,0x36,0x00,0x3A,0xAA,0xAD, +0xCD,0x45,0xCC,0x2A,0xA6,0xAD,0xCD,0xCE,0xDD,0xCD,0x36,0xCB,0xC3,0x64,0xC0,0x2A, +0xA6,0xAD,0xCD,0xD9,0xDD,0xD8,0x21,0x00,0x00,0xC9,0xD5,0xE5,0x21,0x13,0xCD,0x1E, +0x0B,0x18,0x07,0xD5,0xE5,0x21,0xB9,0xCC,0x1E,0x06,0xF5,0xE5,0x2A,0xAF,0xAD,0x7C, +0xB5,0xE1,0xC2,0x94,0xCA,0xAF,0xCD,0xA2,0xC1,0xF5,0xCD,0x41,0xC3,0xCD,0x4E,0xC3, +0xF1,0xCD,0xA2,0xC1,0xF1,0xE1,0xD1,0xC9,0xCD,0x86,0xC3,0x21,0x23,0xCB,0xCD,0x48, +0xCB,0x18,0x1D,0x55,0x6E,0x64,0x65,0x66,0x69,0x6E,0x65,0x64,0x20,0x6C,0x69,0x6E, +0x65,0x20,0x00,0x11,0x4F,0xCB,0xCD,0x9D,0xC1,0xCD,0x86,0xC3,0xEB,0xCD,0x41,0xC3, +0xCD,0xD6,0xDD,0xD0,0xEB,0x21,0x55,0xCB,0xCD,0x41,0xC3,0xEB,0xC3,0x79,0xEE,0x42, +0x72,0x65,0x61,0x6B,0x00,0x20,0x69,0x6E,0x20,0x00,0xC0,0xE5,0xCD,0x33,0xCB,0xE1, +0xCD,0x93,0xCB,0x18,0x2B,0xC0,0xCD,0x93,0xCB,0x18,0x1C,0xCD,0x33,0xCB,0x2A,0x34, +0xAE,0xCD,0xB0,0xCB,0x18,0x1A,0xCD,0xD6,0xDD,0x30,0x12,0xCD,0xAB,0xCB,0x3A,0xB1, +0xAD,0xB7,0x1E,0x13,0xC2,0x94,0xCA,0xCD,0x98,0xD2,0xCD,0xA1,0xD2,0xCD,0xCB,0xDD, +0xC3,0x64,0xC0,0xEB,0xCD,0xD6,0xDD,0xEB,0xD0,0x7E,0xFE,0x01,0x28,0x0B,0x23,0x7E, +0x23,0xB6,0x28,0x07,0x23,0xCD,0xCE,0xDD,0x23,0x18,0x05,0x21,0x00,0x00,0x18,0x0C, +0xEB,0xCD,0xD6,0xDD,0xD0,0xCD,0xD2,0xDD,0x22,0xAD,0xAD,0xEB,0x22,0xAB,0xAD,0xC9, +0xC0,0x2A,0xAB,0xAD,0x7C,0xB5,0x1E,0x11,0xCA,0x94,0xCA,0xE5,0x2A,0xAD,0xAD,0xCD, +0xCE,0xDD,0xCD,0xB9,0xBC,0xE1,0xC3,0x74,0xDD,0xAF,0x32,0xB1,0xAD,0x11,0x00,0x00, +0xED,0x53,0xAF,0xAD,0xC9,0xCD,0x3F,0xDD,0xCD,0x37,0xDD,0xA0,0xCD,0xE1,0xCE,0xE5, +0xCD,0x9A,0xE7,0x22,0xAF,0xAD,0xE1,0xC9,0xCD,0xDD,0xCB,0x3A,0xB1,0xAD,0xB7,0xC8, +0xC3,0xA4,0xCA,0x28,0x14,0xFE,0xB0,0x28,0x17,0xCD,0x67,0xE7,0xCD,0x4A,0xDD,0xD5, +0xCD,0x2B,0xCC,0xE1,0x23,0xF1,0xC3,0x93,0xDD,0xCD,0x2B,0xCC,0xF1,0xC3,0x74,0xDD, +0xCD,0x3F,0xDD,0xC0,0xCD,0x2B,0xCC,0x23,0xC3,0xEF,0xE8,0x3A,0xB1,0xAD,0xB7,0x1E, +0x14,0xCA,0x94,0xCA,0xAF,0x32,0xAA,0xAD,0x32,0xB1,0xAD,0x2A,0xA6,0xAD,0xCD,0xCE, +0xDD,0x2A,0xA8,0xAD,0xC9,0x11,0x5B,0xCC,0xFE,0x1F,0xD0,0xB7,0xC8,0x47,0x1A,0x13, +0xB7,0x20,0xFB,0x05,0x20,0xF8,0x1A,0xB7,0x28,0xEB,0xC9,0x55,0x6E,0x6B,0x6E,0x6F, +0x77,0x6E,0x20,0x65,0x72,0x72,0x6F,0x72,0x00,0x55,0x6E,0x65,0x78,0x70,0x65,0x63, +0x74,0x65,0x64,0x20,0x4E,0x45,0x58,0x54,0x00,0x53,0x79,0x6E,0x74,0x61,0x78,0x20, +0x65,0x72,0x72,0x6F,0x72,0x00,0x55,0x6E,0x65,0x78,0x70,0x65,0x63,0x74,0x65,0x64, +0x20,0x52,0x45,0x54,0x55,0x52,0x4E,0x00,0x44,0x41,0x54,0x41,0x20,0x65,0x78,0x68, +0x61,0x75,0x73,0x74,0x65,0x64,0x00,0x49,0x6D,0x70,0x72,0x6F,0x70,0x65,0x72,0x20, +0x61,0x72,0x67,0x75,0x6D,0x65,0x6E,0x74,0x00,0x4F,0x76,0x65,0x72,0x66,0x6C,0x6F, +0x77,0x00,0x4D,0x65,0x6D,0x6F,0x72,0x79,0x20,0x66,0x75,0x6C,0x6C,0x00,0x4C,0x69, +0x6E,0x65,0x20,0x64,0x6F,0x65,0x73,0x20,0x6E,0x6F,0x74,0x20,0x65,0x78,0x69,0x73, +0x74,0x00,0x53,0x75,0x62,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x6F,0x75,0x74,0x20, +0x6F,0x66,0x20,0x72,0x61,0x6E,0x67,0x65,0x00,0x41,0x72,0x72,0x61,0x79,0x20,0x61, +0x6C,0x72,0x65,0x61,0x64,0x79,0x20,0x64,0x69,0x6D,0x65,0x6E,0x73,0x69,0x6F,0x6E, +0x65,0x64,0x00,0x44,0x69,0x76,0x69,0x73,0x69,0x6F,0x6E,0x20,0x62,0x79,0x20,0x7A, +0x65,0x72,0x6F,0x00,0x49,0x6E,0x76,0x61,0x6C,0x69,0x64,0x20,0x64,0x69,0x72,0x65, +0x63,0x74,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x00,0x54,0x79,0x70,0x65,0x20, +0x6D,0x69,0x73,0x6D,0x61,0x74,0x63,0x68,0x00,0x53,0x74,0x72,0x69,0x6E,0x67,0x20, +0x73,0x70,0x61,0x63,0x65,0x20,0x66,0x75,0x6C,0x6C,0x00,0x53,0x74,0x72,0x69,0x6E, +0x67,0x20,0x74,0x6F,0x6F,0x20,0x6C,0x6F,0x6E,0x67,0x00,0x53,0x74,0x72,0x69,0x6E, +0x67,0x20,0x65,0x78,0x70,0x72,0x65,0x73,0x73,0x69,0x6F,0x6E,0x20,0x74,0x6F,0x6F, +0x20,0x63,0x6F,0x6D,0x70,0x6C,0x65,0x78,0x00,0x43,0x61,0x6E,0x6E,0x6F,0x74,0x20, +0x43,0x4F,0x4E,0x54,0x69,0x6E,0x75,0x65,0x00,0x55,0x6E,0x6B,0x6E,0x6F,0x77,0x6E, +0x20,0x75,0x73,0x65,0x72,0x20,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x00,0x52, +0x45,0x53,0x55,0x4D,0x45,0x20,0x6D,0x69,0x73,0x73,0x69,0x6E,0x67,0x00,0x55,0x6E, +0x65,0x78,0x70,0x65,0x63,0x74,0x65,0x64,0x20,0x52,0x45,0x53,0x55,0x4D,0x45,0x00, +0x44,0x69,0x72,0x65,0x63,0x74,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x20,0x66, +0x6F,0x75,0x6E,0x64,0x00,0x4F,0x70,0x65,0x72,0x61,0x6E,0x64,0x20,0x6D,0x69,0x73, +0x73,0x69,0x6E,0x67,0x00,0x4C,0x69,0x6E,0x65,0x20,0x74,0x6F,0x6F,0x20,0x6C,0x6F, +0x6E,0x67,0x00,0x45,0x4F,0x46,0x20,0x6D,0x65,0x74,0x00,0x46,0x69,0x6C,0x65,0x20, +0x74,0x79,0x70,0x65,0x20,0x65,0x72,0x72,0x6F,0x72,0x00,0x4E,0x45,0x58,0x54,0x20, +0x6D,0x69,0x73,0x73,0x69,0x6E,0x67,0x00,0x46,0x69,0x6C,0x65,0x20,0x61,0x6C,0x72, +0x65,0x61,0x64,0x79,0x20,0x6F,0x70,0x65,0x6E,0x00,0x55,0x6E,0x6B,0x6E,0x6F,0x77, +0x6E,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x00,0x57,0x45,0x4E,0x44,0x20,0x6D, +0x69,0x73,0x73,0x69,0x6E,0x67,0x00,0x55,0x6E,0x65,0x78,0x70,0x65,0x63,0x74,0x65, +0x64,0x20,0x57,0x45,0x4E,0x44,0x00,0xCD,0x86,0xCE,0xF5,0x18,0x08,0xCD,0x86,0xCE, +0xF5,0x7A,0xB3,0x28,0x36,0x7A,0xB7,0x20,0x32,0xF1,0x7B,0xC9,0xCD,0x86,0xCE,0xF5, +0x7A,0x17,0x38,0x27,0xF1,0xC9,0xCD,0xFB,0xCE,0xF5,0xEB,0xCD,0x8D,0xFE,0xEB,0xF1, +0xC9,0xCD,0xFB,0xCE,0xF5,0xC5,0xE5,0xCD,0xC2,0xFE,0xEB,0xE1,0xC1,0xF1,0xC9,0xCD, +0xFB,0xCE,0xC3,0xDA,0xFB,0xCD,0xFB,0xCE,0xC3,0x3C,0xFF,0x1E,0x05,0xC3,0x94,0xCA, +0x01,0x01,0x00,0x11,0xFF,0xFF,0xCD,0x55,0xDD,0xD4,0x51,0xDD,0xD8,0xFE,0x23,0xC8, +0xFE,0xF5,0x28,0x0A,0xCD,0xE1,0xCE,0x42,0x4B,0xC8,0xCD,0x55,0xDD,0xD8,0xCD,0x37, +0xDD,0xF5,0x11,0xFF,0xFF,0xC8,0xCD,0x55,0xDD,0xD8,0xCD,0xE1,0xCE,0xC4,0x55,0xDD, +0xC9,0x7E,0x23,0x5E,0x23,0x56,0xFE,0x1E,0x28,0x0E,0xFE,0x1D,0xC2,0x7B,0xD0,0xE5, +0xEB,0x23,0x23,0x23,0x5E,0x23,0x56,0xE1,0xC3,0x3F,0xDD,0xC5,0x2B,0x06,0x00,0xCD, +0x07,0xCF,0xC1,0x2B,0xC3,0x3F,0xDD,0xC5,0xCD,0xCB,0xCF,0xE5,0xE1,0xC1,0x7E,0xFE, +0xEE,0xD8,0xFE,0xFE,0xD0,0xFE,0xF4,0x38,0x40,0xCC,0x45,0xFF,0x20,0x12,0xC5,0xE5, +0x2A,0xC2,0xB0,0xE3,0xCD,0xCB,0xCF,0xCD,0x3C,0xFF,0xE3,0xCD,0x63,0xF8,0x18,0xDC, +0x7E,0xD6,0xF4,0x87,0x87,0xC6,0x81,0x5F,0xCE,0xCF,0x93,0x57,0xEB,0x78,0xBE,0xEB, +0xD0,0xC5,0xCD,0x53,0xFF,0xD5,0xC5,0x1A,0x47,0xCD,0x07,0xCF,0xC1,0xE3,0x23,0xEB, +0x79,0xCD,0xA0,0xF5,0xCD,0xFB,0xFF,0x18,0xB3,0x78,0xFE,0x0A,0xD0,0xC5,0x7E,0xD6, +0xED,0x47,0xCD,0x45,0xFF,0x11,0xA9,0xCF,0x20,0xD8,0xE5,0x2A,0xC2,0xB0,0xE3,0xC5, +0x06,0x0A,0xCD,0x07,0xCF,0xC1,0xE3,0xC5,0xCD,0x97,0xF8,0xC1,0xCD,0xAF,0xCF,0x18, +0x8B,0x0C,0xC3,0xCC,0xFC,0x0C,0xC3,0xE1,0xFC,0x12,0xC3,0xF5,0xFC,0x12,0xC3,0x12, +0xFD,0x16,0xC3,0xF4,0xD4,0x10,0xC3,0x37,0xFD,0x06,0xC3,0x58,0xFD,0x0E,0xC3,0x49, +0xFD,0x04,0xC3,0x63,0xFD,0x02,0xC3,0x6D,0xFD,0x0A,0xC5,0xCD,0x09,0xFD,0xC1,0xC6, +0x01,0x8F,0xA0,0xC6,0xFF,0x9F,0xC3,0x05,0xFF,0x2B,0x06,0x14,0xCD,0x07,0xCF,0xC3, +0x89,0xFD,0x2B,0x06,0x08,0xCD,0x07,0xCF,0xC3,0x77,0xFD,0xCD,0x3F,0xDD,0x28,0x1D, +0xFE,0x0E,0x38,0x39,0xFE,0x20,0x38,0x54,0xFE,0x22,0xCA,0xCB,0xF7,0xFE,0xFF,0xCA, +0x80,0xD0,0xE5,0x21,0xF2,0xCF,0xCD,0x93,0xFF,0xE3,0xC3,0x3F,0xDD,0x1E,0x16,0xC3, +0x94,0xCA,0x08,0x78,0xD0,0xF5,0xB9,0xCF,0xF4,0xCE,0xCF,0x28,0x70,0xD0,0xFE,0xC2, +0xCF,0xE3,0xEE,0xD0,0xE4,0x30,0xD1,0xAC,0x4B,0xF9,0x40,0xFA,0xD0,0xCD,0x90,0xD6, +0x30,0x0B,0xFE,0x03,0x28,0x0F,0xE5,0xEB,0xCD,0x4B,0xFF,0xE1,0xC9,0xFE,0x03,0xC2, +0xF3,0xFE,0x11,0x2B,0xD0,0xEB,0x22,0xC2,0xB0,0xEB,0xC9,0x00,0xD6,0x0E,0xFE,0x0A, +0x38,0x1D,0x23,0xFE,0x0B,0x28,0x17,0xFE,0x0F,0x38,0x0E,0xFE,0x11,0x38,0x1A,0x20, +0x3A,0x3E,0x05,0xCD,0x4B,0xFF,0x2B,0x18,0x24,0x5E,0x23,0x56,0x18,0x04,0x7E,0x5F, +0x16,0x00,0xEB,0xCD,0x0D,0xFF,0xEB,0x18,0x14,0x5E,0x23,0x56,0xE5,0xFE,0x0F,0x20, +0x07,0x13,0xEB,0x23,0x23,0x5E,0x23,0x56,0xEB,0xCD,0x60,0xFE,0xE1,0xC3,0x3F,0xDD, +0xCD,0xFB,0xCE,0xCD,0x37,0xDD,0x29,0xC9,0xCD,0x0D,0xAC,0x1E,0x02,0xC3,0x94,0xCA, +0x23,0x4E,0xCD,0x3F,0xDD,0x79,0xFE,0x40,0x38,0x05,0xFE,0x49,0xDA,0xBB,0xD0,0xCD, +0x37,0xDD,0x28,0x79,0x87,0xC6,0x1E,0x4F,0xFE,0x59,0x30,0x0D,0xFE,0x1D,0x38,0x0E, +0xCD,0x70,0xD0,0xE5,0xCD,0xAE,0xD0,0xE1,0xC9,0xCD,0x0A,0xAC,0x18,0xCD,0xE5,0x06, +0x00,0x21,0x90,0xD1,0x09,0x7E,0x23,0x66,0x6F,0xE3,0xC9,0xE5,0x4F,0x06,0x00,0x21, +0x4A,0xD0,0x09,0x09,0x7E,0x23,0x66,0x6F,0xE3,0xC9,0x17,0xC4,0xDC,0xD0,0xF4,0xD0, +0x24,0xFA,0xDB,0xD4,0x84,0xD5,0xE5,0xD0,0x07,0xD1,0x0E,0xD1,0xE5,0x3A,0xAA,0xAD, +0xCD,0x0A,0xFF,0xE1,0xC9,0xE5,0xCD,0x0D,0xBD,0xCD,0x7C,0xFE,0xE1,0xC9,0xE5,0xCD, +0xDF,0xCA,0x18,0x0E,0xE5,0x2A,0x7B,0xAE,0x18,0x08,0xCD,0x90,0xD6,0xD2,0xAB,0xCE, +0xE5,0xEB,0xCD,0x60,0xFE,0xE1,0xC9,0xE5,0xCD,0xC6,0xBB,0xEB,0x18,0x04,0xE5,0xCD, +0xC6,0xBB,0xCD,0x0D,0xFF,0xE1,0xC9,0xCD,0x37,0xDD,0xE4,0xEB,0xCD,0xD6,0xDD,0xEB, +0x1E,0x0C,0xD2,0x94,0xCA,0xCD,0xA2,0xD6,0xEB,0x73,0x23,0x72,0xEB,0xC3,0xEF,0xE8, +0xCD,0xA2,0xD6,0xC5,0xE5,0xEB,0x5E,0x23,0x56,0xEB,0x7C,0xB5,0x1E,0x12,0xCA,0x94, +0xCA,0xCD,0x07,0xDA,0x7E,0xFE,0x28,0x20,0x2C,0xCD,0x3F,0xDD,0xE3,0xCD,0x37,0xDD, +0x28,0xE3,0xCD,0x4B,0xDA,0xE3,0xD5,0xCD,0xFB,0xCE,0xE3,0x78,0xCD,0x66,0xD6,0xE1, +0xCD,0x55,0xDD,0x30,0x07,0xE3,0xCD,0x37,0xDD,0x2C,0x18,0xE6,0xCD,0x37,0xDD,0x29, +0xE3,0xCD,0x37,0xDD,0x29,0xCD,0x27,0xDA,0xCD,0x37,0xDD,0xEF,0xCD,0xFB,0xCE,0xC2, +0x7B,0xD0,0xCD,0x30,0xDA,0xCD,0x45,0xFF,0xCC,0x49,0xFB,0xE1,0xF1,0xC3,0xD7,0xFE, +0xBA,0xF8,0xEA,0xF8,0xC4,0xF8,0xA1,0xFA,0x3C,0xF9,0xEE,0xD1,0xEA,0xD1,0x76,0xC2, +0x43,0xF9,0x19,0xD2,0x36,0xFA,0xE9,0xC4,0xEE,0xC4,0xAB,0xCE,0x62,0xC2,0x85,0xFD, +0x10,0xFA,0x3E,0xD5,0x16,0xFA,0x8D,0xFE,0x34,0xD5,0xEC,0xFE,0x20,0xD5,0xE8,0xFD, +0x2D,0xFC,0x09,0xD4,0x6D,0xF1,0xED,0xFD,0x23,0xD4,0x0A,0xFA,0x2A,0xD5,0x25,0xD5, +0x34,0xF8,0x58,0xF1,0x9F,0xC9,0x02,0xFF,0x2F,0xD5,0x57,0xFA,0x29,0xD3,0xEF,0xD4, +0x1E,0xF9,0x39,0xD5,0xC2,0xFE,0x42,0xF8,0x77,0xFA,0x06,0xFF,0x18,0x02,0x06,0x01, +0xCD,0xFB,0xCE,0xCD,0x55,0xDD,0x30,0x1C,0xCD,0x53,0xFF,0xCD,0xFB,0xCE,0xE5,0x79, +0xCD,0xA0,0xF5,0xC5,0xE5,0xCD,0x09,0xFD,0xE1,0xC1,0xB7,0x28,0x04,0xB8,0xC4,0x4E, +0xFF,0xE1,0x18,0xDF,0xCD,0x37,0xDD,0x29,0xC9,0xCD,0xFB,0xCE,0xCD,0x53,0xFF,0xCD, +0x55,0xDD,0x11,0x00,0x00,0xDC,0x86,0xCE,0xCD,0x37,0xDD,0x29,0xE5,0xD5,0x21,0x27, +0x00,0x19,0x11,0x4F,0x00,0xCD,0xB8,0xFF,0xD2,0xAB,0xCE,0xD1,0x79,0xCD,0xA0,0xF5, +0x43,0xCD,0xAF,0xFD,0xE1,0xC9,0xC0,0xE5,0xCD,0xAD,0xD2,0xCD,0x37,0xF6,0xCD,0x9B, +0xBC,0xCD,0x71,0xF6,0xE1,0xC9,0xCD,0x73,0xD2,0xCD,0x37,0xF6,0xC3,0x8C,0xBC,0xCD, +0x6A,0xD2,0xFE,0x16,0xC8,0x1E,0x19,0xC3,0x94,0xCA,0xCD,0x73,0xD2,0xCD,0x32,0xF6, +0xC3,0x77,0xBC,0xCD,0x9F,0xCE,0xE3,0xEB,0xCD,0x85,0xD2,0xCA,0x6B,0xCB,0xE1,0xD8, +0x1E,0x1B,0xC3,0x94,0xCA,0xD5,0x0E,0x00,0x78,0xB7,0x28,0x08,0x7E,0xFE,0x21,0x20, +0x03,0x23,0x05,0x0D,0x79,0xC3,0x6B,0xBC,0xE5,0xCD,0x7A,0xBC,0xCD,0x6D,0xF6,0xE1, +0xC9,0xE5,0xCD,0x8F,0xBC,0xCA,0x6B,0xCB,0xCD,0x71,0xF6,0xE1,0xC9,0xC5,0xD5,0xE5, +0xCD,0x7D,0xBC,0xCD,0x6D,0xF6,0xCD,0x92,0xBC,0xCD,0x71,0xF6,0xE1,0xD1,0xC1,0xC9, +0xCD,0x67,0xCE,0x32,0xB2,0xAD,0xCD,0x37,0xDD,0x2C,0xCD,0xFF,0xD3,0xED,0x53,0xB5, +0xAD,0xCD,0x55,0xDD,0x11,0x14,0x00,0xDC,0x86,0xCE,0xED,0x53,0xB9,0xAD,0x01,0x0C, +0x10,0xCD,0x0D,0xD3,0x32,0xB8,0xAD,0x0E,0x00,0xCD,0x0D,0xD3,0x32,0xB3,0xAD,0xCD, +0x0D,0xD3,0x32,0xB4,0xAD,0x06,0x20,0xCD,0x0D,0xD3,0x32,0xB7,0xAD,0xCD,0x4A,0xDD, +0xE5,0x21,0xB2,0xAD,0xCD,0xAA,0xBC,0xE1,0xD8,0xF1,0xC3,0x71,0xDD,0xCD,0x55,0xDD, +0x79,0xD0,0x7E,0xFE,0x2C,0x79,0xC8,0xCD,0x67,0xCE,0xB8,0xD8,0x18,0x2B,0x06,0x08, +0xCD,0x17,0xD3,0xE5,0xCD,0xB3,0xBC,0xE1,0xC9,0xCD,0x8D,0xFE,0x7D,0xB7,0x1F,0x38, +0x06,0x1F,0x38,0x03,0x1F,0x30,0x12,0xB4,0x20,0x0F,0x7D,0xCD,0xAD,0xBC,0xC3,0x0A, +0xFF,0xCD,0x86,0xCE,0x7B,0x87,0x9F,0xBA,0xC8,0x1E,0x05,0xC3,0x94,0xCA,0xCD,0x6D, +0xCE,0xFE,0x10,0x30,0xF4,0xF5,0x11,0x67,0xD3,0xCD,0xD8,0xD3,0xF1,0xE5,0x21,0xBB, +0xAD,0x71,0xCD,0xBC,0xBC,0xE1,0xC9,0x7E,0xFE,0xEF,0x20,0x12,0xCD,0x3F,0xDD,0x06, +0x10,0xCD,0x17,0xD3,0xF6,0x80,0x4F,0xCD,0x37,0xDD,0x2C,0xC3,0x91,0xCE,0x06,0x80, +0xCD,0x17,0xD3,0x18,0x40,0xCD,0x41,0xD3,0x7A,0xB7,0x7B,0x28,0x02,0x2F,0x3C,0x5F, +0xB7,0x28,0xB6,0xFE,0x10,0x30,0xB2,0xD5,0x11,0xAE,0xD3,0xCD,0xD8,0xD3,0xD1,0xE5, +0x21,0xBB,0xAD,0x7A,0xE6,0x80,0xB1,0x77,0x7B,0xCD,0xBF,0xBC,0xE1,0xC9,0x7E,0xFE, +0xEF,0x20,0x0D,0xCD,0x3F,0xDD,0xCD,0xFF,0xD3,0x7A,0xC6,0xF0,0x4F,0x43,0x18,0x0E, +0x06,0xF0,0xCD,0x17,0xD3,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0x41,0xD3,0x43,0xCD,0x37, +0xDD,0x2C,0xCD,0x67,0xCE,0x57,0x58,0xC9,0x01,0x00,0x05,0xCD,0x55,0xDD,0x30,0x1C, +0xD5,0xC5,0xCD,0xFB,0xFF,0x79,0xC1,0xC5,0xE5,0x21,0xBC,0xAD,0x06,0x00,0x09,0x09, +0x09,0x77,0x23,0x73,0x23,0x72,0xE1,0xC1,0x0C,0xD1,0x10,0xDF,0xC3,0x4A,0xDD,0xCD, +0x86,0xCE,0x7A,0xE6,0xF0,0xC2,0x49,0xD3,0xC9,0xCD,0x8D,0xFE,0x11,0x50,0x00,0xCD, +0xB8,0xFF,0x30,0x22,0x7D,0xCD,0x1E,0xBB,0x21,0xFF,0xFF,0x28,0x03,0x69,0x26,0x00, +0xC3,0x0D,0xFF,0xCD,0x24,0xBB,0xEB,0xCD,0x8D,0xFE,0x7C,0xB5,0x28,0x02,0x53,0x2B, +0x7C,0xB5,0x7A,0xCA,0x0A,0xFF,0xC3,0x49,0xD3,0xFE,0x8D,0x28,0x19,0x3E,0x20,0xCD, +0x17,0xD3,0xF5,0xCD,0x37,0xDD,0x2C,0xCD,0x9F,0xCE,0x48,0xF1,0x47,0xE5,0xEB,0xCD, +0x0F,0xBB,0xE1,0x30,0xE1,0xC9,0xCD,0x3F,0xDD,0xCD,0x67,0xCE,0x4F,0xFE,0x50,0x30, +0xD5,0xCD,0x37,0xDD,0x2C,0x06,0x02,0xCD,0x17,0xD3,0x1F,0x9F,0x47,0xC5,0xE5,0x79, +0xCD,0x39,0xBB,0xE1,0xC1,0x11,0x27,0xBB,0xCD,0x84,0xD4,0x11,0x2D,0xBB,0xCD,0x84, +0xD4,0x11,0x33,0xBB,0xCD,0x55,0xDD,0xD0,0xD5,0xCD,0x67,0xCE,0x47,0xE3,0x79,0xCD, +0xF8,0xFF,0xE1,0xC9,0xFE,0xA4,0x01,0x3F,0xBB,0x28,0x10,0xFE,0xA2,0x01,0x3E,0xBC, +0x28,0x09,0xFE,0xD9,0x28,0x1D,0x1E,0x02,0xC3,0x94,0xCA,0xC5,0xCD,0x3F,0xDD,0xCD, +0x6D,0xCE,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0x6D,0xCE,0x5F,0x51,0xC1,0xEB,0xCD,0xF9, +0xFF,0xEB,0xC9,0xCD,0x3F,0xDD,0x06,0x02,0xCD,0x17,0xD3,0xE5,0x21,0xA7,0x00,0x3D, +0x3E,0x32,0x28,0x02,0x29,0x0F,0xCD,0x68,0xBC,0xE1,0xC9,0xE5,0xCD,0x19,0xFF,0xCD, +0x1D,0xFF,0xCD,0x76,0xBD,0xE1,0xC9,0x3E,0xFF,0x18,0x01,0xAF,0xC3,0x73,0xBD,0x01, +0x79,0xBD,0x18,0x16,0xE5,0xC5,0xCD,0xEC,0xFE,0xEB,0x21,0xCB,0xAD,0xCD,0x3D,0xBD, +0xC1,0xE3,0x79,0xCD,0x4B,0xFF,0xD1,0x01,0x7C,0xBD,0xCD,0x19,0xD5,0xD8,0xCA,0xEA, +0xCA,0xFA,0xF3,0xCA,0x1E,0x05,0xC3,0x94,0xCA,0xC5,0xD5,0xCD,0xEC,0xFE,0xD1,0xC9, +0x01,0x85,0xBD,0x18,0xE5,0x01,0x82,0xBD,0x18,0xE0,0x01,0x7F,0xBD,0x18,0xDB,0x01, +0x88,0xBD,0x18,0xD6,0x01,0x8B,0xBD,0x18,0xD1,0x01,0x8E,0xBD,0x18,0xCC,0x01,0x91, +0xBD,0x18,0xC7,0x52,0x61,0x6E,0x64,0x6F,0x6D,0x20,0x6E,0x75,0x6D,0x62,0x65,0x72, +0x20,0x73,0x65,0x65,0x64,0x20,0x3F,0x20,0x00,0x28,0x06,0xCD,0xFB,0xCE,0xE5,0x18, +0x1B,0xE5,0x21,0x43,0xD5,0xCD,0x41,0xC3,0xCD,0x3B,0xCA,0xD2,0x6B,0xCB,0xCD,0x4E, +0xC3,0xCD,0xA3,0xEC,0x30,0xEC,0xCD,0x61,0xDD,0xB7,0x20,0xE6,0xCD,0xEC,0xFE,0xCD, +0x9A,0xBD,0xE1,0xC9,0x7E,0xFE,0x28,0x20,0x1C,0xCD,0x3F,0xDD,0xCD,0xFB,0xCE,0xCD, +0x37,0xDD,0x29,0xE5,0xCD,0xEC,0xFE,0xCD,0x70,0xBD,0x20,0x05,0xCD,0xA0,0xBD,0xE1, +0xC9,0xFC,0x9A,0xBD,0xE1,0xE5,0xCD,0x16,0xFF,0xCD,0x9D,0xBD,0xE1,0xC9,0xCD,0xBE, +0xD5,0x2A,0x83,0xAE,0x22,0x85,0xAE,0x22,0x87,0xAE,0x22,0x89,0xAE,0xC9,0x21,0xD0, +0xAD,0x3E,0x36,0xCD,0xCB,0xD5,0x21,0x06,0xAE,0x3E,0x06,0x36,0x00,0x23,0x3D,0x20, +0xFA,0xC9,0x21,0x00,0x00,0x22,0x04,0xAE,0xC9,0x3E,0x5B,0x2A,0x85,0xAE,0x2B,0x44, +0x4D,0x87,0xC6,0x4E,0x6F,0xCE,0xAD,0x95,0x67,0xC9,0x2A,0x87,0xAE,0x2B,0x44,0x4D, +0xE6,0x03,0x3D,0x87,0xC6,0x06,0x6F,0xCE,0xAE,0x95,0x67,0xC9,0x01,0x5A,0x41,0x1E, +0x05,0x79,0x90,0x38,0x3D,0xE5,0x3C,0x21,0xCB,0xAD,0x06,0x00,0x09,0x73,0x2B,0x3D, +0x20,0xFB,0xE1,0xC9,0x1E,0x03,0x18,0x06,0x1E,0x02,0x18,0x02,0x1E,0x05,0x7E,0xCD, +0x71,0xFF,0x30,0x1E,0x4F,0x47,0xCD,0x3F,0xDD,0xFE,0x2D,0x20,0x0C,0xCD,0x3F,0xDD, +0xCD,0x71,0xFF,0x30,0x0D,0x4F,0xCD,0x3F,0xDD,0xCD,0x01,0xD6,0xCD,0x55,0xDD,0x38, +0xDD,0xC9,0x1E,0x02,0x18,0x06,0x1E,0x09,0x18,0x02,0x1E,0x0A,0xC3,0x94,0xCA,0xFE, +0xF8,0xCA,0xA0,0xF1,0xCD,0x86,0xD6,0xD5,0xCD,0x37,0xDD,0xEF,0xCD,0xFB,0xCE,0x78, +0xE3,0xCD,0x66,0xD6,0xE1,0xC9,0x47,0xCD,0x23,0xFF,0xB8,0x78,0xC4,0xD7,0xFE,0xCD, +0x45,0xFF,0xC2,0x62,0xFF,0xE5,0xCD,0x59,0xFB,0xD1,0xC3,0x66,0xFF,0xCD,0xB5,0xD7, +0xCD,0x55,0xDD,0x38,0xF8,0xC9,0xCD,0x06,0xD9,0xCD,0xDB,0xD7,0x38,0x42,0x18,0x28, +0xCD,0x06,0xD9,0xCD,0xDB,0xD7,0x38,0x38,0xE5,0x79,0xCD,0xDB,0xD5,0xCD,0xDE,0xD6, +0x18,0x2D,0xCD,0x06,0xD9,0x38,0x21,0xE5,0xCD,0xD9,0xD5,0xCD,0xDE,0xD6,0xD4,0x3D, +0xD7,0x18,0x1C,0xCD,0x06,0xD9,0x38,0x10,0xE5,0x79,0xCD,0xDB,0xD5,0xCD,0xDE,0xD6, +0x3A,0xC1,0xB0,0xD4,0x49,0xD7,0x18,0x07,0xE5,0x2A,0x85,0xAE,0x2B,0x19,0xEB,0xE1, +0x3A,0xC1,0xB0,0x47,0x4F,0xC9,0xCD,0x06,0xD9,0xCD,0xC1,0xE8,0x18,0xF2,0xD5,0xEB, +0x2A,0x2B,0xAE,0x7C,0xB5,0x28,0x0E,0xD5,0x23,0x23,0xC5,0x01,0x00,0x00,0xCD,0x08, +0xD7,0xC1,0x38,0x10,0xD1,0xEB,0xE5,0xCD,0x08,0xD7,0x38,0x03,0xE1,0xD1,0xC9,0xF1, +0xE1,0xC3,0x6D,0xD7,0xF1,0xF1,0x37,0xC9,0x7E,0x23,0x66,0x6F,0xB4,0xC8,0x09,0xE5, +0x23,0x23,0xEB,0x2A,0x27,0xAE,0x1A,0xBE,0x20,0x14,0x23,0x13,0x17,0x30,0xF7,0xEB, +0x3A,0xC1,0xB0,0x3D,0xAE,0xE6,0x07,0x20,0x05,0xEB,0x13,0xE1,0x37,0xC9,0xE1,0x18, +0xD7,0xF5,0x54,0x5D,0x23,0x23,0x7E,0x23,0x17,0x30,0xFB,0xF1,0xC9,0x3E,0x02,0xCD, +0x49,0xD7,0x1B,0x1A,0xF6,0x40,0x12,0x13,0xC9,0xD5,0xE5,0xC5,0xF5,0xCD,0x77,0xD7, +0xF5,0x2A,0x87,0xAE,0xEB,0xCD,0xF8,0xF5,0xCD,0x3A,0xF5,0xF1,0xCD,0x8A,0xD7,0xF1, +0x2B,0x36,0x00,0x3D,0x20,0xFA,0xC1,0xE3,0xCD,0xA5,0xD7,0xD1,0xE1,0x23,0x7B,0x91, +0x77,0x23,0x7A,0x98,0x77,0x37,0xC9,0xC6,0x03,0x4F,0x2A,0x27,0xAE,0x06,0x00,0x0C, +0x04,0x7E,0x23,0x17,0x30,0xF9,0x78,0x06,0x00,0xC9,0x62,0x6B,0x09,0x4F,0x06,0x00, +0xE5,0xD5,0x13,0x13,0x2A,0x27,0xAE,0xCD,0xF2,0xFF,0x3A,0xC1,0xB0,0x3D,0x12,0x13, +0x42,0x4B,0xD1,0xE1,0xC9,0x7E,0x12,0x7B,0x91,0x77,0x23,0x7E,0xF5,0x7A,0x98,0x77, +0xF1,0x13,0x12,0x13,0xC9,0xCD,0x06,0xD9,0x7E,0xFE,0x28,0x28,0x05,0xEE,0x5B,0xC2, +0x42,0xD6,0xCD,0x5A,0xD8,0xE5,0xC5,0x3A,0xC1,0xB0,0xCD,0xEA,0xD5,0xCD,0x08,0xD7, +0xDA,0x4A,0xD6,0xC1,0x3E,0xFF,0xCD,0x8A,0xD8,0xE1,0xC9,0xF5,0x7E,0xFE,0x28,0x28, +0x10,0xEE,0x5B,0x28,0x0C,0xF1,0xD0,0xE5,0x2A,0x85,0xAE,0x2B,0x19,0xEB,0xE1,0x37, +0xC9,0xCD,0x5A,0xD8,0xF1,0xE5,0x30,0x07,0x2A,0x87,0xAE,0x2B,0x19,0x18,0x15,0xC5, +0xD5,0x3A,0xC1,0xB0,0xCD,0xEA,0xD5,0xCD,0x08,0xD7,0x30,0x0F,0x13,0x13,0xE1,0xCD, +0x6D,0xD7,0xC1,0xEB,0x78,0x96,0xC2,0x46,0xD6,0x18,0x0A,0xE1,0xC1,0xAF,0xCD,0x8A, +0xD8,0xCD,0x6D,0xD7,0xEB,0x11,0x00,0x00,0x46,0x23,0xE5,0xD5,0x5E,0x23,0x56,0x3E, +0x02,0xCD,0xA0,0xF5,0x7E,0x23,0x66,0x6F,0xCD,0xB8,0xFF,0xD2,0x46,0xD6,0xE3,0xCD, +0xBE,0xBD,0xD1,0x19,0xEB,0xE1,0x23,0x23,0x05,0x20,0xDF,0xE5,0x2A,0xC1,0xB0,0x26, +0x00,0xCD,0xBE,0xBD,0xD1,0x19,0xEB,0xE1,0x37,0xC9,0xD5,0xCD,0x3F,0xDD,0x3A,0xC1, +0xB0,0xF5,0x06,0x00,0xCD,0x7C,0xCE,0xE5,0x3E,0x02,0xCD,0xB0,0xF5,0x73,0x23,0x72, +0xE1,0x04,0xCD,0x55,0xDD,0x38,0xED,0x7E,0xFE,0x29,0x28,0x05,0xFE,0x5D,0xC2,0x42, +0xD6,0xCD,0x3F,0xDD,0xF1,0x32,0xC1,0xB0,0xD1,0xC9,0xE5,0x32,0x26,0xAE,0xC5,0x78, +0x87,0xC6,0x03,0xCD,0x77,0xD7,0xF5,0x2A,0x89,0xAE,0xEB,0xCD,0xF8,0xF5,0xF1,0xCD, +0x8A,0xD7,0x60,0x69,0xC1,0xD5,0x23,0x23,0x3A,0xC1,0xB0,0x5F,0x16,0x00,0x70,0xE5, +0x23,0xD5,0x3A,0x26,0xAE,0xB7,0x11,0x0B,0x00,0x28,0x0B,0xE5,0x3E,0x02,0xCD,0xA0, +0xF5,0x5E,0x23,0x56,0x13,0xE1,0x73,0x23,0x72,0x23,0xE3,0xCD,0xBE,0xBD,0xDA,0x46, +0xD6,0xEB,0xE1,0x10,0xDC,0x42,0x4B,0x54,0x5D,0xCD,0xFB,0xF5,0x22,0x89,0xAE,0xC5, +0x2B,0x36,0x00,0x0B,0x78,0xB1,0x20,0xF8,0xC1,0xE1,0x5E,0x16,0x00,0xEB,0x29,0x23, +0x09,0xEB,0x2B,0x2B,0x73,0x23,0x72,0x23,0xE3,0xEB,0x3A,0xC1,0xB0,0xCD,0xEA,0xD5, +0xCD,0xA5,0xD7,0xD1,0xE1,0xC9,0xCD,0x7F,0xD9,0x23,0x5E,0x23,0x56,0x7A,0xB3,0x28, +0x0A,0x23,0x7E,0x17,0x30,0xFB,0xCD,0x3F,0xDD,0x37,0xC9,0x2B,0x2B,0xEB,0xC1,0x2A, +0x27,0xAE,0xE5,0x21,0x2B,0xD9,0xE5,0xC5,0xEB,0x18,0x0E,0xE5,0x2A,0x27,0xAE,0xCD, +0xAC,0xF5,0xE1,0xE3,0x22,0x27,0xAE,0xE1,0xC9,0xE5,0x7E,0x23,0x23,0x23,0x4E,0xCB, +0xA9,0xFE,0x0B,0x38,0x19,0x79,0xE6,0x1F,0xC6,0x0B,0x5F,0xCE,0xAE,0x93,0x57,0x1A, +0x32,0xC1,0xB0,0xE3,0x36,0x0D,0xFE,0x05,0x28,0x03,0xC6,0x09,0x77,0xE3,0xEB,0x3E, +0x28,0xCD,0xB0,0xF5,0x22,0x27,0xAE,0x06,0x29,0x05,0xCA,0x42,0xD6,0x1A,0x13,0xE6, +0xDF,0x77,0x23,0x17,0x30,0xF3,0xCD,0xAC,0xF5,0xEB,0x2B,0xD1,0xC3,0x3F,0xDD,0x7E, +0xFE,0x0B,0x38,0x02,0xC6,0xF7,0xFE,0x04,0x28,0x09,0x30,0x04,0xFE,0x02,0x30,0x05, +0xC3,0x42,0xD6,0x3E,0x05,0x32,0xC1,0xB0,0xC9,0xCD,0xC6,0xD5,0x2A,0x89,0xAE,0xEB, +0x2A,0x87,0xAE,0xCD,0xB8,0xFF,0xC8,0xD5,0xCD,0x31,0xD7,0x7E,0x23,0xE6,0x07,0x3C, +0xE5,0xCD,0xEA,0xD5,0xCD,0xA5,0xD7,0xE1,0x5E,0x23,0x56,0x23,0x19,0xD1,0x18,0xE3, +0xCD,0x89,0xE9,0xCD,0xCC,0xD9,0xCD,0x55,0xDD,0x38,0xF8,0xC9,0xCD,0x06,0xD9,0xE5, +0x3A,0xC1,0xB0,0xCD,0xEA,0xD5,0xCD,0x08,0xD7,0xE5,0xEB,0x1E,0x05,0xD2,0x94,0xCA, +0x5E,0x23,0x56,0x23,0x19,0xEB,0x2A,0x89,0xAE,0xCD,0xCF,0xFF,0xE3,0xC1,0xEB,0x78, +0xB1,0xC4,0xF2,0xFF,0xEB,0x22,0x89,0xAE,0xCD,0x99,0xD9,0xE1,0xC9,0x21,0x00,0x00, +0x22,0x2B,0xAE,0x22,0x29,0xAE,0xC9,0xE5,0x2A,0x2B,0xAE,0xE5,0x2A,0x29,0xAE,0xEB, +0x3E,0x06,0xCD,0xB0,0xF5,0x22,0x29,0xAE,0x73,0x23,0x72,0x23,0xAF,0x77,0x23,0x77, +0x23,0xD1,0x73,0x23,0x72,0xE1,0xC9,0xE5,0x2A,0x29,0xAE,0x22,0x2B,0xAE,0xE1,0xC9, +0xE5,0x2A,0x29,0xAE,0xCD,0xAC,0xF5,0x5E,0x23,0x56,0x23,0xEB,0x22,0x29,0xAE,0xEB, +0x23,0x23,0x5E,0x23,0x56,0xEB,0x22,0x2B,0xAE,0xE1,0xC9,0xE5,0x3E,0x02,0xCD,0xB0, +0xF5,0xE3,0xCD,0x7F,0xD9,0xCD,0x39,0xD9,0xE3,0xEB,0x2A,0x29,0xAE,0x23,0x23,0x01, +0x00,0x00,0xCD,0xA5,0xD7,0x3A,0xC1,0xB0,0x47,0x3C,0xCD,0xB0,0xF5,0x78,0x3D,0x77, +0x23,0xEB,0xE1,0xC9,0x2A,0x29,0xAE,0x7C,0xB5,0x28,0x0E,0x4E,0x23,0x46,0x23,0xC5, +0x01,0x00,0x00,0xCD,0xCE,0xDA,0xE1,0x18,0xEE,0x01,0x41,0x1A,0xC5,0x79,0xCD,0xDB, +0xD5,0xCD,0xCE,0xDA,0xC1,0x0C,0x05,0x20,0xF3,0x3E,0x03,0xCD,0xEA,0xD5,0x4E,0x23, +0x46,0x78,0xB1,0xC8,0x2A,0x87,0xAE,0x2B,0x09,0xE5,0xD5,0xCD,0x31,0xD7,0xD1,0x23, +0x4E,0x23,0x46,0x23,0xE5,0x09,0xE3,0x4E,0x23,0x06,0x00,0x09,0x09,0xC1,0xCD,0xBE, +0xFF,0x28,0x08,0xCD,0xE7,0xDA,0x23,0x23,0x23,0x18,0xF3,0xE1,0x18,0xD0,0x7E,0x23, +0x66,0x6F,0xB4,0xC8,0x09,0xE5,0xD5,0xCD,0x31,0xD7,0xD1,0x7E,0x23,0xE6,0x07,0xFE, +0x02,0xCC,0xE7,0xDA,0xE1,0x18,0xE7,0xC5,0xD5,0xE5,0x7E,0x23,0x4E,0x23,0x46,0xEB, +0xB7,0xC4,0xF8,0xFF,0xE1,0xD1,0xC1,0xC9,0xCD,0x37,0xDD,0xA3,0xCD,0xCB,0xC1,0xF5, +0xCD,0x89,0xDB,0xCD,0x86,0xD6,0xCD,0x3C,0xFF,0xE5,0xD5,0xCD,0x1A,0xDB,0xCD,0xDC, +0xF7,0xE1,0xCD,0x6F,0xD6,0xE1,0xF1,0xC3,0xAF,0xC1,0xCD,0xC0,0xC1,0xD2,0x66,0xDC, +0xCD,0xA2,0xC1,0xF5,0xCD,0xAD,0xDB,0xF1,0xC3,0xA2,0xC1,0xCD,0xCB,0xC1,0xF5,0xCD, +0x47,0xDB,0xD5,0xCD,0x86,0xD6,0xE3,0x3E,0x00,0xCD,0xBC,0xDB,0xE3,0xCD,0x55,0xDD, +0x38,0xF1,0xD1,0xF1,0xC3,0xAF,0xC1,0xCD,0xC0,0xC1,0x30,0x3D,0xCD,0xA2,0xC1,0xF5, +0xE5,0xCD,0x89,0xDB,0x3E,0x3F,0xD4,0x56,0xC3,0x3E,0x20,0xD4,0x56,0xC3,0xE5,0xCD, +0xAD,0xDB,0xEB,0xE1,0xCD,0xD3,0xDB,0x38,0x09,0x21,0x77,0xDB,0xCD,0x41,0xC3,0xE1, +0x18,0xDE,0xF1,0xF1,0xC3,0xA2,0xC1,0x3F,0x52,0x65,0x64,0x6F,0x20,0x66,0x72,0x6F, +0x6D,0x20,0x73,0x74,0x61,0x72,0x74,0x0A,0x00,0x7E,0xFE,0x3B,0x32,0x2D,0xAE,0xCC, +0x3F,0xDD,0xEE,0x22,0xC0,0xCD,0xCB,0xF7,0xCD,0xC0,0xC1,0xF5,0xDC,0x28,0xF8,0xF1, +0xD4,0xDA,0xFB,0xCD,0x55,0xDD,0xD8,0xCD,0x37,0xDD,0x3B,0xB7,0xC9,0xCD,0x3B,0xCA, +0xD2,0x6B,0xCB,0x3A,0x2D,0xAE,0xFE,0x3B,0xC4,0x4E,0xC3,0xC9,0xD5,0xCD,0x02,0xDC, +0x30,0x0C,0xE3,0xCD,0x66,0xD6,0xE1,0x7E,0x23,0xB7,0xC8,0xEE,0x2C,0xC9,0x1E,0x0D, +0xC3,0x94,0xCA,0xD5,0xE5,0xD5,0xCD,0xD6,0xD6,0xE3,0xAF,0xCD,0x02,0xDC,0x30,0x1E, +0xFE,0x03,0xCC,0xDA,0xFB,0xE3,0xCD,0x55,0xDD,0xE3,0x30,0x0B,0xCD,0x61,0xDD,0xEE, +0x2C,0x20,0x0B,0x23,0xE3,0x18,0xDF,0xCD,0x61,0xDD,0xB7,0x20,0x01,0x37,0xE1,0xE1, +0xD1,0xC9,0x5F,0xCD,0x45,0xFF,0x57,0xD5,0x20,0x06,0xCD,0x21,0xDC,0x37,0x18,0x09, +0xCD,0xC0,0xC1,0xD4,0x38,0xDC,0xCD,0xA3,0xEC,0xF5,0xDC,0x61,0xDD,0xF1,0xD1,0x7A, +0xC9,0xCD,0xC0,0xC1,0x38,0x06,0xCD,0x47,0xDC,0xC3,0xDC,0xF7,0xCD,0x61,0xDD,0xFE, +0x22,0xCA,0xCB,0xF7,0x7B,0xC3,0xE6,0xF7,0xCD,0x9D,0xDC,0x30,0x05,0x11,0xC6,0xDC, +0x18,0x2C,0x1E,0x18,0xC3,0x94,0xCA,0xCD,0x9D,0xDC,0x30,0xF6,0xFE,0x22,0x28,0x05, +0x11,0xCA,0xDC,0x18,0x19,0xCD,0xA8,0xDC,0x11,0x63,0xDC,0x38,0x11,0x21,0xA4,0xAC, +0x36,0x00,0xC9,0xFE,0x22,0xC9,0xCD,0xA8,0xDC,0x30,0xD7,0x11,0xCD,0xDC,0x21,0xA4, +0xAC,0xE5,0x06,0xFF,0xCD,0xFB,0xFF,0x28,0x0C,0x77,0x23,0x05,0x28,0x05,0xCD,0xA8, +0xDC,0x38,0xF1,0xF6,0xFF,0x36,0x00,0xE1,0xC0,0xFE,0x0D,0xC8,0xFE,0x22,0xC4,0xD0, +0xDC,0xC0,0xCD,0x9D,0xDC,0xD0,0xCD,0xCA,0xDC,0xC4,0x14,0xC4,0xC9,0xCD,0xA8,0xDC, +0xD0,0xCD,0xD0,0xDC,0x28,0xF7,0x37,0xC9,0xCD,0x24,0xC4,0xD0,0xC5,0xFE,0x0D,0x06, +0x0A,0x28,0x05,0xB8,0x20,0x0D,0x06,0x0D,0x4F,0xCD,0x24,0xC4,0x30,0x04,0xB8,0xC4, +0x14,0xC4,0x79,0xC1,0x37,0xC9,0xCD,0xD0,0xDC,0xC8,0xFE,0x2C,0xC8,0xFE,0x0D,0xC9, +0xFE,0x20,0xC8,0xFE,0x09,0xC8,0xFE,0x0A,0xC9,0x28,0x0A,0xCD,0xE1,0xCE,0xE5,0xCD, +0x9A,0xE7,0x2B,0x18,0x2D,0xE5,0x2A,0x81,0xAE,0x18,0x27,0xE5,0x2A,0x30,0xAE,0xCD, +0x17,0xDD,0xE3,0xCD,0x86,0xD6,0xE3,0x23,0x3E,0x3A,0xCD,0xBC,0xDB,0x2B,0x28,0x0B, +0x2A,0x2E,0xAE,0xCD,0xCE,0xDD,0x1E,0x02,0xC3,0x94,0xCA,0xE3,0xCD,0x55,0xDD,0xE3, +0x38,0xDD,0x22,0x30,0xAE,0xE1,0xC9,0x7E,0xFE,0x2C,0xC8,0xCD,0xEF,0xE8,0xB7,0x20, +0x0E,0x23,0x7E,0x23,0xB6,0x23,0x1E,0x04,0xCA,0x94,0xCA,0x22,0x2E,0xAE,0x23,0xCD, +0x3F,0xDD,0xFE,0x8C,0x20,0xE5,0xC9,0xE3,0x7E,0x23,0xE3,0xBE,0xC2,0xC6,0xDD,0x23, +0x7E,0xFE,0x20,0x28,0xFA,0xFE,0x01,0xD0,0xB7,0xC9,0x7E,0xFE,0x02,0xD8,0xC3,0xC6, +0xDD,0x7E,0xFE,0x02,0xC9,0x2B,0xCD,0x3F,0xDD,0xEE,0x2C,0xC0,0xCD,0x3F,0xDD,0x37, +0xC9,0x7E,0x23,0xFE,0x20,0x28,0xFA,0xFE,0x09,0x28,0xF6,0xFE,0x0A,0x28,0xF2,0x2B, +0xC9,0x2A,0x34,0xAE,0xEB,0x2A,0x8B,0xB0,0x22,0x32,0xAE,0xEB,0x22,0x34,0xAE,0xCD, +0x21,0xB9,0xDC,0x07,0xC8,0xCD,0x3F,0xDD,0xC4,0xAB,0xDD,0x7E,0xFE,0x01,0x28,0xE4, +0x30,0x34,0x23,0x7E,0x23,0xB6,0x23,0x28,0x0F,0x22,0x36,0xAE,0x23,0x3A,0x38,0xAE, +0xB7,0x28,0xD1,0xCD,0xEB,0xDD,0x18,0xCC,0xC3,0x76,0xCB,0x87,0xD2,0x4F,0xD6,0xFE, +0xB9,0x30,0x10,0xEB,0xC6,0x01,0x6F,0xCE,0xDE,0x95,0x67,0x4E,0x23,0x46,0xC5,0xEB, +0xC3,0x3F,0xDD,0xCD,0x07,0xAC,0x1E,0x02,0xC3,0x94,0xCA,0x21,0x00,0x00,0x22,0x36, +0xAE,0xC9,0x2A,0x36,0xAE,0xC9,0x2A,0x36,0xAE,0x7C,0xB5,0xC8,0x7E,0x23,0x66,0x6F, +0x37,0xC9,0x3E,0xFF,0x18,0x01,0xAF,0x32,0x38,0xAE,0xC9,0x3E,0x5B,0xCD,0x56,0xC3, +0xE5,0x2A,0x36,0xAE,0x7E,0x23,0x66,0x6F,0xCD,0x79,0xEE,0xE1,0x3E,0x5D,0xC3,0x56, +0xC3,0x71,0xC9,0xDF,0xC0,0x21,0xC2,0xBA,0xF1,0x46,0xD2,0x3C,0xEA,0x32,0xC1,0xB5, +0xC4,0x98,0xD2,0xA1,0xD2,0x5A,0xC2,0xC0,0xCB,0xEF,0xE8,0x17,0xD1,0x18,0xD6,0x1C, +0xD6,0x14,0xD6,0xE7,0xD4,0x28,0xE7,0x7D,0xD6,0xC6,0xC4,0xCB,0xC4,0x52,0xC0,0xF3, +0xE8,0x65,0xCB,0x85,0xD3,0x4E,0xD3,0xC0,0xD9,0x8F,0xCA,0x79,0xC9,0x29,0xC5,0xED, +0xC6,0xE8,0xC6,0xC7,0xC6,0x2A,0xC2,0x2B,0xDB,0x39,0xD4,0x54,0xD6,0xF8,0xDA,0xF7, +0xE0,0xF6,0xE9,0xD2,0xC2,0xEF,0xF4,0xA6,0xEA,0x93,0xF9,0x4F,0xC2,0x05,0xC5,0x0A, +0xC5,0xFB,0xC5,0x2B,0xC1,0xE3,0xC7,0xCB,0xC8,0xF8,0xCB,0x40,0xC9,0x5F,0xD2,0x56, +0xD2,0x8C,0xC4,0x77,0xF1,0x0A,0xC2,0x12,0xC2,0xD0,0xC4,0xD5,0xC4,0x5F,0xF1,0xFD, +0xF1,0xF3,0xE8,0xEB,0xD4,0x59,0xD5,0xEB,0xDC,0x1E,0xD3,0xF3,0xE8,0xDF,0xE7,0xD9, +0xDC,0x03,0xCC,0x0F,0xC7,0xBD,0xE9,0x09,0xEC,0xC0,0xD2,0x94,0xD4,0x5A,0xCB,0x9D, +0xF6,0x19,0xC3,0x20,0xC3,0xE6,0xDD,0xE2,0xDD,0x7D,0xF1,0x76,0xC7,0x47,0xC7,0xE3, +0xC3,0xE1,0xC2,0x7B,0xF4,0xF6,0xF1,0xE1,0xC8,0xE7,0xC8,0xD5,0xEB,0x2A,0x7F,0xAE, +0xEB,0xD5,0xAF,0x32,0x39,0xAE,0x01,0x2C,0x01,0xCD,0xE1,0xDE,0x7E,0xB7,0x20,0xF9, +0x3E,0x2D,0x91,0x4F,0x3E,0x01,0x98,0x47,0xAF,0x12,0x13,0x12,0x13,0x12,0xE1,0xD1, +0xC9,0xCD,0x10,0xAC,0x7E,0xB7,0xC8,0xCD,0x71,0xFF,0x38,0x1D,0xCD,0x7F,0xFF,0xDA, +0xFF,0xDF,0xFE,0x26,0xCA,0x5A,0xE0,0x23,0xFE,0x80,0xD0,0xFE,0x20,0xC2,0x80,0xE0, +0x3A,0x00,0xAC,0xB7,0xC0,0x3E,0x20,0x18,0x1C,0xCD,0x4E,0xDF,0xD8,0xFE,0xC5,0xCA, +0xED,0xE0,0xE5,0x21,0x30,0xDF,0xCD,0xAA,0xFF,0xE1,0x38,0x19,0xF5,0xFE,0x97,0x3E, +0x01,0xCC,0x25,0xDF,0xF1,0x12,0x13,0x0B,0x79,0xB0,0xC0,0x1E,0x17,0xC3,0x94,0xCA, +0x8C,0x8E,0x90,0x8F,0x00,0xCD,0x25,0xDF,0x7E,0xB7,0xC8,0xFE,0x3A,0x28,0x0A,0x23, +0xFE,0x22,0x20,0xF1,0xCD,0xBF,0xE0,0x18,0xEF,0xAF,0x32,0x39,0xAE,0xC9,0xC5,0xD5, +0xE5,0xCD,0x16,0xAC,0x7E,0x23,0xCD,0x8A,0xFF,0xCD,0xDD,0xE2,0xCD,0x27,0xE3,0x30, +0x28,0x79,0xE6,0x7F,0xCD,0x7B,0xFF,0x30,0x0B,0x1A,0xFE,0xE4,0x28,0x06,0x7E,0xCD, +0x7B,0xFF,0x38,0x15,0xF1,0x1A,0xB7,0xFA,0xC8,0xDF,0xD1,0xC1,0xF5,0x3E,0xFF,0xCD, +0x25,0xDF,0xF1,0xCD,0x25,0xDF,0xAF,0x18,0x3A,0xE1,0xD1,0xC1,0xE5,0x2B,0x23,0x7E, +0xCD,0x7B,0xFF,0x38,0xF9,0xCD,0xEA,0xDF,0x38,0x04,0x3E,0x0D,0x18,0x06,0x23,0xFE, +0x05,0x20,0x01,0x3D,0xCD,0x25,0xDF,0xAF,0xCD,0x25,0xDF,0xAF,0xCD,0x25,0xDF,0xE3, +0x7E,0xCD,0x7B,0xFF,0x30,0x07,0x7E,0xCD,0x25,0xDF,0x23,0x18,0xF3,0xCD,0xDF,0xE0, +0xE1,0x3E,0xFF,0x32,0x39,0xAE,0x37,0xC9,0xE5,0x4F,0x21,0xDC,0xDF,0xCD,0xAA,0xFF, +0x9F,0xE6,0x01,0x32,0x39,0xAE,0x79,0xE1,0xD1,0xC1,0xB7,0xC9,0xC7,0x81,0xC6,0x92, +0x96,0xC8,0xE3,0x97,0xCA,0xA7,0xA0,0xEB,0x9F,0x00,0xFE,0x26,0xD0,0xFE,0x21,0x3F, +0xD0,0xFE,0x22,0xC8,0xFE,0x23,0xC8,0xEE,0x27,0xFE,0x04,0xCE,0xFF,0x37,0xC9,0x3A, +0x39,0xAE,0xB7,0x28,0x15,0x7E,0x23,0xFA,0x25,0xDF,0xFE,0x2E,0xCA,0x25,0xDF,0x2B, +0xD5,0xCD,0x04,0xEE,0x30,0x34,0x3E,0x1E,0x18,0x4F,0xD5,0xC5,0xCD,0xBE,0xEC,0xC1, +0x30,0x28,0xCD,0x27,0xFF,0x3E,0x1F,0x30,0x40,0xEB,0x2A,0xC2,0xB0,0xEB,0x7A,0xB7, +0x3E,0x1A,0x20,0x35,0xE3,0xEB,0x7D,0xFE,0x0A,0x30,0x04,0xC6,0x0E,0x18,0x06,0x3E, +0x19,0xCD,0x25,0xDF,0x7D,0xCD,0x25,0xDF,0xE1,0xC9,0x7E,0x23,0xE3,0xEB,0xCD,0x25, +0xDF,0xEB,0xE3,0xCD,0xB8,0xFF,0x20,0xF2,0xD1,0xC9,0xD5,0xC5,0xCD,0xBE,0xEC,0xC1, +0x30,0xE8,0xFE,0x02,0x3E,0x1B,0x28,0x01,0x3C,0xD1,0xCD,0x25,0xDF,0xE5,0x21,0xC2, +0xB0,0xCD,0x23,0xFF,0xF5,0x7E,0x23,0xCD,0x25,0xDF,0xF1,0x3D,0x20,0xF6,0xE1,0xC9, +0xFE,0x22,0x28,0x3B,0xFE,0x7C,0x28,0x45,0xC5,0xD5,0xEE,0x3F,0x06,0xBF,0x28,0x16, +0x2B,0x11,0x4B,0xE6,0xCD,0x27,0xE3,0x1A,0x38,0x08,0x7E,0xFE,0x20,0x30,0x02,0x3E, +0x20,0x23,0x47,0xCD,0xB3,0xE0,0x32,0x39,0xAE,0x78,0xD1,0xC1,0xFE,0xC0,0x28,0x36, +0xC3,0x25,0xDF,0x3D,0xC8,0xEE,0x22,0xC8,0x3A,0x39,0xAE,0x3C,0xC8,0x3D,0xC9,0xCD, +0x25,0xDF,0x7E,0xB7,0xC8,0x23,0xFE,0x22,0x20,0xF5,0xC3,0x25,0xDF,0xCD,0x25,0xDF, +0xAF,0x32,0x39,0xAE,0xCD,0x25,0xDF,0x7E,0x23,0xCD,0x7B,0xFF,0x38,0xF6,0x2B,0x1B, +0x1A,0xF6,0x80,0x12,0x13,0xC9,0x3E,0x01,0xCD,0x25,0xDF,0x3E,0xC0,0xCD,0x25,0xDF, +0x7E,0x23,0xB7,0x20,0xF8,0x2B,0xC9,0xCD,0xB0,0xCE,0xC5,0xD5,0xCD,0xC6,0xC1,0xCD, +0x4A,0xDD,0xCD,0xCB,0xDD,0xD1,0xC1,0xCD,0x0D,0xE1,0xC3,0x64,0xC0,0xD5,0x50,0x59, +0xCD,0xA3,0xE7,0xD1,0x4E,0x23,0x46,0x2B,0x78,0xB1,0xC8,0xCD,0x3C,0xC4,0xE5,0x09, +0xE3,0xD5,0xE5,0x23,0x23,0x5E,0x23,0x56,0xE1,0xE3,0xCD,0xB8,0xFF,0xE3,0x38,0x12, +0xCD,0x63,0xE1,0xCD,0x45,0xE1,0x23,0x7E,0xB7,0x20,0xF8,0xCD,0x4E,0xC3,0xD1,0xE1, +0x18,0xD2,0xE1,0xE1,0xC9,0xCD,0xBA,0xC1,0x38,0x0B,0x7E,0xCD,0x6E,0xC3,0xFE,0x0A, +0xC0,0x3E,0x0D,0x18,0x0B,0x7E,0xFE,0x20,0x30,0x06,0x3E,0x01,0xCD,0x6E,0xC3,0x7E, +0xC3,0x6E,0xC3,0xD5,0x01,0xA4,0xAC,0xC5,0x23,0x23,0x5E,0x23,0x56,0x23,0xE5,0xEB, +0xCD,0x0D,0xFF,0xCD,0x82,0xEE,0x11,0x00,0x00,0x7E,0x23,0xB7,0x28,0x05,0xCD,0xFE, +0xE1,0x18,0xF6,0x3E,0x20,0xCD,0xFE,0xE1,0xE1,0x7E,0xB7,0x28,0x05,0xCD,0x96,0xE1, +0x18,0xF7,0x02,0xE1,0xD1,0xC9,0xCD,0x13,0xAC,0xFA,0x20,0xE2,0xFE,0x02,0x38,0x1D, +0xFE,0x05,0x38,0x43,0xFE,0x0B,0x38,0x22,0xFE,0x0E,0x38,0x3B,0xFE,0x20,0x38,0x2E, +0xFE,0x7C,0x28,0x51,0xCD,0xEA,0xDF,0xDC,0x1A,0xE2,0x7E,0x18,0x0D,0x23,0x7E,0xFE, +0xC0,0x28,0x5D,0xFE,0x97,0x28,0x59,0x2B,0x3E,0x3A,0x1E,0x00,0xFE,0x22,0x20,0x0B, +0xCD,0xFE,0xE1,0x23,0x7E,0xB7,0xC8,0xFE,0x22,0x20,0xF5,0x23,0x18,0x20,0xCD,0x1A, +0xE2,0xCD,0x53,0xE2,0x1E,0x01,0xC9,0xCD,0x1A,0xE2,0x7E,0xF5,0x23,0x23,0x23,0xCD, +0x0F,0xE2,0xF1,0x1E,0x01,0xFE,0x0B,0xD0,0x1E,0x00,0xEE,0x27,0xE6,0xFD,0x02,0x03, +0x15,0xC0,0x0B,0x14,0xC9,0x1E,0x01,0xCD,0xFE,0xE1,0x23,0x7E,0x23,0xB7,0xC0,0x7E, +0xE6,0x7F,0xCD,0xFE,0xE1,0xBE,0x23,0x30,0xF6,0xC9,0x1D,0xC0,0x3E,0x20,0x18,0xDE, +0x23,0xFE,0xFF,0x20,0x02,0x7E,0x23,0xF5,0xE5,0xCD,0xED,0xE2,0xB7,0x28,0x08,0xF5, +0xCD,0x1A,0xE2,0xF1,0xCD,0xFE,0xE1,0x7E,0xE6,0x7F,0xFE,0x09,0xC4,0xFE,0xE1,0xBE, +0x23,0x28,0xF4,0xCD,0x7B,0xFF,0x1E,0x00,0x30,0x02,0x1E,0x01,0xE1,0xF1,0xD6,0xE4, +0xC0,0x5F,0xC9,0xD5,0x7E,0x23,0xFE,0x1B,0x28,0x49,0xFE,0x1C,0x28,0x50,0xFE,0x1E, +0x28,0x26,0xFE,0x1D,0x28,0x22,0xFE,0x1F,0x28,0x5E,0xFE,0x19,0x28,0x09,0xFE,0x1A, +0x28,0x0B,0xD6,0x0E,0x5F,0x18,0x02,0x5E,0x23,0x16,0x00,0x18,0x04,0x5E,0x23,0x56, +0x23,0xE3,0xEB,0xCD,0x0D,0xFF,0x18,0x47,0x5E,0x23,0x56,0x23,0xFE,0x1E,0x28,0x09, +0xE5,0xEB,0x23,0x23,0x23,0x5E,0x23,0x56,0xE1,0xE3,0xEB,0xCD,0x0D,0xFF,0xCD,0x82, +0xEE,0x18,0x2F,0xC5,0x01,0x02,0x00,0xCD,0x14,0xF1,0x3E,0x58,0x18,0x09,0xC5,0x01, +0x02,0x00,0xCD,0x19,0xF1,0x3E,0x48,0xC1,0xE3,0xEB,0xF5,0x3E,0x26,0xCD,0xFE,0xE1, +0xF1,0xFE,0x48,0xC4,0xFE,0xE1,0x18,0x0A,0x3E,0x05,0xCD,0x4B,0xFF,0xE3,0xEB,0xCD, +0x8F,0xEE,0x7E,0x23,0xCD,0xFE,0xE1,0x7E,0xB7,0x20,0xF7,0xE1,0xC9,0xE5,0xD6,0x41, +0x87,0xC6,0x54,0x6F,0xCE,0xE3,0x95,0x67,0x5E,0x23,0x56,0xE1,0xC9,0xC5,0x4F,0x06, +0x1A,0x21,0x88,0xE3,0xCD,0x13,0xE3,0x38,0x0D,0x23,0x10,0xF8,0x21,0x4B,0xE6,0xCD, +0x13,0xE3,0x30,0x07,0x06,0xC0,0x78,0xC6,0x40,0xC1,0xC9,0xCD,0x19,0xAC,0x1E,0x02, +0xC3,0x94,0xCA,0x7E,0xB7,0xC8,0xE5,0x7E,0x23,0x17,0x30,0xFB,0x7E,0x23,0xB9,0x28, +0x03,0xF1,0x18,0xEF,0xE1,0x37,0xC9,0x1A,0xB7,0xC8,0xE5,0x1A,0x13,0xFE,0x09,0x28, +0x04,0xFE,0x20,0x20,0x05,0xCD,0x61,0xDD,0x18,0xF1,0x4F,0x7E,0x23,0xCD,0x8A,0xFF, +0xA9,0x28,0xE8,0xE6,0x7F,0x28,0x0A,0x1B,0x1A,0x13,0x17,0x30,0xFB,0x13,0xE1,0x18, +0xD6,0xF1,0x37,0xC9,0x35,0xE6,0x2A,0xE6,0xEF,0xE5,0xB9,0xE5,0x8A,0xE5,0x7E,0xE5, +0x72,0xE5,0x68,0xE5,0x47,0xE5,0x43,0xE5,0x3F,0xE5,0x13,0xE5,0xED,0xE4,0xE2,0xE4, +0xAA,0xE4,0x86,0xE4,0x85,0xE4,0x3B,0xE4,0xFB,0xE3,0xCF,0xE3,0xC0,0xE3,0xB8,0xE3, +0x9A,0xE3,0x92,0xE3,0x8D,0xE3,0x88,0xE3,0x4F,0x4E,0xC5,0xDA,0x00,0x50,0x4F,0xD3, +0x48,0x00,0x50,0x4F,0xD3,0x47,0x4F,0xD2,0xFD,0x00,0x52,0x49,0x54,0xC5,0xD9,0x49, +0x4E,0x44,0x4F,0xD7,0xD8,0x49,0x44,0x54,0xC8,0xD7,0x48,0x49,0x4C,0xC5,0xD6,0x45, +0x4E,0xC4,0xD5,0x41,0x49,0xD4,0xD4,0x00,0x50,0x4F,0xD3,0x7F,0x41,0xCC,0x1D,0x00, +0x53,0x49,0x4E,0xC7,0xED,0x50,0x50,0x45,0x52,0xA4,0x1C,0x4E,0xD4,0x1B,0x00,0x52, +0x4F,0xCE,0xD3,0x52,0x4F,0x46,0xC6,0xD2,0xCF,0xEC,0x49,0x4D,0xC5,0x46,0x48,0x45, +0xCE,0xEB,0x45,0x53,0x54,0xD2,0x7D,0x45,0x53,0xD4,0x7C,0x41,0xCE,0x1A,0x41,0x47, +0x4F,0x46,0xC6,0xD1,0x41,0xC7,0xD0,0x41,0xC2,0xEA,0x00,0x59,0x4D,0x42,0x4F,0xCC, +0xCF,0x57,0x41,0xD0,0xE7,0x54,0x52,0x49,0x4E,0x47,0xA4,0x7B,0x54,0x52,0xA4,0x19, +0x54,0x4F,0xD0,0xCE,0x54,0x45,0xD0,0xE6,0x51,0xD2,0x18,0xD1,0x17,0x50,0x45,0x45, +0xC4,0xCD,0x50,0xC3,0xE5,0x50,0x41,0x43,0x45,0xA4,0x16,0x4F,0x55,0x4E,0xC4,0xCC, +0x49,0xCE,0x15,0x47,0xCE,0x14,0x41,0x56,0xC5,0xCB,0x00,0x55,0xCE,0xCA,0x4F,0x55, +0x4E,0xC4,0x7A,0x4E,0xC4,0x45,0x49,0x47,0x48,0x54,0xA4,0x79,0x45,0x54,0x55,0x52, +0xCE,0xC9,0x45,0x53,0x55,0x4D,0xC5,0xC8,0x45,0x53,0x54,0x4F,0x52,0xC5,0xC7,0x45, +0x4E,0x55,0xCD,0xC6,0x45,0x4D,0x41,0x49,0xCE,0x13,0x45,0xCD,0xC5,0x45,0x4C,0x45, +0x41,0x53,0xC5,0xC4,0x45,0x41,0xC4,0xC3,0x41,0x4E,0x44,0x4F,0x4D,0x49,0x5A,0xC5, +0xC2,0x41,0xC4,0xC1,0x00,0x00,0x52,0x49,0x4E,0xD4,0xBF,0x4F,0xD3,0x78,0x4F,0x4B, +0xC5,0xBE,0x4C,0x4F,0x54,0xD2,0xBD,0x4C,0x4F,0xD4,0xBC,0xC9,0x44,0x45,0xCE,0xBB, +0x45,0x45,0xCB,0x12,0x41,0x50,0x45,0xD2,0xBA,0x00,0x55,0xD4,0xB9,0x52,0x49,0x47, +0x49,0xCE,0xB8,0xD2,0xFC,0x50,0x45,0x4E,0x4F,0x55,0xD4,0xB7,0x50,0x45,0x4E,0x49, +0xCE,0xB6,0x4E,0x20,0x53,0xD1,0xB5,0x4E,0x20,0x45,0x52,0x52,0x4F,0x52,0x20,0x47, +0x4F,0x09,0x54,0x4F,0x20,0xB0,0xB4,0x4E,0x20,0x42,0x52,0x45,0x41,0xCB,0xB3,0xCE, +0xB2,0x00,0x4F,0xD4,0xFE,0x45,0xD7,0xB1,0x45,0x58,0xD4,0xB0,0x00,0x4F,0x56,0x45, +0xD2,0xAF,0x4F,0x56,0xC5,0xAE,0x4F,0x44,0xC5,0xAD,0x4F,0xC4,0xFB,0x49,0xCE,0x77, +0x49,0x44,0xA4,0xAC,0x45,0x52,0x47,0xC5,0xAB,0x45,0x4D,0x4F,0x52,0xD9,0xAA,0x41, +0xD8,0x76,0x00,0x4F,0x57,0x45,0x52,0xA4,0x11,0x4F,0x47,0x31,0xB0,0x10,0x4F,0xC7, +0x0F,0x4F,0x43,0x41,0x54,0xC5,0xA9,0x4F,0x41,0xC4,0xA8,0x49,0x53,0xD4,0xA7,0x49, +0x4E,0xC5,0xA6,0x45,0xD4,0xA5,0x45,0xCE,0x0E,0x45,0x46,0x54,0xA4,0x75,0x00,0x45, +0xD9,0xA4,0x00,0x4F,0xD9,0x0D,0x00,0x4E,0xD4,0x0C,0x4E,0x53,0x54,0xD2,0x74,0x4E, +0x50,0x55,0xD4,0xA3,0x4E,0xD0,0x0B,0x4E,0x4B,0x45,0x59,0xA4,0x43,0x4E,0x4B,0x45, +0xD9,0x0A,0x4E,0xCB,0xA2,0xC6,0xA1,0x00,0x49,0x4D,0x45,0xCD,0x42,0x45,0x58,0xA4, +0x73,0x00,0x4F,0x09,0x54,0xCF,0xA0,0x4F,0x09,0x53,0x55,0xC2,0x9F,0x00,0x52,0xC5, +0x09,0x4F,0xD2,0x9E,0xCE,0xE4,0x49,0xD8,0x08,0x00,0x58,0xD0,0x07,0x56,0x45,0x52, +0xD9,0x9D,0x52,0x52,0x4F,0xD2,0x9C,0x52,0xD2,0x41,0x52,0xCC,0xE3,0x52,0x41,0x53, +0xC5,0x9B,0x4F,0xC6,0x40,0x4E,0xD6,0x9A,0x4E,0xD4,0x99,0x4E,0xC4,0x98,0x4C,0x53, +0xC5,0x97,0xC9,0xDC,0x44,0x49,0xD4,0x96,0x00,0x52,0x41,0x57,0xD2,0x95,0x52,0x41, +0xD7,0x94,0x49,0xCD,0x93,0xC9,0xDB,0x45,0x4C,0x45,0x54,0xC5,0x92,0x45,0xC7,0x91, +0x45,0x46,0x53,0x54,0xD2,0x90,0x45,0x46,0x52,0x45,0x41,0xCC,0x8F,0x45,0x46,0x49, +0x4E,0xD4,0x8E,0x45,0xC6,0x8D,0x45,0x43,0xA4,0x72,0x41,0x54,0xC1,0x8C,0x00,0x52, +0x45,0x41,0xCC,0x06,0x4F,0xD3,0x05,0x4F,0x4E,0xD4,0x8B,0x4C,0xD3,0x8A,0x4C,0x4F, +0x53,0x45,0x4F,0x55,0xD4,0x89,0x4C,0x4F,0x53,0x45,0x49,0xCE,0x88,0x4C,0xC7,0x87, +0x4C,0x45,0x41,0xD2,0x86,0x49,0x4E,0xD4,0x04,0x48,0x52,0xA4,0x03,0x48,0x41,0x49, +0xCE,0x85,0x41,0xD4,0x84,0x41,0x4C,0xCC,0x83,0x00,0x4F,0x52,0x44,0x45,0xD2,0x82, +0x49,0x4E,0xA4,0x71,0x00,0x55,0x54,0xCF,0x81,0x54,0xCE,0x02,0x53,0xC3,0x01,0x4E, +0xC4,0xFA,0x46,0x54,0x45,0xD2,0x80,0x42,0xD3,0x00,0x00,0xDE,0xF8,0xDC,0xF9,0x3E, +0x09,0xBD,0xF0,0x3D,0x20,0xBE,0xF0,0xBE,0xEE,0xBD,0xEF,0x3C,0x09,0xBE,0xF2,0x3C, +0x09,0xBD,0xF3,0x3D,0x20,0xBC,0xF3,0xBC,0xF1,0xAF,0xF7,0xBA,0x01,0xAA,0xF6,0xAD, +0xF5,0xAB,0xF4,0xA7,0xC0,0x00,0xAF,0x32,0x3A,0xAE,0x2A,0x81,0xAE,0x77,0x23,0x77, +0x23,0x77,0x23,0x22,0x83,0xAE,0xC9,0x3A,0x3A,0xAE,0xB7,0xC8,0xC5,0xD5,0xE5,0x01, +0x9D,0xE6,0xCD,0xFF,0xE8,0xAF,0x32,0x3A,0xAE,0xE1,0xD1,0xC1,0xC9,0xCD,0x43,0xE9, +0xFE,0x02,0xD8,0xFE,0x1D,0x20,0xF6,0x56,0x2B,0x5E,0x2B,0xE5,0xEB,0x23,0x23,0x23, +0x5E,0x23,0x56,0xE1,0x36,0x1E,0x23,0x73,0x23,0x72,0x18,0xE1,0xCD,0x61,0xDD,0xB7, +0x37,0xC8,0xCD,0x04,0xEE,0xD0,0x7E,0xFE,0x20,0x20,0x01,0x23,0xCD,0xD2,0xE6,0x37, +0x9F,0xC9,0xCD,0x87,0xE6,0xCD,0xBB,0xDE,0xE5,0xCD,0x61,0xDD,0xB7,0x28,0x28,0xC5, +0xD5,0x21,0x04,0x00,0x09,0xE5,0xE5,0xCD,0xA3,0xE7,0xE5,0xDC,0x0B,0xE7,0xD1,0xC1, +0xCD,0xF8,0xF5,0xCD,0x2C,0xF5,0xEB,0xD1,0x73,0x23,0x72,0x23,0xD1,0x73,0x23,0x72, +0x23,0xC1,0xEB,0xE1,0xC3,0xF2,0xFF,0xE1,0xCD,0x9A,0xE7,0xC5,0xE5,0x09,0xEB,0x2A, +0x89,0xAE,0xCD,0xCF,0xFF,0x44,0x4D,0xEB,0xD1,0x78,0xB1,0xC4,0xF2,0xFF,0xD1,0x21, +0x00,0x00,0xCD,0xDA,0xFF,0xC3,0x2C,0xF5,0xCD,0x37,0xE7,0xCD,0x4A,0xDD,0xCD,0x5A, +0xE7,0xCD,0x7A,0xC1,0xC3,0x64,0xC0,0xCD,0xB0,0xCE,0xE5,0xC5,0xCD,0xC1,0xE7,0xD1, +0xE5,0xCD,0xA3,0xE7,0x22,0x3B,0xAE,0xEB,0xE1,0xCD,0xCF,0xFF,0x22,0x3D,0xAE,0x38, +0x04,0x7C,0xB5,0xE1,0xC0,0x1E,0x05,0xC3,0x94,0xCA,0xCD,0x87,0xE6,0xED,0x4B,0x3D, +0xAE,0x2A,0x3B,0xAE,0xC3,0x0B,0xE7,0x23,0x5E,0x23,0x56,0x23,0xFE,0x1D,0xC8,0xFE, +0x1E,0xC2,0xEA,0xE8,0xE5,0xCD,0xD6,0xDD,0xDC,0xB8,0xFF,0x30,0x09,0xE1,0xE5,0xCD, +0xF3,0xE8,0x23,0xCD,0xA7,0xE7,0xD4,0x9A,0xE7,0x2B,0xEB,0xE1,0xE5,0x3E,0x1D,0x32, +0x3A,0xAE,0x2B,0x72,0x2B,0x73,0x2B,0x77,0xE1,0xC9,0xCD,0xA3,0xE7,0xD8,0x1E,0x08, +0xC3,0x94,0xCA,0x2A,0x81,0xAE,0x23,0x4E,0x23,0x46,0x2B,0x78,0xB1,0xC8,0xE5,0x23, +0x23,0x7E,0x23,0x66,0x6F,0xEB,0xCD,0xB8,0xFF,0xEB,0xE1,0x3F,0xD0,0xC8,0x09,0x18, +0xE6,0x2A,0x81,0xAE,0x23,0xE5,0x4E,0x23,0x46,0x23,0x78,0xB1,0x28,0x0F,0x7E,0x23, +0x66,0x6F,0xEB,0xCD,0xB8,0xFF,0xEB,0x38,0x04,0xE1,0x09,0x18,0xE8,0xE1,0xC9,0x11, +0x0A,0x00,0x28,0x05,0xFE,0x2C,0xC4,0xE1,0xCE,0xD5,0x11,0x00,0x00,0xCD,0x55,0xDD, +0x30,0x05,0xFE,0x2C,0xC4,0xE1,0xCE,0xD5,0x11,0x0A,0x00,0xCD,0x55,0xDD,0xDC,0xE1, +0xCE,0xCD,0x4A,0xDD,0xE1,0xEB,0xE3,0xEB,0xD5,0xE5,0xCD,0xA3,0xE7,0xD1,0xE5,0xCD, +0xA3,0xE7,0xEB,0xE1,0xCD,0xB8,0xFF,0xDA,0x55,0xE7,0xEB,0xD1,0xC1,0xD5,0xE5,0xC5, +0x4E,0x23,0x46,0x78,0xB1,0x28,0x13,0x2B,0x09,0x7E,0x23,0xB6,0x28,0x0C,0x2B,0xC1, +0xE5,0xEB,0x09,0xEB,0xDA,0x55,0xE7,0xE1,0x18,0xE5,0x01,0x64,0xE8,0xCD,0xFF,0xE8, +0xC1,0xE1,0xD1,0xC5,0xE5,0x4E,0x23,0x46,0x23,0x78,0xB1,0x28,0x0C,0x73,0x23,0x72, +0x23,0xE1,0x09,0xC1,0xEB,0x09,0xEB,0x18,0xEA,0xE1,0xE1,0x01,0x88,0xE8,0xCD,0xFF, +0xE8,0xC3,0x64,0xC0,0xCD,0x43,0xE9,0xFE,0x02,0xD8,0xFE,0x1E,0x20,0xF6,0xE5,0x56, +0x2B,0x5E,0xCD,0xA3,0xE7,0x30,0x0E,0x2B,0xEB,0xE1,0xE5,0x72,0x2B,0x73,0x2B,0x3E, +0x1D,0x77,0x32,0x3A,0xAE,0xE1,0x18,0xDC,0xCD,0x43,0xE9,0xFE,0x02,0xD8,0xFE,0x1E, +0x20,0xF6,0xE5,0x56,0x2B,0x5E,0xCD,0xD6,0xDD,0xCD,0x18,0xCB,0xE1,0x18,0xE9,0x06, +0x01,0x2B,0xCD,0x43,0xE9,0xB7,0xC8,0xFE,0x01,0x28,0x07,0xFE,0xA1,0x20,0xF3,0x04, +0x18,0xF0,0xCD,0x43,0xE9,0xFE,0x97,0x20,0xEC,0x05,0x20,0xE6,0xCD,0x3F,0xDD,0x04, +0xC9,0x7E,0xFE,0x5B,0x28,0x03,0xFE,0x28,0xC0,0x06,0x00,0x04,0xCD,0x43,0xE9,0xFE, +0x5B,0x28,0xF8,0xFE,0x28,0x28,0xF4,0xFE,0x5D,0x28,0x0A,0xFE,0x29,0x28,0x06,0xFE, +0x02,0x38,0x07,0x18,0xE7,0x05,0x20,0xE4,0x23,0xC9,0x1E,0x02,0xC3,0x94,0xCA,0x06, +0x01,0x18,0x02,0x06,0x00,0x2B,0xCD,0x43,0xE9,0xB7,0xC8,0xB8,0x20,0xF8,0xC9,0xCD, +0xD2,0xDD,0xE5,0x2A,0x81,0xAE,0x23,0x7E,0x23,0xB6,0x28,0x13,0x23,0xCD,0xCE,0xDD, +0x23,0xC5,0xCD,0xF9,0xFF,0xC1,0x2B,0xCD,0x35,0xE9,0xB7,0x20,0xF4,0x18,0xE7,0xE1, +0xC3,0xCE,0xDD,0xCD,0x35,0xE9,0xB7,0xC0,0x23,0x7E,0x23,0xB6,0x59,0xCA,0x94,0xCA, +0x23,0x54,0x5D,0x23,0xC9,0xCD,0x43,0xE9,0xFE,0x02,0xD8,0xFE,0x97,0xC8,0xFE,0xEB, +0x20,0xF3,0xC9,0xCD,0x3F,0xDD,0xC8,0xFE,0x0E,0x38,0x1D,0xFE,0x20,0x38,0x29,0xFE, +0x22,0x28,0x09,0xFE,0x7C,0x28,0x19,0xFE,0xFF,0xC0,0x23,0xC9,0x23,0x7E,0xFE,0x22, +0xC8,0xB7,0x20,0xF8,0x2B,0x3E,0x22,0xC9,0xFE,0x08,0xC8,0xFE,0x07,0xC8,0x23,0x23, +0xF5,0x23,0x7E,0x17,0x30,0xFB,0xF1,0xC9,0xFE,0x18,0xD8,0xFE,0x19,0x28,0x08,0xFE, +0x1F,0x38,0x03,0x23,0x23,0x23,0x23,0x23,0xC9,0xC5,0xD5,0xE5,0x01,0x96,0xE9,0xCD, +0xFF,0xE8,0xE1,0xD1,0xC1,0xC9,0xE5,0xCD,0x43,0xE9,0xD1,0xFE,0x02,0xD8,0xFE,0x0E, +0x30,0xF4,0xFE,0x07,0x28,0xF0,0xFE,0x08,0x28,0xEC,0xEB,0xCD,0x3F,0xDD,0xFE,0x0D, +0x38,0x02,0x36,0x0D,0x23,0x36,0x00,0x23,0x36,0x00,0xEB,0x18,0xD9,0xCD,0x51,0xDD, +0xEB,0x2A,0x81,0xAE,0xEB,0x38,0x1C,0xFE,0x1E,0x28,0x15,0xFE,0x1D,0x28,0x11,0xCD, +0x0D,0xEA,0x21,0x30,0xEA,0xD2,0x13,0xBD,0xCD,0xA8,0xEB,0x2A,0x81,0xAE,0x18,0x11, +0xCD,0x67,0xE7,0xD5,0xCD,0xAD,0xD2,0xCD,0x8C,0xC1,0xCD,0x7A,0xC1,0xCD,0x5E,0xC1, +0xE1,0x23,0xF1,0xC3,0x93,0xDD,0xCD,0x0D,0xEA,0x30,0x06,0xCD,0xA8,0xEB,0xC3,0x64, +0xC0,0xE5,0xCD,0x01,0xF5,0xCD,0x30,0xEA,0xCA,0x6B,0xCB,0xE1,0xC9,0xCD,0x8F,0xEB, +0xE6,0x0E,0xEE,0x02,0x28,0x0B,0xCD,0x4A,0xDD,0xCD,0x8C,0xC1,0xCD,0x6B,0xC1,0x37, +0xC9,0xCD,0x55,0xDD,0xDC,0x91,0xCE,0xED,0x53,0x3F,0xAE,0xCD,0x4A,0xDD,0xB7,0xC9, +0x2A,0x3F,0xAE,0xCD,0x83,0xBC,0xE5,0xDC,0x7A,0xBC,0xE1,0xC9,0xEE,0xAB,0x20,0x04, +0xCD,0x3F,0xDD,0x37,0x9F,0x32,0x41,0xAE,0xCD,0x8F,0xEB,0x11,0x00,0x00,0xCD,0x55, +0xDD,0x30,0x06,0x7E,0xFE,0x2C,0xC4,0x91,0xCE,0xD5,0xCD,0x55,0xDD,0x3E,0x00,0x30, +0x09,0xCD,0x37,0xDD,0x92,0xCD,0x37,0xE7,0x3E,0xFF,0xF5,0xCD,0x4A,0xDD,0xCD,0x1B, +0xFB,0xCD,0x3E,0xFC,0xCD,0x89,0xE9,0xCD,0xD2,0xD5,0xCD,0x49,0xF5,0xF1,0xC5,0xD5, +0xB7,0xC4,0x5A,0xE7,0x3A,0x41,0xAE,0xB7,0x20,0x08,0xCD,0x6B,0xC1,0xCD,0xA8,0xEB, +0x18,0x03,0xCD,0x9D,0xEB,0xD1,0xC1,0xCD,0x71,0xF5,0xD1,0x2A,0x81,0xAE,0x7A,0xB3, +0xC8,0xCD,0x9A,0xE7,0x2B,0xC9,0xCD,0x8F,0xEB,0xCD,0x4A,0xDD,0xCD,0x8C,0xC1,0xCD, +0x9D,0xEB,0xC3,0x64,0xC0,0xCD,0x7A,0xC1,0xCD,0x87,0xE6,0x2A,0x83,0xAE,0xEB,0x2A, +0x81,0xAE,0x23,0x22,0x83,0xAE,0xEB,0xCD,0xDA,0xFF,0xEB,0x2A,0x8D,0xB0,0xEB,0x2B, +0xCD,0xF5,0xFF,0x13,0xEB,0xE5,0x2A,0x83,0xAE,0x11,0x20,0x00,0x19,0xEB,0xE1,0xCD, +0xB8,0xFF,0x38,0x50,0xCD,0x84,0xEB,0xB3,0x28,0x30,0xD5,0xCD,0x84,0xEB,0xE5,0x7E, +0x23,0xB6,0x28,0x12,0x23,0x7E,0x23,0x66,0x6F,0xCD,0xB8,0xFF,0xE1,0x28,0x0F,0x30, +0x06,0xCD,0x48,0xEB,0x18,0xE8,0xE1,0xE3,0xCD,0x5E,0xEB,0xE1,0x18,0xC7,0xE3,0xCD, +0x5E,0xEB,0xE1,0x5E,0x23,0x56,0x2B,0x19,0x18,0xBB,0x7E,0x23,0xB6,0x2B,0x28,0x05, +0xCD,0x48,0xEB,0x18,0xF5,0x2A,0x83,0xAE,0x36,0x00,0x23,0x36,0x00,0x23,0x22,0x83, +0xAE,0xC3,0xB1,0xD5,0x1E,0x07,0x18,0x02,0x1E,0x18,0xD5,0xCD,0xAD,0xD2,0xCD,0x8C, +0xC1,0xCD,0x6B,0xC1,0xD1,0xC3,0x94,0xCA,0xC5,0xD5,0xE5,0x4E,0x23,0x46,0x2A,0x83, +0xAE,0xEB,0xE1,0xCD,0xF2,0xFF,0xEB,0x22,0x83,0xAE,0xEB,0xD1,0xC1,0xC9,0xD5,0xEB, +0x2A,0x83,0xAE,0x73,0x23,0x72,0x23,0xEB,0xE3,0xEB,0x73,0x23,0x72,0x23,0xD1,0x1B, +0x1B,0x1B,0x1B,0x7A,0xB3,0x28,0x09,0xCD,0x80,0xBC,0x30,0xBC,0x77,0x23,0x18,0xF2, +0x22,0x83,0xAE,0xC9,0xCD,0x80,0xBC,0x5F,0xDC,0x80,0xBC,0x30,0xAB,0x57,0xC9,0xCD, +0xAD,0xD2,0xCD,0x6A,0xD2,0x32,0x42,0xAE,0xED,0x43,0x43,0xAE,0xC9,0x3A,0x42,0xAE, +0xB7,0xCA,0xB5,0xEA,0xFE,0x16,0x20,0x0B,0x3A,0x42,0xAE,0xFE,0x16,0x28,0x40,0xE6, +0xFE,0x28,0x05,0x1E,0x19,0xC3,0x94,0xCA,0xCD,0x7A,0xC1,0x2A,0x81,0xAE,0x23,0xEB, +0x2A,0x8D,0xB0,0x01,0x80,0xFF,0x09,0xED,0x4B,0x43,0xAE,0xCD,0xCF,0xFF,0xD4,0xBE, +0xFF,0xDA,0x34,0xEB,0x60,0x69,0x19,0x22,0x83,0xAE,0x3A,0x42,0xAE,0x1F,0x9F,0x32, +0x45,0xAE,0xEB,0xCD,0x83,0xBC,0xCA,0x38,0xEB,0xCD,0xB1,0xD5,0xC3,0x98,0xD2,0xCD, +0x7A,0xC1,0xCD,0xCB,0xDD,0xCD,0x4C,0xCA,0xD2,0x98,0xD2,0xCD,0xBC,0xE6,0x38,0xF5, +0x1E,0x15,0x28,0x02,0x1E,0x06,0xC3,0x94,0xCA,0xCD,0xAD,0xD2,0xCD,0x56,0xD2,0x06, +0x00,0xCD,0x55,0xDD,0x30,0x29,0xCD,0x37,0xDD,0x0D,0x23,0x23,0x7E,0x23,0xE6,0xDF, +0xF2,0x38,0xEC,0xE5,0x21,0x2C,0xEC,0xCD,0x93,0xFF,0xE3,0xC9,0x03,0x38,0xEC,0xC1, +0x87,0xEC,0xC2,0x5C,0xEC,0xD0,0x3D,0xEC,0x1E,0x02,0xC3,0x94,0xCA,0x06,0x01,0xCD, +0x4A,0xDD,0xE5,0xC5,0xCD,0x87,0xE6,0xCD,0x89,0xE9,0x2A,0x81,0xAE,0x23,0xEB,0x2A, +0x83,0xAE,0xCD,0xCF,0xFF,0xEB,0xF1,0x01,0x00,0x00,0x18,0x23,0x06,0x02,0xCD,0x37, +0xDD,0x2C,0xCD,0x91,0xCE,0xD5,0xCD,0x37,0xDD,0x2C,0xCD,0x91,0xCE,0xD5,0xCD,0x55, +0xDD,0x11,0x00,0x00,0xDC,0x91,0xCE,0xD5,0xCD,0x4A,0xDD,0x78,0xC1,0xD1,0xE3,0xCD, +0x98,0xBC,0xD2,0x6B,0xCB,0x18,0x17,0xCD,0x4A,0xDD,0xE5,0x3E,0x09,0xCD,0xA2,0xC1, +0xF5,0x01,0x01,0x00,0x11,0xFF,0xFF,0xCD,0x0D,0xE1,0xF1,0xCD,0xA2,0xC1,0xCD,0xA1, +0xD2,0xE1,0xC9,0xCD,0x44,0xED,0x20,0x05,0xCD,0x61,0xDD,0x18,0x2F,0xFE,0x26,0x28, +0x1C,0xCD,0x7F,0xFF,0x38,0x26,0xCD,0x10,0xFF,0xCD,0xF3,0xFE,0x37,0xC9,0xE5,0xCD, +0xC6,0xEC,0xD1,0xD8,0xEB,0xC9,0x16,0x00,0x7E,0xFE,0x26,0x20,0x0F,0xCD,0x1C,0xEE, +0xEB,0xF5,0xCD,0x0D,0xFF,0xF1,0xEB,0xD8,0xC8,0xC3,0xF3,0xCA,0xE5,0x7E,0x23,0xFE, +0x2E,0xCC,0x61,0xDD,0xCD,0x83,0xFF,0xE1,0x38,0x06,0x7E,0xEE,0x2E,0xC0,0x23,0xC9, +0xCD,0x10,0xFF,0xD5,0x01,0x00,0x00,0x11,0x46,0xAE,0xCD,0x53,0xED,0xFE,0x2E,0x20, +0x0B,0xCD,0xC9,0xED,0xCD,0x19,0xFF,0x0C,0xCD,0x53,0xED,0x0D,0xF5,0x3E,0xFF,0x12, +0xF1,0xCD,0x77,0xED,0xD1,0x5F,0xE5,0xD5,0x21,0x46,0xAE,0xCD,0xCE,0xED,0xD1,0xCD, +0x27,0xFF,0x30,0x08,0xE5,0x42,0xCD,0x06,0xFE,0xE1,0x38,0x11,0x7A,0x4E,0x23,0xCD, +0x94,0xBD,0x7B,0xCD,0x55,0xBD,0xEB,0xCD,0x16,0xFF,0xDC,0x3D,0xBD,0x3E,0x0A,0xE1, +0xD8,0xC3,0xF3,0xCA,0xCD,0x61,0xDD,0x23,0x16,0xFF,0xFE,0x2D,0xC8,0x14,0xFE,0x2B, +0xC8,0x2B,0xC9,0xE5,0xCD,0x61,0xDD,0x23,0xCD,0x83,0xFF,0x38,0x04,0xE1,0xC3,0x8A, +0xFF,0xE3,0xE1,0xD6,0x30,0x12,0xB0,0x28,0x07,0x78,0x04,0xFE,0x0C,0x30,0x01,0x13, +0x79,0xB7,0x28,0xDF,0x0C,0x18,0xDC,0xFE,0x45,0x20,0x10,0xE5,0xCD,0xC9,0xED,0xCD, +0x44,0xED,0xCC,0x61,0xDD,0xCD,0x83,0xFF,0x38,0x04,0xE1,0xAF,0x18,0x1E,0xE3,0xE1, +0xCD,0x19,0xFF,0xD5,0xC5,0xCD,0x35,0xEE,0x30,0x09,0x7B,0xD6,0x64,0x7A,0xDE,0x00, +0x7B,0x38,0x02,0x3E,0x7F,0xC1,0xD1,0x14,0x20,0x02,0x2F,0x3C,0xC6,0x80,0x5F,0x78, +0xD6,0x0C,0x30,0x01,0xAF,0x91,0x30,0x09,0x83,0x38,0x01,0xAF,0xFE,0x01,0xCE,0x80, +0xC9,0x83,0x30,0x02,0x3E,0xFF,0xD6,0x80,0xC9,0xCD,0x61,0xDD,0x23,0xC9,0xEB,0x21, +0x58,0xAE,0x01,0x01,0x05,0x2B,0x36,0x00,0x10,0xFB,0x1A,0xFE,0xFF,0xC8,0x77,0x21, +0x53,0xAE,0x13,0x1A,0xFE,0xFF,0xC8,0xD5,0x41,0x16,0x00,0xE5,0x5E,0x62,0x6B,0x29, +0x29,0x19,0x29,0x5F,0x19,0x5D,0x7C,0xE1,0x73,0x23,0x10,0xEF,0xD1,0xB7,0x28,0xDF, +0x77,0x0C,0x18,0xDB,0xC5,0xE5,0xCD,0x35,0xEE,0xEB,0xCD,0x0D,0xFF,0xEB,0xC1,0x30, +0x06,0x7A,0xB3,0xC6,0xFF,0x38,0x03,0x50,0x59,0xEB,0xC1,0xC9,0x23,0xCD,0x61,0xDD, +0xCD,0x8A,0xFF,0x06,0x02,0xFE,0x58,0x28,0x06,0x06,0x10,0xFE,0x48,0x20,0x04,0x23, +0xCD,0x61,0xDD,0x18,0x02,0x06,0x0A,0xEB,0xCD,0x61,0xEE,0x26,0x00,0x6F,0x30,0x1E, +0x0E,0x00,0xCD,0x61,0xEE,0x30,0x14,0xD5,0x16,0x00,0x5F,0xD5,0x58,0xCD,0xBE,0xBD, +0xD1,0x38,0x03,0x19,0x30,0x02,0x0E,0xFF,0xD1,0x18,0xE7,0x79,0xFE,0x01,0xEB,0x78, +0xC9,0x1A,0x13,0xCD,0x83,0xFF,0x38,0x0A,0xCD,0x8A,0xFF,0xFE,0x41,0x3F,0x30,0x05, +0xD6,0x07,0xD6,0x30,0xB8,0xD8,0x1B,0xAF,0xC9,0xCD,0x0D,0xFF,0xCD,0x82,0xEE,0xC3, +0x41,0xC3,0xD5,0xC5,0xCD,0xC3,0xFC,0xAF,0xCD,0xA7,0xEE,0x23,0xC1,0xD1,0xC9,0xD5, +0xC5,0xAF,0xCD,0x9F,0xEE,0xC1,0xD1,0x7E,0xFE,0x20,0xC0,0x23,0xC9,0x3E,0x40,0x22, +0x6E,0xAE,0xF5,0xCD,0xB3,0xFC,0xF1,0xC5,0x57,0xD5,0xEB,0x21,0x68,0xAE,0x36,0x00, +0x22,0x70,0xAE,0xCD,0xB7,0xF0,0xD1,0xCD,0xD4,0xEE,0xCD,0x3D,0xF0,0x58,0xC1,0x7B, +0xB7,0xCC,0x50,0xF0,0xCD,0x5F,0xF0,0xCD,0x69,0xF0,0xCD,0x7C,0xF0,0x7A,0x1F,0xD0, +0x2B,0x36,0x25,0xC9,0x7A,0x87,0x30,0x29,0xFA,0x27,0xEF,0x7B,0x81,0xD6,0x0A,0xFA, +0x88,0xEF,0x16,0x01,0x41,0x79,0xB7,0x28,0x15,0x83,0x3D,0x5F,0xCD,0x0E,0xF0,0x06, +0x01,0x79,0xFE,0x07,0x38,0x04,0xCB,0x72,0x20,0x26,0xB8,0xC4,0xA0,0xEF,0xC3,0x62, +0xEF,0x7B,0xB7,0xFA,0x0A,0xEF,0x20,0xDC,0x41,0xC9,0x43,0xCD,0x0E,0xF0,0x78,0xB7, +0x28,0xF6,0x93,0x58,0x47,0x81,0x83,0xFA,0xE4,0xEE,0xCD,0xB4,0xEF,0xC3,0xA0,0xEF, +0x3E,0x06,0x32,0x6E,0xAE,0x18,0x24,0x06,0x80,0xCD,0x25,0xF0,0x30,0x04,0xCD,0x96, +0xF0,0xAF,0x47,0xCC,0x36,0xF0,0x20,0x0C,0x04,0x3A,0x6E,0xAE,0xB7,0x28,0x05,0x05, +0x3C,0x32,0x6E,0xAE,0x79,0xB7,0x28,0x04,0x83,0x90,0x5F,0x78,0xF5,0x47,0xCD,0x8B, +0xEF,0xF1,0xB8,0x28,0x0D,0x1C,0x23,0x05,0xE5,0x7E,0xFE,0x2E,0x20,0x01,0x23,0x36, +0x31,0xE1,0x3E,0x45,0xCD,0x6F,0xF0,0x7B,0x87,0x3E,0x2B,0x30,0x05,0xAF,0x93,0x5F, +0x3E,0x2D,0xCD,0x6F,0xF0,0x7B,0x0E,0x2F,0x0C,0xD6,0x0A,0x30,0xFB,0x5F,0x79,0xCD, +0x6F,0xF0,0x7B,0xC6,0x3A,0xC3,0x6F,0xF0,0xCD,0xB4,0xEF,0xCD,0x36,0xF0,0x80,0xB9, +0x30,0x05,0xCD,0xC8,0xEF,0x18,0x04,0x91,0xC4,0xEF,0xEF,0x3A,0x6E,0xAE,0xB7,0xC8, +0x0E,0x2E,0x78,0xC5,0x47,0x04,0x85,0x6F,0x8C,0x95,0x67,0x2B,0x79,0x4E,0x77,0x05, +0x20,0xF9,0xC1,0xC9,0x7B,0x81,0x47,0xF0,0x2F,0x3C,0x06,0x14,0xB8,0x30,0x01,0x47, +0x2B,0x36,0x30,0x0C,0x05,0x20,0xF9,0xC9,0xE5,0x4F,0x85,0x6F,0x8C,0x95,0x67,0x7E, +0x36,0x00,0x22,0x70,0xAE,0xFE,0x35,0xD4,0xE1,0xEF,0xE1,0xD8,0x2B,0x36,0x31,0x04, +0xC9,0x79,0xB7,0xC8,0x2B,0x0D,0x7E,0x34,0xFE,0x39,0xD8,0x36,0x30,0x18,0xF2,0xD5, +0xC5,0xEB,0x47,0x7B,0x90,0x6F,0x9F,0x82,0x67,0xE5,0x0C,0x18,0x04,0x1A,0x13,0x77, +0x23,0x0D,0x20,0xF9,0x36,0x30,0x23,0x05,0x20,0xFA,0xE1,0xC1,0xD1,0xC9,0xE5,0x2A, +0x70,0xAE,0x2B,0x7E,0x23,0xFE,0x30,0x20,0x05,0x2B,0x0D,0x04,0x20,0xF4,0x36,0x00, +0x22,0x70,0xAE,0xE1,0xC9,0xCD,0x9B,0xF0,0x9F,0x3C,0x47,0x7A,0xE6,0x04,0x28,0x01, +0x04,0x3A,0x6F,0xAE,0x90,0xC9,0x3A,0x6E,0xAE,0xB7,0xC8,0x3D,0xC9,0x7A,0xE6,0x02, +0xC8,0x78,0xD6,0x03,0xD8,0xC8,0xF5,0x0E,0x2C,0xCD,0xA3,0xEF,0x04,0xF1,0x18,0xF2, +0x7A,0x87,0x30,0x07,0xC5,0xCD,0x25,0xF0,0xC1,0xD8,0xC8,0x3E,0x30,0x18,0x06,0x7A, +0xE6,0x04,0xC8,0x3E,0x24,0x1C,0x2B,0x77,0xC9,0xCD,0x9B,0xF0,0xC8,0x30,0xF6,0xE5, +0x2A,0x70,0xAE,0x77,0x23,0x36,0x00,0x22,0x70,0xAE,0xE1,0xC9,0x7A,0xB7,0xF0,0x3A, +0x6F,0xAE,0x93,0xC8,0x38,0x10,0x47,0x7A,0xE6,0x20,0x3E,0x2A,0x20,0x02,0x3E,0x20, +0x2B,0x77,0x05,0x20,0xFB,0xC9,0x7A,0xF6,0x01,0x57,0xC9,0x78,0x06,0x2D,0x87,0x38, +0x0F,0x7A,0xE6,0x98,0xEE,0x80,0x37,0xC8,0x06,0x2B,0xE6,0x08,0x20,0x02,0x06,0x20, +0x7A,0xF6,0xEF,0xC6,0x10,0x78,0xC9,0xE5,0xEB,0xCD,0xDD,0xF0,0xE1,0x78,0x87,0x4F, +0xC8,0x1A,0xE6,0x0F,0xC6,0x30,0x2B,0x77,0x1A,0xE6,0xF0,0x1F,0x1F,0x1F,0x1F,0xC6, +0x30,0x2B,0x77,0x13,0x05,0x20,0xEA,0xFE,0x30,0xC0,0x0D,0x23,0xC9,0x11,0x46,0xAE, +0xAF,0x47,0xB6,0x2B,0x20,0x04,0x0D,0x20,0xF9,0xC9,0x37,0x8F,0x30,0xFD,0xEB,0xD5, +0x57,0x18,0x11,0x1A,0x1B,0xD5,0x37,0x8F,0x57,0x58,0x7E,0x8F,0x27,0x77,0x23,0x1D, +0x20,0xF8,0x30,0x03,0x04,0x36,0x01,0x21,0x46,0xAE,0x7A,0x87,0x20,0xEA,0xD1,0x0D, +0x20,0xE1,0xEB,0xC9,0x11,0x01,0x01,0x18,0x03,0x11,0x0F,0x04,0xD5,0x79,0xCD,0x4B, +0xFF,0xE3,0xE5,0xC5,0xCD,0xC2,0xFE,0x11,0x57,0xAE,0xAF,0x12,0xF1,0xC1,0xD6,0x01, +0xCE,0x00,0xF5,0x7D,0xA1,0xF6,0xF0,0x27,0xC6,0xA0,0xCE,0x40,0x1B,0x12,0x7D,0xB1, +0xA9,0x6F,0xB4,0x28,0x0E,0xC5,0x7C,0x1F,0x67,0x7D,0x1F,0x6F,0x05,0x20,0xF7,0xC1, +0xF1,0x18,0xDB,0xF1,0x20,0xD8,0xE1,0xC9,0xCD,0xC2,0xFE,0xE7,0xC3,0x0A,0xFF,0xCD, +0x91,0xCE,0xD5,0xCD,0x37,0xDD,0x2C,0xCD,0x67,0xCE,0xD1,0x12,0xC9,0xCD,0x8D,0xFE, +0x44,0x4D,0xED,0x78,0xC3,0x0A,0xFF,0xCD,0x94,0xF1,0xED,0x79,0xC9,0xCD,0x94,0xF1, +0x57,0x1E,0x00,0x28,0x08,0xCD,0x37,0xDD,0x2C,0xCD,0x67,0xCE,0x5F,0xED,0x78,0xAB, +0xA2,0x28,0xFA,0xC9,0xCD,0x91,0xCE,0x42,0x4B,0xCD,0x37,0xDD,0x2C,0xC3,0x67,0xCE, +0x23,0x7E,0xB7,0x20,0x10,0x23,0xE5,0xCD,0xD4,0xBC,0xEB,0xE1,0x30,0x07,0x7E,0x23, +0x17,0x30,0xFB,0x18,0x0A,0x1E,0x1C,0xC3,0x94,0xCA,0xCD,0x91,0xCE,0x0E,0xFF,0xED, +0x53,0x72,0xAE,0x79,0x32,0x74,0xAE,0xED,0x73,0x77,0xAE,0x06,0x20,0xCD,0x55,0xDD, +0x30,0x06,0xCD,0x91,0xCE,0xD5,0x10,0xF5,0xCD,0x4A,0xDD,0x22,0x75,0xAE,0x3E,0x20, +0x90,0xDD,0x21,0x00,0x00,0xDD,0x39,0xDF,0x72,0xAE,0xED,0x7B,0x77,0xAE,0x2A,0x75, +0xAE,0xC9,0x3E,0x0D,0x18,0x03,0xCD,0x6D,0xCE,0x32,0x79,0xAE,0xC9,0xCD,0xC6,0xC1, +0xF5,0xCD,0x08,0xF2,0xF1,0xC3,0xA2,0xC1,0xCD,0x51,0xDD,0xDA,0x4E,0xC3,0xFE,0xED, +0xCA,0xC4,0xF2,0xEB,0x21,0x24,0xF2,0xCD,0x93,0xFF,0xEB,0xCD,0xFB,0xFF,0xCD,0x51, +0xDD,0x30,0xEB,0xC9,0x05,0x33,0xF2,0x2C,0x5C,0xF2,0xE5,0x77,0xF2,0xEA,0x80,0xF2, +0x3B,0x3F,0xDD,0xCD,0xFB,0xCE,0xF5,0xE5,0xCD,0x45,0xFF,0x28,0x0C,0xCD,0x9D,0xEE, +0xCD,0xDC,0xF7,0x36,0x20,0x2A,0xC2,0xB0,0x34,0x2A,0xC2,0xB0,0x7E,0xCD,0xB9,0xC2, +0xD4,0x4E,0xC3,0xCD,0x28,0xF8,0xE1,0xF1,0xCC,0x4E,0xC3,0xC9,0xCD,0x3F,0xDD,0x3A, +0x79,0xAE,0x4F,0xCD,0x90,0xC2,0x3D,0x91,0x30,0xFD,0x2F,0x3C,0x47,0x81,0xCD,0xB9, +0xC2,0xD2,0x4E,0xC3,0x78,0x18,0x1E,0xCD,0xA0,0xF2,0xCD,0xAF,0xF2,0x7B,0x18,0x15, +0xCD,0xA0,0xF2,0x1B,0xCD,0xAF,0xF2,0xCD,0x90,0xC2,0x2F,0x3C,0x1C,0x83,0x38,0x05, +0xCD,0x4E,0xC3,0x1D,0x7B,0x47,0x04,0x05,0xC8,0x3E,0x20,0xCD,0x56,0xC3,0x18,0xF7, +0xCD,0x3F,0xDD,0xCD,0x37,0xDD,0x28,0xCD,0x86,0xCE,0xCD,0x37,0xDD,0x29,0xC9,0x7A, +0x17,0x30,0x03,0x11,0x00,0x00,0xCD,0x9F,0xC2,0xD0,0xE5,0xEB,0x5F,0x16,0x00,0xCD, +0xC1,0xBD,0xE1,0xC9,0xCD,0x3F,0xDD,0xCD,0xA5,0xCE,0xCD,0x37,0xDD,0x3B,0xE5,0x2A, +0xC2,0xB0,0x7E,0xB7,0x28,0x75,0xE3,0xCD,0xFB,0xCE,0xAF,0x32,0x7A,0xAE,0xD1,0xD5, +0xEB,0x46,0x23,0x7E,0x23,0x66,0x6F,0xEB,0xCD,0x24,0xF3,0x30,0x5E,0xCD,0x51,0xDD, +0x38,0x1D,0xFE,0x3B,0x28,0x04,0xFE,0x2C,0x20,0x4C,0xCD,0x3F,0xDD,0x28,0x10,0xD5, +0xCD,0xFB,0xCE,0xD1,0x78,0xB7,0x28,0xD6,0xCD,0x24,0xF3,0x30,0xD1,0x18,0xDE,0xF5, +0x3E,0xFF,0x32,0x7A,0xAE,0x78,0xB7,0xC4,0x24,0xF3,0xF1,0xDC,0x4E,0xC3,0xE3,0xCD, +0xE8,0xFB,0xE1,0xC9,0xE5,0x1A,0xFE,0x5F,0x20,0x09,0x78,0xFE,0x02,0x38,0x0C,0x13, +0x05,0x18,0x08,0xCD,0x50,0xF3,0xD4,0xA3,0xF3,0x38,0x09,0x1A,0xCD,0x56,0xC3,0x13, +0x05,0x20,0xE2,0xB7,0xE1,0xC9,0x1E,0x02,0xC3,0x94,0xCA,0x1E,0x05,0xC3,0x94,0xCA, +0x1A,0xFE,0x21,0x0E,0x01,0x28,0x21,0xFE,0x26,0x0E,0x00,0x28,0x1B,0xEE,0x5C,0xC0, +0xC5,0xD5,0x0E,0x02,0x13,0x05,0x28,0x0A,0x1A,0xFE,0x5C,0x28,0x09,0x0C,0xFE,0x20, +0x28,0xF2,0xD1,0xC1,0xB7,0xC9,0xF1,0xF1,0x13,0x05,0xC5,0xD5,0x3A,0x7A,0xAE,0xB7, +0x20,0x1D,0xCD,0x3C,0xFF,0x79,0xB7,0xF5,0x41,0x0E,0x00,0x2A,0xC2,0xB0,0xEB,0xC4, +0x71,0xF9,0xCD,0x28,0xF8,0xF1,0x28,0x07,0x2A,0xC2,0xB0,0x96,0xCD,0x95,0xF2,0xD1, +0xC1,0x37,0xC9,0xCD,0xBA,0xF3,0xD0,0x3A,0x7A,0xAE,0xB7,0x20,0x0B,0xC5,0xD5,0x79, +0xCD,0x9F,0xEE,0xCD,0x41,0xC3,0xD1,0xC1,0x37,0xC9,0xC5,0xD5,0x0E,0x80,0x26,0x00, +0x1A,0xFE,0x2B,0x20,0x07,0x13,0x05,0x28,0x23,0x24,0x0E,0x88,0x1A,0xFE,0x2E,0x28, +0x1F,0xFE,0x23,0x28,0x39,0x13,0x05,0x28,0x13,0xEB,0xBE,0xEB,0x20,0x0E,0x24,0x24, +0x2E,0x04,0xFE,0x24,0x28,0x23,0x2E,0x20,0xFE,0x2A,0x28,0x11,0xD1,0xC1,0xB7,0xC9, +0x13,0x05,0x28,0xF8,0x1A,0xFE,0x23,0x20,0xF3,0x1B,0x04,0x18,0x11,0x13,0x05,0x28, +0x0A,0x1A,0xFE,0x24,0x20,0x05,0x24,0x2E,0x24,0x13,0x05,0x79,0xB5,0x4F,0xF1,0xF1, +0xCD,0x1B,0xF4,0x7C,0x85,0xFE,0x15,0xD2,0x4B,0xF3,0xC9,0x2E,0x00,0x04,0x05,0xC8, +0x1A,0xFE,0x2E,0x28,0x14,0xFE,0x2C,0x28,0x0A,0xFE,0x23,0x20,0x15,0x24,0x13,0x05, +0x20,0xEE,0xC9,0x79,0xF6,0x02,0x4F,0x18,0xF4,0x2C,0x13,0x05,0xC8,0x1A,0xFE,0x23, +0x28,0xF7,0xEB,0xE5,0xFE,0x5E,0x20,0x18,0x23,0xBE,0x20,0x14,0x23,0xBE,0x20,0x10, +0x23,0xBE,0x20,0x0C,0x23,0x78,0xD6,0x04,0x38,0x06,0x47,0xE3,0x79,0xF6,0x40,0x4F, +0xE1,0xEB,0x78,0xB7,0xC8,0x79,0xE6,0x08,0xC0,0x1A,0xFE,0x2D,0x3E,0x10,0x28,0x06, +0x1A,0xFE,0x2B,0xC0,0x3E,0x18,0xB1,0x4F,0x13,0x05,0xC9,0xCD,0xC6,0xC1,0xF5,0xCD, +0x51,0xDD,0x38,0x39,0xCD,0xFB,0xCE,0xF5,0xE5,0xCD,0x45,0xFF,0x28,0x0B,0xCD,0x8F, +0xEE,0xCD,0xDC,0xF7,0xCD,0x28,0xF8,0x18,0x0D,0x3E,0x22,0xCD,0x56,0xC3,0xCD,0x28, +0xF8,0x3E,0x22,0xCD,0x56,0xC3,0xE1,0xF1,0x28,0x13,0xFE,0x3B,0x28,0x05,0xFE,0x2C, +0xC2,0x46,0xF3,0xCD,0x3F,0xDD,0x3E,0x2C,0xCD,0x56,0xC3,0x18,0xC7,0xCD,0x4E,0xC3, +0xF1,0xC3,0xA2,0xC1,0x01,0x00,0xAC,0xCD,0xBE,0xFF,0xD0,0x22,0x7B,0xAE,0x22,0x8F, +0xB0,0x22,0x7D,0xAE,0xEB,0x22,0x7F,0xAE,0x01,0x2F,0x01,0x09,0xD8,0x22,0x81,0xAE, +0xEB,0x23,0xB7,0xED,0x52,0xD8,0x7C,0xFE,0x04,0xD8,0xAF,0x32,0x91,0xB0,0xC9,0xCD, +0x3E,0xFC,0xCD,0x91,0xCE,0xE5,0xCD,0x50,0xF7,0xCD,0x75,0xF6,0x22,0x7B,0xAE,0xE1, +0xC9,0xD5,0x2A,0x7F,0xAE,0xEB,0x2A,0x7B,0xAE,0xCD,0xCF,0xFF,0xE3,0xCD,0xCF,0xFF, +0xD1,0x13,0xCD,0xB8,0xFF,0x38,0x03,0x2B,0x09,0xD0,0xC3,0x3E,0xF7,0xD5,0xE5,0x2A, +0x8D,0xB0,0xEB,0x2A,0x8F,0xB0,0xCD,0xDA,0xFF,0xE1,0xD1,0xC9,0x2A,0x83,0xAE,0x09, +0x22,0x83,0xAE,0x2A,0x85,0xAE,0x09,0x22,0x85,0xAE,0x2A,0x87,0xAE,0x09,0x22,0x87, +0xAE,0x2A,0x89,0xAE,0x09,0x22,0x89,0xAE,0xC9,0x2A,0x85,0xAE,0xEB,0x2A,0x87,0xAE, +0xCD,0xCF,0xFF,0xE5,0x2A,0x89,0xAE,0xCD,0xDA,0xFF,0xC5,0x2A,0x8D,0xB0,0xEB,0x2A, +0x89,0xAE,0x2B,0x78,0xB1,0xC4,0xF5,0xFF,0xEB,0x22,0x8D,0xB0,0xC1,0xD1,0xC3,0xB1, +0xD5,0x2A,0x83,0xAE,0x22,0x85,0xAE,0xEB,0x19,0x22,0x87,0xAE,0x2A,0x8D,0xB0,0x23, +0x78,0xB1,0xC4,0xF2,0xFF,0x2B,0x22,0x8D,0xB0,0xEB,0x22,0x89,0xAE,0xC9,0xF5,0xE5, +0x21,0x8B,0xAE,0x22,0x8B,0xB0,0x3E,0x01,0xCD,0xB0,0xF5,0x36,0x00,0xE1,0xF1,0xC9, +0x2A,0x8B,0xB0,0x2F,0x3C,0xC8,0x85,0x6F,0x3E,0xFF,0x8C,0x67,0x22,0x8B,0xB0,0xC9, +0x2A,0x8B,0xB0,0xE5,0x85,0x6F,0x8C,0x95,0x67,0x22,0x8B,0xB0,0x3E,0x78,0x85,0x3E, +0x4F,0x8C,0xE1,0xD0,0xCD,0x8E,0xF5,0xC3,0x3E,0xF7,0x2A,0x8F,0xB0,0x22,0x8D,0xB0, +0xC9,0x2F,0x4F,0x06,0xFF,0x03,0xCD,0xE6,0xF5,0xD0,0xCD,0x3E,0xFC,0xCD,0xE6,0xF5, +0xD0,0x1E,0x0E,0xC3,0x94,0xCA,0x2A,0x89,0xAE,0xEB,0x2A,0x8D,0xB0,0x09,0xCD,0xB8, +0xFF,0xD8,0x22,0x8D,0xB0,0x23,0xEB,0xC9,0x2A,0x89,0xAE,0xC5,0xD5,0xD5,0xE5,0xCD, +0x18,0xF6,0xDA,0x3E,0xF7,0xE1,0xC1,0xD5,0x7D,0x91,0x4F,0x7C,0x98,0x47,0x2B,0x1B, +0xB1,0xC4,0xF5,0xFF,0xE1,0xD1,0xC1,0xC9,0x09,0xD8,0xEB,0xCD,0x22,0xF6,0xD0,0xCD, +0x3E,0xFC,0x2A,0x8D,0xB0,0xC3,0xB8,0xFF,0x2A,0x89,0xAE,0xEB,0x2A,0x8D,0xB0,0xC3, +0xCF,0xFF,0x11,0x01,0x00,0x18,0x03,0x11,0x02,0x08,0xC5,0xE5,0x21,0x91,0xB0,0x7E, +0xB7,0x20,0x1D,0xD5,0xE5,0x21,0x00,0x10,0x01,0x00,0x00,0xCD,0x43,0xF7,0x22,0x92, +0xB0,0xEB,0x2A,0x7D,0xAE,0x22,0x94,0xB0,0xEB,0x22,0x7D,0xAE,0xE1,0xD1,0x3E,0x04, +0xB3,0x77,0x2A,0x92,0xB0,0x23,0x1E,0x00,0x19,0xEB,0xE1,0xC1,0xC9,0x3E,0xFE,0x18, +0x06,0x3E,0xFD,0x18,0x02,0x3E,0xFF,0xC5,0xD5,0xE5,0x21,0x91,0xB0,0xA6,0x77,0xFE, +0x04,0x20,0x16,0x2A,0x92,0xB0,0xEB,0x21,0x00,0x10,0xCD,0x2E,0xF7,0x20,0x0A,0xAF, +0x32,0x91,0xB0,0x2A,0x94,0xB0,0x22,0x7D,0xAE,0xE1,0xD1,0xC1,0xC9,0xFE,0x80,0x28, +0x2C,0xCD,0x67,0xCE,0x4F,0xCD,0x37,0xDD,0x2C,0x06,0x08,0xCD,0x67,0xCE,0xF5,0x05, +0x28,0x08,0xCD,0x55,0xDD,0x38,0xF4,0xAF,0x18,0xF4,0xEB,0x79,0xCD,0xA5,0xBB,0x30, +0x68,0x01,0x08,0x00,0x09,0xF1,0x2B,0x77,0x0D,0x20,0xFA,0xEB,0xC9,0xCD,0x3F,0xDD, +0xCD,0x86,0xCE,0xE5,0x21,0x00,0x01,0xCD,0xB8,0xFF,0x38,0x4D,0xD5,0xCD,0xAE,0xBB, +0xEB,0x30,0x1D,0x2F,0x6F,0x26,0x00,0x23,0x29,0x29,0x29,0x1B,0xCD,0x2E,0xF7,0x20, +0x38,0x2A,0x96,0xB0,0x22,0x7D,0xAE,0xCD,0x75,0xF6,0x11,0x00,0x01,0xCD,0xAB,0xBB, +0xD1,0xCD,0x06,0xF7,0xE1,0xC9,0xAF,0x93,0x6F,0x3E,0x01,0x9A,0x67,0xB5,0xC8,0xD5, +0x29,0x29,0x29,0x01,0x00,0x40,0xCD,0x43,0xF7,0xEB,0x2A,0x7D,0xAE,0x22,0x96,0xB0, +0xEB,0x22,0x7D,0xAE,0xD1,0x23,0xC3,0xAB,0xBB,0x1E,0x05,0xC3,0x94,0xCA,0xE5,0x2A, +0x7B,0xAE,0xCD,0xB8,0xFF,0xE1,0xC0,0x19,0x22,0x7D,0xAE,0xEB,0x18,0x12,0x1E,0x07, +0xC3,0x94,0xCA,0xEB,0x2A,0x7B,0xAE,0xCD,0xCF,0xFF,0xCD,0xBE,0xFF,0x38,0xEF,0xEB, +0xCD,0x3E,0xFC,0xD5,0x2A,0x7D,0xAE,0xCD,0xB8,0xFF,0x38,0xE2,0xCD,0x1D,0xF5,0x2A, +0x89,0xAE,0x09,0x38,0xD9,0x2B,0xCD,0xB8,0xFF,0x30,0xD3,0x2A,0x7B,0xAE,0xEB,0xCD, +0xCF,0xFF,0x22,0x98,0xB0,0x11,0xBB,0xF7,0xCD,0x74,0xDA,0xED,0x4B,0x98,0xB0,0x78, +0x07,0x38,0x16,0xB1,0x28,0x2F,0x2A,0x8F,0xB0,0x54,0x5D,0x09,0xE5,0xCD,0x1D,0xF5, +0xEB,0x78,0xB1,0xC4,0xF5,0xFF,0xE1,0x18,0x15,0x2A,0x8D,0xB0,0x54,0x5D,0x09,0xE5, +0xCD,0x1D,0xF5,0xEB,0x23,0x13,0x78,0xB1,0xC4,0xF2,0xFF,0xEB,0x2B,0xD1,0x22,0x8F, +0xB0,0xEB,0x22,0x8D,0xB0,0xE1,0x22,0x7B,0xAE,0xAF,0xC9,0x2A,0x83,0xAE,0xCD,0xBE, +0xFF,0xD0,0x2A,0x98,0xB0,0x09,0xEB,0x72,0x2B,0x73,0xC9,0x23,0xCD,0xF9,0xF7,0x7E, +0xFE,0x22,0xCA,0x3F,0xDD,0xB7,0x28,0x37,0x04,0x23,0x18,0xF3,0xCD,0xF9,0xF7,0x7E, +0xB7,0xC8,0x23,0x04,0x18,0xF9,0xCD,0xF9,0xF7,0x4F,0x7E,0xB7,0x28,0x21,0xB9,0x28, +0x1E,0xFE,0x2C,0x28,0x1A,0x23,0x04,0x18,0xF1,0xD1,0xE5,0x06,0x00,0xCD,0xFB,0xFF, +0xD1,0xE5,0x21,0xBA,0xB0,0x70,0x23,0x73,0x23,0x72,0xCD,0xBA,0xFB,0xE1,0xC9,0xE5, +0x04,0x05,0x28,0x12,0x2B,0x7E,0xFE,0x20,0x28,0xF7,0xFE,0x09,0x28,0xF3,0xFE,0x0D, +0x28,0xEF,0xFE,0x0A,0x28,0xEB,0xE1,0xC9,0xCD,0xDA,0xFB,0xC8,0x1A,0x13,0xCD,0x6E, +0xC3,0x10,0xF9,0xC9,0x01,0x39,0xF8,0x18,0x0C,0xFE,0x41,0xD8,0xFE,0x5B,0xD0,0xC6, +0x20,0xC9,0x01,0x8A,0xFF,0xC5,0x2A,0xC2,0xB0,0x7E,0xCD,0x19,0xFC,0xD5,0xCD,0xDA, +0xFB,0xE1,0xC1,0x3C,0x3D,0xCA,0xBA,0xFB,0xF5,0x1A,0x13,0xCD,0xF9,0xFF,0x77,0x23, +0xF1,0x18,0xF1,0xE5,0x7E,0x2A,0xC2,0xB0,0x86,0x1E,0x0F,0xDA,0x94,0xCA,0xCD,0x19, +0xFC,0xE1,0xD5,0xE5,0xCD,0xDA,0xFB,0x48,0xEB,0xE3,0xCD,0xE8,0xFB,0xE1,0xE3,0x78, +0xCD,0x8B,0xF8,0xD1,0x79,0xCD,0x8B,0xF8,0xC3,0xBA,0xFB,0xC5,0xEB,0x4F,0x06,0x00, +0xB7,0xC4,0xF2,0xFF,0xEB,0xC1,0xC9,0xE5,0xCD,0xDA,0xFB,0x48,0xE1,0xD5,0xCD,0xE8, +0xFB,0xE1,0x78,0xB1,0xC8,0x79,0xB7,0x28,0x0C,0x78,0xB7,0x28,0x09,0x05,0x0D,0x1A, +0x13,0xBE,0x23,0x28,0xED,0x3F,0x9F,0xC0,0x3C,0xC9,0xCD,0xCE,0xF8,0xD5,0xCD,0x14, +0xF1,0xEB,0x18,0x5E,0xCD,0xCE,0xF8,0xD5,0xCD,0x19,0xF1,0xEB,0x18,0x54,0xCD,0xFB, +0xCE,0xCD,0x53,0xFF,0xCD,0x55,0xDD,0x9F,0xDC,0x67,0xCE,0xFE,0x11,0xD2,0x9C,0xFA, +0x47,0xCD,0x37,0xDD,0x29,0xEB,0x79,0xC3,0xA0,0xF5,0xCD,0x37,0xDD,0x28,0xCD,0xFB, +0xCE,0xCD,0x37,0xDD,0x2C,0xCD,0x53,0xFF,0xCD,0x9F,0xCE,0xCD,0x37,0xDD,0x29,0xE5, +0x79,0xCD,0xA0,0xF5,0xD5,0x79,0xCD,0x4B,0xFF,0xD1,0x78,0xB7,0xC4,0xBA,0xF3,0x30, +0x0A,0x78,0xB7,0x20,0x06,0x79,0xCD,0x9F,0xEE,0x18,0x07,0xC3,0x9C,0xFA,0xE5,0xCD, +0x9D,0xEE,0xE5,0x01,0xFF,0xFF,0x03,0x7E,0x23,0xB7,0x20,0xFA,0x79,0xCD,0x19,0xFC, +0xE1,0xB7,0xD5,0xC4,0xF2,0xFF,0xD1,0xCD,0xBA,0xFB,0xE1,0xC9,0xCD,0xE9,0xF9,0x0E, +0x00,0x18,0x2A,0xCD,0xE9,0xF9,0x1A,0x90,0x4F,0x18,0x22,0xCD,0x37,0xDD,0x28,0xCD, +0xE9,0xF9,0x78,0xB7,0xCA,0x9C,0xFA,0x05,0x48,0xD5,0xC5,0xCD,0xFB,0xF9,0xC1,0xE3, +0x7E,0x91,0x06,0x00,0x38,0x05,0xBB,0x47,0x38,0x01,0x43,0xEB,0xE1,0xCD,0x37,0xDD, +0x29,0xE5,0xEB,0x7E,0xB8,0x78,0x30,0x03,0x7E,0x0E,0x00,0xF5,0xCD,0x19,0xFC,0xD5, +0xCD,0xE8,0xFB,0xEB,0xD1,0x06,0x00,0x09,0xF1,0x4F,0xB7,0xC4,0xF2,0xFF,0xCD,0xBA, +0xFB,0xE1,0xC9,0xCD,0x37,0xDD,0x28,0xCD,0x86,0xD6,0xCD,0x3C,0xFF,0xE5,0xEB,0xCD, +0x21,0xFB,0xE3,0xCD,0x37,0xDD,0x2C,0xCD,0x6D,0xCE,0x47,0xCD,0xFB,0xF9,0x4B,0xCD, +0x37,0xDD,0x29,0xCD,0x37,0xDD,0xEF,0xC5,0xCD,0x9F,0xCE,0x78,0xC1,0xE3,0x0C,0x0D, +0x28,0x25,0xF5,0x7E,0x90,0xDA,0x9C,0xFA,0x3C,0xB9,0x38,0x01,0x79,0x4F,0x78,0x3D, +0x23,0x86,0x23,0x66,0x6F,0x8C,0x95,0x67,0xF1,0x47,0xEB,0x79,0xB8,0x38,0x01,0x78, +0x4F,0x06,0x00,0xB7,0xC4,0xF2,0xFF,0xE1,0xC9,0xCD,0xA5,0xCE,0xCD,0x37,0xDD,0x2C, +0xE5,0x2A,0xC2,0xB0,0xE3,0xCD,0x67,0xCE,0x47,0xD1,0xC9,0x1E,0xFF,0x7E,0xFE,0x29, +0xC8,0xCD,0x37,0xDD,0x2C,0xCD,0x67,0xCE,0x5F,0xC9,0xCD,0xDA,0xFB,0xC3,0x0A,0xFF, +0xCD,0x70,0xFA,0xC3,0x0A,0xFF,0xCD,0x92,0xFA,0xF5,0x3E,0x01,0xCD,0x19,0xFC,0xF1, +0x12,0xC3,0xBA,0xFB,0xE5,0xCD,0x2A,0xFA,0xE1,0xC9,0xCD,0x39,0xC4,0x38,0xEA,0xAF, +0x32,0xBA,0xB0,0xC3,0xBA,0xFB,0xCD,0x67,0xCE,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0xFB, +0xCE,0xCD,0x37,0xDD,0x29,0xE5,0xCD,0x45,0xFF,0x28,0x05,0xCD,0x92,0xFA,0x18,0x03, +0xCD,0x70,0xFA,0x41,0x4F,0x18,0x07,0xCD,0x92,0xFA,0x47,0x0E,0x20,0xE5,0x78,0xCD, +0x19,0xFC,0x04,0x05,0x28,0x05,0x79,0x12,0x13,0x18,0xF8,0xCD,0xBA,0xFB,0xE1,0xC9, +0xCD,0xDA,0xFB,0x28,0x27,0x1A,0xC9,0xCD,0xDA,0xFB,0xCA,0x0A,0xFF,0xEB,0xE5,0x5F, +0x16,0x00,0x19,0x5E,0x72,0xE3,0xD5,0xCD,0xA3,0xEC,0xD1,0xE1,0x73,0xD8,0x1E,0x0D, +0x18,0x0C,0xE5,0xCD,0x8D,0xFE,0xEB,0xE1,0x7A,0xB7,0x7B,0xC8,0x1E,0x05,0xC3,0x94, +0xCA,0xCD,0xFB,0xCE,0xCD,0x45,0xFF,0x0E,0x01,0x28,0x0F,0xCD,0x92,0xFA,0xB7,0xCA, +0x9C,0xFA,0x4F,0xCD,0x37,0xDD,0x2C,0xCD,0xA5,0xCE,0xCD,0x37,0xDD,0x2C,0xE5,0x2A, +0xC2,0xB0,0xE3,0xCD,0x9F,0xCE,0xCD,0x37,0xDD,0x29,0xE3,0x79,0xCD,0xD4,0xFA,0xCD, +0x0A,0xFF,0xE1,0xC9,0xF5,0x48,0xD5,0xCD,0xE8,0xFB,0xE1,0xF1,0xE5,0x6F,0x60,0x78, +0xBD,0x38,0x2D,0x2D,0x7D,0x83,0x5F,0x8A,0x93,0x57,0x78,0x95,0x47,0x79,0xD6,0x01, +0x7D,0x3C,0x38,0x1D,0xE3,0xC5,0xD5,0xE5,0x1A,0xBE,0x20,0x0D,0x23,0x0D,0x28,0x13, +0x13,0x05,0x20,0xF4,0xE1,0xD1,0xC1,0x18,0x07,0xE1,0xD1,0xC1,0x13,0x05,0x20,0xE5, +0xAF,0xD1,0xC9,0xE1,0xD1,0xC1,0xE1,0x7C,0x90,0x3C,0xC9,0x11,0x2E,0xFB,0xC3,0x74, +0xDA,0xE5,0x7E,0x23,0x4E,0x23,0x46,0xEB,0xB7,0xC4,0x2E,0xFB,0xE1,0xC9,0x2A,0x8D, +0xB0,0xCD,0xBE,0xFF,0x30,0x07,0x2A,0x8F,0xB0,0xCD,0xBE,0xFF,0xD0,0xEB,0x2B,0x2B, +0xE5,0xCD,0x8F,0xFB,0xEB,0xE1,0xC3,0xA6,0xFB,0x2A,0xC2,0xB0,0x11,0xBA,0xB0,0xCD, +0xB8,0xFF,0xD8,0xCD,0x8F,0xFB,0xC3,0xBA,0xFB,0x2A,0xC2,0xB0,0xE5,0x7E,0xB7,0x28, +0x26,0x23,0x5E,0x23,0x56,0x2A,0x81,0xAE,0xCD,0xB8,0xFF,0x30,0x1E,0x2A,0x8F,0xB0, +0xCD,0xB8,0xFF,0x38,0x16,0x2A,0x83,0xAE,0xCD,0xB8,0xFF,0x30,0x0A,0xE1,0xE5,0x11, +0x9C,0xB0,0xCD,0xB8,0xFF,0x20,0x04,0xE1,0xC3,0xFF,0xFB,0xE1,0xCD,0xFF,0xFB,0x7E, +0xCD,0x19,0xFC,0xD5,0x4E,0x06,0x00,0x23,0x7E,0x23,0x66,0x6F,0x78,0xB1,0xC4,0xF2, +0xFF,0xD1,0x21,0xBA,0xB0,0xC9,0x1A,0x13,0x77,0x23,0x1A,0x13,0x77,0x23,0x1A,0x13, +0x77,0x23,0xC9,0x21,0x9C,0xB0,0x22,0x9A,0xB0,0xC9,0x3E,0x03,0x32,0xC1,0xB0,0x2A, +0x9A,0xB0,0x22,0xC2,0xB0,0x11,0xBA,0xB0,0xCD,0xB8,0xFF,0x1E,0x10,0xCA,0x94,0xCA, +0x11,0xBA,0xB0,0xCD,0xA6,0xFB,0x22,0x9A,0xB0,0xC9,0xE5,0xCD,0x3C,0xFF,0x2A,0xC2, +0xB0,0xCD,0xE8,0xFB,0xE1,0x78,0xB7,0xC9,0xCD,0xFF,0xFB,0xC0,0xD5,0x1B,0x2A,0x8D, +0xB0,0xCD,0xB8,0xFF,0x20,0x07,0x58,0x16,0x00,0x19,0x22,0x8D,0xB0,0xD1,0xC9,0xE5, +0x46,0x23,0x7E,0x23,0x66,0x6F,0xE3,0xEB,0x2A,0x9A,0xB0,0x2B,0x2B,0x2B,0xCD,0xB8, +0xFF,0x20,0x03,0x22,0x9A,0xB0,0xEB,0xD1,0xC9,0xF5,0xC5,0xE5,0xF5,0xCD,0xD1,0xF5, +0xF1,0x21,0xBA,0xB0,0x77,0x23,0x73,0x23,0x72,0xE1,0xC1,0xF1,0xC9,0xCD,0x45,0xFF, +0x20,0x06,0xCD,0xDA,0xFB,0xCD,0x3E,0xFC,0xCD,0x28,0xF6,0xC3,0x60,0xFE,0xC5,0xD5, +0xE5,0x2A,0x8F,0xB0,0x22,0x8D,0xB0,0x21,0x00,0x00,0x22,0xBD,0xB0,0x2A,0x89,0xAE, +0x22,0xBF,0xB0,0xCD,0x7B,0xFC,0x2A,0xBD,0xB0,0x7C,0xB5,0x28,0x1A,0x56,0x2B,0x5E, +0xE5,0x2B,0x4E,0x06,0x00,0x2A,0x8D,0xB0,0xEB,0x09,0x2B,0xCD,0xF5,0xFF,0x13,0xE1, +0x73,0x23,0x72,0x1B,0xEB,0x18,0xCD,0xE1,0xD1,0xC1,0xC9,0x21,0x9C,0xB0,0xED,0x5B, +0x9A,0xB0,0xCD,0xB8,0xFF,0x28,0x0F,0x7E,0x23,0x4E,0x23,0x46,0xE5,0xEB,0xB7,0xC4, +0x9C,0xFC,0xE1,0x23,0x18,0xE8,0x11,0x9C,0xFC,0xC3,0x74,0xDA,0x2A,0x8D,0xB0,0xCD, +0xBE,0xFF,0xD8,0x2A,0xBF,0xB0,0xCD,0xBE,0xFF,0xD0,0xEB,0x22,0xBD,0xB0,0xED,0x43, +0xBF,0xB0,0xC9,0xCD,0x2D,0xFF,0xD2,0x52,0xBD,0xCD,0xA3,0xBD,0x22,0xC2,0xB0,0x21, +0xC3,0xB0,0xC9,0xCD,0xC2,0xFE,0x21,0xC3,0xB0,0xC3,0xA6,0xBD,0xCD,0x15,0xFE,0x30, +0x09,0xCD,0xAC,0xBD,0xDA,0x0D,0xFF,0xCD,0x4F,0xFE,0xCD,0x58,0xBD,0xD8,0xC3,0xF3, +0xCA,0xCD,0x15,0xFE,0x30,0x09,0xCD,0xB2,0xBD,0xDA,0x0D,0xFF,0xCD,0x4F,0xFE,0xCD, +0x5E,0xBD,0xD8,0x18,0xE9,0xCD,0x15,0xFE,0x30,0x09,0xCD,0xB5,0xBD,0xDA,0x0D,0xFF, +0xCD,0x4F,0xFE,0xCD,0x61,0xBD,0xD8,0x18,0xD5,0xCD,0x15,0xFE,0xDA,0xC4,0xBD,0xC3, +0x6A,0xBD,0x3A,0xC1,0xB0,0xB1,0xFE,0x02,0x20,0x05,0xCD,0x4F,0xFE,0x18,0x03,0xCD, +0x15,0xFE,0xEB,0xD5,0xCD,0x64,0xBD,0xD1,0xF5,0x01,0x05,0x00,0xCD,0xF2,0xFF,0xF1, +0xD8,0xCA,0xEA,0xCA,0xC3,0xF3,0xCA,0xCD,0x9A,0xFE,0xEB,0xCD,0xB8,0xBD,0xDA,0x0D, +0xFF,0x28,0x10,0x21,0x00,0x80,0xC3,0x60,0xFE,0xCD,0x9A,0xFE,0xEB,0xCD,0xBB,0xBD, +0xDA,0x0D,0xFF,0x1E,0x0B,0xC3,0x94,0xCA,0xCD,0x9A,0xFE,0x7B,0xA5,0x6F,0x7C,0xA2, +0xC3,0x0C,0xFF,0xCD,0x9A,0xFE,0x7B,0xB5,0x6F,0x7A,0xB4,0x18,0xF3,0xCD,0x9A,0xFE, +0x7B,0xAD,0x6F,0x7C,0xAA,0x18,0xE9,0xE5,0xCD,0x8D,0xFE,0x7D,0x2F,0x6F,0x7C,0x2F, +0xCD,0x0C,0xFF,0xE1,0xC9,0xCD,0xA3,0xFD,0xF0,0xE5,0xC5,0xCD,0x2D,0xFF,0x30,0x0D, +0xCD,0xC7,0xBD,0x22,0xC2,0xB0,0xD5,0xD4,0x60,0xFE,0xD1,0x18,0x03,0xCD,0x6D,0xBD, +0xC1,0xE1,0xC9,0xCD,0x2D,0xFF,0xDA,0xCA,0xBD,0xC5,0xCD,0x70,0xBD,0xC1,0xC9,0xE5, +0x79,0xCD,0x4B,0xFF,0xD1,0xCD,0x2D,0xFF,0x78,0x30,0x0B,0xB7,0xF0,0xCD,0x6A,0xFE, +0xCD,0xCE,0xFD,0xC3,0x8D,0xFE,0xB7,0x20,0x05,0x11,0x49,0xBD,0x18,0x26,0xD5,0xC5, +0x78,0xCD,0x55,0xBD,0xDC,0x49,0xBD,0x78,0xC1,0xD1,0x30,0x08,0xCD,0x43,0xBD,0xAF, +0x90,0xC3,0x55,0xBD,0xEB,0xC3,0x4E,0xFF,0x11,0x4C,0xBD,0x18,0x03,0x11,0x4F,0xBD, +0xCD,0x2D,0xFF,0xD8,0xCD,0xFB,0xFF,0xD0,0x3A,0xC1,0xB0,0xCD,0x06,0xFE,0xD8,0xCD, +0x1D,0xFF,0x78,0xC3,0x43,0xBD,0x79,0xFE,0x03,0xD0,0x7E,0x23,0x66,0x6F,0xCD,0xA9, +0xBD,0xD0,0xC3,0x0D,0xFF,0x79,0xFE,0x03,0x28,0x32,0x3A,0xC1,0xB0,0xFE,0x03,0x28, +0x2B,0xB9,0x28,0x17,0x30,0x0C,0xE5,0x21,0xC1,0xB0,0x71,0x23,0xCD,0x63,0xFE,0xD1, +0xB7,0xC9,0xCD,0x63,0xFE,0xEB,0x21,0xC2,0xB0,0xB7,0xC9,0xEE,0x02,0x28,0x05,0xEB, +0x21,0xC2,0xB0,0xC9,0x5E,0x23,0x56,0x2A,0xC2,0xB0,0x37,0xC9,0xC3,0x40,0xFF,0x2A, +0xC2,0xB0,0xCD,0x6A,0xFE,0x2A,0x8B,0xB0,0xCD,0x63,0xFE,0xEB,0x21,0xC2,0xB0,0xC9, +0xAF,0x18,0x08,0x5E,0x23,0x56,0x2B,0x7A,0x18,0x08,0x7C,0xEB,0x21,0xC1,0xB0,0x36, +0x05,0x23,0xEB,0xF5,0xB7,0xFC,0xC7,0xBD,0xF1,0xC3,0x40,0xBD,0x22,0xC2,0xB0,0xEB, +0x22,0xC4,0xB0,0x21,0xC1,0xB0,0x36,0x05,0x23,0xAF,0xC3,0x43,0xBD,0xCD,0x93,0xFE, +0xD8,0x18,0x3F,0xCD,0xA5,0xFE,0x22,0xC2,0xB0,0xC9,0x79,0xCD,0xAC,0xFE,0xEB,0xDC, +0xA5,0xFE,0xD8,0x18,0x2D,0x21,0xC1,0xB0,0x7E,0x36,0x02,0x23,0xFE,0x03,0x38,0x0D, +0xCA,0x40,0xFF,0xC5,0xCD,0x46,0xBD,0x47,0xDC,0xA9,0xBD,0xC1,0xC9,0x7E,0x23,0x66, +0x6F,0xC9,0xCD,0x2D,0xFF,0xD8,0xCD,0x46,0xBD,0x30,0x07,0x47,0xFC,0xA9,0xBD,0xDA, +0x0D,0xFF,0x1E,0x06,0xC3,0x94,0xCA,0xE5,0xD5,0xC5,0x21,0xC1,0xB0,0xBE,0xC4,0xE5, +0xFE,0xC1,0xD1,0xE1,0xC9,0xD6,0x03,0x38,0xA4,0xCA,0x3C,0xFF,0xCD,0x2D,0xFF,0xDA, +0x6A,0xFE,0xC9,0xE5,0x21,0x00,0x00,0x22,0xC2,0xB0,0x22,0xC4,0xB0,0x22,0xC5,0xB0, +0xE1,0xC9,0xCD,0xA3,0xFD,0x6F,0x87,0x9F,0x18,0x02,0x6F,0xAF,0x67,0x22,0xC2,0xB0, +0x3E,0x02,0x32,0xC1,0xB0,0xC9,0x21,0xC2,0xB0,0x3E,0x05,0x18,0xF5,0x21,0xC1,0xB0, +0x4E,0x23,0xC9,0x3A,0xC1,0xB0,0xC9,0x3A,0xC1,0xB0,0xFE,0x03,0xC9,0x3A,0xC1,0xB0, +0xFE,0x03,0x28,0x0C,0x2A,0xC2,0xB0,0xD8,0x21,0xC2,0xB0,0xC9,0xCD,0x45,0xFF,0xC8, +0x1E,0x0D,0xC3,0x94,0xCA,0x3A,0xC1,0xB0,0xFE,0x03,0xC9,0x32,0xC1,0xB0,0x11,0xC2, +0xB0,0x18,0x13,0xD5,0xE5,0x3A,0xC1,0xB0,0x4F,0xCD,0xB0,0xF5,0xCD,0x62,0xFF,0xE1, +0xD1,0xC9,0xEB,0x21,0xC2,0xB0,0xC5,0x3A,0xC1,0xB0,0x4F,0x06,0x00,0xED,0xB0,0xC1, +0xC9,0xCD,0x8A,0xFF,0xFE,0x41,0x3F,0xD0,0xFE,0x5B,0xC9,0xCD,0x71,0xFF,0xD8,0xFE, +0x2E,0x37,0xC8,0xFE,0x30,0x3F,0xD0,0xFE,0x3A,0xC9,0xFE,0x61,0xD8,0xFE,0x7B,0xD0, +0xD6,0x20,0xC9,0xF5,0xC5,0x46,0x23,0xE5,0x23,0x23,0xBE,0x23,0x28,0x04,0x05,0x20, +0xF7,0xE3,0xF1,0x7E,0x23,0x66,0x6F,0xC1,0xF1,0xC9,0xC5,0x4F,0x7E,0xB7,0x28,0x05, +0x23,0xB9,0x20,0xF8,0x37,0x79,0xC1,0xC9,0x7C,0x92,0xC0,0x7D,0x93,0xC9,0x7C,0x90, +0xC0,0x7D,0x91,0xC9,0xC5,0x47,0x7D,0x93,0x5F,0x7C,0x9A,0x57,0x78,0xC1,0xC9,0xC5, +0x47,0x7D,0x93,0x6F,0x7C,0x9A,0x67,0x78,0xC1,0xC9,0xE5,0x67,0xE3,0x7D,0x93,0x4F, +0x7C,0x9A,0x47,0xE3,0x7C,0xE1,0xC9,0xD5,0x57,0x7D,0x91,0x6F,0x7C,0x98,0x67,0x7A, +0xD1,0xC9,0xED,0xB0,0xC9,0xED,0xB8,0xC9,0xE9,0xC5,0xC9,0xD5,0xC9,0xC7,0xC7,0x54 +}; +#endif +