diff --git a/css/apple2.css b/css/apple2.css index 66194a9..0588d87 100644 --- a/css/apple2.css +++ b/css/apple2.css @@ -410,6 +410,10 @@ a.button:hover { width: 570px; } +#keyboard.layout-pravetz82 .row { + width: 610px; +} + .apple2e #keyboard .row { width: 610px; } @@ -418,18 +422,38 @@ a.button:hover { margin-left: 20px; } +#keyboard.layout-pravetz82 .row0 { + margin-left: 0px; +} + +#keyboard.layout-pravetz82 .row1 { + margin-left: -14px; +} + #keyboard .row2 { margin-left: 10px; } +#keyboard.layout-pravetz82 .row2 { + margin-left: 0px; +} + #keyboard .row3 { margin-left: 10px; } +#keyboard.layout-pravetz82 .row3 { + margin-left: 15px; +} + #keyboard .row4 { margin-left: 10px; } +#keyboard.layout-pravetz82 .row4 { + margin-left: 0px; +} + .apple2e #keyboard .row0 { margin-left: 0; } @@ -531,11 +555,81 @@ a.button:hover { bottom: 15px; } +#keyboard.layout-pravetz82 .key-RST { + border-left-color: #d00; + border-top-color: #d00; + border-right-color: #700; + border-bottom-color: #700; + background-color: #a00; +} + +#keyboard.layout-pravetz82 .key-RST:active { + border-left-color: #800; + border-top-color: #800; + border-right-color: #000; + border-bottom-color: #000; + background-color: #500; +} + +#keyboard.layout-pravetz82 .key-ОСВ, +#keyboard .key-МК { + border-left-color: #aaa; + border-top-color: #aaa; + border-right-color: #444; + border-bottom-color: #444; + background-color: #777; +} + +#keyboard.layout-pravetz82 .key-ОСВ:active, +#keyboard .key-МК:active { + border-left-color: #777; + border-top-color: #777; + border-right-color: #000; + border-bottom-color: #000; + background-color: #333; +} + +#keyboard.layout-pravetz82 .key-ЛАТ { + border-left-color: #ddd; + border-top-color: #ddd; + border-right-color: #888; + border-bottom-color: #888; + background-color: #bbb; +} + +#keyboard.layout-pravetz82 .key-ЛАТ:active { + border-left-color: #888; + border-top-color: #888; + border-right-color: #222; + border-bottom-color: #222; + background-color: #999; +} + +#keyboard.layout-pravetz82 .key-ЛАТ2 { + border-left-color: #dd0; + border-top-color: #dd0; + border-right-color: #880; + border-bottom-color: #880; + background-color: #aa0; +} + +#keyboard.layout-pravetz82 .key-ЛАТ2:active { + border-left-color: #770; + border-top-color: #770; + border-right-color: #000; + border-bottom-color: #000; + background-color: #550; +} + #keyboard .key-nbsp { margin-left: 62px; width: 330px; } +#keyboard.layout-pravetz82 .key-nbsp { + margin-left: 72px; +} + .apple2e #display { margin: 5px; } diff --git a/js/components/Apple2.tsx b/js/components/Apple2.tsx index d3b5c5b..0d75c2d 100644 --- a/js/components/Apple2.tsx +++ b/js/components/Apple2.tsx @@ -41,6 +41,7 @@ export interface Apple2Props { gl: boolean; rom: string; sectors: SupportedSectors; + keyboardLayout: string; } /** @@ -53,7 +54,7 @@ export interface Apple2Props { * @returns */ export const Apple2 = (props: Apple2Props) => { - const { e, enhanced, sectors } = props; + const { e, enhanced, sectors, keyboardLayout } = props; const screenRef = useRef(null); const [apple2, setApple2] = useState(); const [error, setError] = useState(); @@ -192,7 +193,7 @@ export const Apple2 = (props: Apple2Props) => { toggleDebugger={toggleDebugger} /> - + diff --git a/js/components/Keyboard.tsx b/js/components/Keyboard.tsx index 04f5466..bfeeeb8 100644 --- a/js/components/Keyboard.tsx +++ b/js/components/Keyboard.tsx @@ -96,7 +96,7 @@ export const Key = ({ */ export interface KeyboardProps { apple2: Apple2Impl | undefined; - e: boolean; + layout: string; } /** @@ -107,10 +107,13 @@ export interface KeyboardProps { * @param apple2 Apple2 object * @returns Keyboard component */ -export const Keyboard = ({ apple2, e }: KeyboardProps) => { +export const Keyboard = ({ apple2, layout }: KeyboardProps) => { const [pressed, setPressed] = useState([]); const [active, setActive] = useState(['LOCK']); - const keys = useMemo(() => keysAsTuples(e ? keys2e : keys2), [e]); + const keys = useMemo( + () => keysAsTuples(layout === 'apple2e' ? keys2e : keys2), + [layout] + ); // Set global keystroke handler useEffect(() => { diff --git a/js/components/util/systems.ts b/js/components/util/systems.ts index af405a9..03e16d7 100644 --- a/js/components/util/systems.ts +++ b/js/components/util/systems.ts @@ -4,6 +4,7 @@ export interface SystemType { e: boolean; enhanced: boolean; sectors: 13 | 16; + keyboardLayout: string; } // Enhanced Apple //e @@ -14,6 +15,7 @@ export const defaultSystem = { e: true, enhanced: true, sectors: 16, + keyboardLayout: 'apple2e', } as const; export const systemTypes: Record> = { @@ -36,36 +38,49 @@ export const systemTypes: Record> = { rom: 'intbasic', characterRom: 'apple2_char', e: false, + keyboardLayout: 'apple2', }, apple213: { rom: 'intbasic', characterRom: 'apple2_char', e: false, sectors: 13, + keyboardLayout: 'apple2', }, original: { rom: 'original', characterRom: 'apple2_char', e: false, + keyboardLayout: 'apple2', }, apple2jplus: { rom: 'apple2j', characterRom: 'apple2j_char', e: false, + keyboardLayout: 'apple2', }, apple2pig: { rom: 'fpbasic', characterRom: 'pigfont_char', e: false, + keyboardLayout: 'apple2', }, apple2lc: { rom: 'fpbasic', characterRom: 'apple2lc_char', e: false, + keyboardLayout: 'apple2', }, apple2plus: { rom: 'fpbasic', characterRom: 'apple2_char', e: false, + keyboardLayout: 'apple2', + }, + pravetz82: { + rom: 'pravetz82', + characterRom: 'pravetz82_char', + e: false, + keyboardLayout: 'apple2', }, } as const; diff --git a/js/main2.ts b/js/main2.ts index 27a0eda..ed736d3 100644 --- a/js/main2.ts +++ b/js/main2.ts @@ -19,36 +19,49 @@ const romVersion = prefs.readPref('computer_type2'); let rom: string; let characterRom: string; let sectors: SupportedSectors = 16; +let keyboardLayout: string; switch (romVersion) { case 'apple2': rom = 'intbasic'; characterRom = 'apple2_char'; + keyboardLayout = 'apple2'; break; case 'apple213': rom = 'intbasic'; characterRom = 'apple2_char'; sectors = 13; + keyboardLayout = 'apple2'; break; case 'original': rom = 'original'; characterRom = 'apple2_char'; + keyboardLayout = 'apple2'; break; case 'apple2jplus': rom = 'apple2j'; characterRom = 'apple2j_char'; + keyboardLayout = 'apple2'; break; case 'apple2pig': rom = 'fpbasic'; characterRom = 'pigfont_char'; + keyboardLayout = 'apple2'; break; case 'apple2lc': rom = 'fpbasic'; characterRom = 'apple2lc_char'; + keyboardLayout = 'apple2'; + break; + case 'pravetz82': + rom = 'pravetz82'; + characterRom = 'pravetz82_char'; + keyboardLayout = 'pravetz82'; break; default: rom = 'fpbasic'; characterRom = 'apple2_char'; + keyboardLayout = 'apple2'; } const options = { @@ -88,6 +101,6 @@ apple2.ready cpu.addPageHandler(lc); - initUI(apple2, disk2, smartport, printer, false); + initUI(apple2, disk2, smartport, printer, false, keyboardLayout); }) .catch(console.error); diff --git a/js/main2e.ts b/js/main2e.ts index 4b67f8c..69a09ee 100644 --- a/js/main2e.ts +++ b/js/main2e.ts @@ -18,26 +18,31 @@ const romVersion = prefs.readPref('computer_type2e'); let enhanced = false; let rom: string; let characterRom: string; +let keyboardLayout: string; switch (romVersion) { case 'apple2e': rom = 'apple2e'; characterRom = 'apple2e_char'; + keyboardLayout = 'apple2e'; break; case 'apple2rm': rom = 'apple2e'; characterRom = 'rmfont_char'; enhanced = true; + keyboardLayout = 'apple2e'; break; case 'apple2ex': rom = 'apple2ex'; characterRom = 'apple2enh_char'; enhanced = true; + keyboardLayout = 'apple2e'; break; default: rom = 'apple2enh'; characterRom = 'apple2enh_char'; enhanced = true; + keyboardLayout = 'apple2e'; } const options = { @@ -74,6 +79,6 @@ apple2.ready io.setSlot(6, disk2); io.setSlot(7, smartport); - initUI(apple2, disk2, smartport, printer, options.e); + initUI(apple2, disk2, smartport, printer, options.e, keyboardLayout); }) .catch(console.error); diff --git a/js/roms/character/pravetz82_char.ts b/js/roms/character/pravetz82_char.ts new file mode 100644 index 0000000..c31418c --- /dev/null +++ b/js/roms/character/pravetz82_char.ts @@ -0,0 +1,262 @@ +import { ReadonlyUint8Array } from '../../types'; + +const pravetz82_charset = new Uint8Array([ + 0x00, 0x1c, 0x22, 0x2a, 0x2e, 0x2c, 0x20, 0x1e, + 0x00, 0x08, 0x14, 0x22, 0x22, 0x3e, 0x22, 0x22, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x22, 0x22, 0x3c, + 0x00, 0x1c, 0x22, 0x20, 0x20, 0x20, 0x22, 0x1c, + 0x00, 0x3c, 0x22, 0x22, 0x22, 0x22, 0x22, 0x3c, + 0x00, 0x3e, 0x20, 0x20, 0x3c, 0x20, 0x20, 0x3e, + 0x00, 0x3e, 0x20, 0x20, 0x3c, 0x20, 0x20, 0x20, + 0x00, 0x1e, 0x20, 0x20, 0x20, 0x26, 0x22, 0x1e, + 0x00, 0x22, 0x22, 0x22, 0x3e, 0x22, 0x22, 0x22, + 0x00, 0x1c, 0x08, 0x08, 0x08, 0x08, 0x08, 0x1c, + 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x22, 0x1c, + 0x00, 0x22, 0x24, 0x28, 0x30, 0x28, 0x24, 0x22, + 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3e, + 0x00, 0x22, 0x36, 0x2a, 0x2a, 0x22, 0x22, 0x22, + 0x00, 0x22, 0x22, 0x32, 0x2a, 0x26, 0x22, 0x22, + 0x00, 0x1c, 0x22, 0x22, 0x22, 0x22, 0x22, 0x1c, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x20, 0x20, 0x20, + 0x00, 0x1c, 0x22, 0x22, 0x22, 0x2a, 0x24, 0x1a, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x28, 0x24, 0x22, + 0x00, 0x1c, 0x22, 0x20, 0x1c, 0x02, 0x22, 0x1c, + 0x00, 0x3e, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x00, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x1c, + 0x00, 0x22, 0x22, 0x22, 0x22, 0x22, 0x14, 0x08, + 0x00, 0x22, 0x22, 0x22, 0x2a, 0x2a, 0x36, 0x22, + 0x00, 0x22, 0x22, 0x14, 0x08, 0x14, 0x22, 0x22, + 0x00, 0x22, 0x22, 0x14, 0x08, 0x08, 0x08, 0x08, + 0x00, 0x3e, 0x02, 0x04, 0x08, 0x10, 0x20, 0x3e, + 0x00, 0x3e, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3e, + 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, + 0x00, 0x3e, 0x06, 0x06, 0x06, 0x06, 0x06, 0x3e, + 0x00, 0x00, 0x00, 0x08, 0x14, 0x22, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x08, + 0x00, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x14, 0x14, 0x3e, 0x14, 0x3e, 0x14, 0x14, + 0x00, 0x08, 0x1e, 0x28, 0x1c, 0x0a, 0x3c, 0x08, + 0x00, 0x30, 0x32, 0x04, 0x08, 0x10, 0x26, 0x06, + 0x00, 0x10, 0x28, 0x28, 0x10, 0x2a, 0x24, 0x1a, + 0x00, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x10, 0x20, 0x20, 0x20, 0x10, 0x08, + 0x00, 0x08, 0x04, 0x02, 0x02, 0x02, 0x04, 0x08, + 0x00, 0x08, 0x2a, 0x1c, 0x08, 0x1c, 0x2a, 0x08, + 0x00, 0x00, 0x08, 0x08, 0x3e, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x10, + 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x00, 0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, + 0x00, 0x1c, 0x22, 0x26, 0x2a, 0x32, 0x22, 0x1c, + 0x00, 0x08, 0x18, 0x08, 0x08, 0x08, 0x08, 0x1c, + 0x00, 0x1c, 0x22, 0x02, 0x0c, 0x10, 0x20, 0x3e, + 0x00, 0x3e, 0x02, 0x04, 0x0c, 0x02, 0x22, 0x1c, + 0x00, 0x04, 0x0c, 0x14, 0x24, 0x3e, 0x04, 0x04, + 0x00, 0x3e, 0x20, 0x3c, 0x02, 0x02, 0x22, 0x1c, + 0x00, 0x0e, 0x10, 0x20, 0x3c, 0x22, 0x22, 0x1c, + 0x00, 0x3e, 0x02, 0x04, 0x08, 0x10, 0x10, 0x10, + 0x00, 0x1c, 0x22, 0x22, 0x1c, 0x22, 0x22, 0x1c, + 0x00, 0x1c, 0x22, 0x22, 0x1e, 0x02, 0x04, 0x38, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x08, 0x10, + 0x00, 0x04, 0x08, 0x10, 0x20, 0x10, 0x08, 0x04, + 0x00, 0x00, 0x00, 0x3e, 0x00, 0x3e, 0x00, 0x00, + 0x00, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, + 0x00, 0x1c, 0x22, 0x04, 0x08, 0x08, 0x00, 0x08, + 0x80, 0x9c, 0xa2, 0xaa, 0xae, 0xac, 0xa0, 0x9e, + 0x80, 0x88, 0x94, 0xa2, 0xa2, 0xbe, 0xa2, 0xa2, + 0x80, 0xbc, 0xa2, 0xa2, 0xbc, 0xa2, 0xa2, 0xbc, + 0x80, 0x9c, 0xa2, 0xa0, 0xa0, 0xa0, 0xa2, 0x9c, + 0x80, 0xbc, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0xbc, + 0x80, 0xbe, 0xa0, 0xa0, 0xbc, 0xa0, 0xa0, 0xbe, + 0x80, 0xbe, 0xa0, 0xa0, 0xbc, 0xa0, 0xa0, 0xa0, + 0x80, 0x9e, 0xa0, 0xa0, 0xa0, 0xa6, 0xa2, 0x9e, + 0x80, 0xa2, 0xa2, 0xa2, 0xbe, 0xa2, 0xa2, 0xa2, + 0x80, 0x9c, 0x88, 0x88, 0x88, 0x88, 0x88, 0x9c, + 0x80, 0x82, 0x82, 0x82, 0x82, 0x82, 0xa2, 0x9c, + 0x80, 0xa2, 0xa4, 0xa8, 0xb0, 0xa8, 0xa4, 0xa2, + 0x80, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xbe, + 0x80, 0xa2, 0xb6, 0xaa, 0xaa, 0xa2, 0xa2, 0xa2, + 0x80, 0xa2, 0xa2, 0xb2, 0xaa, 0xa6, 0xa2, 0xa2, + 0x80, 0x9c, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0x9c, + 0x80, 0xbc, 0xa2, 0xa2, 0xbc, 0xa0, 0xa0, 0xa0, + 0x80, 0x9c, 0xa2, 0xa2, 0xa2, 0xaa, 0xa4, 0x9a, + 0x80, 0xbc, 0xa2, 0xa2, 0xbc, 0xa8, 0xa4, 0xa2, + 0x80, 0x9c, 0xa2, 0xa0, 0x9c, 0x82, 0xa2, 0x9c, + 0x80, 0xbe, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x80, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0x9c, + 0x80, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0x94, 0x88, + 0x80, 0xa2, 0xa2, 0xa2, 0xaa, 0xaa, 0xb6, 0xa2, + 0x80, 0xa2, 0xa2, 0x94, 0x88, 0x94, 0xa2, 0xa2, + 0x80, 0xa2, 0xa2, 0x94, 0x88, 0x88, 0x88, 0x88, + 0x80, 0xbe, 0x82, 0x84, 0x88, 0x90, 0xa0, 0xbe, + 0x80, 0xbe, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xbe, + 0x80, 0x80, 0xa0, 0x90, 0x88, 0x84, 0x82, 0x80, + 0x80, 0xbe, 0x86, 0x86, 0x86, 0x86, 0x86, 0xbe, + 0x80, 0x80, 0x80, 0x88, 0x94, 0xa2, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xbe, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x88, 0x88, 0x88, 0x88, 0x88, 0x80, 0x88, + 0x80, 0x94, 0x94, 0x94, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x94, 0x94, 0xbe, 0x94, 0xbe, 0x94, 0x94, + 0x80, 0x88, 0x9e, 0xa8, 0x9c, 0x8a, 0xbc, 0x88, + 0x80, 0xb0, 0xb2, 0x84, 0x88, 0x90, 0xa6, 0x86, + 0x80, 0x90, 0xa8, 0xa8, 0x90, 0xaa, 0xa4, 0x9a, + 0x80, 0x88, 0x88, 0x88, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x88, 0x90, 0xa0, 0xa0, 0xa0, 0x90, 0x88, + 0x80, 0x88, 0x84, 0x82, 0x82, 0x82, 0x84, 0x88, + 0x80, 0x88, 0xaa, 0x9c, 0x88, 0x9c, 0xaa, 0x88, + 0x80, 0x80, 0x88, 0x88, 0xbe, 0x88, 0x88, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x88, 0x88, 0x90, + 0x80, 0x80, 0x80, 0x80, 0xbe, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x88, + 0x80, 0x80, 0x82, 0x84, 0x88, 0x90, 0xa0, 0x80, + 0x80, 0x9c, 0xa2, 0xa6, 0xaa, 0xb2, 0xa2, 0x9c, + 0x80, 0x88, 0x98, 0x88, 0x88, 0x88, 0x88, 0x9c, + 0x80, 0x9c, 0xa2, 0x82, 0x8c, 0x90, 0xa0, 0xbe, + 0x80, 0xbe, 0x82, 0x84, 0x8c, 0x82, 0xa2, 0x9c, + 0x80, 0x84, 0x8c, 0x94, 0xa4, 0xbe, 0x84, 0x84, + 0x80, 0xbe, 0xa0, 0xbc, 0x82, 0x82, 0xa2, 0x9c, + 0x80, 0x8e, 0x90, 0xa0, 0xbc, 0xa2, 0xa2, 0x9c, + 0x80, 0xbe, 0x82, 0x84, 0x88, 0x90, 0x90, 0x90, + 0x80, 0x9c, 0xa2, 0xa2, 0x9c, 0xa2, 0xa2, 0x9c, + 0x80, 0x9c, 0xa2, 0xa2, 0x9e, 0x82, 0x84, 0xb8, + 0x80, 0x80, 0x80, 0x88, 0x80, 0x88, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x88, 0x80, 0x88, 0x88, 0x90, + 0x80, 0x84, 0x88, 0x90, 0xa0, 0x90, 0x88, 0x84, + 0x80, 0x80, 0x80, 0xbe, 0x80, 0xbe, 0x80, 0x80, + 0x80, 0x90, 0x88, 0x84, 0x82, 0x84, 0x88, 0x90, + 0x80, 0x9c, 0xa2, 0x84, 0x88, 0x88, 0x80, 0x88, + 0x00, 0x1c, 0x22, 0x2a, 0x2e, 0x2c, 0x20, 0x1e, + 0x00, 0x08, 0x14, 0x22, 0x22, 0x3e, 0x22, 0x22, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x22, 0x22, 0x3c, + 0x00, 0x1c, 0x22, 0x20, 0x20, 0x20, 0x22, 0x1c, + 0x00, 0x3c, 0x22, 0x22, 0x22, 0x22, 0x22, 0x3c, + 0x00, 0x3e, 0x20, 0x20, 0x3c, 0x20, 0x20, 0x3e, + 0x00, 0x3e, 0x20, 0x20, 0x3c, 0x20, 0x20, 0x20, + 0x00, 0x1e, 0x20, 0x20, 0x20, 0x26, 0x22, 0x1e, + 0x00, 0x22, 0x22, 0x22, 0x3e, 0x22, 0x22, 0x22, + 0x00, 0x1c, 0x08, 0x08, 0x08, 0x08, 0x08, 0x1c, + 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x22, 0x1c, + 0x00, 0x22, 0x24, 0x28, 0x30, 0x28, 0x24, 0x22, + 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3e, + 0x00, 0x22, 0x36, 0x2a, 0x2a, 0x22, 0x22, 0x22, + 0x00, 0x22, 0x22, 0x32, 0x2a, 0x26, 0x22, 0x22, + 0x00, 0x1c, 0x22, 0x22, 0x22, 0x22, 0x22, 0x1c, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x20, 0x20, 0x20, + 0x00, 0x1c, 0x22, 0x22, 0x22, 0x2a, 0x24, 0x1a, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x28, 0x24, 0x22, + 0x00, 0x1c, 0x22, 0x20, 0x1c, 0x02, 0x22, 0x1c, + 0x00, 0x3e, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x00, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x1c, + 0x00, 0x22, 0x22, 0x22, 0x22, 0x22, 0x14, 0x08, + 0x00, 0x22, 0x22, 0x22, 0x2a, 0x2a, 0x36, 0x22, + 0x00, 0x22, 0x22, 0x14, 0x08, 0x14, 0x22, 0x22, + 0x00, 0x22, 0x22, 0x14, 0x08, 0x08, 0x08, 0x08, + 0x00, 0x3e, 0x02, 0x04, 0x08, 0x10, 0x20, 0x3e, + 0x00, 0x3e, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3e, + 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, + 0x00, 0x3e, 0x06, 0x06, 0x06, 0x06, 0x06, 0x3e, + 0x00, 0x00, 0x00, 0x08, 0x14, 0x22, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x08, + 0x00, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x14, 0x14, 0x3e, 0x14, 0x3e, 0x14, 0x14, + 0x00, 0x08, 0x1e, 0x28, 0x1c, 0x0a, 0x3c, 0x08, + 0x00, 0x30, 0x32, 0x04, 0x08, 0x10, 0x26, 0x06, + 0x00, 0x10, 0x28, 0x28, 0x10, 0x2a, 0x24, 0x1a, + 0x00, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x10, 0x20, 0x20, 0x20, 0x10, 0x08, + 0x00, 0x08, 0x04, 0x02, 0x02, 0x02, 0x04, 0x08, + 0x00, 0x08, 0x2a, 0x1c, 0x08, 0x1c, 0x2a, 0x08, + 0x00, 0x00, 0x08, 0x08, 0x3e, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x10, + 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x00, 0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, + 0x00, 0x1c, 0x22, 0x26, 0x2a, 0x32, 0x22, 0x1c, + 0x00, 0x08, 0x18, 0x08, 0x08, 0x08, 0x08, 0x1c, + 0x00, 0x1c, 0x22, 0x02, 0x0c, 0x10, 0x20, 0x3e, + 0x00, 0x3e, 0x02, 0x04, 0x0c, 0x02, 0x22, 0x1c, + 0x00, 0x04, 0x0c, 0x14, 0x24, 0x3e, 0x04, 0x04, + 0x00, 0x3e, 0x20, 0x3c, 0x02, 0x02, 0x22, 0x1c, + 0x00, 0x0e, 0x10, 0x20, 0x3c, 0x22, 0x22, 0x1c, + 0x00, 0x3e, 0x02, 0x04, 0x08, 0x10, 0x10, 0x10, + 0x00, 0x1c, 0x22, 0x22, 0x1c, 0x22, 0x22, 0x1c, + 0x00, 0x1c, 0x22, 0x22, 0x1e, 0x02, 0x04, 0x38, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x08, 0x10, + 0x00, 0x04, 0x08, 0x10, 0x20, 0x10, 0x08, 0x04, + 0x00, 0x00, 0x00, 0x3e, 0x00, 0x3e, 0x00, 0x00, + 0x00, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, + 0x00, 0x1c, 0x22, 0x04, 0x08, 0x08, 0x00, 0x08, + 0x00, 0x24, 0x2a, 0x2a, 0x3a, 0x2a, 0x2a, 0x24, + 0x80, 0x88, 0x94, 0xa2, 0xa2, 0xbe, 0xa2, 0xa2, + 0x80, 0xbc, 0xa2, 0xa2, 0xbc, 0xa2, 0xa2, 0xbc, + 0x80, 0x9c, 0xa2, 0xa0, 0xa0, 0xa0, 0xa2, 0x9c, + 0x80, 0xbc, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0xbc, + 0x80, 0xbe, 0xa0, 0xa0, 0xbc, 0xa0, 0xa0, 0xbe, + 0x80, 0xbe, 0xa0, 0xa0, 0xbc, 0xa0, 0xa0, 0xa0, + 0x80, 0x9e, 0xa0, 0xa0, 0xa0, 0xa6, 0xa2, 0x9e, + 0x80, 0xa2, 0xa2, 0xa2, 0xbe, 0xa2, 0xa2, 0xa2, + 0x80, 0x9c, 0x88, 0x88, 0x88, 0x88, 0x88, 0x9c, + 0x80, 0x82, 0x82, 0x82, 0x82, 0x82, 0xa2, 0x9c, + 0x80, 0xa2, 0xa4, 0xa8, 0xb0, 0xa8, 0xa4, 0xa2, + 0x80, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xbe, + 0x80, 0xa2, 0xb6, 0xaa, 0xaa, 0xa2, 0xa2, 0xa2, + 0x80, 0xa2, 0xa2, 0xb2, 0xaa, 0xa6, 0xa2, 0xa2, + 0x80, 0x9c, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0x9c, + 0x80, 0xbc, 0xa2, 0xa2, 0xbc, 0xa0, 0xa0, 0xa0, + 0x80, 0x9c, 0xa2, 0xa2, 0xa2, 0xaa, 0xa4, 0x9a, + 0x80, 0xbc, 0xa2, 0xa2, 0xbc, 0xa8, 0xa4, 0xa2, + 0x80, 0x9c, 0xa2, 0xa0, 0x9c, 0x82, 0xa2, 0x9c, + 0x80, 0xbe, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x80, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0x9c, + 0x80, 0xa2, 0xa2, 0xa2, 0xa2, 0xa2, 0x94, 0x88, + 0x80, 0xa2, 0xa2, 0xa2, 0xaa, 0xaa, 0xb6, 0xa2, + 0x80, 0xa2, 0xa2, 0x94, 0x88, 0x94, 0xa2, 0xa2, + 0x80, 0xa2, 0xa2, 0x94, 0x88, 0x88, 0x88, 0x88, + 0x80, 0xbe, 0x82, 0x84, 0x88, 0x90, 0xa0, 0xbe, + 0x00, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x3e, 0x00, + 0x80, 0x80, 0xa0, 0x90, 0x88, 0x84, 0x82, 0x80, + 0x00, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x3e, 0x02, + 0x00, 0x22, 0x22, 0x22, 0x1e, 0x02, 0x02, 0x02, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xbe, + 0x00, 0x1c, 0x22, 0x2a, 0x2e, 0x2c, 0x20, 0x1e, + 0x00, 0x08, 0x14, 0x22, 0x22, 0x3e, 0x22, 0x22, + 0x00, 0x3c, 0x20, 0x20, 0x3c, 0x22, 0x22, 0x3c, + 0x00, 0x24, 0x24, 0x24, 0x24, 0x24, 0x3e, 0x02, + 0x00, 0x0c, 0x12, 0x12, 0x12, 0x12, 0x3e, 0x22, + 0x00, 0x3e, 0x20, 0x20, 0x3c, 0x20, 0x20, 0x3e, + 0x00, 0x08, 0x1c, 0x2a, 0x2a, 0x2a, 0x1c, 0x08, + 0x00, 0x3e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x00, 0x22, 0x22, 0x14, 0x08, 0x14, 0x22, 0x22, + 0x00, 0x22, 0x22, 0x26, 0x2a, 0x32, 0x22, 0x22, + 0x00, 0x2a, 0x22, 0x26, 0x2a, 0x32, 0x22, 0x22, + 0x00, 0x22, 0x24, 0x28, 0x30, 0x28, 0x24, 0x22, + 0x00, 0x0e, 0x12, 0x12, 0x12, 0x12, 0x12, 0x22, + 0x00, 0x22, 0x36, 0x2a, 0x2a, 0x22, 0x22, 0x22, + 0x00, 0x22, 0x22, 0x22, 0x3e, 0x22, 0x22, 0x22, + 0x00, 0x1c, 0x22, 0x22, 0x22, 0x22, 0x22, 0x1c, + 0x00, 0x3e, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, + 0x00, 0x1e, 0x22, 0x22, 0x1e, 0x0a, 0x12, 0x22, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x20, 0x20, 0x20, + 0x00, 0x1c, 0x22, 0x20, 0x20, 0x20, 0x22, 0x1c, + 0x00, 0x3e, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x00, 0x22, 0x22, 0x22, 0x1e, 0x02, 0x02, 0x3c, + 0x00, 0x2a, 0x2a, 0x1c, 0x1c, 0x2a, 0x2a, 0x2a, + 0x00, 0x3c, 0x22, 0x22, 0x3c, 0x22, 0x22, 0x3c, + 0x00, 0x20, 0x20, 0x20, 0x3c, 0x22, 0x22, 0x3c, + 0x00, 0x30, 0x10, 0x10, 0x1c, 0x12, 0x12, 0x1c, + 0x00, 0x3c, 0x02, 0x02, 0x1c, 0x02, 0x02, 0x3c, + 0x00, 0x3e, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3e, + 0x00, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x3e, 0x02, + 0x00, 0x3e, 0x06, 0x06, 0x06, 0x06, 0x06, 0x3e, + 0x00, 0x00, 0x00, 0x08, 0x14, 0x22, 0x00, 0x00, + 0x00, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, +]) as ReadonlyUint8Array; + +export default pravetz82_charset; diff --git a/js/roms/system/pravetz82.ts b/js/roms/system/pravetz82.ts new file mode 100644 index 0000000..07f3e6b --- /dev/null +++ b/js/roms/system/pravetz82.ts @@ -0,0 +1,1547 @@ +import { ReadonlyUint8Array } from '../../types'; +import ROM from '../rom'; + +const rom = new Uint8Array([ + 0x6f, 0xd8, 0x65, 0xd7, 0xf8, 0xdc, 0x94, 0xd9, + 0xb1, 0xdb, 0x30, 0xf3, 0xd8, 0xdf, 0xe1, 0xdb, + 0x8f, 0xf3, 0x98, 0xf3, 0xe4, 0xf1, 0xdd, 0xf1, + 0xd4, 0xf1, 0x24, 0xf2, 0x31, 0xf2, 0x40, 0xf2, + 0xd7, 0xf3, 0xe1, 0xf3, 0xe8, 0xf6, 0xfd, 0xf6, + 0x68, 0xf7, 0x6e, 0xf7, 0xe6, 0xf7, 0x57, 0xfc, + 0x20, 0xf7, 0x26, 0xf7, 0x74, 0xf7, 0x6c, 0xf2, + 0x6e, 0xf2, 0x72, 0xf2, 0x76, 0xf2, 0x7f, 0xf2, + 0x4e, 0xf2, 0x6a, 0xd9, 0x55, 0xf2, 0x85, 0xf2, + 0xa5, 0xf2, 0xca, 0xf2, 0x17, 0xf3, 0xbb, 0xf3, + 0x9e, 0xf3, 0x61, 0xf2, 0x45, 0xda, 0x3d, 0xd9, + 0x11, 0xd9, 0xc8, 0xd9, 0x48, 0xd8, 0xf4, 0x03, + 0x20, 0xd9, 0x6a, 0xd9, 0xdb, 0xd9, 0x6d, 0xd8, + 0xeb, 0xd9, 0x83, 0xe7, 0xc8, 0xd8, 0xaf, 0xd8, + 0x12, 0xe3, 0x7a, 0xe7, 0xd4, 0xda, 0x95, 0xd8, + 0xa4, 0xd6, 0x69, 0xd6, 0x9f, 0xdb, 0x48, 0xd6, + 0x90, 0xeb, 0x23, 0xec, 0xaf, 0xeb, 0x0a, 0x00, + 0xde, 0xe2, 0x12, 0xd4, 0xcd, 0xdf, 0xff, 0xe2, + 0x8d, 0xee, 0xae, 0xef, 0x41, 0xe9, 0x09, 0xef, + 0xea, 0xef, 0xf1, 0xef, 0x3a, 0xf0, 0x9e, 0xf0, + 0x64, 0xe7, 0xd6, 0xe6, 0xc5, 0xe3, 0x07, 0xe7, + 0xe5, 0xe6, 0x46, 0xe6, 0x5a, 0xe6, 0x86, 0xe6, + 0x91, 0xe6, 0x79, 0xc0, 0xe7, 0x79, 0xa9, 0xe7, + 0x7b, 0x81, 0xe9, 0x7b, 0x68, 0xea, 0x7d, 0x96, + 0xee, 0x50, 0x54, 0xdf, 0x46, 0x4e, 0xdf, 0x7f, + 0xcf, 0xee, 0x7f, 0x97, 0xde, 0x64, 0x64, 0xdf, + 0x45, 0x4e, 0xc4, 0x46, 0x4f, 0xd2, 0x4e, 0x45, + 0x58, 0xd4, 0x44, 0x41, 0x54, 0xc1, 0x49, 0x4e, + 0x50, 0x55, 0xd4, 0x44, 0x45, 0xcc, 0x44, 0x49, + 0xcd, 0x52, 0x45, 0x41, 0xc4, 0x47, 0xd2, 0x54, + 0x45, 0x58, 0xd4, 0x50, 0x52, 0xa3, 0x49, 0x4e, + 0xa3, 0x43, 0x41, 0x4c, 0xcc, 0x50, 0x4c, 0x4f, + 0xd4, 0x48, 0x4c, 0x49, 0xce, 0x56, 0x4c, 0x49, + 0xce, 0x48, 0x47, 0x52, 0xb2, 0x48, 0x47, 0xd2, + 0x48, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0xbd, 0x48, + 0x50, 0x4c, 0x4f, 0xd4, 0x44, 0x52, 0x41, 0xd7, + 0x58, 0x44, 0x52, 0x41, 0xd7, 0x48, 0x54, 0x41, + 0xc2, 0x48, 0x4f, 0x4d, 0xc5, 0x52, 0x4f, 0x54, + 0xbd, 0x53, 0x43, 0x41, 0x4c, 0x45, 0xbd, 0x53, + 0x48, 0x4c, 0x4f, 0x41, 0xc4, 0x54, 0x52, 0x41, + 0x43, 0xc5, 0x4e, 0x4f, 0x54, 0x52, 0x41, 0x43, + 0xc5, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0xcc, 0x49, + 0x4e, 0x56, 0x45, 0x52, 0x53, 0xc5, 0x46, 0x4c, + 0x41, 0x53, 0xc8, 0x43, 0x4f, 0x4c, 0x4f, 0x52, + 0xbd, 0x50, 0x4f, 0xd0, 0x56, 0x54, 0x41, 0xc2, + 0x48, 0x49, 0x4d, 0x45, 0x4d, 0xba, 0x4c, 0x4f, + 0x4d, 0x45, 0x4d, 0xba, 0x4f, 0x4e, 0x45, 0x52, + 0xd2, 0x52, 0x45, 0x53, 0x55, 0x4d, 0xc5, 0x52, + 0x45, 0x43, 0x41, 0x4c, 0xcc, 0x53, 0x54, 0x4f, + 0x52, 0xc5, 0x53, 0x50, 0x45, 0x45, 0x44, 0xbd, + 0x4c, 0x45, 0xd4, 0x47, 0x4f, 0x54, 0xcf, 0x52, + 0x55, 0xce, 0x49, 0xc6, 0x52, 0x45, 0x53, 0x54, + 0x4f, 0x52, 0xc5, 0xa6, 0x47, 0x4f, 0x53, 0x55, + 0xc2, 0x52, 0x45, 0x54, 0x55, 0x52, 0xce, 0x52, + 0x45, 0xcd, 0x53, 0x54, 0x4f, 0xd0, 0x4f, 0xce, + 0x57, 0x41, 0x49, 0xd4, 0x4c, 0x4f, 0x41, 0xc4, + 0x53, 0x41, 0x56, 0xc5, 0x44, 0x45, 0xc6, 0x50, + 0x4f, 0x4b, 0xc5, 0x50, 0x52, 0x49, 0x4e, 0xd4, + 0x43, 0x4f, 0x4e, 0xd4, 0x4c, 0x49, 0x53, 0xd4, + 0x43, 0x4c, 0x45, 0x41, 0xd2, 0x47, 0x45, 0xd4, + 0x4e, 0x45, 0xd7, 0x54, 0x41, 0x42, 0xa8, 0x54, + 0xcf, 0x46, 0xce, 0x53, 0x50, 0x43, 0xa8, 0x54, + 0x48, 0x45, 0xce, 0x41, 0xd4, 0x4e, 0x4f, 0xd4, + 0x53, 0x54, 0x45, 0xd0, 0xab, 0xad, 0xaa, 0xaf, + 0xde, 0x41, 0x4e, 0xc4, 0x4f, 0xd2, 0xbe, 0xbd, + 0xbc, 0x53, 0x47, 0xce, 0x49, 0x4e, 0xd4, 0x41, + 0x42, 0xd3, 0x55, 0x53, 0xd2, 0x46, 0x52, 0xc5, + 0x53, 0x43, 0x52, 0x4e, 0xa8, 0x50, 0x44, 0xcc, + 0x50, 0x4f, 0xd3, 0x53, 0x51, 0xd2, 0x52, 0x4e, + 0xc4, 0x4c, 0x4f, 0xc7, 0x45, 0x58, 0xd0, 0x43, + 0x4f, 0xd3, 0x53, 0x49, 0xce, 0x54, 0x41, 0xce, + 0x41, 0x54, 0xce, 0x50, 0x45, 0x45, 0xcb, 0x4c, + 0x45, 0xce, 0x53, 0x54, 0x52, 0xa4, 0x56, 0x41, + 0xcc, 0x41, 0x53, 0xc3, 0x43, 0x48, 0x52, 0xa4, + 0x4c, 0x45, 0x46, 0x54, 0xa4, 0x52, 0x49, 0x47, + 0x48, 0x54, 0xa4, 0x4d, 0x49, 0x44, 0xa4, 0x00, + 0x4e, 0x45, 0x58, 0x54, 0x20, 0x57, 0x49, 0x54, + 0x48, 0x4f, 0x55, 0x54, 0x20, 0x46, 0x4f, 0xd2, + 0x53, 0x59, 0x4e, 0x54, 0x41, 0xd8, 0x52, 0x45, + 0x54, 0x55, 0x52, 0x4e, 0x20, 0x57, 0x49, 0x54, + 0x48, 0x4f, 0x55, 0x54, 0x20, 0x47, 0x4f, 0x53, + 0x55, 0xc2, 0x4f, 0x55, 0x54, 0x20, 0x4f, 0x46, + 0x20, 0x44, 0x41, 0x54, 0xc1, 0x49, 0x4c, 0x4c, + 0x45, 0x47, 0x41, 0x4c, 0x20, 0x51, 0x55, 0x41, + 0x4e, 0x54, 0x49, 0x54, 0xd9, 0x4f, 0x56, 0x45, + 0x52, 0x46, 0x4c, 0x4f, 0xd7, 0x4f, 0x55, 0x54, + 0x20, 0x4f, 0x46, 0x20, 0x4d, 0x45, 0x4d, 0x4f, + 0x52, 0xd9, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x27, + 0x44, 0x20, 0x53, 0x54, 0x41, 0x54, 0x45, 0x4d, + 0x45, 0x4e, 0xd4, 0x42, 0x41, 0x44, 0x20, 0x53, + 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x50, 0xd4, + 0x52, 0x45, 0x44, 0x49, 0x4d, 0x27, 0x44, 0x20, + 0x41, 0x52, 0x52, 0x41, 0xd9, 0x44, 0x49, 0x56, + 0x49, 0x53, 0x49, 0x4f, 0x4e, 0x20, 0x42, 0x59, + 0x20, 0x5a, 0x45, 0x52, 0xcf, 0x49, 0x4c, 0x4c, + 0x45, 0x47, 0x41, 0x4c, 0x20, 0x44, 0x49, 0x52, + 0x45, 0x43, 0xd4, 0x54, 0x59, 0x50, 0x45, 0x20, + 0x4d, 0x49, 0x53, 0x4d, 0x41, 0x54, 0x43, 0xc8, + 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x20, 0x54, + 0x4f, 0x4f, 0x20, 0x4c, 0x4f, 0x4e, 0xc7, 0x46, + 0x4f, 0x52, 0x4d, 0x55, 0x4c, 0x41, 0x20, 0x54, + 0x4f, 0x4f, 0x20, 0x43, 0x4f, 0x4d, 0x50, 0x4c, + 0x45, 0xd8, 0x43, 0x41, 0x4e, 0x27, 0x54, 0x20, + 0x43, 0x4f, 0x4e, 0x54, 0x49, 0x4e, 0x55, 0xc5, + 0x55, 0x4e, 0x44, 0x45, 0x46, 0x27, 0x44, 0x20, + 0x46, 0x55, 0x4e, 0x43, 0x54, 0x49, 0x4f, 0xce, + 0x20, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x07, 0x00, + 0x20, 0x49, 0x4e, 0x20, 0x00, 0x0d, 0x42, 0x52, + 0x45, 0x41, 0x4b, 0x07, 0x00, 0xba, 0xe8, 0xe8, + 0xe8, 0xe8, 0xbd, 0x01, 0x01, 0xc9, 0x81, 0xd0, + 0x21, 0xa5, 0x86, 0xd0, 0x0a, 0xbd, 0x02, 0x01, + 0x85, 0x85, 0xbd, 0x03, 0x01, 0x85, 0x86, 0xdd, + 0x03, 0x01, 0xd0, 0x07, 0xa5, 0x85, 0xdd, 0x02, + 0x01, 0xf0, 0x07, 0x8a, 0x18, 0x69, 0x12, 0xaa, + 0xd0, 0xd8, 0x60, 0x20, 0xe3, 0xd3, 0x85, 0x6d, + 0x84, 0x6e, 0x38, 0xa5, 0x96, 0xe5, 0x9b, 0x85, + 0x5e, 0xa8, 0xa5, 0x97, 0xe5, 0x9c, 0xaa, 0xe8, + 0x98, 0xf0, 0x23, 0xa5, 0x96, 0x38, 0xe5, 0x5e, + 0x85, 0x96, 0xb0, 0x03, 0xc6, 0x97, 0x38, 0xa5, + 0x94, 0xe5, 0x5e, 0x85, 0x94, 0xb0, 0x08, 0xc6, + 0x95, 0x90, 0x04, 0xb1, 0x96, 0x91, 0x94, 0x88, + 0xd0, 0xf9, 0xb1, 0x96, 0x91, 0x94, 0xc6, 0x97, + 0xc6, 0x95, 0xca, 0xd0, 0xf2, 0x60, 0x0a, 0x69, + 0x36, 0xb0, 0x35, 0x85, 0x5e, 0xba, 0xe4, 0x5e, + 0x90, 0x2e, 0x60, 0xc4, 0x70, 0x90, 0x28, 0xd0, + 0x04, 0xc5, 0x6f, 0x90, 0x22, 0x48, 0xa2, 0x09, + 0x98, 0x48, 0xb5, 0x93, 0xca, 0x10, 0xfa, 0x20, + 0x84, 0xe4, 0xa2, 0xf7, 0x68, 0x95, 0x9d, 0xe8, + 0x30, 0xfa, 0x68, 0xa8, 0x68, 0xc4, 0x70, 0x90, + 0x06, 0xd0, 0x05, 0xc5, 0x6f, 0xb0, 0x01, 0x60, + 0xa2, 0x4d, 0x24, 0xd8, 0x10, 0x03, 0x4c, 0xe9, + 0xf2, 0x20, 0xfb, 0xda, 0x20, 0x5a, 0xdb, 0xbd, + 0x60, 0xd2, 0x48, 0x20, 0x5c, 0xdb, 0xe8, 0x68, + 0x10, 0xf5, 0x20, 0x83, 0xd6, 0xa9, 0x50, 0xa0, + 0xd3, 0x20, 0x3a, 0xdb, 0xa4, 0x76, 0xc8, 0xf0, + 0x03, 0x20, 0x19, 0xed, 0x20, 0xfb, 0xda, 0xa2, + 0xfd, 0x20, 0x2e, 0xd5, 0x86, 0xb8, 0x84, 0xb9, + 0x46, 0xd8, 0x20, 0xb1, 0x00, 0xaa, 0xf0, 0xec, + 0xa2, 0xff, 0x86, 0x76, 0x90, 0x06, 0x20, 0x59, + 0xd5, 0x4c, 0x05, 0xd8, 0xa6, 0xaf, 0x86, 0x69, + 0xa6, 0xb0, 0x86, 0x6a, 0x20, 0x0c, 0xda, 0x20, + 0x59, 0xd5, 0x84, 0x0f, 0x20, 0x1a, 0xd6, 0x90, + 0x44, 0xa0, 0x01, 0xb1, 0x9b, 0x85, 0x5f, 0xa5, + 0x69, 0x85, 0x5e, 0xa5, 0x9c, 0x85, 0x61, 0xa5, + 0x9b, 0x88, 0xf1, 0x9b, 0x18, 0x65, 0x69, 0x85, + 0x69, 0x85, 0x60, 0xa5, 0x6a, 0x69, 0xff, 0x85, + 0x6a, 0xe5, 0x9c, 0xaa, 0x38, 0xa5, 0x9b, 0xe5, + 0x69, 0xa8, 0xb0, 0x03, 0xe8, 0xc6, 0x61, 0x18, + 0x65, 0x5e, 0x90, 0x03, 0xc6, 0x5f, 0x18, 0xb1, + 0x5e, 0x91, 0x60, 0xc8, 0xd0, 0xf9, 0xe6, 0x5f, + 0xe6, 0x61, 0xca, 0xd0, 0xf2, 0xad, 0x00, 0x02, + 0xf0, 0x38, 0xa5, 0x73, 0xa4, 0x74, 0x85, 0x6f, + 0x84, 0x70, 0xa5, 0x69, 0x85, 0x96, 0x65, 0x0f, + 0x85, 0x94, 0xa4, 0x6a, 0x84, 0x97, 0x90, 0x01, + 0xc8, 0x84, 0x95, 0x20, 0x93, 0xd3, 0xa5, 0x50, + 0xa4, 0x51, 0x8d, 0xfe, 0x01, 0x8c, 0xff, 0x01, + 0xa5, 0x6d, 0xa4, 0x6e, 0x85, 0x69, 0x84, 0x6a, + 0xa4, 0x0f, 0xb9, 0xfb, 0x01, 0x88, 0x91, 0x9b, + 0xd0, 0xf8, 0x20, 0x65, 0xd6, 0xa5, 0x67, 0xa4, + 0x68, 0x85, 0x5e, 0x84, 0x5f, 0x18, 0xa0, 0x01, + 0xb1, 0x5e, 0xd0, 0x0b, 0xa5, 0x69, 0x85, 0xaf, + 0xa5, 0x6a, 0x85, 0xb0, 0x4c, 0x3c, 0xd4, 0xa0, + 0x04, 0xc8, 0xb1, 0x5e, 0xd0, 0xfb, 0xc8, 0x98, + 0x65, 0x5e, 0xaa, 0xa0, 0x00, 0x91, 0x5e, 0xa5, + 0x5f, 0x69, 0x00, 0xc8, 0x91, 0x5e, 0x86, 0x5e, + 0x85, 0x5f, 0x90, 0xd2, 0xa2, 0x80, 0x86, 0x33, + 0x20, 0x6a, 0xfd, 0xe0, 0xef, 0x90, 0x02, 0xa2, + 0xef, 0xa9, 0x00, 0x9d, 0x00, 0x02, 0x8a, 0xf0, + 0x0b, 0xbd, 0xff, 0x01, 0x29, 0x7f, 0x9d, 0xff, + 0x01, 0xca, 0xd0, 0xf5, 0xa9, 0x00, 0xa2, 0xff, + 0xa0, 0x01, 0x60, 0x20, 0x0c, 0xfd, 0x29, 0x7f, + 0x60, 0xa6, 0xb8, 0xca, 0xa0, 0x04, 0x84, 0x13, + 0x24, 0xd6, 0x10, 0x08, 0x68, 0x68, 0x20, 0x65, + 0xd6, 0x4c, 0xd2, 0xd7, 0xe8, 0xbd, 0x00, 0x02, + 0x24, 0x13, 0x70, 0x04, 0xc9, 0x20, 0xf0, 0xf4, + 0x85, 0x0e, 0xc9, 0x22, 0xf0, 0x74, 0x70, 0x4d, + 0xc9, 0x3f, 0xd0, 0x04, 0xa9, 0xba, 0xd0, 0x45, + 0xc9, 0x30, 0x90, 0x04, 0xc9, 0x3c, 0x90, 0x3d, + 0x84, 0xad, 0xa9, 0xd0, 0x85, 0x9d, 0xa9, 0xcf, + 0x85, 0x9e, 0xa0, 0x00, 0x84, 0x0f, 0x88, 0x86, + 0xb8, 0xca, 0xc8, 0xd0, 0x02, 0xe6, 0x9e, 0xe8, + 0xbd, 0x00, 0x02, 0xc9, 0x20, 0xf0, 0xf8, 0x38, + 0xf1, 0x9d, 0xf0, 0xee, 0xc9, 0x80, 0xd0, 0x41, + 0x05, 0x0f, 0xc9, 0xc5, 0xd0, 0x0d, 0xbd, 0x01, + 0x02, 0xc9, 0x4e, 0xf0, 0x34, 0xc9, 0x4f, 0xf0, + 0x30, 0xa9, 0xc5, 0xa4, 0xad, 0xe8, 0xc8, 0x99, + 0xfb, 0x01, 0xb9, 0xfb, 0x01, 0xf0, 0x39, 0x38, + 0xe9, 0x3a, 0xf0, 0x04, 0xc9, 0x49, 0xd0, 0x02, + 0x85, 0x13, 0x38, 0xe9, 0x78, 0xd0, 0x86, 0x85, + 0x0e, 0xbd, 0x00, 0x02, 0xf0, 0xdf, 0xc5, 0x0e, + 0xf0, 0xdb, 0xc8, 0x99, 0xfb, 0x01, 0xe8, 0xd0, + 0xf0, 0xa6, 0xb8, 0xe6, 0x0f, 0xb1, 0x9d, 0xc8, + 0xd0, 0x02, 0xe6, 0x9e, 0x0a, 0x90, 0xf6, 0xb1, + 0x9d, 0xd0, 0x9d, 0xbd, 0x00, 0x02, 0x10, 0xbb, + 0x99, 0xfd, 0x01, 0xc6, 0xb9, 0xa9, 0xff, 0x85, + 0xb8, 0x60, 0xa5, 0x67, 0xa6, 0x68, 0xa0, 0x01, + 0x85, 0x9b, 0x86, 0x9c, 0xb1, 0x9b, 0xf0, 0x1f, + 0xc8, 0xc8, 0xa5, 0x51, 0xd1, 0x9b, 0x90, 0x18, + 0xf0, 0x03, 0x88, 0xd0, 0x09, 0xa5, 0x50, 0x88, + 0xd1, 0x9b, 0x90, 0x0c, 0xf0, 0x0a, 0x88, 0xb1, + 0x9b, 0xaa, 0x88, 0xb1, 0x9b, 0xb0, 0xd7, 0x18, + 0x60, 0xd0, 0xfd, 0xa9, 0x00, 0x85, 0xd6, 0xa8, + 0x91, 0x67, 0xc8, 0x91, 0x67, 0xa5, 0x67, 0x69, + 0x02, 0x85, 0x69, 0x85, 0xaf, 0xa5, 0x68, 0x69, + 0x00, 0x85, 0x6a, 0x85, 0xb0, 0x20, 0x97, 0xd6, + 0xa9, 0x00, 0xd0, 0x2a, 0xa5, 0x73, 0xa4, 0x74, + 0x85, 0x6f, 0x84, 0x70, 0xa5, 0x69, 0xa4, 0x6a, + 0x85, 0x6b, 0x84, 0x6c, 0x85, 0x6d, 0x84, 0x6e, + 0x20, 0x49, 0xd8, 0xa2, 0x55, 0x86, 0x52, 0x68, + 0xa8, 0x68, 0xa2, 0xf8, 0x9a, 0x48, 0x98, 0x48, + 0xa9, 0x00, 0x85, 0x7a, 0x85, 0x14, 0x60, 0x18, + 0xa5, 0x67, 0x69, 0xff, 0x85, 0xb8, 0xa5, 0x68, + 0x69, 0xff, 0x85, 0xb9, 0x60, 0x90, 0x0a, 0xf0, + 0x08, 0xc9, 0xc9, 0xf0, 0x04, 0xc9, 0x2c, 0xd0, + 0xe5, 0x20, 0x0c, 0xda, 0x20, 0x1a, 0xd6, 0x20, + 0xb7, 0x00, 0xf0, 0x10, 0xc9, 0xc9, 0xf0, 0x04, + 0xc9, 0x2c, 0xd0, 0x84, 0x20, 0xb1, 0x00, 0x20, + 0x0c, 0xda, 0xd0, 0xca, 0x68, 0x68, 0xa5, 0x50, + 0x05, 0x51, 0xd0, 0x06, 0xa9, 0xff, 0x85, 0x50, + 0x85, 0x51, 0xa0, 0x01, 0xb1, 0x9b, 0xf0, 0x44, + 0x20, 0x58, 0xd8, 0x20, 0xfb, 0xda, 0xc8, 0xb1, + 0x9b, 0xaa, 0xc8, 0xb1, 0x9b, 0xc5, 0x51, 0xd0, + 0x04, 0xe4, 0x50, 0xf0, 0x02, 0xb0, 0x2d, 0x84, + 0x85, 0x20, 0x24, 0xed, 0xa9, 0x20, 0xa4, 0x85, + 0x29, 0x7f, 0x20, 0x5c, 0xdb, 0xa5, 0x24, 0xc9, + 0x21, 0x90, 0x07, 0x20, 0xfb, 0xda, 0xa9, 0x05, + 0x85, 0x24, 0xc8, 0xb1, 0x9b, 0xd0, 0x1d, 0xa8, + 0xb1, 0x9b, 0xaa, 0xc8, 0xb1, 0x9b, 0x86, 0x9b, + 0x85, 0x9c, 0xd0, 0xb6, 0xa9, 0x0d, 0x20, 0x5c, + 0xdb, 0x4c, 0xd2, 0xd7, 0xc8, 0xd0, 0x02, 0xe6, + 0x9e, 0xb1, 0x9d, 0x60, 0x10, 0xcc, 0x38, 0xe9, + 0x7f, 0xaa, 0x84, 0x85, 0xa0, 0xd0, 0x84, 0x9d, + 0xa0, 0xcf, 0x84, 0x9e, 0xa0, 0xff, 0xca, 0xf0, + 0x07, 0x20, 0x2c, 0xd7, 0x10, 0xfb, 0x30, 0xf6, + 0xa9, 0x20, 0x20, 0x5c, 0xdb, 0x20, 0x2c, 0xd7, + 0x30, 0x05, 0x20, 0x5c, 0xdb, 0xd0, 0xf6, 0x20, + 0x5c, 0xdb, 0xa9, 0x20, 0xd0, 0x98, 0xa9, 0x80, + 0x85, 0x14, 0x20, 0x46, 0xda, 0x20, 0x65, 0xd3, + 0xd0, 0x05, 0x8a, 0x69, 0x0f, 0xaa, 0x9a, 0x68, + 0x68, 0xa9, 0x09, 0x20, 0xd6, 0xd3, 0x20, 0xa3, + 0xd9, 0x18, 0x98, 0x65, 0xb8, 0x48, 0xa5, 0xb9, + 0x69, 0x00, 0x48, 0xa5, 0x76, 0x48, 0xa5, 0x75, + 0x48, 0xa9, 0xc1, 0x20, 0xc0, 0xde, 0x20, 0x6a, + 0xdd, 0x20, 0x67, 0xdd, 0xa5, 0xa2, 0x09, 0x7f, + 0x25, 0x9e, 0x85, 0x9e, 0xa9, 0xaf, 0xa0, 0xd7, + 0x85, 0x5e, 0x84, 0x5f, 0x4c, 0x20, 0xde, 0xa9, + 0x13, 0xa0, 0xe9, 0x20, 0xf9, 0xea, 0x20, 0xb7, + 0x00, 0xc9, 0xc7, 0xd0, 0x06, 0x20, 0xb1, 0x00, + 0x20, 0x67, 0xdd, 0x20, 0x82, 0xeb, 0x20, 0x15, + 0xde, 0xa5, 0x86, 0x48, 0xa5, 0x85, 0x48, 0xa9, + 0x81, 0x48, 0xba, 0x86, 0xf8, 0x20, 0x58, 0xd8, + 0xa5, 0xb8, 0xa4, 0xb9, 0xa6, 0x76, 0xe8, 0xf0, + 0x04, 0x85, 0x79, 0x84, 0x7a, 0xa0, 0x00, 0xb1, + 0xb8, 0xd0, 0x57, 0xa0, 0x02, 0xb1, 0xb8, 0x18, + 0xf0, 0x34, 0xc8, 0xb1, 0xb8, 0x85, 0x75, 0xc8, + 0xb1, 0xb8, 0x85, 0x76, 0x98, 0x65, 0xb8, 0x85, + 0xb8, 0x90, 0x02, 0xe6, 0xb9, 0x24, 0xf2, 0x10, + 0x14, 0xa6, 0x76, 0xe8, 0xf0, 0x0f, 0xa9, 0x23, + 0x20, 0x5c, 0xdb, 0xa6, 0x75, 0xa5, 0x76, 0x20, + 0x24, 0xed, 0x20, 0x57, 0xdb, 0x20, 0xb1, 0x00, + 0x20, 0x28, 0xd8, 0x4c, 0xd2, 0xd7, 0xf0, 0x62, + 0xf0, 0x2d, 0xe9, 0x80, 0x90, 0x11, 0xc9, 0x40, + 0xb0, 0x14, 0x0a, 0xa8, 0xb9, 0x01, 0xd0, 0x48, + 0xb9, 0x00, 0xd0, 0x48, 0x4c, 0xb1, 0x00, 0x4c, + 0x46, 0xda, 0xc9, 0x3a, 0xf0, 0xbf, 0x4c, 0xc9, + 0xde, 0x38, 0xa5, 0x67, 0xe9, 0x01, 0xa4, 0x68, + 0xb0, 0x01, 0x88, 0x85, 0x7d, 0x84, 0x7e, 0x60, + 0xad, 0x00, 0xc0, 0xc9, 0x83, 0xf0, 0x01, 0x60, + 0x20, 0x53, 0xd5, 0xa2, 0xff, 0x24, 0xd8, 0x10, + 0x03, 0x4c, 0xe9, 0xf2, 0xc9, 0x03, 0xb0, 0x01, + 0x18, 0xd0, 0x3c, 0xa5, 0xb8, 0xa4, 0xb9, 0xa6, + 0x76, 0xe8, 0xf0, 0x0c, 0x85, 0x79, 0x84, 0x7a, + 0xa5, 0x75, 0xa4, 0x76, 0x85, 0x77, 0x84, 0x78, + 0x68, 0x68, 0xa9, 0x5d, 0xa0, 0xd3, 0x90, 0x03, + 0x4c, 0x31, 0xd4, 0x4c, 0x3c, 0xd4, 0xd0, 0x17, + 0xa2, 0xd2, 0xa4, 0x7a, 0xd0, 0x03, 0x4c, 0x12, + 0xd4, 0xa5, 0x79, 0x85, 0xb8, 0x84, 0xb9, 0xa5, + 0x77, 0xa4, 0x78, 0x85, 0x75, 0x84, 0x76, 0x60, + 0x38, 0xa5, 0xaf, 0xe5, 0x67, 0x85, 0x50, 0xa5, + 0xb0, 0xe5, 0x68, 0x85, 0x51, 0x20, 0xf0, 0xd8, + 0x20, 0xcd, 0xfe, 0x20, 0x01, 0xd9, 0x4c, 0xcd, + 0xfe, 0x20, 0xf0, 0xd8, 0x20, 0xfd, 0xfe, 0x18, + 0xa5, 0x67, 0x65, 0x50, 0x85, 0x69, 0xa5, 0x68, + 0x65, 0x51, 0x85, 0x6a, 0xa5, 0x52, 0x85, 0xd6, + 0x20, 0x01, 0xd9, 0x20, 0xfd, 0xfe, 0x24, 0xd6, + 0x10, 0x03, 0x4c, 0x65, 0xd6, 0x4c, 0xf2, 0xd4, + 0xa9, 0x50, 0xa0, 0x00, 0x85, 0x3c, 0x84, 0x3d, + 0xa9, 0x52, 0x85, 0x3e, 0x84, 0x3f, 0x84, 0xd6, + 0x60, 0xa5, 0x67, 0xa4, 0x68, 0x85, 0x3c, 0x84, + 0x3d, 0xa5, 0x69, 0xa4, 0x6a, 0x85, 0x3e, 0x84, + 0x3f, 0x60, 0x08, 0xc6, 0x76, 0x28, 0xd0, 0x03, + 0x4c, 0x65, 0xd6, 0x20, 0x6c, 0xd6, 0x4c, 0x35, + 0xd9, 0xa9, 0x03, 0x20, 0xd6, 0xd3, 0xa5, 0xb9, + 0x48, 0xa5, 0xb8, 0x48, 0xa5, 0x76, 0x48, 0xa5, + 0x75, 0x48, 0xa9, 0xb0, 0x48, 0x20, 0xb7, 0x00, + 0x20, 0x3e, 0xd9, 0x4c, 0xd2, 0xd7, 0x20, 0x0c, + 0xda, 0x20, 0xa6, 0xd9, 0xa5, 0x76, 0xc5, 0x51, + 0xb0, 0x0b, 0x98, 0x38, 0x65, 0xb8, 0xa6, 0xb9, + 0x90, 0x07, 0xe8, 0xb0, 0x04, 0xa5, 0x67, 0xa6, + 0x68, 0x20, 0x1e, 0xd6, 0x90, 0x1e, 0xa5, 0x9b, + 0xe9, 0x01, 0x85, 0xb8, 0xa5, 0x9c, 0xe9, 0x00, + 0x85, 0xb9, 0x60, 0xd0, 0xfd, 0xa9, 0xff, 0x85, + 0x85, 0x20, 0x65, 0xd3, 0x9a, 0xc9, 0xb0, 0xf0, + 0x0b, 0xa2, 0x16, 0x2c, 0xa2, 0x5a, 0x4c, 0x12, + 0xd4, 0x4c, 0xc9, 0xde, 0x68, 0x68, 0xc0, 0x42, + 0xf0, 0x3b, 0x85, 0x75, 0x68, 0x85, 0x76, 0x68, + 0x85, 0xb8, 0x68, 0x85, 0xb9, 0x20, 0xa3, 0xd9, + 0x98, 0x18, 0x65, 0xb8, 0x85, 0xb8, 0x90, 0x02, + 0xe6, 0xb9, 0x60, 0xa2, 0x3a, 0x2c, 0xa2, 0x00, + 0x86, 0x0d, 0xa0, 0x00, 0x84, 0x0e, 0xa5, 0x0e, + 0xa6, 0x0d, 0x85, 0x0d, 0x86, 0x0e, 0xb1, 0xb8, + 0xf0, 0xe8, 0xc5, 0x0e, 0xf0, 0xe4, 0xc8, 0xc9, + 0x22, 0xd0, 0xf3, 0xf0, 0xe9, 0x68, 0x68, 0x68, + 0x60, 0x20, 0x7b, 0xdd, 0x20, 0xb7, 0x00, 0xc9, + 0xab, 0xf0, 0x05, 0xa9, 0xc4, 0x20, 0xc0, 0xde, + 0xa5, 0x9d, 0xd0, 0x05, 0x20, 0xa6, 0xd9, 0xf0, + 0xb7, 0x20, 0xb7, 0x00, 0xb0, 0x03, 0x4c, 0x3e, + 0xd9, 0x4c, 0x28, 0xd8, 0x20, 0xf8, 0xe6, 0x48, + 0xc9, 0xb0, 0xf0, 0x04, 0xc9, 0xab, 0xd0, 0x89, + 0xc6, 0xa1, 0xd0, 0x04, 0x68, 0x4c, 0x2a, 0xd8, + 0x20, 0xb1, 0x00, 0x20, 0x0c, 0xda, 0xc9, 0x2c, + 0xf0, 0xee, 0x68, 0x60, 0xa2, 0x00, 0x86, 0x50, + 0x86, 0x51, 0xb0, 0xf7, 0xe9, 0x2f, 0x85, 0x0d, + 0xa5, 0x51, 0x85, 0x5e, 0xc9, 0x19, 0xb0, 0xd4, + 0xa5, 0x50, 0x0a, 0x26, 0x5e, 0x0a, 0x26, 0x5e, + 0x65, 0x50, 0x85, 0x50, 0xa5, 0x5e, 0x65, 0x51, + 0x85, 0x51, 0x06, 0x50, 0x26, 0x51, 0xa5, 0x50, + 0x65, 0x0d, 0x85, 0x50, 0x90, 0x02, 0xe6, 0x51, + 0x20, 0xb1, 0x00, 0x4c, 0x12, 0xda, 0x20, 0xe3, + 0xdf, 0x85, 0x85, 0x84, 0x86, 0xa9, 0xd0, 0x20, + 0xc0, 0xde, 0xa5, 0x12, 0x48, 0xa5, 0x11, 0x48, + 0x20, 0x7b, 0xdd, 0x68, 0x2a, 0x20, 0x6d, 0xdd, + 0xd0, 0x18, 0x68, 0x10, 0x12, 0x20, 0x72, 0xeb, + 0x20, 0x0c, 0xe1, 0xa0, 0x00, 0xa5, 0xa0, 0x91, + 0x85, 0xc8, 0xa5, 0xa1, 0x91, 0x85, 0x60, 0x4c, + 0x27, 0xeb, 0x68, 0xa0, 0x02, 0xb1, 0xa0, 0xc5, + 0x70, 0x90, 0x17, 0xd0, 0x07, 0x88, 0xb1, 0xa0, + 0xc5, 0x6f, 0x90, 0x0e, 0xa4, 0xa1, 0xc4, 0x6a, + 0x90, 0x08, 0xd0, 0x0d, 0xa5, 0xa0, 0xc5, 0x69, + 0xb0, 0x07, 0xa5, 0xa0, 0xa4, 0xa1, 0x4c, 0xb7, + 0xda, 0xa0, 0x00, 0xb1, 0xa0, 0x20, 0xd5, 0xe3, + 0xa5, 0x8c, 0xa4, 0x8d, 0x85, 0xab, 0x84, 0xac, + 0x20, 0xd4, 0xe5, 0xa9, 0x9d, 0xa0, 0x00, 0x85, + 0x8c, 0x84, 0x8d, 0x20, 0x35, 0xe6, 0xa0, 0x00, + 0xb1, 0x8c, 0x91, 0x85, 0xc8, 0xb1, 0x8c, 0x91, + 0x85, 0xc8, 0xb1, 0x8c, 0x91, 0x85, 0x60, 0x20, + 0x3d, 0xdb, 0x20, 0xb7, 0x00, 0xf0, 0x24, 0xf0, + 0x29, 0xc9, 0xc0, 0xf0, 0x39, 0xc9, 0xc3, 0x18, + 0xf0, 0x34, 0xc9, 0x2c, 0x18, 0xf0, 0x1c, 0xc9, + 0x3b, 0xf0, 0x44, 0x20, 0x7b, 0xdd, 0x24, 0x11, + 0x30, 0xdd, 0x20, 0x34, 0xed, 0x20, 0xe7, 0xe3, + 0x4c, 0xcf, 0xda, 0xa9, 0x0d, 0x20, 0x5c, 0xdb, + 0x49, 0xff, 0x60, 0xa5, 0x24, 0xc9, 0x18, 0x90, + 0x05, 0x20, 0xfb, 0xda, 0xd0, 0x21, 0x69, 0x10, + 0x29, 0xf0, 0x85, 0x24, 0x90, 0x19, 0x08, 0x20, + 0xf5, 0xe6, 0xc9, 0x29, 0xf0, 0x03, 0x4c, 0xc9, + 0xde, 0x28, 0x90, 0x07, 0xca, 0x8a, 0xe5, 0x24, + 0x90, 0x05, 0xaa, 0xe8, 0xca, 0xd0, 0x06, 0x20, + 0xb1, 0x00, 0x4c, 0xd7, 0xda, 0x20, 0x57, 0xdb, + 0xd0, 0xf2, 0x20, 0xe7, 0xe3, 0x20, 0x00, 0xe6, + 0xaa, 0xa0, 0x00, 0xe8, 0xca, 0xf0, 0xbb, 0xb1, + 0x5e, 0x20, 0x5c, 0xdb, 0xc8, 0xc9, 0x0d, 0xd0, + 0xf3, 0x20, 0x00, 0xdb, 0x4c, 0x44, 0xdb, 0xa9, + 0x20, 0x2c, 0xa9, 0x3f, 0x09, 0x80, 0xc9, 0xa0, + 0x90, 0x02, 0x05, 0xf3, 0x20, 0xed, 0xfd, 0x29, + 0x7f, 0x48, 0xa5, 0xf1, 0x20, 0xa8, 0xfc, 0x68, + 0x60, 0xa5, 0x15, 0xf0, 0x12, 0x30, 0x04, 0xa0, + 0xff, 0xd0, 0x04, 0xa5, 0x7b, 0xa4, 0x7c, 0x85, + 0x75, 0x84, 0x76, 0x4c, 0xc9, 0xde, 0x68, 0x24, + 0xd8, 0x10, 0x05, 0xa2, 0xfe, 0x4c, 0xe9, 0xf2, + 0xa9, 0xef, 0xa0, 0xdc, 0x20, 0x3a, 0xdb, 0xa5, + 0x79, 0xa4, 0x7a, 0x85, 0xb8, 0x84, 0xb9, 0x60, + 0x20, 0x06, 0xe3, 0xa2, 0x01, 0xa0, 0x02, 0xa9, + 0x00, 0x8d, 0x01, 0x02, 0xa9, 0x40, 0x20, 0xeb, + 0xdb, 0x60, 0xc9, 0x22, 0xd0, 0x0e, 0x20, 0x81, + 0xde, 0xa9, 0x3b, 0x20, 0xc0, 0xde, 0x20, 0x3d, + 0xdb, 0x4c, 0xc7, 0xdb, 0x20, 0x5a, 0xdb, 0x20, + 0x06, 0xe3, 0xa9, 0x2c, 0x8d, 0xff, 0x01, 0x20, + 0x2c, 0xd5, 0xad, 0x00, 0x02, 0xc9, 0x03, 0xd0, + 0x10, 0x4c, 0x63, 0xd8, 0x20, 0x5a, 0xdb, 0x4c, + 0x2c, 0xd5, 0xa6, 0x7d, 0xa4, 0x7e, 0xa9, 0x98, + 0x2c, 0xa9, 0x00, 0x85, 0x15, 0x86, 0x7f, 0x84, + 0x80, 0x20, 0xe3, 0xdf, 0x85, 0x85, 0x84, 0x86, + 0xa5, 0xb8, 0xa4, 0xb9, 0x85, 0x87, 0x84, 0x88, + 0xa6, 0x7f, 0xa4, 0x80, 0x86, 0xb8, 0x84, 0xb9, + 0x20, 0xb7, 0x00, 0xd0, 0x1e, 0x24, 0x15, 0x50, + 0x0e, 0x20, 0x0c, 0xfd, 0x29, 0x7f, 0x8d, 0x00, + 0x02, 0xa2, 0xff, 0xa0, 0x01, 0xd0, 0x08, 0x30, + 0x7f, 0x20, 0x5a, 0xdb, 0x20, 0xdc, 0xdb, 0x86, + 0xb8, 0x84, 0xb9, 0x20, 0xb1, 0x00, 0x24, 0x11, + 0x10, 0x31, 0x24, 0x15, 0x50, 0x09, 0xe8, 0x86, + 0xb8, 0xa9, 0x00, 0x85, 0x0d, 0xf0, 0x0c, 0x85, + 0x0d, 0xc9, 0x22, 0xf0, 0x07, 0xa9, 0x3a, 0x85, + 0x0d, 0xa9, 0x2c, 0x18, 0x85, 0x0e, 0xa5, 0xb8, + 0xa4, 0xb9, 0x69, 0x00, 0x90, 0x01, 0xc8, 0x20, + 0xed, 0xe3, 0x20, 0x3d, 0xe7, 0x20, 0x7b, 0xda, + 0x4c, 0x72, 0xdc, 0x48, 0xad, 0x00, 0x02, 0xf0, + 0x30, 0x68, 0x20, 0x4a, 0xec, 0xa5, 0x12, 0x20, + 0x63, 0xda, 0x20, 0xb7, 0x00, 0xf0, 0x07, 0xc9, + 0x2c, 0xf0, 0x03, 0x4c, 0x71, 0xdb, 0xa5, 0xb8, + 0xa4, 0xb9, 0x85, 0x7f, 0x84, 0x80, 0xa5, 0x87, + 0xa4, 0x88, 0x85, 0xb8, 0x84, 0xb9, 0x20, 0xb7, + 0x00, 0xf0, 0x33, 0x20, 0xbe, 0xde, 0x4c, 0xf1, + 0xdb, 0xa5, 0x15, 0xd0, 0xcc, 0x4c, 0x86, 0xdb, + 0x20, 0xa3, 0xd9, 0xc8, 0xaa, 0xd0, 0x12, 0xa2, + 0x2a, 0xc8, 0xb1, 0xb8, 0xf0, 0x5f, 0xc8, 0xb1, + 0xb8, 0x85, 0x7b, 0xc8, 0xb1, 0xb8, 0xc8, 0x85, + 0x7c, 0xb1, 0xb8, 0xaa, 0x20, 0x98, 0xd9, 0xe0, + 0x83, 0xd0, 0xdd, 0x4c, 0x2b, 0xdc, 0xa5, 0x7f, + 0xa4, 0x80, 0xa6, 0x15, 0x10, 0x03, 0x4c, 0x53, + 0xd8, 0xa0, 0x00, 0xb1, 0x7f, 0xf0, 0x07, 0xa9, + 0xdf, 0xa0, 0xdc, 0x4c, 0x3a, 0xdb, 0x60, 0x3f, + 0x45, 0x58, 0x54, 0x52, 0x41, 0x20, 0x49, 0x47, + 0x4e, 0x4f, 0x52, 0x45, 0x44, 0x0d, 0x00, 0x3f, + 0x52, 0x45, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x0d, + 0x00, 0xd0, 0x04, 0xa0, 0x00, 0xf0, 0x03, 0x20, + 0xe3, 0xdf, 0x85, 0x85, 0x84, 0x86, 0x20, 0x65, + 0xd3, 0xf0, 0x04, 0xa2, 0x00, 0xf0, 0x69, 0x9a, + 0xe8, 0xe8, 0xe8, 0xe8, 0x8a, 0xe8, 0xe8, 0xe8, + 0xe8, 0xe8, 0xe8, 0x86, 0x60, 0xa0, 0x01, 0x20, + 0xf9, 0xea, 0xba, 0xbd, 0x09, 0x01, 0x85, 0xa2, + 0xa5, 0x85, 0xa4, 0x86, 0x20, 0xbe, 0xe7, 0x20, + 0x27, 0xeb, 0xa0, 0x01, 0x20, 0xb4, 0xeb, 0xba, + 0x38, 0xfd, 0x09, 0x01, 0xf0, 0x17, 0xbd, 0x0f, + 0x01, 0x85, 0x75, 0xbd, 0x10, 0x01, 0x85, 0x76, + 0xbd, 0x12, 0x01, 0x85, 0xb8, 0xbd, 0x11, 0x01, + 0x85, 0xb9, 0x4c, 0xd2, 0xd7, 0x8a, 0x69, 0x11, + 0xaa, 0x9a, 0x20, 0xb7, 0x00, 0xc9, 0x2c, 0xd0, + 0xf1, 0x20, 0xb1, 0x00, 0x20, 0xff, 0xdc, 0x20, + 0x7b, 0xdd, 0x18, 0x24, 0x38, 0x24, 0x11, 0x30, + 0x03, 0xb0, 0x03, 0x60, 0xb0, 0xfd, 0xa2, 0xa3, + 0x4c, 0x12, 0xd4, 0xa6, 0xb8, 0xd0, 0x02, 0xc6, + 0xb9, 0xc6, 0xb8, 0xa2, 0x00, 0x24, 0x48, 0x8a, + 0x48, 0xa9, 0x01, 0x20, 0xd6, 0xd3, 0x20, 0x60, + 0xde, 0xa9, 0x00, 0x85, 0x89, 0x20, 0xb7, 0x00, + 0x38, 0xe9, 0xcf, 0x90, 0x17, 0xc9, 0x03, 0xb0, + 0x13, 0xc9, 0x01, 0x2a, 0x49, 0x01, 0x45, 0x89, + 0xc5, 0x89, 0x90, 0x61, 0x85, 0x89, 0x20, 0xb1, + 0x00, 0x4c, 0x98, 0xdd, 0xa6, 0x89, 0xd0, 0x2c, + 0xb0, 0x7b, 0x69, 0x07, 0x90, 0x77, 0x65, 0x11, + 0xd0, 0x03, 0x4c, 0x97, 0xe5, 0x69, 0xff, 0x85, + 0x5e, 0x0a, 0x65, 0x5e, 0xa8, 0x68, 0xd9, 0xb2, + 0xd0, 0xb0, 0x67, 0x20, 0x6a, 0xdd, 0x48, 0x20, + 0xfd, 0xdd, 0x68, 0xa4, 0x87, 0x10, 0x17, 0xaa, + 0xf0, 0x56, 0xd0, 0x5f, 0x46, 0x11, 0x8a, 0x2a, + 0xa6, 0xb8, 0xd0, 0x02, 0xc6, 0xb9, 0xc6, 0xb8, + 0xa0, 0x1b, 0x85, 0x89, 0xd0, 0xd7, 0xd9, 0xb2, + 0xd0, 0xb0, 0x48, 0x90, 0xd9, 0xb9, 0xb4, 0xd0, + 0x48, 0xb9, 0xb3, 0xd0, 0x48, 0x20, 0x10, 0xde, + 0xa5, 0x89, 0x4c, 0x86, 0xdd, 0x4c, 0xc9, 0xde, + 0xa5, 0xa2, 0xbe, 0xb2, 0xd0, 0xa8, 0x68, 0x85, + 0x5e, 0xe6, 0x5e, 0x68, 0x85, 0x5f, 0x98, 0x48, + 0x20, 0x72, 0xeb, 0xa5, 0xa1, 0x48, 0xa5, 0xa0, + 0x48, 0xa5, 0x9f, 0x48, 0xa5, 0x9e, 0x48, 0xa5, + 0x9d, 0x48, 0x6c, 0x5e, 0x00, 0xa0, 0xff, 0x68, + 0xf0, 0x23, 0xc9, 0x64, 0xf0, 0x03, 0x20, 0x6a, + 0xdd, 0x84, 0x87, 0x68, 0x4a, 0x85, 0x16, 0x68, + 0x85, 0xa5, 0x68, 0x85, 0xa6, 0x68, 0x85, 0xa7, + 0x68, 0x85, 0xa8, 0x68, 0x85, 0xa9, 0x68, 0x85, + 0xaa, 0x45, 0xa2, 0x85, 0xab, 0xa5, 0x9d, 0x60, + 0xa9, 0x00, 0x85, 0x11, 0x20, 0xb1, 0x00, 0xb0, + 0x03, 0x4c, 0x4a, 0xec, 0x20, 0x7d, 0xe0, 0xb0, + 0x64, 0xc9, 0x2e, 0xf0, 0xf4, 0xc9, 0xc9, 0xf0, + 0x55, 0xc9, 0xc8, 0xf0, 0xe7, 0xc9, 0x22, 0xd0, + 0x0f, 0xa5, 0xb8, 0xa4, 0xb9, 0x69, 0x00, 0x90, + 0x01, 0xc8, 0x20, 0xe7, 0xe3, 0x4c, 0x3d, 0xe7, + 0xc9, 0xc6, 0xd0, 0x10, 0xa0, 0x18, 0xd0, 0x38, + 0xa5, 0x9d, 0xd0, 0x03, 0xa0, 0x01, 0x2c, 0xa0, + 0x00, 0x4c, 0x01, 0xe3, 0xc9, 0xc2, 0xd0, 0x03, + 0x4c, 0x54, 0xe3, 0xc9, 0xd2, 0x90, 0x03, 0x4c, + 0x0c, 0xdf, 0x20, 0xbb, 0xde, 0x20, 0x7b, 0xdd, + 0xa9, 0x29, 0x2c, 0xa9, 0x28, 0x2c, 0xa9, 0x2c, + 0xa0, 0x00, 0xd1, 0xb8, 0xd0, 0x03, 0x4c, 0xb1, + 0x00, 0xa2, 0x10, 0x4c, 0x12, 0xd4, 0xa0, 0x15, + 0x68, 0x68, 0x4c, 0xd7, 0xdd, 0x20, 0xe3, 0xdf, + 0x85, 0xa0, 0x84, 0xa1, 0xa6, 0x11, 0xf0, 0x05, + 0xa2, 0x00, 0x86, 0xac, 0x60, 0xa6, 0x12, 0x10, + 0x0d, 0xa0, 0x00, 0xb1, 0xa0, 0xaa, 0xc8, 0xb1, + 0xa0, 0xa8, 0x8a, 0x4c, 0xf2, 0xe2, 0x4c, 0xf9, + 0xea, 0x20, 0xb1, 0x00, 0x20, 0xec, 0xf1, 0x8a, + 0xa4, 0xf0, 0x20, 0x71, 0xf8, 0xa8, 0x20, 0x01, + 0xe3, 0x4c, 0xb8, 0xde, 0xc9, 0xd7, 0xf0, 0xe9, + 0x0a, 0x48, 0xaa, 0x20, 0xb1, 0x00, 0xe0, 0xcf, + 0x90, 0x20, 0x20, 0xbb, 0xde, 0x20, 0x7b, 0xdd, + 0x20, 0xbe, 0xde, 0x20, 0x6c, 0xdd, 0x68, 0xaa, + 0xa5, 0xa1, 0x48, 0xa5, 0xa0, 0x48, 0x8a, 0x48, + 0x20, 0xf8, 0xe6, 0x68, 0xa8, 0x8a, 0x48, 0x4c, + 0x3f, 0xdf, 0x20, 0xb2, 0xde, 0x68, 0xa8, 0xb9, + 0xdc, 0xcf, 0x85, 0x91, 0xb9, 0xdd, 0xcf, 0x85, + 0x92, 0x20, 0x90, 0x00, 0x4c, 0x6a, 0xdd, 0xa5, + 0xa5, 0x05, 0x9d, 0xd0, 0x0b, 0xa5, 0xa5, 0xf0, + 0x04, 0xa5, 0x9d, 0xd0, 0x03, 0xa0, 0x00, 0x2c, + 0xa0, 0x01, 0x4c, 0x01, 0xe3, 0x20, 0x6d, 0xdd, + 0xb0, 0x13, 0xa5, 0xaa, 0x09, 0x7f, 0x25, 0xa6, + 0x85, 0xa6, 0xa9, 0xa5, 0xa0, 0x00, 0x20, 0xb2, + 0xeb, 0xaa, 0x4c, 0xb0, 0xdf, 0xa9, 0x00, 0x85, + 0x11, 0xc6, 0x89, 0x20, 0x00, 0xe6, 0x85, 0x9d, + 0x86, 0x9e, 0x84, 0x9f, 0xa5, 0xa8, 0xa4, 0xa9, + 0x20, 0x04, 0xe6, 0x86, 0xa8, 0x84, 0xa9, 0xaa, + 0x38, 0xe5, 0x9d, 0xf0, 0x08, 0xa9, 0x01, 0x90, + 0x04, 0xa6, 0x9d, 0xa9, 0xff, 0x85, 0xa2, 0xa0, + 0xff, 0xe8, 0xc8, 0xca, 0xd0, 0x07, 0xa6, 0xa2, + 0x30, 0x0f, 0x18, 0x90, 0x0c, 0xb1, 0xa8, 0xd1, + 0x9e, 0xf0, 0xef, 0xa2, 0xff, 0xb0, 0x02, 0xa2, + 0x01, 0xe8, 0x8a, 0x2a, 0x25, 0x16, 0xf0, 0x02, + 0xa9, 0x01, 0x4c, 0x93, 0xeb, 0x20, 0xfb, 0xe6, + 0x20, 0x1e, 0xfb, 0x4c, 0x01, 0xe3, 0x20, 0xbe, + 0xde, 0xaa, 0x20, 0xe8, 0xdf, 0x20, 0xb7, 0x00, + 0xd0, 0xf4, 0x60, 0xa2, 0x00, 0x20, 0xb7, 0x00, + 0x86, 0x10, 0x85, 0x81, 0x20, 0xb7, 0x00, 0x20, + 0x7d, 0xe0, 0xb0, 0x03, 0x4c, 0xc9, 0xde, 0xa2, + 0x00, 0x86, 0x11, 0x86, 0x12, 0x4c, 0x07, 0xe0, + 0x4c, 0x28, 0xf1, 0x4c, 0x3c, 0xd4, 0x00, 0x20, + 0xb1, 0x00, 0x90, 0x05, 0x20, 0x7d, 0xe0, 0x90, + 0x0b, 0xaa, 0x20, 0xb1, 0x00, 0x90, 0xfb, 0x20, + 0x7d, 0xe0, 0xb0, 0xf6, 0xc9, 0x24, 0xd0, 0x06, + 0xa9, 0xff, 0x85, 0x11, 0xd0, 0x10, 0xc9, 0x25, + 0xd0, 0x13, 0xa5, 0x14, 0x30, 0xc6, 0xa9, 0x80, + 0x85, 0x12, 0x05, 0x81, 0x85, 0x81, 0x8a, 0x09, + 0x80, 0xaa, 0x20, 0xb1, 0x00, 0x86, 0x82, 0x38, + 0x05, 0x14, 0xe9, 0x28, 0xd0, 0x03, 0x4c, 0x1e, + 0xe1, 0x24, 0x14, 0x30, 0x02, 0x70, 0xf7, 0xa9, + 0x00, 0x85, 0x14, 0xa5, 0x69, 0xa6, 0x6a, 0xa0, + 0x00, 0x86, 0x9c, 0x85, 0x9b, 0xe4, 0x6c, 0xd0, + 0x04, 0xc5, 0x6b, 0xf0, 0x22, 0xa5, 0x81, 0xd1, + 0x9b, 0xd0, 0x08, 0xa5, 0x82, 0xc8, 0xd1, 0x9b, + 0xf0, 0x6c, 0x88, 0x18, 0xa5, 0x9b, 0x69, 0x07, + 0x90, 0xe1, 0xe8, 0xd0, 0xdc, 0xc9, 0x41, 0x90, + 0x05, 0xe9, 0x5b, 0x38, 0xe9, 0xa5, 0x60, 0x68, + 0x48, 0xc9, 0xd7, 0xd0, 0x0f, 0xba, 0xbd, 0x02, + 0x01, 0xc9, 0xde, 0xd0, 0x07, 0xa9, 0x9a, 0xa0, + 0xe0, 0x60, 0x00, 0x00, 0xa5, 0x6b, 0xa4, 0x6c, + 0x85, 0x9b, 0x84, 0x9c, 0xa5, 0x6d, 0xa4, 0x6e, + 0x85, 0x96, 0x84, 0x97, 0x18, 0x69, 0x07, 0x90, + 0x01, 0xc8, 0x85, 0x94, 0x84, 0x95, 0x20, 0x93, + 0xd3, 0xa5, 0x94, 0xa4, 0x95, 0xc8, 0x85, 0x6b, + 0x84, 0x6c, 0xa0, 0x00, 0xa5, 0x81, 0x91, 0x9b, + 0xc8, 0xa5, 0x82, 0x91, 0x9b, 0xa9, 0x00, 0xc8, + 0x91, 0x9b, 0xc8, 0x91, 0x9b, 0xc8, 0x91, 0x9b, + 0xc8, 0x91, 0x9b, 0xc8, 0x91, 0x9b, 0xa5, 0x9b, + 0x18, 0x69, 0x02, 0xa4, 0x9c, 0x90, 0x01, 0xc8, + 0x85, 0x83, 0x84, 0x84, 0x60, 0xa5, 0x0f, 0x0a, + 0x69, 0x05, 0x65, 0x9b, 0xa4, 0x9c, 0x90, 0x01, + 0xc8, 0x85, 0x94, 0x84, 0x95, 0x60, 0x90, 0x80, + 0x00, 0x00, 0x20, 0xb1, 0x00, 0x20, 0x67, 0xdd, + 0xa5, 0xa2, 0x30, 0x0d, 0xa5, 0x9d, 0xc9, 0x90, + 0x90, 0x09, 0xa9, 0xfe, 0xa0, 0xe0, 0x20, 0xb2, + 0xeb, 0xd0, 0x7e, 0x4c, 0xf2, 0xeb, 0xa5, 0x14, + 0xd0, 0x47, 0xa5, 0x10, 0x05, 0x12, 0x48, 0xa5, + 0x11, 0x48, 0xa0, 0x00, 0x98, 0x48, 0xa5, 0x82, + 0x48, 0xa5, 0x81, 0x48, 0x20, 0x02, 0xe1, 0x68, + 0x85, 0x81, 0x68, 0x85, 0x82, 0x68, 0xa8, 0xba, + 0xbd, 0x02, 0x01, 0x48, 0xbd, 0x01, 0x01, 0x48, + 0xa5, 0xa0, 0x9d, 0x02, 0x01, 0xa5, 0xa1, 0x9d, + 0x01, 0x01, 0xc8, 0x20, 0xb7, 0x00, 0xc9, 0x2c, + 0xf0, 0xd2, 0x84, 0x0f, 0x20, 0xb8, 0xde, 0x68, + 0x85, 0x11, 0x68, 0x85, 0x12, 0x29, 0x7f, 0x85, + 0x10, 0xa6, 0x6b, 0xa5, 0x6c, 0x86, 0x9b, 0x85, + 0x9c, 0xc5, 0x6e, 0xd0, 0x04, 0xe4, 0x6d, 0xf0, + 0x3f, 0xa0, 0x00, 0xb1, 0x9b, 0xc8, 0xc5, 0x81, + 0xd0, 0x06, 0xa5, 0x82, 0xd1, 0x9b, 0xf0, 0x16, + 0xc8, 0xb1, 0x9b, 0x18, 0x65, 0x9b, 0xaa, 0xc8, + 0xb1, 0x9b, 0x65, 0x9c, 0x90, 0xd7, 0xa2, 0x6b, + 0x2c, 0xa2, 0x35, 0x4c, 0x12, 0xd4, 0xa2, 0x78, + 0xa5, 0x10, 0xd0, 0xf7, 0xa5, 0x14, 0xf0, 0x02, + 0x38, 0x60, 0x20, 0xed, 0xe0, 0xa5, 0x0f, 0xa0, + 0x04, 0xd1, 0x9b, 0xd0, 0xe1, 0x4c, 0x4b, 0xe2, + 0xa5, 0x14, 0xf0, 0x05, 0xa2, 0x2a, 0x4c, 0x12, + 0xd4, 0x20, 0xed, 0xe0, 0x20, 0xe3, 0xd3, 0xa9, + 0x00, 0xa8, 0x85, 0xae, 0xa2, 0x05, 0xa5, 0x81, + 0x91, 0x9b, 0x10, 0x01, 0xca, 0xc8, 0xa5, 0x82, + 0x91, 0x9b, 0x10, 0x02, 0xca, 0xca, 0x86, 0xad, + 0xa5, 0x0f, 0xc8, 0xc8, 0xc8, 0x91, 0x9b, 0xa2, + 0x0b, 0xa9, 0x00, 0x24, 0x10, 0x50, 0x08, 0x68, + 0x18, 0x69, 0x01, 0xaa, 0x68, 0x69, 0x00, 0xc8, + 0x91, 0x9b, 0xc8, 0x8a, 0x91, 0x9b, 0x20, 0xad, + 0xe2, 0x86, 0xad, 0x85, 0xae, 0xa4, 0x5e, 0xc6, + 0x0f, 0xd0, 0xdc, 0x65, 0x95, 0xb0, 0x5d, 0x85, + 0x95, 0xa8, 0x8a, 0x65, 0x94, 0x90, 0x03, 0xc8, + 0xf0, 0x52, 0x20, 0xe3, 0xd3, 0x85, 0x6d, 0x84, + 0x6e, 0xa9, 0x00, 0xe6, 0xae, 0xa4, 0xad, 0xf0, + 0x05, 0x88, 0x91, 0x94, 0xd0, 0xfb, 0xc6, 0x95, + 0xc6, 0xae, 0xd0, 0xf5, 0xe6, 0x95, 0x38, 0xa5, + 0x6d, 0xe5, 0x9b, 0xa0, 0x02, 0x91, 0x9b, 0xa5, + 0x6e, 0xc8, 0xe5, 0x9c, 0x91, 0x9b, 0xa5, 0x10, + 0xd0, 0x62, 0xc8, 0xb1, 0x9b, 0x85, 0x0f, 0xa9, + 0x00, 0x85, 0xad, 0x85, 0xae, 0xc8, 0x68, 0xaa, + 0x85, 0xa0, 0x68, 0x85, 0xa1, 0xd1, 0x9b, 0x90, + 0x0e, 0xd0, 0x06, 0xc8, 0x8a, 0xd1, 0x9b, 0x90, + 0x07, 0x4c, 0x96, 0xe1, 0x4c, 0x10, 0xd4, 0xc8, + 0xa5, 0xae, 0x05, 0xad, 0x18, 0xf0, 0x0a, 0x20, + 0xad, 0xe2, 0x8a, 0x65, 0xa0, 0xaa, 0x98, 0xa4, + 0x5e, 0x65, 0xa1, 0x86, 0xad, 0xc6, 0x0f, 0xd0, + 0xca, 0x85, 0xae, 0xa2, 0x05, 0xa5, 0x81, 0x10, + 0x01, 0xca, 0xa5, 0x82, 0x10, 0x02, 0xca, 0xca, + 0x86, 0x64, 0xa9, 0x00, 0x20, 0xb6, 0xe2, 0x8a, + 0x65, 0x94, 0x85, 0x83, 0x98, 0x65, 0x95, 0x85, + 0x84, 0xa8, 0xa5, 0x83, 0x60, 0x84, 0x5e, 0xb1, + 0x9b, 0x85, 0x64, 0x88, 0xb1, 0x9b, 0x85, 0x65, + 0xa9, 0x10, 0x85, 0x99, 0xa2, 0x00, 0xa0, 0x00, + 0x8a, 0x0a, 0xaa, 0x98, 0x2a, 0xa8, 0xb0, 0xa4, + 0x06, 0xad, 0x26, 0xae, 0x90, 0x0b, 0x18, 0x8a, + 0x65, 0x64, 0xaa, 0x98, 0x65, 0x65, 0xa8, 0xb0, + 0x93, 0xc6, 0x99, 0xd0, 0xe3, 0x60, 0xa5, 0x11, + 0xf0, 0x03, 0x20, 0x00, 0xe6, 0x20, 0x84, 0xe4, + 0x38, 0xa5, 0x6f, 0xe5, 0x6d, 0xa8, 0xa5, 0x70, + 0xe5, 0x6e, 0xa2, 0x00, 0x86, 0x11, 0x85, 0x9e, + 0x84, 0x9f, 0xa2, 0x90, 0x4c, 0x9b, 0xeb, 0xa4, + 0x24, 0xa9, 0x00, 0x38, 0xf0, 0xec, 0xa6, 0x76, + 0xe8, 0xd0, 0xa1, 0xa2, 0x95, 0x2c, 0xa2, 0xe0, + 0x4c, 0x12, 0xd4, 0x20, 0x41, 0xe3, 0x20, 0x06, + 0xe3, 0x20, 0xbb, 0xde, 0xa9, 0x80, 0x85, 0x14, + 0x20, 0xe3, 0xdf, 0x20, 0x6a, 0xdd, 0x20, 0xb8, + 0xde, 0xa9, 0xd0, 0x20, 0xc0, 0xde, 0x48, 0xa5, + 0x84, 0x48, 0xa5, 0x83, 0x48, 0xa5, 0xb9, 0x48, + 0xa5, 0xb8, 0x48, 0x20, 0x95, 0xd9, 0x4c, 0xaf, + 0xe3, 0xa9, 0xc2, 0x20, 0xc0, 0xde, 0x09, 0x80, + 0x85, 0x14, 0x20, 0xea, 0xdf, 0x85, 0x8a, 0x84, + 0x8b, 0x4c, 0x6a, 0xdd, 0x20, 0x41, 0xe3, 0xa5, + 0x8b, 0x48, 0xa5, 0x8a, 0x48, 0x20, 0xb2, 0xde, + 0x20, 0x6a, 0xdd, 0x68, 0x85, 0x8a, 0x68, 0x85, + 0x8b, 0xa0, 0x02, 0xb1, 0x8a, 0x85, 0x83, 0xaa, + 0xc8, 0xb1, 0x8a, 0xf0, 0x99, 0x85, 0x84, 0xc8, + 0xb1, 0x83, 0x48, 0x88, 0x10, 0xfa, 0xa4, 0x84, + 0x20, 0x2b, 0xeb, 0xa5, 0xb9, 0x48, 0xa5, 0xb8, + 0x48, 0xb1, 0x8a, 0x85, 0xb8, 0xc8, 0xb1, 0x8a, + 0x85, 0xb9, 0xa5, 0x84, 0x48, 0xa5, 0x83, 0x48, + 0x20, 0x67, 0xdd, 0x68, 0x85, 0x8a, 0x68, 0x85, + 0x8b, 0x20, 0xb7, 0x00, 0xf0, 0x03, 0x4c, 0xc9, + 0xde, 0x68, 0x85, 0xb8, 0x68, 0x85, 0xb9, 0xa0, + 0x00, 0x68, 0x91, 0x8a, 0x68, 0xc8, 0x91, 0x8a, + 0x68, 0xc8, 0x91, 0x8a, 0x68, 0xc8, 0x91, 0x8a, + 0x68, 0xc8, 0x91, 0x8a, 0x60, 0x20, 0x6a, 0xdd, + 0xa0, 0x00, 0x20, 0x36, 0xed, 0x68, 0x68, 0xa9, + 0xff, 0xa0, 0x00, 0xf0, 0x12, 0xa6, 0xa0, 0xa4, + 0xa1, 0x86, 0x8c, 0x84, 0x8d, 0x20, 0x52, 0xe4, + 0x86, 0x9e, 0x84, 0x9f, 0x85, 0x9d, 0x60, 0xa2, + 0x22, 0x86, 0x0d, 0x86, 0x0e, 0x85, 0xab, 0x84, + 0xac, 0x85, 0x9e, 0x84, 0x9f, 0xa0, 0xff, 0xc8, + 0xb1, 0xab, 0xf0, 0x0c, 0xc5, 0x0d, 0xf0, 0x04, + 0xc5, 0x0e, 0xd0, 0xf3, 0xc9, 0x22, 0xf0, 0x01, + 0x18, 0x84, 0x9d, 0x98, 0x65, 0xab, 0x85, 0xad, + 0xa6, 0xac, 0x90, 0x01, 0xe8, 0x86, 0xae, 0xa5, + 0xac, 0xf0, 0x04, 0xc9, 0x02, 0xd0, 0x0b, 0x98, + 0x20, 0xd5, 0xe3, 0xa6, 0xab, 0xa4, 0xac, 0x20, + 0xe2, 0xe5, 0xa6, 0x52, 0xe0, 0x5e, 0xd0, 0x05, + 0xa2, 0xbf, 0x4c, 0x12, 0xd4, 0xa5, 0x9d, 0x95, + 0x00, 0xa5, 0x9e, 0x95, 0x01, 0xa5, 0x9f, 0x95, + 0x02, 0xa0, 0x00, 0x86, 0xa0, 0x84, 0xa1, 0x88, + 0x84, 0x11, 0x86, 0x53, 0xe8, 0xe8, 0xe8, 0x86, + 0x52, 0x60, 0x46, 0x13, 0x48, 0x49, 0xff, 0x38, + 0x65, 0x6f, 0xa4, 0x70, 0xb0, 0x01, 0x88, 0xc4, + 0x6e, 0x90, 0x11, 0xd0, 0x04, 0xc5, 0x6d, 0x90, + 0x0b, 0x85, 0x6f, 0x84, 0x70, 0x85, 0x71, 0x84, + 0x72, 0xaa, 0x68, 0x60, 0xa2, 0x4d, 0xa5, 0x13, + 0x30, 0xb8, 0x20, 0x84, 0xe4, 0xa9, 0x80, 0x85, + 0x13, 0x68, 0xd0, 0xd0, 0xa6, 0x73, 0xa5, 0x74, + 0x86, 0x6f, 0x85, 0x70, 0xa0, 0x00, 0x84, 0x8b, + 0xa5, 0x6d, 0xa6, 0x6e, 0x85, 0x9b, 0x86, 0x9c, + 0xa9, 0x55, 0xa2, 0x00, 0x85, 0x5e, 0x86, 0x5f, + 0xc5, 0x52, 0xf0, 0x05, 0x20, 0x23, 0xe5, 0xf0, + 0xf7, 0xa9, 0x07, 0x85, 0x8f, 0xa5, 0x69, 0xa6, + 0x6a, 0x85, 0x5e, 0x86, 0x5f, 0xe4, 0x6c, 0xd0, + 0x04, 0xc5, 0x6b, 0xf0, 0x05, 0x20, 0x19, 0xe5, + 0xf0, 0xf3, 0x85, 0x94, 0x86, 0x95, 0xa9, 0x03, + 0x85, 0x8f, 0xa5, 0x94, 0xa6, 0x95, 0xe4, 0x6e, + 0xd0, 0x07, 0xc5, 0x6d, 0xd0, 0x03, 0x4c, 0x62, + 0xe5, 0x85, 0x5e, 0x86, 0x5f, 0xa0, 0x00, 0xb1, + 0x5e, 0xaa, 0xc8, 0xb1, 0x5e, 0x08, 0xc8, 0xb1, + 0x5e, 0x65, 0x94, 0x85, 0x94, 0xc8, 0xb1, 0x5e, + 0x65, 0x95, 0x85, 0x95, 0x28, 0x10, 0xd3, 0x8a, + 0x30, 0xd0, 0xc8, 0xb1, 0x5e, 0xa0, 0x00, 0x0a, + 0x69, 0x05, 0x65, 0x5e, 0x85, 0x5e, 0x90, 0x02, + 0xe6, 0x5f, 0xa6, 0x5f, 0xe4, 0x95, 0xd0, 0x04, + 0xc5, 0x94, 0xf0, 0xba, 0x20, 0x23, 0xe5, 0xf0, + 0xf3, 0xb1, 0x5e, 0x30, 0x35, 0xc8, 0xb1, 0x5e, + 0x10, 0x30, 0xc8, 0xb1, 0x5e, 0xf0, 0x2b, 0xc8, + 0xb1, 0x5e, 0xaa, 0xc8, 0xb1, 0x5e, 0xc5, 0x70, + 0x90, 0x06, 0xd0, 0x1e, 0xe4, 0x6f, 0xb0, 0x1a, + 0xc5, 0x9c, 0x90, 0x16, 0xd0, 0x04, 0xe4, 0x9b, + 0x90, 0x10, 0x86, 0x9b, 0x85, 0x9c, 0xa5, 0x5e, + 0xa6, 0x5f, 0x85, 0x8a, 0x86, 0x8b, 0xa5, 0x8f, + 0x85, 0x91, 0xa5, 0x8f, 0x18, 0x65, 0x5e, 0x85, + 0x5e, 0x90, 0x02, 0xe6, 0x5f, 0xa6, 0x5f, 0xa0, + 0x00, 0x60, 0xa6, 0x8b, 0xf0, 0xf7, 0xa5, 0x91, + 0x29, 0x04, 0x4a, 0xa8, 0x85, 0x91, 0xb1, 0x8a, + 0x65, 0x9b, 0x85, 0x96, 0xa5, 0x9c, 0x69, 0x00, + 0x85, 0x97, 0xa5, 0x6f, 0xa6, 0x70, 0x85, 0x94, + 0x86, 0x95, 0x20, 0x9a, 0xd3, 0xa4, 0x91, 0xc8, + 0xa5, 0x94, 0x91, 0x8a, 0xaa, 0xe6, 0x95, 0xa5, + 0x95, 0xc8, 0x91, 0x8a, 0x4c, 0x88, 0xe4, 0xa5, + 0xa1, 0x48, 0xa5, 0xa0, 0x48, 0x20, 0x60, 0xde, + 0x20, 0x6c, 0xdd, 0x68, 0x85, 0xab, 0x68, 0x85, + 0xac, 0xa0, 0x00, 0xb1, 0xab, 0x18, 0x71, 0xa0, + 0x90, 0x05, 0xa2, 0xb0, 0x4c, 0x12, 0xd4, 0x20, + 0xd5, 0xe3, 0x20, 0xd4, 0xe5, 0xa5, 0x8c, 0xa4, + 0x8d, 0x20, 0x04, 0xe6, 0x20, 0xe6, 0xe5, 0xa5, + 0xab, 0xa4, 0xac, 0x20, 0x04, 0xe6, 0x20, 0x2a, + 0xe4, 0x4c, 0x95, 0xdd, 0xa0, 0x00, 0xb1, 0xab, + 0x48, 0xc8, 0xb1, 0xab, 0xaa, 0xc8, 0xb1, 0xab, + 0xa8, 0x68, 0x86, 0x5e, 0x84, 0x5f, 0xa8, 0xf0, + 0x0a, 0x48, 0x88, 0xb1, 0x5e, 0x91, 0x71, 0x98, + 0xd0, 0xf8, 0x68, 0x18, 0x65, 0x71, 0x85, 0x71, + 0x90, 0x02, 0xe6, 0x72, 0x60, 0x20, 0x6c, 0xdd, + 0xa5, 0xa0, 0xa4, 0xa1, 0x85, 0x5e, 0x84, 0x5f, + 0x20, 0x35, 0xe6, 0x08, 0xa0, 0x00, 0xb1, 0x5e, + 0x48, 0xc8, 0xb1, 0x5e, 0xaa, 0xc8, 0xb1, 0x5e, + 0xa8, 0x68, 0x28, 0xd0, 0x13, 0xc4, 0x70, 0xd0, + 0x0f, 0xe4, 0x6f, 0xd0, 0x0b, 0x48, 0x18, 0x65, + 0x6f, 0x85, 0x6f, 0x90, 0x02, 0xe6, 0x70, 0x68, + 0x86, 0x5e, 0x84, 0x5f, 0x60, 0xc4, 0x54, 0xd0, + 0x0c, 0xc5, 0x53, 0xd0, 0x08, 0x85, 0x52, 0xe9, + 0x03, 0x85, 0x53, 0xa0, 0x00, 0x60, 0x20, 0xfb, + 0xe6, 0x8a, 0x48, 0xa9, 0x01, 0x20, 0xdd, 0xe3, + 0x68, 0xa0, 0x00, 0x91, 0x9e, 0x68, 0x68, 0x4c, + 0x2a, 0xe4, 0x20, 0xb9, 0xe6, 0xd1, 0x8c, 0x98, + 0x90, 0x04, 0xb1, 0x8c, 0xaa, 0x98, 0x48, 0x8a, + 0x48, 0x20, 0xdd, 0xe3, 0xa5, 0x8c, 0xa4, 0x8d, + 0x20, 0x04, 0xe6, 0x68, 0xa8, 0x68, 0x18, 0x65, + 0x5e, 0x85, 0x5e, 0x90, 0x02, 0xe6, 0x5f, 0x98, + 0x20, 0xe6, 0xe5, 0x4c, 0x2a, 0xe4, 0x20, 0xb9, + 0xe6, 0x18, 0xf1, 0x8c, 0x49, 0xff, 0x4c, 0x60, + 0xe6, 0xa9, 0xff, 0x85, 0xa1, 0x20, 0xb7, 0x00, + 0xc9, 0x29, 0xf0, 0x06, 0x20, 0xbe, 0xde, 0x20, + 0xf8, 0xe6, 0x20, 0xb9, 0xe6, 0xca, 0x8a, 0x48, + 0x18, 0xa2, 0x00, 0xf1, 0x8c, 0xb0, 0xb8, 0x49, + 0xff, 0xc5, 0xa1, 0x90, 0xb3, 0xa5, 0xa1, 0xb0, + 0xaf, 0x20, 0xb8, 0xde, 0x68, 0xa8, 0x68, 0x85, + 0x91, 0x68, 0x68, 0x68, 0xaa, 0x68, 0x85, 0x8c, + 0x68, 0x85, 0x8d, 0xa5, 0x91, 0x48, 0x98, 0x48, + 0xa0, 0x00, 0x8a, 0xf0, 0x1d, 0x60, 0x20, 0xdc, + 0xe6, 0x4c, 0x01, 0xe3, 0x20, 0xfd, 0xe5, 0xa2, + 0x00, 0x86, 0x11, 0xa8, 0x60, 0x20, 0xdc, 0xe6, + 0xf0, 0x08, 0xa0, 0x00, 0xb1, 0x5e, 0xa8, 0x4c, + 0x01, 0xe3, 0x4c, 0x99, 0xe1, 0x20, 0xb1, 0x00, + 0x20, 0x67, 0xdd, 0x20, 0x08, 0xe1, 0xa6, 0xa0, + 0xd0, 0xf0, 0xa6, 0xa1, 0x4c, 0xb7, 0x00, 0x20, + 0xdc, 0xe6, 0xd0, 0x03, 0x4c, 0x4e, 0xe8, 0xa6, + 0xb8, 0xa4, 0xb9, 0x86, 0xad, 0x84, 0xae, 0xa6, + 0x5e, 0x86, 0xb8, 0x18, 0x65, 0x5e, 0x85, 0x60, + 0xa6, 0x5f, 0x86, 0xb9, 0x90, 0x01, 0xe8, 0x86, + 0x61, 0xa0, 0x00, 0xb1, 0x60, 0x48, 0xa9, 0x00, + 0x91, 0x60, 0x20, 0xb7, 0x00, 0x20, 0x4a, 0xec, + 0x68, 0xa0, 0x00, 0x91, 0x60, 0xa6, 0xad, 0xa4, + 0xae, 0x86, 0xb8, 0x84, 0xb9, 0x60, 0x20, 0x67, + 0xdd, 0x20, 0x52, 0xe7, 0x20, 0xbe, 0xde, 0x4c, + 0xf8, 0xe6, 0xa5, 0x9d, 0xc9, 0x91, 0xb0, 0x9a, + 0x20, 0xf2, 0xeb, 0xa5, 0xa0, 0xa4, 0xa1, 0x84, + 0x50, 0x85, 0x51, 0x60, 0xa5, 0x50, 0x48, 0xa5, + 0x51, 0x48, 0x20, 0x52, 0xe7, 0xa0, 0x00, 0xb1, + 0x50, 0xa8, 0x68, 0x85, 0x51, 0x68, 0x85, 0x50, + 0x4c, 0x01, 0xe3, 0x20, 0x46, 0xe7, 0x8a, 0xa0, + 0x00, 0x91, 0x50, 0x60, 0x20, 0x46, 0xe7, 0x86, + 0x85, 0xa2, 0x00, 0x20, 0xb7, 0x00, 0xf0, 0x03, + 0x20, 0x4c, 0xe7, 0x86, 0x86, 0xa0, 0x00, 0xb1, + 0x50, 0x45, 0x86, 0x25, 0x85, 0xf0, 0xf8, 0x60, + 0xa9, 0x64, 0xa0, 0xee, 0x4c, 0xbe, 0xe7, 0x20, + 0xe3, 0xe9, 0xa5, 0xa2, 0x49, 0xff, 0x85, 0xa2, + 0x45, 0xaa, 0x85, 0xab, 0xa5, 0x9d, 0x4c, 0xc1, + 0xe7, 0x20, 0xf0, 0xe8, 0x90, 0x3c, 0x20, 0xe3, + 0xe9, 0xd0, 0x03, 0x4c, 0x53, 0xeb, 0xa6, 0xac, + 0x86, 0x92, 0xa2, 0xa5, 0xa5, 0xa5, 0xa8, 0xf0, + 0xce, 0x38, 0xe5, 0x9d, 0xf0, 0x24, 0x90, 0x12, + 0x84, 0x9d, 0xa4, 0xaa, 0x84, 0xa2, 0x49, 0xff, + 0x69, 0x00, 0xa0, 0x00, 0x84, 0x92, 0xa2, 0x9d, + 0xd0, 0x04, 0xa0, 0x00, 0x84, 0xac, 0xc9, 0xf9, + 0x30, 0xc7, 0xa8, 0xa5, 0xac, 0x56, 0x01, 0x20, + 0x07, 0xe9, 0x24, 0xab, 0x10, 0x57, 0xa0, 0x9d, + 0xe0, 0xa5, 0xf0, 0x02, 0xa0, 0xa5, 0x38, 0x49, + 0xff, 0x65, 0x92, 0x85, 0xac, 0xb9, 0x04, 0x00, + 0xf5, 0x04, 0x85, 0xa1, 0xb9, 0x03, 0x00, 0xf5, + 0x03, 0x85, 0xa0, 0xb9, 0x02, 0x00, 0xf5, 0x02, + 0x85, 0x9f, 0xb9, 0x01, 0x00, 0xf5, 0x01, 0x85, + 0x9e, 0xb0, 0x03, 0x20, 0x9e, 0xe8, 0xa0, 0x00, + 0x98, 0x18, 0xa6, 0x9e, 0xd0, 0x4a, 0xa6, 0x9f, + 0x86, 0x9e, 0xa6, 0xa0, 0x86, 0x9f, 0xa6, 0xa1, + 0x86, 0xa0, 0xa6, 0xac, 0x86, 0xa1, 0x84, 0xac, + 0x69, 0x08, 0xc9, 0x20, 0xd0, 0xe4, 0xa9, 0x00, + 0x85, 0x9d, 0x85, 0xa2, 0x60, 0x65, 0x92, 0x85, + 0xac, 0xa5, 0xa1, 0x65, 0xa9, 0x85, 0xa1, 0xa5, + 0xa0, 0x65, 0xa8, 0x85, 0xa0, 0xa5, 0x9f, 0x65, + 0xa7, 0x85, 0x9f, 0xa5, 0x9e, 0x65, 0xa6, 0x85, + 0x9e, 0x4c, 0x8d, 0xe8, 0x69, 0x01, 0x06, 0xac, + 0x26, 0xa1, 0x26, 0xa0, 0x26, 0x9f, 0x26, 0x9e, + 0x10, 0xf2, 0x38, 0xe5, 0x9d, 0xb0, 0xc7, 0x49, + 0xff, 0x69, 0x01, 0x85, 0x9d, 0x90, 0x0e, 0xe6, + 0x9d, 0xf0, 0x42, 0x66, 0x9e, 0x66, 0x9f, 0x66, + 0xa0, 0x66, 0xa1, 0x66, 0xac, 0x60, 0xa5, 0xa2, + 0x49, 0xff, 0x85, 0xa2, 0xa5, 0x9e, 0x49, 0xff, + 0x85, 0x9e, 0xa5, 0x9f, 0x49, 0xff, 0x85, 0x9f, + 0xa5, 0xa0, 0x49, 0xff, 0x85, 0xa0, 0xa5, 0xa1, + 0x49, 0xff, 0x85, 0xa1, 0xa5, 0xac, 0x49, 0xff, + 0x85, 0xac, 0xe6, 0xac, 0xd0, 0x0e, 0xe6, 0xa1, + 0xd0, 0x0a, 0xe6, 0xa0, 0xd0, 0x06, 0xe6, 0x9f, + 0xd0, 0x02, 0xe6, 0x9e, 0x60, 0xa2, 0x45, 0x4c, + 0x12, 0xd4, 0xa2, 0x61, 0xb4, 0x04, 0x84, 0xac, + 0xb4, 0x03, 0x94, 0x04, 0xb4, 0x02, 0x94, 0x03, + 0xb4, 0x01, 0x94, 0x02, 0xa4, 0xa4, 0x94, 0x01, + 0x69, 0x08, 0x30, 0xe8, 0xf0, 0xe6, 0xe9, 0x08, + 0xa8, 0xa5, 0xac, 0xb0, 0x14, 0x16, 0x01, 0x90, + 0x02, 0xf6, 0x01, 0x76, 0x01, 0x76, 0x01, 0x76, + 0x02, 0x76, 0x03, 0x76, 0x04, 0x6a, 0xc8, 0xd0, + 0xec, 0x18, 0x60, 0x81, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x7f, 0x5e, 0x56, 0xcb, 0x79, 0x80, 0x13, + 0x9b, 0x0b, 0x64, 0x80, 0x76, 0x38, 0x93, 0x16, + 0x82, 0x38, 0xaa, 0x3b, 0x20, 0x80, 0x35, 0x04, + 0xf3, 0x34, 0x81, 0x35, 0x04, 0xf3, 0x34, 0x80, + 0x80, 0x00, 0x00, 0x00, 0x80, 0x31, 0x72, 0x17, + 0xf8, 0x20, 0x82, 0xeb, 0xf0, 0x02, 0x10, 0x03, + 0x4c, 0x99, 0xe1, 0xa5, 0x9d, 0xe9, 0x7f, 0x48, + 0xa9, 0x80, 0x85, 0x9d, 0xa9, 0x2d, 0xa0, 0xe9, + 0x20, 0xbe, 0xe7, 0xa9, 0x32, 0xa0, 0xe9, 0x20, + 0x66, 0xea, 0xa9, 0x13, 0xa0, 0xe9, 0x20, 0xa7, + 0xe7, 0xa9, 0x18, 0xa0, 0xe9, 0x20, 0x5c, 0xef, + 0xa9, 0x37, 0xa0, 0xe9, 0x20, 0xbe, 0xe7, 0x68, + 0x20, 0xd5, 0xec, 0xa9, 0x3c, 0xa0, 0xe9, 0x20, + 0xe3, 0xe9, 0xd0, 0x03, 0x4c, 0xe2, 0xe9, 0x20, + 0x0e, 0xea, 0xa9, 0x00, 0x85, 0x62, 0x85, 0x63, + 0x85, 0x64, 0x85, 0x65, 0xa5, 0xac, 0x20, 0xb0, + 0xe9, 0xa5, 0xa1, 0x20, 0xb0, 0xe9, 0xa5, 0xa0, + 0x20, 0xb0, 0xe9, 0xa5, 0x9f, 0x20, 0xb0, 0xe9, + 0xa5, 0x9e, 0x20, 0xb5, 0xe9, 0x4c, 0xe6, 0xea, + 0xd0, 0x03, 0x4c, 0xda, 0xe8, 0x4a, 0x09, 0x80, + 0xa8, 0x90, 0x19, 0x18, 0xa5, 0x65, 0x65, 0xa9, + 0x85, 0x65, 0xa5, 0x64, 0x65, 0xa8, 0x85, 0x64, + 0xa5, 0x63, 0x65, 0xa7, 0x85, 0x63, 0xa5, 0x62, + 0x65, 0xa6, 0x85, 0x62, 0x66, 0x62, 0x66, 0x63, + 0x66, 0x64, 0x66, 0x65, 0x66, 0xac, 0x98, 0x4a, + 0xd0, 0xd6, 0x60, 0x85, 0x5e, 0x84, 0x5f, 0xa0, + 0x04, 0xb1, 0x5e, 0x85, 0xa9, 0x88, 0xb1, 0x5e, + 0x85, 0xa8, 0x88, 0xb1, 0x5e, 0x85, 0xa7, 0x88, + 0xb1, 0x5e, 0x85, 0xaa, 0x45, 0xa2, 0x85, 0xab, + 0xa5, 0xaa, 0x09, 0x80, 0x85, 0xa6, 0x88, 0xb1, + 0x5e, 0x85, 0xa5, 0xa5, 0x9d, 0x60, 0xa5, 0xa5, + 0xf0, 0x1f, 0x18, 0x65, 0x9d, 0x90, 0x04, 0x30, + 0x1d, 0x18, 0x2c, 0x10, 0x14, 0x69, 0x80, 0x85, + 0x9d, 0xd0, 0x03, 0x4c, 0x52, 0xe8, 0xa5, 0xab, + 0x85, 0xa2, 0x60, 0xa5, 0xa2, 0x49, 0xff, 0x30, + 0x05, 0x68, 0x68, 0x4c, 0x4e, 0xe8, 0x4c, 0xd5, + 0xe8, 0x20, 0x63, 0xeb, 0xaa, 0xf0, 0x10, 0x18, + 0x69, 0x02, 0xb0, 0xf2, 0xa2, 0x00, 0x86, 0xab, + 0x20, 0xce, 0xe7, 0xe6, 0x9d, 0xf0, 0xe7, 0x60, + 0x84, 0x20, 0x00, 0x00, 0x00, 0x20, 0x63, 0xeb, + 0xa9, 0x50, 0xa0, 0xea, 0xa2, 0x00, 0x86, 0xab, + 0x20, 0xf9, 0xea, 0x4c, 0x69, 0xea, 0x20, 0xe3, + 0xe9, 0xf0, 0x76, 0x20, 0x72, 0xeb, 0xa9, 0x00, + 0x38, 0xe5, 0x9d, 0x85, 0x9d, 0x20, 0x0e, 0xea, + 0xe6, 0x9d, 0xf0, 0xba, 0xa2, 0xfc, 0xa9, 0x01, + 0xa4, 0xa6, 0xc4, 0x9e, 0xd0, 0x10, 0xa4, 0xa7, + 0xc4, 0x9f, 0xd0, 0x0a, 0xa4, 0xa8, 0xc4, 0xa0, + 0xd0, 0x04, 0xa4, 0xa9, 0xc4, 0xa1, 0x08, 0x2a, + 0x90, 0x09, 0xe8, 0x95, 0x65, 0xf0, 0x32, 0x10, + 0x34, 0xa9, 0x01, 0x28, 0xb0, 0x0e, 0x06, 0xa9, + 0x26, 0xa8, 0x26, 0xa7, 0x26, 0xa6, 0xb0, 0xe6, + 0x30, 0xce, 0x10, 0xe2, 0xa8, 0xa5, 0xa9, 0xe5, + 0xa1, 0x85, 0xa9, 0xa5, 0xa8, 0xe5, 0xa0, 0x85, + 0xa8, 0xa5, 0xa7, 0xe5, 0x9f, 0x85, 0xa7, 0xa5, + 0xa6, 0xe5, 0x9e, 0x85, 0xa6, 0x98, 0x4c, 0xa6, + 0xea, 0xa9, 0x40, 0xd0, 0xce, 0x0a, 0x0a, 0x0a, + 0x0a, 0x0a, 0x0a, 0x85, 0xac, 0x28, 0x4c, 0xe6, + 0xea, 0xa2, 0x85, 0x4c, 0x12, 0xd4, 0xa5, 0x62, + 0x85, 0x9e, 0xa5, 0x63, 0x85, 0x9f, 0xa5, 0x64, + 0x85, 0xa0, 0xa5, 0x65, 0x85, 0xa1, 0x4c, 0x2e, + 0xe8, 0x85, 0x5e, 0x84, 0x5f, 0xa0, 0x04, 0xb1, + 0x5e, 0x85, 0xa1, 0x88, 0xb1, 0x5e, 0x85, 0xa0, + 0x88, 0xb1, 0x5e, 0x85, 0x9f, 0x88, 0xb1, 0x5e, + 0x85, 0xa2, 0x09, 0x80, 0x85, 0x9e, 0x88, 0xb1, + 0x5e, 0x85, 0x9d, 0x84, 0xac, 0x60, 0xa2, 0x98, + 0x2c, 0xa2, 0x93, 0xa0, 0x00, 0xf0, 0x04, 0xa6, + 0x85, 0xa4, 0x86, 0x20, 0x72, 0xeb, 0x86, 0x5e, + 0x84, 0x5f, 0xa0, 0x04, 0xa5, 0xa1, 0x91, 0x5e, + 0x88, 0xa5, 0xa0, 0x91, 0x5e, 0x88, 0xa5, 0x9f, + 0x91, 0x5e, 0x88, 0xa5, 0xa2, 0x09, 0x7f, 0x25, + 0x9e, 0x91, 0x5e, 0x88, 0xa5, 0x9d, 0x91, 0x5e, + 0x84, 0xac, 0x60, 0xa5, 0xaa, 0x85, 0xa2, 0xa2, + 0x05, 0xb5, 0xa4, 0x95, 0x9c, 0xca, 0xd0, 0xf9, + 0x86, 0xac, 0x60, 0x20, 0x72, 0xeb, 0xa2, 0x06, + 0xb5, 0x9c, 0x95, 0xa4, 0xca, 0xd0, 0xf9, 0x86, + 0xac, 0x60, 0xa5, 0x9d, 0xf0, 0xfb, 0x06, 0xac, + 0x90, 0xf7, 0x20, 0xc6, 0xe8, 0xd0, 0xf2, 0x4c, + 0x8f, 0xe8, 0xa5, 0x9d, 0xf0, 0x09, 0xa5, 0xa2, + 0x2a, 0xa9, 0xff, 0xb0, 0x02, 0xa9, 0x01, 0x60, + 0x20, 0x82, 0xeb, 0x85, 0x9e, 0xa9, 0x00, 0x85, + 0x9f, 0xa2, 0x88, 0xa5, 0x9e, 0x49, 0xff, 0x2a, + 0xa9, 0x00, 0x85, 0xa1, 0x85, 0xa0, 0x86, 0x9d, + 0x85, 0xac, 0x85, 0xa2, 0x4c, 0x29, 0xe8, 0x46, + 0xa2, 0x60, 0x85, 0x60, 0x84, 0x61, 0xa0, 0x00, + 0xb1, 0x60, 0xc8, 0xaa, 0xf0, 0xc4, 0xb1, 0x60, + 0x45, 0xa2, 0x30, 0xc2, 0xe4, 0x9d, 0xd0, 0x21, + 0xb1, 0x60, 0x09, 0x80, 0xc5, 0x9e, 0xd0, 0x19, + 0xc8, 0xb1, 0x60, 0xc5, 0x9f, 0xd0, 0x12, 0xc8, + 0xb1, 0x60, 0xc5, 0xa0, 0xd0, 0x0b, 0xc8, 0xa9, + 0x7f, 0xc5, 0xac, 0xb1, 0x60, 0xe5, 0xa1, 0xf0, + 0x28, 0xa5, 0xa2, 0x90, 0x02, 0x49, 0xff, 0x4c, + 0x88, 0xeb, 0xa5, 0x9d, 0xf0, 0x4a, 0x38, 0xe9, + 0xa0, 0x24, 0xa2, 0x10, 0x09, 0xaa, 0xa9, 0xff, + 0x85, 0xa4, 0x20, 0xa4, 0xe8, 0x8a, 0xa2, 0x9d, + 0xc9, 0xf9, 0x10, 0x06, 0x20, 0xf0, 0xe8, 0x84, + 0xa4, 0x60, 0xa8, 0xa5, 0xa2, 0x29, 0x80, 0x46, + 0x9e, 0x05, 0x9e, 0x85, 0x9e, 0x20, 0x07, 0xe9, + 0x84, 0xa4, 0x60, 0xa5, 0x9d, 0xc9, 0xa0, 0xb0, + 0x20, 0x20, 0xf2, 0xeb, 0x84, 0xac, 0xa5, 0xa2, + 0x84, 0xa2, 0x49, 0x80, 0x2a, 0xa9, 0xa0, 0x85, + 0x9d, 0xa5, 0xa1, 0x85, 0x0d, 0x4c, 0x29, 0xe8, + 0x85, 0x9e, 0x85, 0x9f, 0x85, 0xa0, 0x85, 0xa1, + 0xa8, 0x60, 0xa0, 0x00, 0xa2, 0x0a, 0x94, 0x99, + 0xca, 0x10, 0xfb, 0x90, 0x0f, 0xc9, 0x2d, 0xd0, + 0x04, 0x86, 0xa3, 0xf0, 0x04, 0xc9, 0x2b, 0xd0, + 0x05, 0x20, 0xb1, 0x00, 0x90, 0x5b, 0xc9, 0x2e, + 0xf0, 0x2e, 0xc9, 0x45, 0xd0, 0x30, 0x20, 0xb1, + 0x00, 0x90, 0x17, 0xc9, 0xc9, 0xf0, 0x0e, 0xc9, + 0x2d, 0xf0, 0x0a, 0xc9, 0xc8, 0xf0, 0x08, 0xc9, + 0x2b, 0xf0, 0x04, 0xd0, 0x07, 0x66, 0x9c, 0x20, + 0xb1, 0x00, 0x90, 0x5c, 0x24, 0x9c, 0x10, 0x0e, + 0xa9, 0x00, 0x38, 0xe5, 0x9a, 0x4c, 0xa0, 0xec, + 0x66, 0x9b, 0x24, 0x9b, 0x50, 0xc3, 0xa5, 0x9a, + 0x38, 0xe5, 0x99, 0x85, 0x9a, 0xf0, 0x12, 0x10, + 0x09, 0x20, 0x55, 0xea, 0xe6, 0x9a, 0xd0, 0xf9, + 0xf0, 0x07, 0x20, 0x39, 0xea, 0xc6, 0x9a, 0xd0, + 0xf9, 0xa5, 0xa3, 0x30, 0x01, 0x60, 0x4c, 0xd0, + 0xee, 0x48, 0x24, 0x9b, 0x10, 0x02, 0xe6, 0x99, + 0x20, 0x39, 0xea, 0x68, 0x38, 0xe9, 0x30, 0x20, + 0xd5, 0xec, 0x4c, 0x61, 0xec, 0x48, 0x20, 0x63, + 0xeb, 0x68, 0x20, 0x93, 0xeb, 0xa5, 0xaa, 0x45, + 0xa2, 0x85, 0xab, 0xa6, 0x9d, 0x4c, 0xc1, 0xe7, + 0xa5, 0x9a, 0xc9, 0x0a, 0x90, 0x09, 0xa9, 0x64, + 0x24, 0x9c, 0x30, 0x11, 0x4c, 0xd5, 0xe8, 0x0a, + 0x0a, 0x18, 0x65, 0x9a, 0x0a, 0x18, 0xa0, 0x00, + 0x71, 0xb8, 0x38, 0xe9, 0x30, 0x85, 0x9a, 0x4c, + 0x87, 0xec, 0x9b, 0x3e, 0xbc, 0x1f, 0xfd, 0x9e, + 0x6e, 0x6b, 0x27, 0xfd, 0x9e, 0x6e, 0x6b, 0x28, + 0x00, 0xa9, 0x58, 0xa0, 0xd3, 0x20, 0x31, 0xed, + 0xa5, 0x76, 0xa6, 0x75, 0x85, 0x9e, 0x86, 0x9f, + 0xa2, 0x90, 0x38, 0x20, 0xa0, 0xeb, 0x20, 0x34, + 0xed, 0x4c, 0x3a, 0xdb, 0xa0, 0x01, 0xa9, 0x2d, + 0x88, 0x24, 0xa2, 0x10, 0x04, 0xc8, 0x99, 0xff, + 0x00, 0x85, 0xa2, 0x84, 0xad, 0xc8, 0xa9, 0x30, + 0xa6, 0x9d, 0xd0, 0x03, 0x4c, 0x57, 0xee, 0xa9, + 0x00, 0xe0, 0x80, 0xf0, 0x02, 0xb0, 0x09, 0xa9, + 0x14, 0xa0, 0xed, 0x20, 0x7f, 0xe9, 0xa9, 0xf7, + 0x85, 0x99, 0xa9, 0x0f, 0xa0, 0xed, 0x20, 0xb2, + 0xeb, 0xf0, 0x1e, 0x10, 0x12, 0xa9, 0x0a, 0xa0, + 0xed, 0x20, 0xb2, 0xeb, 0xf0, 0x02, 0x10, 0x0e, + 0x20, 0x39, 0xea, 0xc6, 0x99, 0xd0, 0xee, 0x20, + 0x55, 0xea, 0xe6, 0x99, 0xd0, 0xdc, 0x20, 0xa0, + 0xe7, 0x20, 0xf2, 0xeb, 0xa2, 0x01, 0xa5, 0x99, + 0x18, 0x69, 0x0a, 0x30, 0x09, 0xc9, 0x0b, 0xb0, + 0x06, 0x69, 0xff, 0xaa, 0xa9, 0x02, 0x38, 0xe9, + 0x02, 0x85, 0x9a, 0x86, 0x99, 0x8a, 0xf0, 0x02, + 0x10, 0x13, 0xa4, 0xad, 0xa9, 0x2e, 0xc8, 0x99, + 0xff, 0x00, 0x8a, 0xf0, 0x06, 0xa9, 0x30, 0xc8, + 0x99, 0xff, 0x00, 0x84, 0xad, 0xa0, 0x00, 0xa2, + 0x80, 0xa5, 0xa1, 0x18, 0x79, 0x6c, 0xee, 0x85, + 0xa1, 0xa5, 0xa0, 0x79, 0x6b, 0xee, 0x85, 0xa0, + 0xa5, 0x9f, 0x79, 0x6a, 0xee, 0x85, 0x9f, 0xa5, + 0x9e, 0x79, 0x69, 0xee, 0x85, 0x9e, 0xe8, 0xb0, + 0x04, 0x10, 0xde, 0x30, 0x02, 0x30, 0xda, 0x8a, + 0x90, 0x04, 0x49, 0xff, 0x69, 0x0a, 0x69, 0x2f, + 0xc8, 0xc8, 0xc8, 0xc8, 0x84, 0x83, 0xa4, 0xad, + 0xc8, 0xaa, 0x29, 0x7f, 0x99, 0xff, 0x00, 0xc6, + 0x99, 0xd0, 0x06, 0xa9, 0x2e, 0xc8, 0x99, 0xff, + 0x00, 0x84, 0xad, 0xa4, 0x83, 0x8a, 0x49, 0xff, + 0x29, 0x80, 0xaa, 0xc0, 0x24, 0xd0, 0xaa, 0xa4, + 0xad, 0xb9, 0xff, 0x00, 0x88, 0xc9, 0x30, 0xf0, + 0xf8, 0xc9, 0x2e, 0xf0, 0x01, 0xc8, 0xa9, 0x2b, + 0xa6, 0x9a, 0xf0, 0x2e, 0x10, 0x08, 0xa9, 0x00, + 0x38, 0xe5, 0x9a, 0xaa, 0xa9, 0x2d, 0x99, 0x01, + 0x01, 0xa9, 0x45, 0x99, 0x00, 0x01, 0x8a, 0xa2, + 0x2f, 0x38, 0xe8, 0xe9, 0x0a, 0xb0, 0xfb, 0x69, + 0x3a, 0x99, 0x03, 0x01, 0x8a, 0x99, 0x02, 0x01, + 0xa9, 0x00, 0x99, 0x04, 0x01, 0xf0, 0x08, 0x99, + 0xff, 0x00, 0xa9, 0x00, 0x99, 0x00, 0x01, 0xa9, + 0x00, 0xa0, 0x01, 0x60, 0x80, 0x00, 0x00, 0x00, + 0x00, 0xfa, 0x0a, 0x1f, 0x00, 0x00, 0x98, 0x96, + 0x80, 0xff, 0xf0, 0xbd, 0xc0, 0x00, 0x01, 0x86, + 0xa0, 0xff, 0xff, 0xd8, 0xf0, 0x00, 0x00, 0x03, + 0xe8, 0xff, 0xff, 0xff, 0x9c, 0x00, 0x00, 0x00, + 0x0a, 0xff, 0xff, 0xff, 0xff, 0x20, 0x63, 0xeb, + 0xa9, 0x64, 0xa0, 0xee, 0x20, 0xf9, 0xea, 0xf0, + 0x70, 0xa5, 0xa5, 0xd0, 0x03, 0x4c, 0x50, 0xe8, + 0xa2, 0x8a, 0xa0, 0x00, 0x20, 0x2b, 0xeb, 0xa5, + 0xaa, 0x10, 0x0f, 0x20, 0x23, 0xec, 0xa9, 0x8a, + 0xa0, 0x00, 0x20, 0xb2, 0xeb, 0xd0, 0x03, 0x98, + 0xa4, 0x0d, 0x20, 0x55, 0xeb, 0x98, 0x48, 0x20, + 0x41, 0xe9, 0xa9, 0x8a, 0xa0, 0x00, 0x20, 0x7f, + 0xe9, 0x20, 0x09, 0xef, 0x68, 0x4a, 0x90, 0x0a, + 0xa5, 0x9d, 0xf0, 0x06, 0xa5, 0xa2, 0x49, 0xff, + 0x85, 0xa2, 0x60, 0x81, 0x38, 0xaa, 0x3b, 0x29, + 0x07, 0x71, 0x34, 0x58, 0x3e, 0x56, 0x74, 0x16, + 0x7e, 0xb3, 0x1b, 0x77, 0x2f, 0xee, 0xe3, 0x85, + 0x7a, 0x1d, 0x84, 0x1c, 0x2a, 0x7c, 0x63, 0x59, + 0x58, 0x0a, 0x7e, 0x75, 0xfd, 0xe7, 0xc6, 0x80, + 0x31, 0x72, 0x18, 0x10, 0x81, 0x00, 0x00, 0x00, + 0x00, 0xa9, 0xdb, 0xa0, 0xee, 0x20, 0x7f, 0xe9, + 0xa5, 0xac, 0x69, 0x50, 0x90, 0x03, 0x20, 0x7a, + 0xeb, 0x85, 0x92, 0x20, 0x66, 0xeb, 0xa5, 0x9d, + 0xc9, 0x88, 0x90, 0x03, 0x20, 0x2b, 0xea, 0x20, + 0x23, 0xec, 0xa5, 0x0d, 0x18, 0x69, 0x81, 0xf0, + 0xf3, 0x38, 0xe9, 0x01, 0x48, 0xa2, 0x05, 0xb5, + 0xa5, 0xb4, 0x9d, 0x95, 0x9d, 0x94, 0xa5, 0xca, + 0x10, 0xf5, 0xa5, 0x92, 0x85, 0xac, 0x20, 0xaa, + 0xe7, 0x20, 0xd0, 0xee, 0xa9, 0xe0, 0xa0, 0xee, + 0x20, 0x72, 0xef, 0xa9, 0x00, 0x85, 0xab, 0x68, + 0x20, 0x10, 0xea, 0x60, 0x85, 0xad, 0x84, 0xae, + 0x20, 0x21, 0xeb, 0xa9, 0x93, 0x20, 0x7f, 0xe9, + 0x20, 0x76, 0xef, 0xa9, 0x93, 0xa0, 0x00, 0x4c, + 0x7f, 0xe9, 0x85, 0xad, 0x84, 0xae, 0x20, 0x1e, + 0xeb, 0xb1, 0xad, 0x85, 0xa3, 0xa4, 0xad, 0xc8, + 0x98, 0xd0, 0x02, 0xe6, 0xae, 0x85, 0xad, 0xa4, + 0xae, 0x20, 0x7f, 0xe9, 0xa5, 0xad, 0xa4, 0xae, + 0x18, 0x69, 0x05, 0x90, 0x01, 0xc8, 0x85, 0xad, + 0x84, 0xae, 0x20, 0xbe, 0xe7, 0xa9, 0x98, 0xa0, + 0x00, 0xc6, 0xa3, 0xd0, 0xe4, 0x60, 0x98, 0x35, + 0x44, 0x7a, 0x68, 0x28, 0xb1, 0x46, 0x20, 0x82, + 0xeb, 0xaa, 0x30, 0x18, 0xa9, 0xc9, 0xa0, 0x00, + 0x20, 0xf9, 0xea, 0x8a, 0xf0, 0xe7, 0xa9, 0xa6, + 0xa0, 0xef, 0x20, 0x7f, 0xe9, 0xa9, 0xaa, 0xa0, + 0xef, 0x20, 0xbe, 0xe7, 0xa6, 0xa1, 0xa5, 0x9e, + 0x85, 0xa1, 0x86, 0x9e, 0xa9, 0x00, 0x85, 0xa2, + 0xa5, 0x9d, 0x85, 0xac, 0xa9, 0x80, 0x85, 0x9d, + 0x20, 0x2e, 0xe8, 0xa2, 0xc9, 0xa0, 0x00, 0x4c, + 0x2b, 0xeb, 0xa9, 0x66, 0xa0, 0xf0, 0x20, 0xbe, + 0xe7, 0x20, 0x63, 0xeb, 0xa9, 0x6b, 0xa0, 0xf0, + 0xa6, 0xaa, 0x20, 0x5e, 0xea, 0x20, 0x63, 0xeb, + 0x20, 0x23, 0xec, 0xa9, 0x00, 0x85, 0xab, 0x20, + 0xaa, 0xe7, 0xa9, 0x70, 0xa0, 0xf0, 0x20, 0xa7, + 0xe7, 0xa5, 0xa2, 0x48, 0x10, 0x0d, 0x20, 0xa0, + 0xe7, 0xa5, 0xa2, 0x30, 0x09, 0xa5, 0x16, 0x49, + 0xff, 0x85, 0x16, 0x20, 0xd0, 0xee, 0xa9, 0x70, + 0xa0, 0xf0, 0x20, 0xbe, 0xe7, 0x68, 0x10, 0x03, + 0x20, 0xd0, 0xee, 0xa9, 0x75, 0xa0, 0xf0, 0x4c, + 0x5c, 0xef, 0x20, 0x21, 0xeb, 0xa9, 0x00, 0x85, + 0x16, 0x20, 0xf1, 0xef, 0xa2, 0x8a, 0xa0, 0x00, + 0x20, 0xe7, 0xef, 0xa9, 0x93, 0xa0, 0x00, 0x20, + 0xf9, 0xea, 0xa9, 0x00, 0x85, 0xa2, 0xa5, 0x16, + 0x20, 0x62, 0xf0, 0xa9, 0x8a, 0xa0, 0x00, 0x4c, + 0x66, 0xea, 0x48, 0x4c, 0x23, 0xf0, 0x81, 0x49, + 0x0f, 0xda, 0xa2, 0x83, 0x49, 0x0f, 0xda, 0xa2, + 0x7f, 0x00, 0x00, 0x00, 0x00, 0x05, 0x84, 0xe6, + 0x1a, 0x2d, 0x1b, 0x86, 0x28, 0x07, 0xfb, 0xf8, + 0x87, 0x99, 0x68, 0x89, 0x01, 0x87, 0x23, 0x35, + 0xdf, 0xe1, 0x86, 0xa5, 0x5d, 0xe7, 0x28, 0x83, + 0x49, 0x0f, 0xda, 0xa2, 0xa6, 0xd3, 0xc1, 0xc8, + 0xd4, 0xc8, 0xd5, 0xc4, 0xce, 0xca, 0xa5, 0xa2, + 0x48, 0x10, 0x03, 0x20, 0xd0, 0xee, 0xa5, 0x9d, + 0x48, 0xc9, 0x81, 0x90, 0x07, 0xa9, 0x13, 0xa0, + 0xe9, 0x20, 0x66, 0xea, 0xa9, 0xce, 0xa0, 0xf0, + 0x20, 0x5c, 0xef, 0x68, 0xc9, 0x81, 0x90, 0x07, + 0xa9, 0x66, 0xa0, 0xf0, 0x20, 0xa7, 0xe7, 0x68, + 0x10, 0x03, 0x4c, 0xd0, 0xee, 0x60, 0x0b, 0x76, + 0xb3, 0x83, 0xbd, 0xd3, 0x79, 0x1e, 0xf4, 0xa6, + 0xf5, 0x7b, 0x83, 0xfc, 0xb0, 0x10, 0x7c, 0x0c, + 0x1f, 0x67, 0xca, 0x7c, 0xde, 0x53, 0xcb, 0xc1, + 0x7d, 0x14, 0x64, 0x70, 0x4c, 0x7d, 0xb7, 0xea, + 0x51, 0x7a, 0x7d, 0x63, 0x30, 0x88, 0x7e, 0x7e, + 0x92, 0x44, 0x99, 0x3a, 0x7e, 0x4c, 0xcc, 0x91, + 0xc7, 0x7f, 0xaa, 0xaa, 0xaa, 0x13, 0x81, 0x00, + 0x00, 0x00, 0x00, 0xe6, 0xb8, 0xd0, 0x02, 0xe6, + 0xb9, 0xad, 0x60, 0xea, 0xc9, 0x3a, 0xb0, 0x0a, + 0xc9, 0x20, 0xf0, 0xef, 0x38, 0xe9, 0x30, 0x38, + 0xe9, 0xd0, 0x60, 0x80, 0x4f, 0xc7, 0x52, 0x58, + 0xa2, 0xff, 0x86, 0x76, 0xa2, 0xfb, 0x9a, 0xa9, + 0x28, 0xa0, 0xf1, 0x85, 0x01, 0x84, 0x02, 0x85, + 0x04, 0x84, 0x05, 0x20, 0x73, 0xf2, 0xa9, 0x4c, + 0x85, 0x00, 0x85, 0x03, 0x85, 0x90, 0x85, 0x0a, + 0xa9, 0x99, 0xa0, 0xe1, 0x85, 0x0b, 0x84, 0x0c, + 0xa2, 0x1c, 0xbd, 0x0a, 0xf1, 0x95, 0xb0, 0x86, + 0xf1, 0xca, 0xd0, 0xf6, 0x86, 0xf2, 0x8a, 0x85, + 0xa4, 0x85, 0x54, 0x48, 0xa9, 0x03, 0x85, 0x8f, + 0x20, 0xfb, 0xda, 0xa9, 0x01, 0x8d, 0xfd, 0x01, + 0x8d, 0xfc, 0x01, 0xa2, 0x55, 0x86, 0x52, 0xa9, + 0x00, 0xa0, 0x08, 0x85, 0x50, 0x84, 0x51, 0xa0, + 0x00, 0xe6, 0x51, 0xb1, 0x50, 0x49, 0xff, 0x91, + 0x50, 0xd1, 0x50, 0xd0, 0x08, 0x49, 0xff, 0x91, + 0x50, 0xd1, 0x50, 0xf0, 0xec, 0xa4, 0x50, 0xa5, + 0x51, 0x29, 0xf0, 0x84, 0x73, 0x85, 0x74, 0x84, + 0x6f, 0x85, 0x70, 0xa2, 0x00, 0xa0, 0x08, 0x86, + 0x67, 0x84, 0x68, 0xa0, 0x00, 0x84, 0xd6, 0x98, + 0x91, 0x67, 0xe6, 0x67, 0xd0, 0x02, 0xe6, 0x68, + 0xa5, 0x67, 0xa4, 0x68, 0x20, 0xe3, 0xd3, 0x20, + 0x4b, 0xd6, 0xa9, 0x3a, 0xa0, 0xdb, 0x85, 0x04, + 0x84, 0x05, 0xa9, 0x3c, 0xa0, 0xd4, 0x85, 0x01, + 0x84, 0x02, 0x6c, 0x01, 0x00, 0x20, 0x67, 0xdd, + 0x20, 0x52, 0xe7, 0x6c, 0x50, 0x00, 0x20, 0xf8, + 0xe6, 0x8a, 0x4c, 0x8b, 0xfe, 0x20, 0xf8, 0xe6, + 0x8a, 0x4c, 0x95, 0xfe, 0x20, 0xf8, 0xe6, 0xe0, + 0x30, 0xb0, 0x13, 0x86, 0xf0, 0xa9, 0x2c, 0x20, + 0xc0, 0xde, 0x20, 0xf8, 0xe6, 0xe0, 0x30, 0xb0, + 0x05, 0x86, 0x2c, 0x86, 0x2d, 0x60, 0x4c, 0x99, + 0xe1, 0x20, 0xec, 0xf1, 0xe4, 0xf0, 0xb0, 0x08, + 0xa5, 0xf0, 0x85, 0x2c, 0x85, 0x2d, 0x86, 0xf0, + 0xa9, 0xc5, 0x20, 0xc0, 0xde, 0x20, 0xf8, 0xe6, + 0xe0, 0x30, 0xb0, 0xe2, 0x60, 0x20, 0xec, 0xf1, + 0x8a, 0xa4, 0xf0, 0xc0, 0x28, 0xb0, 0xd7, 0x4c, + 0x00, 0xf8, 0x20, 0x09, 0xf2, 0x8a, 0xa4, 0x2c, + 0xc0, 0x28, 0xb0, 0xca, 0xa4, 0xf0, 0x4c, 0x19, + 0xf8, 0x20, 0x09, 0xf2, 0x8a, 0xa8, 0xc0, 0x28, + 0xb0, 0xbc, 0xa5, 0xf0, 0x4c, 0x28, 0xf8, 0x20, + 0xf8, 0xe6, 0x8a, 0x4c, 0x64, 0xf8, 0x20, 0xf8, + 0xe6, 0xca, 0x8a, 0xc9, 0x18, 0xb0, 0xa7, 0x4c, + 0x5b, 0xfb, 0x20, 0xf8, 0xe6, 0x8a, 0x49, 0xff, + 0xaa, 0xe8, 0x86, 0xf1, 0x60, 0x38, 0x90, 0x18, + 0x66, 0xf2, 0x60, 0xa9, 0xff, 0xd0, 0x02, 0xa9, + 0x3f, 0xa2, 0x00, 0x85, 0x32, 0x86, 0xf3, 0x60, + 0xa9, 0x7f, 0xa2, 0x40, 0xd0, 0xf5, 0x20, 0x67, + 0xdd, 0x20, 0x52, 0xe7, 0xa5, 0x50, 0xc5, 0x6d, + 0xa5, 0x51, 0xe5, 0x6e, 0xb0, 0x03, 0x4c, 0x10, + 0xd4, 0xa5, 0x50, 0x85, 0x73, 0x85, 0x6f, 0xa5, + 0x51, 0x85, 0x74, 0x85, 0x70, 0x60, 0x20, 0x67, + 0xdd, 0x20, 0x52, 0xe7, 0xa5, 0x50, 0xc5, 0x73, + 0xa5, 0x51, 0xe5, 0x74, 0xb0, 0xe0, 0xa5, 0x50, + 0xc5, 0x69, 0xa5, 0x51, 0xe5, 0x6a, 0x90, 0xd6, + 0xa5, 0x50, 0x85, 0x69, 0xa5, 0x51, 0x85, 0x6a, + 0x4c, 0x6c, 0xd6, 0xa9, 0xab, 0x20, 0xc0, 0xde, + 0xa5, 0xb8, 0x85, 0xf4, 0xa5, 0xb9, 0x85, 0xf5, + 0x38, 0x66, 0xd8, 0xa5, 0x75, 0x85, 0xf6, 0xa5, + 0x76, 0x85, 0xf7, 0x20, 0xa6, 0xd9, 0x4c, 0x98, + 0xd9, 0x86, 0xde, 0xa6, 0xf8, 0x86, 0xdf, 0xa5, + 0x75, 0x85, 0xda, 0xa5, 0x76, 0x85, 0xdb, 0xa5, + 0x79, 0x85, 0xdc, 0xa5, 0x7a, 0x85, 0xdd, 0xa5, + 0xf4, 0x85, 0xb8, 0xa5, 0xf5, 0x85, 0xb9, 0xa5, + 0xf6, 0x85, 0x75, 0xa5, 0xf7, 0x85, 0x76, 0x20, + 0xb7, 0x00, 0x20, 0x3e, 0xd9, 0x4c, 0xd2, 0xd7, + 0xa5, 0xda, 0x85, 0x75, 0xa5, 0xdb, 0x85, 0x76, + 0xa5, 0xdc, 0x85, 0xb8, 0xa5, 0xdd, 0x85, 0xb9, + 0xa6, 0xdf, 0x9a, 0x4c, 0xd2, 0xd7, 0x4c, 0xc9, + 0xde, 0xb0, 0xfb, 0xa6, 0xaf, 0x86, 0x69, 0xa6, + 0xb0, 0x86, 0x6a, 0x20, 0x0c, 0xda, 0x20, 0x1a, + 0xd6, 0xa5, 0x9b, 0x85, 0x60, 0xa5, 0x9c, 0x85, + 0x61, 0xa9, 0x2c, 0x20, 0xc0, 0xde, 0x20, 0x0c, + 0xda, 0xe6, 0x50, 0xd0, 0x02, 0xe6, 0x51, 0x20, + 0x1a, 0xd6, 0xa5, 0x9b, 0xc5, 0x60, 0xa5, 0x9c, + 0xe5, 0x61, 0xb0, 0x01, 0x60, 0xa0, 0x00, 0xb1, + 0x9b, 0x91, 0x60, 0xe6, 0x9b, 0xd0, 0x02, 0xe6, + 0x9c, 0xe6, 0x60, 0xd0, 0x02, 0xe6, 0x61, 0xa5, + 0x69, 0xc5, 0x9b, 0xa5, 0x6a, 0xe5, 0x9c, 0xb0, + 0xe6, 0xa6, 0x61, 0xa4, 0x60, 0xd0, 0x01, 0xca, + 0x88, 0x86, 0x6a, 0x84, 0x69, 0x4c, 0xf2, 0xd4, + 0xad, 0x56, 0xc0, 0xad, 0x53, 0xc0, 0x4c, 0x40, + 0xfb, 0xad, 0x54, 0xc0, 0x4c, 0x39, 0xfb, 0x20, + 0xd9, 0xf7, 0xa0, 0x03, 0xb1, 0x9b, 0xaa, 0x88, + 0xb1, 0x9b, 0xe9, 0x01, 0xb0, 0x01, 0xca, 0x85, + 0x50, 0x86, 0x51, 0x20, 0xcd, 0xfe, 0x20, 0xbc, + 0xf7, 0x4c, 0xcd, 0xfe, 0x20, 0xd9, 0xf7, 0x20, + 0xfd, 0xfe, 0xa0, 0x02, 0xb1, 0x9b, 0xc5, 0x50, + 0xc8, 0xb1, 0x9b, 0xe5, 0x51, 0xb0, 0x03, 0x4c, + 0x10, 0xd4, 0x20, 0xbc, 0xf7, 0x4c, 0xfd, 0xfe, + 0x2c, 0x55, 0xc0, 0x2c, 0x52, 0xc0, 0xa9, 0x40, + 0xd0, 0x08, 0xa9, 0x20, 0x2c, 0x54, 0xc0, 0x2c, + 0x53, 0xc0, 0x85, 0xe6, 0xad, 0x57, 0xc0, 0xad, + 0x50, 0xc0, 0xa9, 0x00, 0x85, 0x1c, 0xa5, 0xe6, + 0x85, 0x1b, 0xa0, 0x00, 0x84, 0x1a, 0xa5, 0x1c, + 0x91, 0x1a, 0x20, 0x7e, 0xf4, 0xc8, 0xd0, 0xf6, + 0xe6, 0x1b, 0xa5, 0x1b, 0x29, 0x1f, 0xd0, 0xee, + 0x60, 0x85, 0xe2, 0x86, 0xe0, 0x84, 0xe1, 0x48, + 0x29, 0xc0, 0x85, 0x26, 0x4a, 0x4a, 0x05, 0x26, + 0x85, 0x26, 0x68, 0x85, 0x27, 0x0a, 0x0a, 0x0a, + 0x26, 0x27, 0x0a, 0x26, 0x27, 0x0a, 0x66, 0x26, + 0xa5, 0x27, 0x29, 0x1f, 0x05, 0xe6, 0x85, 0x27, + 0x8a, 0xc0, 0x00, 0xf0, 0x05, 0xa0, 0x23, 0x69, + 0x04, 0xc8, 0xe9, 0x07, 0xb0, 0xfb, 0x84, 0xe5, + 0xaa, 0xbd, 0xb9, 0xf4, 0x85, 0x30, 0x98, 0x4a, + 0xa5, 0xe4, 0x85, 0x1c, 0xb0, 0x28, 0x60, 0x20, + 0x11, 0xf4, 0xa5, 0x1c, 0x51, 0x26, 0x25, 0x30, + 0x51, 0x26, 0x91, 0x26, 0x60, 0x10, 0x23, 0xa5, + 0x30, 0x4a, 0xb0, 0x05, 0x49, 0xc0, 0x85, 0x30, + 0x60, 0x88, 0x10, 0x02, 0xa0, 0x27, 0xa9, 0xc0, + 0x85, 0x30, 0x84, 0xe5, 0xa5, 0x1c, 0x0a, 0xc9, + 0xc0, 0x10, 0x06, 0xa5, 0x1c, 0x49, 0x7f, 0x85, + 0x1c, 0x60, 0xa5, 0x30, 0x0a, 0x49, 0x80, 0x30, + 0xdd, 0xa9, 0x81, 0xc8, 0xc0, 0x28, 0x90, 0xe0, + 0xa0, 0x00, 0xb0, 0xdc, 0x18, 0xa5, 0xd1, 0x29, + 0x04, 0xf0, 0x25, 0xa9, 0x7f, 0x25, 0x30, 0x31, + 0x26, 0xd0, 0x19, 0xe6, 0xea, 0xa9, 0x7f, 0x25, + 0x30, 0x10, 0x11, 0x18, 0xa5, 0xd1, 0x29, 0x04, + 0xf0, 0x0e, 0xb1, 0x26, 0x45, 0x1c, 0x25, 0x30, + 0xd0, 0x02, 0xe6, 0xea, 0x51, 0x26, 0x91, 0x26, + 0xa5, 0xd1, 0x65, 0xd3, 0x29, 0x03, 0xc9, 0x02, + 0x6a, 0xb0, 0x92, 0x30, 0x30, 0x18, 0xa5, 0x27, + 0x2c, 0xb9, 0xf5, 0xd0, 0x22, 0x06, 0x26, 0xb0, + 0x1a, 0x2c, 0xcd, 0xf4, 0xf0, 0x05, 0x69, 0x1f, + 0x38, 0xb0, 0x12, 0x69, 0x23, 0x48, 0xa5, 0x26, + 0x69, 0xb0, 0xb0, 0x02, 0x69, 0xf0, 0x85, 0x26, + 0x68, 0xb0, 0x02, 0x69, 0x1f, 0x66, 0x26, 0x69, + 0xfc, 0x85, 0x27, 0x60, 0x18, 0xa5, 0x27, 0x69, + 0x04, 0x2c, 0xb9, 0xf5, 0xd0, 0xf3, 0x06, 0x26, + 0x90, 0x18, 0x69, 0xe0, 0x18, 0x2c, 0x08, 0xf5, + 0xf0, 0x12, 0xa5, 0x26, 0x69, 0x50, 0x49, 0xf0, + 0xf0, 0x02, 0x49, 0xf0, 0x85, 0x26, 0xa5, 0xe6, + 0x90, 0x02, 0x69, 0xe0, 0x66, 0x26, 0x90, 0xd1, + 0x48, 0xa9, 0x00, 0x85, 0xe0, 0x85, 0xe1, 0x85, + 0xe2, 0x68, 0x48, 0x38, 0xe5, 0xe0, 0x48, 0x8a, + 0xe5, 0xe1, 0x85, 0xd3, 0xb0, 0x0a, 0x68, 0x49, + 0xff, 0x69, 0x01, 0x48, 0xa9, 0x00, 0xe5, 0xd3, + 0x85, 0xd1, 0x85, 0xd5, 0x68, 0x85, 0xd0, 0x85, + 0xd4, 0x68, 0x85, 0xe0, 0x86, 0xe1, 0x98, 0x18, + 0xe5, 0xe2, 0x90, 0x04, 0x49, 0xff, 0x69, 0xfe, + 0x85, 0xd2, 0x84, 0xe2, 0x66, 0xd3, 0x38, 0xe5, + 0xd0, 0xaa, 0xa9, 0xff, 0xe5, 0xd1, 0x85, 0x1d, + 0xa4, 0xe5, 0xb0, 0x05, 0x0a, 0x20, 0x65, 0xf4, + 0x38, 0xa5, 0xd4, 0x65, 0xd2, 0x85, 0xd4, 0xa5, + 0xd5, 0xe9, 0x00, 0x85, 0xd5, 0xb1, 0x26, 0x45, + 0x1c, 0x25, 0x30, 0x51, 0x26, 0x91, 0x26, 0xe8, + 0xd0, 0x04, 0xe6, 0x1d, 0xf0, 0x62, 0xa5, 0xd3, + 0xb0, 0xda, 0x20, 0xd3, 0xf4, 0x18, 0xa5, 0xd4, + 0x65, 0xd0, 0x85, 0xd4, 0xa5, 0xd5, 0x65, 0xd1, + 0x50, 0xd9, 0x81, 0x82, 0x84, 0x88, 0x90, 0xa0, + 0xc0, 0x1c, 0xff, 0xfe, 0xfa, 0xf4, 0xec, 0xe1, + 0xd4, 0xc5, 0xb4, 0xa1, 0x8d, 0x78, 0x61, 0x49, + 0x31, 0x18, 0xff, 0xa5, 0x26, 0x0a, 0xa5, 0x27, + 0x29, 0x03, 0x2a, 0x05, 0x26, 0x0a, 0x0a, 0x0a, + 0x85, 0xe2, 0xa5, 0x27, 0x4a, 0x4a, 0x29, 0x07, + 0x05, 0xe2, 0x85, 0xe2, 0xa5, 0xe5, 0x0a, 0x65, + 0xe5, 0x0a, 0xaa, 0xca, 0xa5, 0x30, 0x29, 0x7f, + 0xe8, 0x4a, 0xd0, 0xfc, 0x85, 0xe1, 0x8a, 0x18, + 0x65, 0xe5, 0x90, 0x02, 0xe6, 0xe1, 0x85, 0xe0, + 0x60, 0x86, 0x1a, 0x84, 0x1b, 0xaa, 0x4a, 0x4a, + 0x4a, 0x4a, 0x85, 0xd3, 0x8a, 0x29, 0x0f, 0xaa, + 0xbc, 0xba, 0xf5, 0x84, 0xd0, 0x49, 0x0f, 0xaa, + 0xbc, 0xbb, 0xf5, 0xc8, 0x84, 0xd2, 0xa4, 0xe5, + 0xa2, 0x00, 0x86, 0xea, 0xa1, 0x1a, 0x85, 0xd1, + 0xa2, 0x80, 0x86, 0xd4, 0x86, 0xd5, 0xa6, 0xe7, + 0xa5, 0xd4, 0x38, 0x65, 0xd0, 0x85, 0xd4, 0x90, + 0x04, 0x20, 0xb3, 0xf4, 0x18, 0xa5, 0xd5, 0x65, + 0xd2, 0x85, 0xd5, 0x90, 0x03, 0x20, 0xb4, 0xf4, + 0xca, 0xd0, 0xe5, 0xa5, 0xd1, 0x4a, 0x4a, 0x4a, + 0xd0, 0xd4, 0xe6, 0x1a, 0xd0, 0x02, 0xe6, 0x1b, + 0xa1, 0x1a, 0xd0, 0xca, 0x60, 0x86, 0x1a, 0x84, + 0x1b, 0xaa, 0x4a, 0x4a, 0x4a, 0x4a, 0x85, 0xd3, + 0x8a, 0x29, 0x0f, 0xaa, 0xbc, 0xba, 0xf5, 0x84, + 0xd0, 0x49, 0x0f, 0xaa, 0xbc, 0xbb, 0xf5, 0xc8, + 0x84, 0xd2, 0xa4, 0xe5, 0xa2, 0x00, 0x86, 0xea, + 0xa1, 0x1a, 0x85, 0xd1, 0xa2, 0x80, 0x86, 0xd4, + 0x86, 0xd5, 0xa6, 0xe7, 0xa5, 0xd4, 0x38, 0x65, + 0xd0, 0x85, 0xd4, 0x90, 0x04, 0x20, 0x9c, 0xf4, + 0x18, 0xa5, 0xd5, 0x65, 0xd2, 0x85, 0xd5, 0x90, + 0x03, 0x20, 0x9d, 0xf4, 0xca, 0xd0, 0xe5, 0xa5, + 0xd1, 0x4a, 0x4a, 0x4a, 0xd0, 0xd4, 0xe6, 0x1a, + 0xd0, 0x02, 0xe6, 0x1b, 0xa1, 0x1a, 0xd0, 0xca, + 0x60, 0x20, 0x67, 0xdd, 0x20, 0x52, 0xe7, 0xa4, + 0x51, 0xa6, 0x50, 0xc0, 0x01, 0x90, 0x06, 0xd0, + 0x1d, 0xe0, 0x18, 0xb0, 0x19, 0x8a, 0x48, 0x98, + 0x48, 0xa9, 0x2c, 0x20, 0xc0, 0xde, 0x20, 0xf8, + 0xe6, 0xe0, 0xc0, 0xb0, 0x09, 0x86, 0x9d, 0x68, + 0xa8, 0x68, 0xaa, 0xa5, 0x9d, 0x60, 0x4c, 0x06, + 0xf2, 0x20, 0xf8, 0xe6, 0xe0, 0x08, 0xb0, 0xf6, + 0xbd, 0xf6, 0xf6, 0x85, 0xe4, 0x60, 0x00, 0x2a, + 0x55, 0x7f, 0x80, 0xaa, 0xd5, 0xff, 0xc9, 0xc1, + 0xf0, 0x0d, 0x20, 0xb9, 0xf6, 0x20, 0x57, 0xf4, + 0x20, 0xb7, 0x00, 0xc9, 0xc1, 0xd0, 0xe6, 0x20, + 0xc0, 0xde, 0x20, 0xb9, 0xf6, 0x84, 0x9d, 0xa8, + 0x8a, 0xa6, 0x9d, 0x20, 0x3a, 0xf5, 0x4c, 0x08, + 0xf7, 0x20, 0xf8, 0xe6, 0x86, 0xf9, 0x60, 0x20, + 0xf8, 0xe6, 0x86, 0xe7, 0x60, 0x20, 0xf8, 0xe6, + 0xa5, 0xe8, 0x85, 0x1a, 0xa5, 0xe9, 0x85, 0x1b, + 0x8a, 0xa2, 0x00, 0xc1, 0x1a, 0xf0, 0x02, 0xb0, + 0xa5, 0x0a, 0x90, 0x03, 0xe6, 0x1b, 0x18, 0xa8, + 0xb1, 0x1a, 0x65, 0x1a, 0xaa, 0xc8, 0xb1, 0x1a, + 0x65, 0xe9, 0x85, 0x1b, 0x86, 0x1a, 0x20, 0xb7, + 0x00, 0xc9, 0xc5, 0xd0, 0x09, 0x20, 0xc0, 0xde, + 0x20, 0xb9, 0xf6, 0x20, 0x11, 0xf4, 0xa5, 0xf9, + 0x60, 0x20, 0x2d, 0xf7, 0x4c, 0x05, 0xf6, 0x20, + 0x2d, 0xf7, 0x4c, 0x61, 0xf6, 0xa9, 0x00, 0x85, + 0x3d, 0x85, 0x3f, 0xa0, 0x50, 0x84, 0x3c, 0xc8, + 0x84, 0x3e, 0x20, 0xfd, 0xfe, 0x18, 0xa5, 0x73, + 0xaa, 0xca, 0x86, 0x3e, 0xe5, 0x50, 0x48, 0xa5, + 0x74, 0xa8, 0xe8, 0xd0, 0x01, 0x88, 0x84, 0x3f, + 0xe5, 0x51, 0xc5, 0x6e, 0x90, 0x02, 0xd0, 0x03, + 0x4c, 0x10, 0xd4, 0x85, 0x74, 0x85, 0x70, 0x85, + 0x3d, 0x85, 0xe9, 0x68, 0x85, 0xe8, 0x85, 0x73, + 0x85, 0x6f, 0x85, 0x3c, 0x20, 0xfa, 0xfc, 0xa9, + 0x03, 0x4c, 0x02, 0xff, 0x18, 0xa5, 0x9b, 0x65, + 0x50, 0x85, 0x3e, 0xa5, 0x9c, 0x65, 0x51, 0x85, + 0x3f, 0xa0, 0x04, 0xb1, 0x9b, 0x20, 0xef, 0xe0, + 0xa5, 0x94, 0x85, 0x3c, 0xa5, 0x95, 0x85, 0x3d, + 0x60, 0xa9, 0x40, 0x85, 0x14, 0x20, 0xe3, 0xdf, + 0xa9, 0x00, 0x85, 0x14, 0x4c, 0xf0, 0xd8, 0x20, + 0xf8, 0xe6, 0xca, 0x8a, 0xc9, 0x28, 0x90, 0x0a, + 0xe9, 0x28, 0x48, 0x20, 0xfb, 0xda, 0x68, 0x4c, + 0xec, 0xf7, 0x85, 0x24, 0x60, 0xcb, 0xd2, 0xd7, + 0x4a, 0x08, 0x20, 0x47, 0xf8, 0x28, 0xa9, 0x0f, + 0x90, 0x02, 0x69, 0xe0, 0x85, 0x2e, 0xb1, 0x26, + 0x45, 0x30, 0x25, 0x2e, 0x51, 0x26, 0x91, 0x26, + 0x60, 0x20, 0x00, 0xf8, 0xc4, 0x2c, 0xb0, 0x11, + 0xc8, 0x20, 0x0e, 0xf8, 0x90, 0xf6, 0x69, 0x01, + 0x48, 0x20, 0x00, 0xf8, 0x68, 0xc5, 0x2d, 0x90, + 0xf5, 0x60, 0xa0, 0x2f, 0xd0, 0x02, 0xa0, 0x27, + 0x84, 0x2d, 0xa0, 0x27, 0xa9, 0x00, 0x85, 0x30, + 0x20, 0x28, 0xf8, 0x88, 0x10, 0xf6, 0x60, 0x48, + 0x4a, 0x29, 0x03, 0x09, 0x04, 0x85, 0x27, 0x68, + 0x29, 0x18, 0x90, 0x02, 0x69, 0x7f, 0x85, 0x26, + 0x0a, 0x0a, 0x05, 0x26, 0x85, 0x26, 0x60, 0xa5, + 0x30, 0x18, 0x69, 0x03, 0x29, 0x0f, 0x85, 0x30, + 0x0a, 0x0a, 0x0a, 0x0a, 0x05, 0x30, 0x85, 0x30, + 0x60, 0x4a, 0x08, 0x20, 0x47, 0xf8, 0xb1, 0x26, + 0x28, 0x90, 0x04, 0x4a, 0x4a, 0x4a, 0x4a, 0x29, + 0x0f, 0x60, 0xa6, 0x3a, 0xa4, 0x3b, 0x20, 0x96, + 0xfd, 0x20, 0x48, 0xf9, 0xa1, 0x3a, 0xa8, 0x4a, + 0x90, 0x09, 0x6a, 0xb0, 0x10, 0xc9, 0xa2, 0xf0, + 0x0c, 0x29, 0x87, 0x4a, 0xaa, 0xbd, 0x62, 0xf9, + 0x20, 0x79, 0xf8, 0xd0, 0x04, 0xa0, 0x80, 0xa9, + 0x00, 0xaa, 0xbd, 0xa6, 0xf9, 0x85, 0x2e, 0x29, + 0x03, 0x85, 0x2f, 0x98, 0x29, 0x8f, 0xaa, 0x98, + 0xa0, 0x03, 0xe0, 0x8a, 0xf0, 0x0b, 0x4a, 0x90, + 0x08, 0x4a, 0x4a, 0x09, 0x20, 0x88, 0xd0, 0xfa, + 0xc8, 0x88, 0xd0, 0xf2, 0x60, 0xff, 0xff, 0xff, + 0x20, 0x82, 0xf8, 0x48, 0xb1, 0x3a, 0x20, 0xda, + 0xfd, 0xa2, 0x01, 0x20, 0x4a, 0xf9, 0xc4, 0x2f, + 0xc8, 0x90, 0xf1, 0xa2, 0x03, 0xc0, 0x04, 0x90, + 0xf2, 0x68, 0xa8, 0xb9, 0xc0, 0xf9, 0x85, 0x2c, + 0xb9, 0x00, 0xfa, 0x85, 0x2d, 0xa9, 0x00, 0xa0, + 0x05, 0x06, 0x2d, 0x26, 0x2c, 0x2a, 0x88, 0xd0, + 0xf8, 0x69, 0xbf, 0x20, 0xed, 0xfd, 0xca, 0xd0, + 0xec, 0x20, 0x48, 0xf9, 0xa4, 0x2f, 0xa2, 0x06, + 0xe0, 0x03, 0xf0, 0x1c, 0x06, 0x2e, 0x90, 0x0e, + 0xbd, 0xb3, 0xf9, 0x20, 0xed, 0xfd, 0xbd, 0xb9, + 0xf9, 0xf0, 0x03, 0x20, 0xed, 0xfd, 0xca, 0xd0, + 0xe7, 0x60, 0x88, 0x30, 0xe7, 0x20, 0xda, 0xfd, + 0xa5, 0x2e, 0xc9, 0xe8, 0xb1, 0x3a, 0x90, 0xf2, + 0x20, 0x56, 0xf9, 0xaa, 0xe8, 0xd0, 0x01, 0xc8, + 0x98, 0x20, 0xda, 0xfd, 0x8a, 0x4c, 0xda, 0xfd, + 0xa2, 0x03, 0xa9, 0xa0, 0x20, 0xed, 0xfd, 0xca, + 0xd0, 0xf8, 0x60, 0x38, 0xa5, 0x2f, 0xa4, 0x3b, + 0xaa, 0x10, 0x01, 0x88, 0x65, 0x3a, 0x90, 0x01, + 0xc8, 0x60, 0x04, 0x20, 0x54, 0x30, 0x0d, 0x80, + 0x04, 0x90, 0x03, 0x22, 0x54, 0x33, 0x0d, 0x80, + 0x04, 0x90, 0x04, 0x20, 0x54, 0x33, 0x0d, 0x80, + 0x04, 0x90, 0x04, 0x20, 0x54, 0x3b, 0x0d, 0x80, + 0x04, 0x90, 0x00, 0x22, 0x44, 0x33, 0x0d, 0xc8, + 0x44, 0x00, 0x11, 0x22, 0x44, 0x33, 0x0d, 0xc8, + 0x44, 0xa9, 0x01, 0x22, 0x44, 0x33, 0x0d, 0x80, + 0x04, 0x90, 0x01, 0x22, 0x44, 0x33, 0x0d, 0x80, + 0x04, 0x90, 0x26, 0x31, 0x87, 0x9a, 0x00, 0x21, + 0x81, 0x82, 0x00, 0x00, 0x59, 0x4d, 0x91, 0x92, + 0x86, 0x4a, 0x85, 0x9d, 0xac, 0xa9, 0xac, 0xa3, + 0xa8, 0xa4, 0xd9, 0x00, 0xd8, 0xa4, 0xa4, 0x00, + 0x1c, 0x8a, 0x1c, 0x23, 0x5d, 0x8b, 0x1b, 0xa1, + 0x9d, 0x8a, 0x1d, 0x23, 0x9d, 0x8b, 0x1d, 0xa1, + 0x00, 0x29, 0x19, 0xae, 0x69, 0xa8, 0x19, 0x23, + 0x24, 0x53, 0x1b, 0x23, 0x24, 0x53, 0x19, 0xa1, + 0x00, 0x1a, 0x5b, 0x5b, 0xa5, 0x69, 0x24, 0x24, + 0xae, 0xae, 0xa8, 0xad, 0x29, 0x00, 0x7c, 0x00, + 0x15, 0x9c, 0x6d, 0x9c, 0xa5, 0x69, 0x29, 0x53, + 0x84, 0x13, 0x34, 0x11, 0xa5, 0x69, 0x23, 0xa0, + 0xd8, 0x62, 0x5a, 0x48, 0x26, 0x62, 0x94, 0x88, + 0x54, 0x44, 0xc8, 0x54, 0x68, 0x44, 0xe8, 0x94, + 0x00, 0xb4, 0x08, 0x84, 0x74, 0xb4, 0x28, 0x6e, + 0x74, 0xf4, 0xcc, 0x4a, 0x72, 0xf2, 0xa4, 0x8a, + 0x00, 0xaa, 0xa2, 0xa2, 0x74, 0x74, 0x74, 0x72, + 0x44, 0x68, 0xb2, 0x32, 0xb2, 0x00, 0x22, 0x00, + 0x1a, 0x1a, 0x26, 0x26, 0x72, 0x72, 0x88, 0xc8, + 0xc4, 0xca, 0x26, 0x48, 0x44, 0x44, 0xa2, 0xc8, + 0x85, 0x45, 0x68, 0x48, 0x0a, 0x0a, 0x0a, 0x30, + 0x03, 0x6c, 0xfe, 0x03, 0x28, 0x20, 0x4c, 0xff, + 0x68, 0x85, 0x3a, 0x68, 0x85, 0x3b, 0x6c, 0xf0, + 0x03, 0x20, 0x82, 0xf8, 0x20, 0xda, 0xfa, 0x4c, + 0x65, 0xff, 0xd8, 0x20, 0x84, 0xfe, 0x20, 0x2f, + 0xfb, 0x20, 0x93, 0xfe, 0x20, 0x89, 0xfe, 0xad, + 0x58, 0xc0, 0xad, 0x5a, 0xc0, 0xad, 0x5d, 0xc0, + 0xad, 0x5f, 0xc0, 0xad, 0xff, 0xcf, 0x2c, 0x10, + 0xc0, 0xd8, 0x20, 0x3a, 0xff, 0xad, 0xf3, 0x03, + 0x49, 0xa5, 0xcd, 0xf4, 0x03, 0xd0, 0x17, 0xad, + 0xf2, 0x03, 0xd0, 0x0f, 0xa9, 0xe0, 0xcd, 0xf3, + 0x03, 0xd0, 0x08, 0xa0, 0x03, 0x8c, 0xf2, 0x03, + 0x4c, 0x00, 0xe0, 0x6c, 0xf2, 0x03, 0x20, 0x60, + 0xfb, 0xa2, 0x05, 0xbd, 0xfc, 0xfa, 0x9d, 0xef, + 0x03, 0xca, 0xd0, 0xf7, 0xa9, 0xc8, 0x86, 0x00, + 0x85, 0x01, 0xa0, 0x07, 0xc6, 0x01, 0xa5, 0x01, + 0xc9, 0xc0, 0xf0, 0xd7, 0x8d, 0xf8, 0x07, 0xb1, + 0x00, 0xd9, 0x01, 0xfb, 0xd0, 0xec, 0x88, 0x88, + 0x10, 0xf5, 0x6c, 0x00, 0x00, 0xea, 0xea, 0x20, + 0x8e, 0xfd, 0xa9, 0x45, 0x85, 0x40, 0xa9, 0x00, + 0x85, 0x41, 0xa2, 0xfb, 0xa9, 0xa0, 0x20, 0xed, + 0xfd, 0xbd, 0x1e, 0xfa, 0x20, 0xed, 0xfd, 0xa9, + 0xbd, 0x20, 0xed, 0xfd, 0xb5, 0x4a, 0x20, 0xda, + 0xfd, 0xe8, 0x30, 0xe8, 0x60, 0x59, 0xfa, 0x00, + 0xe0, 0x45, 0x20, 0xff, 0x00, 0xff, 0x03, 0xff, + 0x3c, 0xf0, 0xf2, 0xe1, 0xf7, 0xe5, 0xe3, 0xa0, + 0xa0, 0xc4, 0xc2, 0xc1, 0xff, 0xc3, 0xff, 0xff, + 0xff, 0xc1, 0xd8, 0xd9, 0xd0, 0xd3, 0xad, 0x70, + 0xc0, 0xa0, 0x00, 0xea, 0xea, 0xbd, 0x64, 0xc0, + 0x10, 0x04, 0xc8, 0xd0, 0xf8, 0x88, 0x60, 0xa9, + 0x00, 0x85, 0x48, 0xad, 0x56, 0xc0, 0xad, 0x54, + 0xc0, 0xad, 0x51, 0xc0, 0xa9, 0x00, 0xf0, 0x0b, + 0xad, 0x50, 0xc0, 0xad, 0x53, 0xc0, 0x20, 0x36, + 0xf8, 0xa9, 0x14, 0x85, 0x22, 0xa9, 0x00, 0x85, + 0x20, 0xa9, 0x28, 0x85, 0x21, 0xa9, 0x18, 0x85, + 0x23, 0xa9, 0x17, 0x85, 0x25, 0x4c, 0x22, 0xfc, + 0x20, 0x58, 0xfc, 0xa0, 0x08, 0xb9, 0x08, 0xfb, + 0x99, 0x0e, 0x04, 0x88, 0xd0, 0xf7, 0x60, 0xad, + 0xf3, 0x03, 0x49, 0xa5, 0x8d, 0xf4, 0x03, 0x60, + 0xc9, 0x8d, 0xd0, 0x18, 0xac, 0x00, 0xc0, 0x10, + 0x13, 0xc0, 0x93, 0xd0, 0x0f, 0x2c, 0x10, 0xc0, + 0xac, 0x00, 0xc0, 0x10, 0xfb, 0xc0, 0x83, 0xf0, + 0x03, 0x2c, 0x10, 0xc0, 0x4c, 0xfd, 0xfb, 0x38, + 0x4c, 0x2c, 0xfc, 0xa8, 0xb9, 0x48, 0xfa, 0x20, + 0x97, 0xfb, 0x20, 0x0c, 0xfd, 0xc9, 0xce, 0xb0, + 0xee, 0xc9, 0xc9, 0x90, 0xea, 0xc9, 0xcc, 0xf0, + 0xe6, 0xd0, 0xe8, 0xea, 0xea, 0xea, 0xea, 0xea, + 0xea, 0xea, 0xea, 0xea, 0xea, 0xea, 0xea, 0xea, + 0xea, 0x48, 0x4a, 0x29, 0x03, 0x09, 0x04, 0x85, + 0x29, 0x68, 0x29, 0x18, 0x90, 0x02, 0x69, 0x7f, + 0x85, 0x28, 0x0a, 0x0a, 0x05, 0x28, 0x85, 0x28, + 0x60, 0xc9, 0x87, 0xd0, 0x12, 0xa9, 0x40, 0x20, + 0xa8, 0xfc, 0xa0, 0xc0, 0xa9, 0x0c, 0x20, 0xa8, + 0xfc, 0xad, 0x30, 0xc0, 0x88, 0xd0, 0xf5, 0x60, + 0xa4, 0x24, 0x91, 0x28, 0xe6, 0x24, 0xa5, 0x24, + 0xc5, 0x21, 0xb0, 0x66, 0x60, 0xc9, 0xa0, 0xb0, + 0xef, 0xa8, 0x10, 0xec, 0xc9, 0x8d, 0xf0, 0x5a, + 0xc9, 0x8a, 0xf0, 0x5a, 0xc9, 0x88, 0xd0, 0xc9, + 0xc6, 0x24, 0x10, 0xe8, 0xa5, 0x21, 0x85, 0x24, + 0xc6, 0x24, 0xa5, 0x22, 0xc5, 0x25, 0xb0, 0x0b, + 0xc6, 0x25, 0xa5, 0x25, 0x20, 0xc1, 0xfb, 0x65, + 0x20, 0x85, 0x28, 0x60, 0x49, 0xc0, 0xf0, 0x28, + 0x69, 0xfd, 0x90, 0xc0, 0xf0, 0xda, 0x69, 0xfd, + 0x90, 0x2c, 0xf0, 0xde, 0x69, 0xfd, 0x90, 0x5c, + 0xd0, 0xe9, 0xa4, 0x24, 0xa5, 0x25, 0x48, 0x20, + 0x24, 0xfc, 0x20, 0x9e, 0xfc, 0xa0, 0x00, 0x68, + 0x69, 0x00, 0xc5, 0x23, 0x90, 0xf0, 0xb0, 0xca, + 0xa5, 0x22, 0x85, 0x25, 0xa0, 0x00, 0x84, 0x24, + 0xf0, 0xe4, 0xa9, 0x00, 0x85, 0x24, 0xe6, 0x25, + 0xa5, 0x25, 0xc5, 0x23, 0x90, 0xb6, 0xc6, 0x25, + 0xa5, 0x22, 0x48, 0x20, 0x24, 0xfc, 0xa5, 0x28, + 0x85, 0x2a, 0xa5, 0x29, 0x85, 0x2b, 0xa4, 0x21, + 0x88, 0x68, 0x69, 0x01, 0xc5, 0x23, 0xb0, 0x0d, + 0x48, 0x20, 0x24, 0xfc, 0xb1, 0x28, 0x91, 0x2a, + 0x88, 0x10, 0xf9, 0x30, 0xe1, 0xa0, 0x00, 0x20, + 0x9e, 0xfc, 0xb0, 0x86, 0xa4, 0x24, 0xa9, 0xa0, + 0x91, 0x28, 0xc8, 0xc4, 0x21, 0x90, 0xf9, 0x60, + 0x38, 0x48, 0xe9, 0x01, 0xd0, 0xfc, 0x68, 0xe9, + 0x01, 0xd0, 0xf6, 0x60, 0xe6, 0x42, 0xd0, 0x02, + 0xe6, 0x43, 0xa5, 0x3c, 0xc5, 0x3e, 0xa5, 0x3d, + 0xe5, 0x3f, 0xe6, 0x3c, 0xd0, 0x02, 0xe6, 0x3d, + 0x60, 0xa0, 0x4b, 0x20, 0xdb, 0xfc, 0xd0, 0xf9, + 0x69, 0xfe, 0xb0, 0xf5, 0xa0, 0x21, 0x20, 0xdb, + 0xfc, 0xc8, 0xc8, 0x88, 0xd0, 0xfd, 0x90, 0x05, + 0xa0, 0x32, 0x88, 0xd0, 0xfd, 0xac, 0x20, 0xc0, + 0xa0, 0x2c, 0xca, 0x60, 0xa2, 0x08, 0x48, 0x20, + 0xfa, 0xfc, 0x68, 0x2a, 0xa0, 0x3a, 0xca, 0xd0, + 0xf5, 0x60, 0x20, 0xfd, 0xfc, 0x88, 0xad, 0x60, + 0xc0, 0x45, 0x2f, 0x10, 0xf8, 0x45, 0x2f, 0x85, + 0x2f, 0xc0, 0x80, 0x60, 0xa4, 0x24, 0xb1, 0x28, + 0x48, 0x29, 0x3f, 0x09, 0x40, 0x91, 0x28, 0x68, + 0x6c, 0x38, 0x00, 0xe6, 0x4e, 0xd0, 0x02, 0xe6, + 0x4f, 0x2c, 0x00, 0xc0, 0x10, 0xf5, 0x91, 0x28, + 0xad, 0x00, 0xc0, 0x2c, 0x10, 0xc0, 0x60, 0x20, + 0x0c, 0xfd, 0x20, 0xa5, 0xfb, 0x20, 0x0c, 0xfd, + 0xc9, 0x9b, 0xf0, 0xf3, 0x60, 0xa5, 0x32, 0x48, + 0xa9, 0xff, 0x85, 0x32, 0xbd, 0x00, 0x02, 0x20, + 0xed, 0xfd, 0x68, 0x85, 0x32, 0xbd, 0x00, 0x02, + 0xc9, 0x88, 0xf0, 0x1d, 0xc9, 0x98, 0xf0, 0x0a, + 0xe0, 0xf8, 0x90, 0x03, 0x20, 0x3a, 0xff, 0xe8, + 0xd0, 0x13, 0xa9, 0xdc, 0x20, 0xed, 0xfd, 0x20, + 0x8e, 0xfd, 0xa5, 0x33, 0x20, 0xed, 0xfd, 0xa2, + 0x01, 0x8a, 0xf0, 0xf3, 0xca, 0x20, 0x35, 0xfd, + 0xc9, 0x95, 0xd0, 0x02, 0xb1, 0x28, 0xc9, 0xe0, + 0x90, 0x02, 0x29, 0xff, 0x9d, 0x00, 0x02, 0xc9, + 0x8d, 0xd0, 0xb2, 0x20, 0x9c, 0xfc, 0xa9, 0x8d, + 0xd0, 0x5b, 0xa4, 0x3d, 0xa6, 0x3c, 0x20, 0x8e, + 0xfd, 0x20, 0x40, 0xf9, 0xa0, 0x00, 0xa9, 0xad, + 0x4c, 0xed, 0xfd, 0xa5, 0x3c, 0x09, 0x07, 0x85, + 0x3e, 0xa5, 0x3d, 0x85, 0x3f, 0xa5, 0x3c, 0x29, + 0x07, 0xd0, 0x03, 0x20, 0x92, 0xfd, 0xa9, 0xa0, + 0x20, 0xed, 0xfd, 0xb1, 0x3c, 0x20, 0xda, 0xfd, + 0x20, 0xba, 0xfc, 0x90, 0xe8, 0x60, 0x4a, 0x90, + 0xea, 0x4a, 0x4a, 0xa5, 0x3e, 0x90, 0x02, 0x49, + 0xff, 0x65, 0x3c, 0x48, 0xa9, 0xbd, 0x20, 0xed, + 0xfd, 0x68, 0x48, 0x4a, 0x4a, 0x4a, 0x4a, 0x20, + 0xe5, 0xfd, 0x68, 0x29, 0x0f, 0x09, 0xb0, 0xc9, + 0xba, 0x90, 0x02, 0x69, 0x06, 0x6c, 0x36, 0x00, + 0xc9, 0xa0, 0x90, 0x02, 0x25, 0x32, 0x84, 0x35, + 0x48, 0x20, 0x78, 0xfb, 0x68, 0xa4, 0x35, 0x60, + 0xc6, 0x34, 0xf0, 0x9f, 0xca, 0xd0, 0x16, 0xc9, + 0xba, 0xd0, 0xbb, 0x85, 0x31, 0xa5, 0x3e, 0x91, + 0x40, 0xe6, 0x40, 0xd0, 0x02, 0xe6, 0x41, 0x60, + 0xa4, 0x34, 0xb9, 0xff, 0x01, 0x85, 0x31, 0x60, + 0xa2, 0x01, 0xb5, 0x3e, 0x95, 0x42, 0x95, 0x44, + 0xca, 0x10, 0xf7, 0x60, 0xb1, 0x3c, 0x91, 0x42, + 0x20, 0xb4, 0xfc, 0x90, 0xf7, 0x60, 0xb1, 0x3c, + 0xd1, 0x42, 0xf0, 0x1c, 0x20, 0x92, 0xfd, 0xb1, + 0x3c, 0x20, 0xda, 0xfd, 0xa9, 0xa0, 0x20, 0xed, + 0xfd, 0xa9, 0xa8, 0x20, 0xed, 0xfd, 0xb1, 0x42, + 0x20, 0xda, 0xfd, 0xa9, 0xa9, 0x20, 0xed, 0xfd, + 0x20, 0xb4, 0xfc, 0x90, 0xd9, 0x60, 0x20, 0x75, + 0xfe, 0xa9, 0x14, 0x48, 0x20, 0xd0, 0xf8, 0x20, + 0x53, 0xf9, 0x85, 0x3a, 0x84, 0x3b, 0x68, 0x38, + 0xe9, 0x01, 0xd0, 0xef, 0x60, 0x8a, 0xf0, 0x07, + 0xb5, 0x3c, 0x95, 0x3a, 0xca, 0x10, 0xf9, 0x60, + 0xa0, 0x3f, 0xd0, 0x02, 0xa0, 0xff, 0x84, 0x32, + 0x60, 0xa9, 0x00, 0x85, 0x3e, 0xa2, 0x38, 0xa0, + 0x1b, 0xd0, 0x08, 0xa9, 0x00, 0x85, 0x3e, 0xa2, + 0x36, 0xa0, 0xf0, 0xa5, 0x3e, 0x29, 0x0f, 0xf0, + 0x06, 0x09, 0xc0, 0xa0, 0x00, 0xf0, 0x02, 0xa9, + 0xfd, 0x94, 0x00, 0x95, 0x01, 0x60, 0xea, 0xea, + 0x4c, 0x00, 0xe0, 0x4c, 0x03, 0xe0, 0x20, 0x75, + 0xfe, 0x20, 0x3f, 0xff, 0x6c, 0x3a, 0x00, 0x4c, + 0xd7, 0xfa, 0x60, 0xea, 0x60, 0xea, 0xea, 0xea, + 0xea, 0xea, 0x4c, 0xf8, 0x03, 0xa9, 0x40, 0x20, + 0xc9, 0xfc, 0xa0, 0x27, 0xa2, 0x00, 0x41, 0x3c, + 0x48, 0xa1, 0x3c, 0x20, 0xed, 0xfe, 0x20, 0xba, + 0xfc, 0xa0, 0x1d, 0x68, 0x90, 0xee, 0xa0, 0x22, + 0x20, 0xed, 0xfe, 0xf0, 0x4d, 0xa2, 0x10, 0x0a, + 0x20, 0xd6, 0xfc, 0xd0, 0xfa, 0x60, 0x20, 0x00, + 0xfe, 0x68, 0x68, 0xd0, 0x6c, 0x20, 0xfa, 0xfc, + 0xa9, 0x16, 0x20, 0xc9, 0xfc, 0x85, 0x2e, 0x20, + 0xfa, 0xfc, 0xa0, 0x24, 0x20, 0xfd, 0xfc, 0xb0, + 0xf9, 0x20, 0xfd, 0xfc, 0xa0, 0x3b, 0x20, 0xec, + 0xfc, 0x81, 0x3c, 0x45, 0x2e, 0x85, 0x2e, 0x20, + 0xba, 0xfc, 0xa0, 0x35, 0x90, 0xf0, 0x20, 0xec, + 0xfc, 0xc5, 0x2e, 0xf0, 0x0d, 0xa9, 0xc5, 0x20, + 0xed, 0xfd, 0xa9, 0xd2, 0x20, 0xed, 0xfd, 0x20, + 0xed, 0xfd, 0xa9, 0x87, 0x4c, 0xed, 0xfd, 0xa5, + 0x48, 0x48, 0xa5, 0x45, 0xa6, 0x46, 0xa4, 0x47, + 0x28, 0x60, 0x85, 0x45, 0x86, 0x46, 0x84, 0x47, + 0x08, 0x68, 0x85, 0x48, 0xba, 0x86, 0x49, 0xd8, + 0x60, 0x20, 0x84, 0xfe, 0x20, 0x2f, 0xfb, 0x20, + 0x93, 0xfe, 0x20, 0x89, 0xfe, 0xd8, 0x20, 0x3a, + 0xff, 0xa9, 0xaa, 0x85, 0x33, 0x20, 0x67, 0xfd, + 0x20, 0xc7, 0xff, 0x20, 0xa7, 0xff, 0x84, 0x34, + 0xa0, 0x17, 0x88, 0x30, 0xe8, 0xd9, 0xcc, 0xff, + 0xd0, 0xf8, 0x20, 0xbe, 0xff, 0xa4, 0x34, 0x4c, + 0x73, 0xff, 0xa2, 0x03, 0x0a, 0x0a, 0x0a, 0x0a, + 0x0a, 0x26, 0x3e, 0x26, 0x3f, 0xca, 0x10, 0xf8, + 0xa5, 0x31, 0xd0, 0x06, 0xb5, 0x3f, 0x95, 0x3d, + 0x95, 0x41, 0xe8, 0xf0, 0xf3, 0xd0, 0x06, 0xa2, + 0x00, 0x86, 0x3e, 0x86, 0x3f, 0xb9, 0x00, 0x02, + 0xc8, 0x49, 0xb0, 0xc9, 0x0a, 0x90, 0xd3, 0x69, + 0x88, 0xc9, 0xfa, 0xb0, 0xcd, 0x60, 0xa9, 0xfe, + 0x48, 0xb9, 0xe3, 0xff, 0x48, 0xa5, 0x31, 0xa0, + 0x00, 0x84, 0x31, 0x60, 0xbc, 0xb2, 0xbe, 0xb2, + 0xef, 0xc4, 0xb2, 0xa9, 0xbb, 0xa6, 0xa4, 0x06, + 0x95, 0x07, 0x02, 0x05, 0xf0, 0x00, 0xeb, 0x93, + 0xa7, 0xc6, 0x99, 0xb2, 0xc9, 0xbe, 0xc1, 0x35, + 0x8c, 0xc4, 0x96, 0xaf, 0x17, 0x17, 0x2b, 0x1f, + 0x83, 0x7f, 0x5d, 0xcc, 0xb5, 0xfc, 0x17, 0x17, + 0xf5, 0x03, 0xfb, 0x03, 0x62, 0xfa, 0x40, 0xfa, +]) as ReadonlyUint8Array; + +export default class Pravetz82ROM extends ROM { + constructor() { + super(0xd0, 0xff, rom); + } +} diff --git a/js/ui/apple2.ts b/js/ui/apple2.ts index 615ed48..a4495f7 100644 --- a/js/ui/apple2.ts +++ b/js/ui/apple2.ts @@ -900,7 +900,8 @@ function onLoaded( disk2: DiskII, massStorage: MassStorage, printer: Printer, - e: boolean + e: boolean, + keyboardLayout: string ) { _apple2 = apple2; cpu = _apple2.getCPU(); @@ -930,7 +931,7 @@ function onLoaded( MicroModal.init(); - keyboard = new KeyBoard(cpu, io, e); + keyboard = new KeyBoard(cpu, io, keyboardLayout); keyboard.create('#keyboard'); keyboard.setFunction('F1', () => cpu.reset()); keyboard.setFunction('F2', (event) => { @@ -1053,9 +1054,10 @@ export function initUI( disk2: DiskII, massStorage: MassStorage, printer: Printer, - e: boolean + e: boolean, + keyboardLayout: string ) { window.addEventListener('load', () => { - onLoaded(apple2, disk2, massStorage, printer, e); + onLoaded(apple2, disk2, massStorage, printer, e, keyboardLayout); }); } diff --git a/js/ui/keyboard.ts b/js/ui/keyboard.ts index 0be61a5..0c6d01a 100644 --- a/js/ui/keyboard.ts +++ b/js/ui/keyboard.ts @@ -200,7 +200,26 @@ export const keys2e = [ type Key2e = DeepMemberOf; -type Key = Key2 | Key2e; +// prettier-ignore +const keyspravetz82 = [ + [ + ['!', '"', '#', '¤', '%', '&', '\'', '(', ')', '0', '*', '=', '﹁', 'RST'], + ['ОСВ', 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', '@', 'RPT', 'RETURN'], + ['МК', 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', '+', '[', ']', '↓'], + ['ЛАТ', 'Z', 'X', 'C', 'V', 'B', 'N', 'M', '<', '>', '?', 'ЛАТ', 'ЛАТ2'], + ['ВКЛ', ' '] + ], [ + ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', ':', '-', 'Ч', 'RST'], + ['ОСВ', 'Я', 'В', 'Е', 'Р', 'Т', 'Ъ', 'У', 'И', 'О', 'П', 'Ю', 'RPT', 'RETURN'], + ['МК', 'А', 'С', 'Д', 'Ф', 'Г', 'Х', 'Й', 'К', 'Л', ';', 'Ш', 'Щ', '↓'], + ['ЛАТ', 'З', 'Ь', 'Ц', 'Ж', 'Б', 'Н', 'М', ',', '.', '/', 'ЛАТ', 'ЛАТ2'], + ['ВКЛ', ' '] + ] +] as const; + +type KeyPravetz82 = DeepMemberOf; + +type Key = Key2 | Key2e | KeyPravetz82; type KeyFunction = (key: KeyboardEvent) => void; @@ -223,9 +242,20 @@ export default class KeyBoard { constructor( private cpu: CPU6502, private io: Apple2IO, - private e: boolean + private layout: string ) { - this.keys = e ? keys2e : keys2; + switch (this.layout) { + case 'apple2e': + this.keys = keys2e; + break; + case 'pravetz82': + this.keys = keyspravetz82; + this.capslocked = false; // Pravetz 82 starts with CAPS LOCK off. + break; + default: + this.keys = keys2; + break; + } window.addEventListener('keydown', this.keydown); window.addEventListener('keyup', this.keyup); @@ -264,7 +294,9 @@ export default class KeyBoard { } shiftKey(down: boolean) { - const shiftKeys = this.kb.querySelectorAll('.key-SHIFT'); + const shiftKeys = this.kb.querySelectorAll( + this.layout !== 'pravetz82' ? '.key-SHIFT' : '.key-ЛАТ' + ); this.shifted = down; if (down) { this.io.buttonUp(2); @@ -280,7 +312,9 @@ export default class KeyBoard { } controlKey(down: boolean) { - const ctrlKey = this.kb.querySelector('.key-CTRL'); + const ctrlKey = this.kb.querySelector( + this.layout !== 'pravetz82' ? '.key-CTRL' : '.key-МК' + ); this.controlled = down; if (down) { ctrlKey!.classList.add('active'); @@ -327,7 +361,9 @@ export default class KeyBoard { * otherwise the used state is set to true. */ capslockKey(down?: boolean | undefined) { - const capsLock = this.kb.querySelector('.key-LOCK'); + const capsLock = this.kb.querySelector( + this.layout !== 'pravetz82' ? '.key-LOCK' : '.key-ЛАТ2' + ); if (arguments.length === 0) { if (this.capslockKeyUsed) { @@ -357,6 +393,7 @@ export default class KeyBoard { create(el: string) { this.kb = document.querySelector(el)!; + this.kb.classList.add('layout-' + this.layout); let x, y, row, key, label, label1, label2; const buildLabel = (k: string) => { @@ -424,7 +461,14 @@ export default class KeyBoard { ev.preventDefault(); target.classList.add('pressed'); - let key: string = this.shifted ? key2 : key1; + let key: string; + if (this.layout !== 'pravetz82') { + key = this.shifted ? key2 : key1; + } else { + // In Pravetz 82, the operation of the shift key is inverted. + // The top row (cyrillic) is used by default and shift switches to using the bottow row (latin). + key = this.shifted ? key1 : key2; + } switch (key) { case 'BELL': key = 'G'; @@ -445,7 +489,11 @@ export default class KeyBoard { key = '\x15'; break; case '↓': - key = '\x0A'; + if (this.layout !== 'pravetz82') { + key = '\x0A'; + } else { + // On Pravetz 82 this key has no action. + } break; case '↑': key = '\x0B'; @@ -460,24 +508,151 @@ export default class KeyBoard { break; } + if (this.layout === 'pravetz82') { + // Pravetz 82 specific remapping. + // Lower-case lattin letters are replaced with cyrillic capital letters. + switch (key) { + // First row. + case 'Ч': + key = '^'; + break; + case '﹁': + // FIXME: Which character should this map to? + break; + + // Second row. + case 'ОСВ': // Pravetz 82 ESC key in cyrillic. + key = '\x1B'; + break; + case 'Я': + key = 'q'; + break; + case 'В': + key = 'w'; + break; + case 'Е': + key = 'e'; + break; + case 'Р': + key = 'r'; + break; + case 'Т': + key = 't'; + break; + case 'Ъ': + key = 'y'; + break; + case 'У': + key = 'u'; + break; + case 'И': + key = 'i'; + break; + case 'О': + key = 'o'; + break; + case 'П': + key = 'p'; + break; + case 'Ю': + key = '@'; + break; + case '@': + key = '`'; + break; + + // Third row. + case 'А': + key = 'a'; + break; + case 'С': + key = 's'; + break; + case 'Д': + key = 'd'; + break; + case 'Ф': + key = 'f'; + break; + case 'Г': + key = 'g'; + break; + case 'Х': + key = 'h'; + break; + case 'Й': + key = 'j'; + break; + case 'К': + key = 'k'; + break; + case 'Л': + key = 'l'; + break; + case 'Ш': + key = '['; + break; + case 'Щ': + key = ']'; + break; + case '[': + key = '{'; + break; + case ']': + key = '}'; + break; + + // Fourth row. + case 'З': + key = 'z'; + break; + case 'Ь': + key = 'x'; + break; + case 'Ц': + key = 'c'; + break; + case 'Ж': + key = 'v'; + break; + case 'Б': + key = 'b'; + break; + case 'Н': + key = 'n'; + break; + case 'М': + key = 'm'; + break; + + default: + break; + } + } + if (key.length > 1) { switch (key) { case 'SHIFT': + case 'ЛАТ': // Shift on Pravetz 82 switches to cyrillic. this.shiftKey(!this.shifted); break; case 'CTRL': + case 'МК': // Pravetz 82 CTRL key in cyrillic. this.controlKey(!this.controlled); break; case 'CAPS': case 'LOCK': + case 'ЛАТ2': // CAPS LOCK on Pravetz 82 switches between cyrillic and latin. this.capslockKey(undefined); break; case 'POW': case 'POWER': + case 'ВКЛ': // Pravetz 82 power key in cyrillic. if (window.confirm('Power Cycle?')) window.location.reload(); break; case 'RESET': + case 'RST': this.cpu.reset(); break; case 'OPEN_APPLE': @@ -486,6 +661,9 @@ export default class KeyBoard { case 'CLOSED_APPLE': this.optionKey(!this.optioned); break; + case 'RPT': // Pravetz 82 "repeat" key. + // Do nothing. + break; default: break; } @@ -493,13 +671,22 @@ export default class KeyBoard { if (this.controlled && key >= '@' && key <= '_') { this.io.keyDown(key.charCodeAt(0) - 0x40); } else if ( - this.e && + this.layout === 'apple2e' && !this.shifted && !this.capslocked && key >= 'A' && key <= 'Z' ) { this.io.keyDown(key.charCodeAt(0) + 0x20); + } else if ( + this.layout === 'pravetz82' && + !this.shifted && + this.capslocked && + key >= 'a' && + key <= 'z' + ) { + // CAPS LOCK on Pravetz 82 switches between cyrillic and latin. + this.io.keyDown(key.charCodeAt(0) - 0x20); } else { this.io.keyDown(key.charCodeAt(0)); } @@ -516,7 +703,10 @@ export default class KeyBoard { } private keydown = (evt: KeyboardEvent) => { - if (!this.dialogOpen() && (!evt.metaKey || evt.ctrlKey || this.e)) { + if ( + !this.dialogOpen() && + (!evt.metaKey || evt.ctrlKey || this.layout === 'apple2e') + ) { evt.preventDefault(); const key = this.mapKeyEvent(evt); diff --git a/js/ui/system.ts b/js/ui/system.ts index c47bb73..56721f3 100644 --- a/js/ui/system.ts +++ b/js/ui/system.ts @@ -77,6 +77,10 @@ export class System implements OptionHandler { value: 'apple2pig', name: 'Apple ][+ (pig font)', }, + { + value: 'pravetz82', + name: 'Pravetz 82', + }, ], }, ],