xBasic 64: eine Super-Basic-Enweiterung
Schon oft wurden Basic-Erweiterungen veröffentlicht, die aber immer nur einen bestimmten Bereich bevorzugten. xBasic 64 dagegen umfaßt das gesamte Spektrum des C 64 und stent insgesamt 44 neue Befehle zur Verfugung.
XBasic 64 wurde für den Commodore 64 ohne besondere Peripherie geschrieben. Lediglich die Diskettenbefehle und die Hardcopy-Funktion benötigen die entsprechenden Geräte (Device 8 und 4).
xBasic 64 belegt den Speicher von $8000-$9310. (Näheres hierzu siehe Speicherbelegung im Innenteil, Seite 59ff).
xBasic 64 stellt Befehle für die Grafikprogrammierung, die Tonerzeugung, die Programmerstellung und Fehlersuche, das strukturierte Programmieren und die labelabhängige Verzweigung zur Verfügung.
In Tabelle 1 eine Übersicht über die von xBasic 64 bereitgestellten Befehle.
HRG | GCOLOR | TEXT | SET | RESET |
REVERS | PRINT AT | FILL | PAINT | RESCUE |
RENUMBER | REPEAT | UNTIL | JUMP | CALL INVERS |
SUBEND | PROCEDURE | EXIT | BRANCH | VOL |
ENVELOPE | WAVE | DUMP | HCOPY | |
MEMORY | CHRCOPY | RAM | NEGATE | CREATE |
CHANGE | MOVE | OVER | ERROR | SPRITE |
MOBEX | MULTI | CLEAR | AUTO | DIR |
BORDER | PAPER | INK | DOKE | KILL DELETE |
Insgesamt besitzt xBasic 64 mehr als 40 neue Befehle.
Befehlserklärung:
1. Grafikbefehle
1.1. Hochauflösende Grafik (320 x 200)
- HRG Syntax: HRG x,y
Effekt: Der Computer wird in den hochauflösenden Modus versetzt. Es werden die Punktfarben x und die Hintergrundfarbe y gesetzt. - TEXT Syntax: TEXT
Effekt: Der Computer wird wieder in den Textmodus (40 x 25 Positionen) zurückgeschaltet. TEXT wird bei jeder Programmunterbrechung und nach Beendigung eines Programms ausgeführt. - GCOLOR Syntax: GCOLOR (pf,hf,rf)
Effekt: Punktfarbe pf (0 bis 15), Hintergrundfarbe hf (0 bis 15) und Rahmenfarbe rf (0 bis 255) werden gesetzt. - SET Syntax: SET (x,y)
Effekt: Es wird ein Bildpunkt an die durch x (0 bis 319) und y (0 bis 199) festgelegte Koordinate gesetzt. Bei einer Bereichsüberschreitung wird ?INCORRECT XY VALUE gemeldet. - INVERS Syntax: INVERS x,y
Effekt: Es gilt das unter SET Gesagte, jedoch wird der Punkt mit den Koordinaten x/y. - REVERS Syntax: REVERS
Effekt: Der gesamte Grafikschirm wird invertiert.
1.2 Blockgrafik (40 x 25 Positionen)
FILL Syntax: FILL s, z, lx, ly, char
Effekt: Füllt einen rechteckigen Bildschirmbereich mit dem Zeichen char (Bildschirmcode) aus. Dabei ist s die Spalte und z die Zeile der linken oberen Ecke des Rechtecks, lx ist die Länge in der Horizontalen und ly in der Vertikalen. Liegt das Rechteck nicht vollständig im zugelassenen Bereich, wird ?RANGE TOO LARGE angezeigt.
- PAINT Syntax: PAINT s, z, lx, ly, col
Effekt: Dieser Befehl wirkt fast wie der zuvor genannte, jedoch wird hier der Bereich mit der Farbe col angefüllt. - BORDER Syntax: BORDER col
Effekt: Der Bildschirmrahmen erhält die Farbe col. - PAPER Syntax: PAPER col
Effekt: Der Bildschirmhintergrund nimmt die Farbe col an. - INK Syntax: INK col
Effekt: Alle folgenden Bildschirmausgaben erfolgen in der Farbe col. - AT Syntax: AT PRINT (x,y) Ausdruck
Ein in Anführungszeichen stehender Text oder der Wert einer Variablen wird auf dem Bildschirm ab Spalte x und Zeile y ausgegeben.
1.2.1. User defined graphics (UDG)
xBasic 64 gestattet auch die Erstellung eines eigenen Zeichensatzes. Dieser liegt ab $C800. Wird in diesem Modus gearbeitet, so verschiebt sich das Video-RAM nach $C400 (dez. 50176).
- CHRCOPY Syntax: CHRCOPY
Effekt: Der Commodore-Zeichensatz wird an die oben erwähnte Stelle kopiert. - RAM Syntax: RAM
Effekt: Der Commodore 64 wird auf den kopierten Zeichensatz umgestellt. - CREATE Syntax: CREATE char, b1, b2, b3…, b8
Effekt: Mit diesem Befehl wird dem Zeichen char im neuen Zeichensatz ein anderes Bitmuster zugewiesen, welches durch die Bytes b1 bis b8 festgelegt ist.
Alle folgenden Befehle sind auch auf Sprites anwendbar. Darüber entscheidet der erste Parameter. Ist er 0, so bezieht sich der Befehl auf die UDG, ist er 1, wirkt er auf die Spritegrafik.
- CHANGE Syntax: CHANGE 0, char, bnr, b oder CHANGE 1, sbl, x, y, b
Effekt: UDG — Das Zeichen mit dem Code char wird verändert. Das Byte mit der Nummer bnr (0 bis 7) wird durch das Byte b ersetzt.Sprites — Der Sprite-Datenblock mit der Nummer sbl wird verändert. Das Byte, das im Block durch x und y maskiert ist, wird durch b ersetzt.
- MOVE Syntax: MOVE 0, char 1, char 2 oder MOVE 1, sbl 1, sbl 2
Effekt: UDG — Das Zeichen mit dem Code char 2 erhält das Bitmuster von char 1.
Sprites — Der Spritedatenblock sbl 1 wird nach sbl 2 kopiert. - OVER Syntax: OVER 0, char 1, char 2 oder OVER 1, sbl 1, sbl 2
Effekt: UDG — Das Zeichen mit dem Code char 1 wird mit dem Bitmuster von Char 2 verflochten.
Sprites — Die Bitmuster von sbl 1 und sbl 2 werden verknüpft, wobei das Ergebnis in sbl 2 steht. - NEGATE Syntax: NEGATE mod, nr
Effekt: Das Zeichen im neuen Zeichensatz mit der Nummer nr (mod = 0) oder das Sprite mit der Nummer nr (mod = 1) wird invertiert.
1.3. Spritegrafik SPRITE
Syntax: SPRITE snr, x, y sbl, col, mod
Effekt: Das Sprite mit der Nummer snr (0 bis 7) wird an der durch x (0-511) und y (0 bis 255) festgelegten Position auf den Bildschirm gebracht. Es hat die Farbe col und bezieht sein Bitmuster aus sbl. Ist mod 0, so wird das Sprite im HRG-Modus, ist mod 1, wird es im Multicolormodus dargestellt.- MOBEX Syntax: MOBEX snr,ex,ey
Effekt: Das Sprite mit der Nummer snr wird expandiert. Bei ex gleich 1 wird es in X-Richtung expandiert, bei ey gleich 1 in Y-Richtung.
- MULTI Syntax: MULTI col1,col2
Effekt: Es werden die beiden zusätzlichen Farben col1 und col2 für Multicolorsprites festgelegt.
- CLEAR Syntax: CLEAR oder CLEAR snr
Effekt: lm ersten Fall werden alle Sprites vom Bildschirm gelöscht, im zweiten nur das Sprite mit der Nummer snr.
1.4. Sonstige Grafikbefehle
- HCOPY Syntax: HCOPY
Effekt: Es wird eine Hardcopy vom Textschirm im Groß-/Grafikmodus erzeugt (Gerätenummer 4).
2. Befehle für die Tonerzeugung
- VOL Syntax: VOL lt
Effekt: Setzt Lautstärke lt (0-15) für alle 3 Stimmen
- WAVE Syntax: WAVE st,wf,fl
Effekt: Für die Stimme st (T3) wird die Wellenform wf (16,32,64 oder 128 gesetzt, fl schaltet die Stimme ein (fl = 1) oder aus (fl = 0).
- ENVELOPE Syntax: ENVELOPE st,an,ab,ha,au
Effekt: Setzt die Hüllkurve für Stimme st. Die Parameter an (Anschlag), ab (Abschwellen), ha (Halten) und au (Ausklingen) dürfen im Bereich von 0 bis 15 liegen.
Anmerkung: Wird bei WAVE eine ungültige Wellenform angegeben, so meldet xBasic 64 »?NOT EXISTING WAVE«
3. Programmierhilfen
- HELP Syntax: HELP
Effekt: Es werden alle von Exbasic 64 verstandenen Befehle aufgelistet.
- MEMORY Syntax: MEMORY
Effekt: Die momentane Speicheraufteilung wird angezeigt (Programm, Variable etc.).
- DUMP Syntax: DUMP
Effekt: Alle Variable und deren Inhalt werden ausgegeben (Real,Integer=%,Strings=$,Funktionen=*).
- START Syntax: START
Effekt: xBasic 64 wird neu initialisiert. Das derzeitig im Speicher befindliche Programm kann mit RESCUE gerettet werden.
- RESCUE Syntax: RESCUE
Effekt: Zurückholen eines Programms nach NEW oder START.
- RENUMBER Syntax: RENUMBER stz,sw
Effekt: Das im Speicher befindliche Basic-Programm wird neu durchnumeriert. Dabei ist stz die erste Zeile des »neuen« Programms und sw die Schrittweite. Wird der für Zeilennummern erlaubte Bereich überschritten, so wird die erste nicht mehr unterzubringende Zeile mit der Nummer 0 belegt und »?ILLEGAL LINENUMBER« ausgegeben.
4. Diskettenbefehle
- DIR Syntax: DIR
Effekt: Das Directory der momentan eingelegten Diskette wird angezeigt, ohne das im Speicher befindliche Programm zu löschen.
- ERROR Syntax: ERROR
Effekt: Tritt ein Diskettenfehler auf, so wird mit diesem Befehl die Fehlernummer, der Fehlertext, der Sektor und die Spur geholt, in der der Fehler auftrat. Das Ganze wird durch Kommata getrennt ausgegeben.
5. Befehle für strukturiertes Programmieren
- REPEAT…UNTIL
Syntax: REPEAT ⟨beliebige Anweisungen⟩ UNTIL ⟨Bedingung⟩Effekt: Die Anweisung(en) zwischen REPEAT und UNTIL werden solange ausgeführt, bis die Bedingung hinter UNTIL erfüllt ist. Die Befehle dürfen in zwei Zeilen stehen.
Es dürfen maximal 32 REPEAT…UNTIL-Schleifen geschachtelt werden. Ansonsten erfolgt die Meldung »?TOO MANY REPEAT..UNTIL«. Ein UNTIL ohne vorhergehendes REPEAT führt zu dem Fehler »?UNTIL WITHOUT REPEAT«.
- JUMP Syntax: JUMP Label
Effekt: Es erfolgt ein Sprung zum Label ⟨Label⟩. Dieses muß in einer PROCEDURE-Zeile stehen. Ein JUMP ohne nachfolgendes Label verursacht den Fehler ?»?MISSING LABEL«. Wird versucht, zu einem nicht existierenden Label zu verzweigen, wird ?»?PROCEDURE NOT FOUND« gemeldet.
- PROCEDURE Syntax: PROCEDURE Label
Effekt: Markiert eine Zeile als Labelzeile. Der Befehl selbst wird wie ein REM behandelt. Deshalb dürfen vor und hinter PROCEDURE keine anderen Statements stehen.
- CALL…SUBEND Syntax: CALL Label…SUBEND
Effekt: Hierbei handelt es sich um eine Art GOSUB…RETURN. Jedoch wird hier nichtzu einer Zeilennummer, sondern zu der durch Label gekennzeichneten Labelzeile gesprungen. Bei SUBEND springt das Programm dann auf das Statement, das unmittelbar hinter dem entsprechenden CALL steht. Auch hier gilt: maximal 32 CALL..SUBEND-Aufrufe schachteln, sonst gibt’s einen ?TOO MANY CALL…SUBEND-Fehler.
Ein SUBEND ohne CALL gibt »?SUBEND WITHOUT CALL«.
- EXIT Syntax: EXIT Zeilennummer
Effekt: Mit diesem Befehl kann beliebig oft aus einem Unterprogramm ohne RETURN herausgesprungen werden. Das Programm verzweigt zu der hinter EXIT angegebenen Zeilennummer. Fehlt sie, so wird ein ?MISSING LINENUMBER-Fehler ausgegeben.
- BRANCH Syntax: BRANCH Zeilennummer
Effekt: Ermöglicht ein Verlassen eines Unterprogrammes ohne SUBEND. Ansonsten gilt das bei EXIT Gesagte.
xBasic 64 ermöglicht außerdem das Setzen des DATA-Zeigers auf eine bestimmte Zeilennummer mit RESTORE. Auch Variable sind als Ausdruck zugelassen. Das gleiche gilt auch für GOTO und GOSUB.
Ein Nachteil von xBasic 64 ist, daß ein xBasic 64-Befehl bei einer IF…THEN-Anweisung durch einen Doppelpunkt vom THEN getrennt werden muß.
Beispiel:
100 IF A=SIN(45) THEN:EXIT 500
Zur Beachtung:
Verwechseln Sie bei den Spritebefehlen nicht Spritenummer und Spritedatenblocknummer. Die Spritenummer bezieht sich auf die auf dem Schirm darstellbaren Sprites, während sich die Spritedatenblocknummer auf den Datenblock bezieht, aus welchem die Sprites ihre Bitmuster beziehen können. Die Spritenummer darf im Bereich von 0 bis 7 liegen, während die Datenblocknummer Werte von 0 bis 511 annehmen kann. Achten Sie jedoch darauf, daß die im freien RAM liegenden Blöcke vor dem Überschreiben geschützt werden. Die Blöcke 0 bis 10 bitte nicht benutzen!
Der Spritepointer kann natürlich nur die Blöcke 0 bis 255 adressieren. Um auf die anderen Blöcke zugreifen zu können, müssen diese erst mit MOVE in den entsprechenden Bereich geschoben werden.
xBasic 64 arbeitet mit drei verschiedenen Video-RAMs. Das »normale« Video-RAM ab $0400, das HRG-Video-RAM, das als Farb-RAM dient, ab $C000 und das Video-RAM bei Gebrauch der UDG ab $C400.
Weiter belegt xBasic 64 die Bereiche $8E00-8E7F als REPEAT…UNTIL-Stack und $8E80-8EFF als CALL…SUBEND-Stack.
Programmtechnische Details
Zur Initialisierung bedient sich xBasic 64 eines weitverbreiteten Verfahrens: Damit der Commodore 64 ein ROM-Modul beim Einschalten erkennt, muß dieses ab Adresse $8004 das Kennwort »CBM80« enthalten. Die beim Einschalten angesprungene RESET-Routine ruft ihrerseits eine Routine auf, die den erwähnten Speicherbereich nach dem Wort durchsucht. Wird es gefunden, so springt der Computer in der Programmausführung an eine Adresse, die in den Speicherstellen $8000 und $8001 abgelegt ist. Durch Einstecken einer ROM-Kassette am Expansionsport wird der Eingang EXROM auf 0 gesetzt. Dadurch wird der 64er auf ROM umgestellt. Ist EXROM gleich 1, so wird bei einem RESET einfach der RAM-Bereich ab $8004 auf das Kennwort untersucht. Und genau hier setzt xBasic 64 ein. Es enthält nämlich an dieser Stelle das geforderte Kennwort. Der Computer springt also nicht auf den im ROM stehenden Vektor ($A000), sondern auf den von xBasic 64 bereitgestellten ($8000). Dieser zeigt auf eine eigene RESET-Routine. Diese kopiert zum Beispiel das Basic-ROM in das darunterliegende RAM. Nun werden die Veränderungen an den Routinen GOTO, GOSUB und RESTORE vorgenommen. Also Maschinenprogrammierer Vorsicht! In Verbindung mit xBasic 64 ist der Bereich von $A000 bis $BFFF tabu!
Oberhalb von xBasic 64 ist der für Maschinenprogramme freie Teil nur der Bereich von $9000 bis $9FFF.
xBasic 64 besitzt einige neue Fehlermeldungen. Die entsprechende Routine liegt ab $8184. Sie wird mit der Nummer der Fehlermeldung im Akku angesprungen. Sie holt sich dann die Adresse der Fehlermeldung aus einer Tabelle ($8DE0).
Geben Sie einmal folgendes ein:
POKE 780,2:SYS 33156
Sie müßten die Meldung »?ILLEGAL LINENUMBER ERROR« erhalten. Das ist die Fehlermeldung mit der Nummer 2. Die Nummern 0 bis 12 werden von xBasic 64 belegt, die restlichen sind jedoch für eigene Fehlermeldungen frei.
Für die Befehle REPEAT…UNTIL und CALL…SUBEND benutzt xBasic 64 zwei Stacks. Auf diesen Stacks wird beim Aufruf von REPEAT oder CALL die momentane Zeilennummer und der Programmzeiger abgelegt.
Die Befehle UNTIL und SUBEND holen diese Werte wieder zurück. Jeder Stack hat seinen Pointer, der auf die Elemente im Stack zeigt. Die beiden Pointer liegen bei $07E8 (RU-Stack) und $07E9 (CS-Stack). Die beiden Stacks liegen ab $8E00 (RU) und 8E80 (CS).
Mit den von xBasic 64 zur Verfügung gestellten Routinen sollte es keine Schwierigkeit sein, eigene Befehle einzubauen. Mit dem entsprechenden Algorithmus und den Routinen Koordinaten holen und Punkt setzen, ist es bestimmt nicht sehr kompliziert, eine LINE-Routine oder andere Grafikbefehle zu implementieren (siehe auch Tabelle 1).
(Stephan Blietz/gk)$8000 | Startvektor |
$8002 | NMI-Vektor |
$8004 | »CBM80« |
$8009 | Aktivierungsmeldung |
$8042 | Tabelle der Basic-Vektoren |
$804E | RESET-Routine |
$80B1 | Basic-Vektoren laden |
$80BD | Basic-Warmstart |
$80C7 | Erweiterung für GOTO, GOSUB und RESTORE |
$80E2 | xBasic 64-Befehle codieren |
$8114 | xBasic 64-Befehle decodieren |
$8149 | Befehlsadresse holen |
$8184 | Neue Fehlermeldung ausgeben |
$8191 | Befehl HRG |
$81B6 | Befehl GCOLOR |
$81F3 | Befehl NRM |
$8203 | Hires-Koordinatenpaar holen |
$8223 | Hires-Punkt setzen/löschen |
$829D | Befehl SET |
$82A4 | Befehl RESET |
$82AB | Befehl REVERS |
$82CE | Lores-Koordinatenpaar holen |
$82E7 | Befehl @PRINT |
$82F4 | Befehl FILL |
$836C | Befehl PAINT |
$8376 | Befehl RESCUE |
$83B4 | Befehl RENUMBER |
$8417 | RU- und CS-Stackpointer auf 0 setzen |
$8422 | Befehl REPEAT |
$8454 | Befehl UNTIL |
$848F | Befehl JUMP |
$8512 | Befehl CALL |
$8540 | Befehl SUBEND |
$8568 | Befehl EXIT |
$8589 | Befehl BRANCH |
$85A5 | Befehl VOL |
$85B3 | Befehl ENVELOPE |
$85DC | Holt Nibble nach X-Register |
$85E8 | Holt Stimme und setzt Zeiger |
$85FF | Befehl WAVE |
$8635 | Tabelle der Wellenformen |
$8639 | Befehl DUMP |
$86F9 | Befehl HELP |
$8757 | Befehl HCOPY |
$87B3 | Befehl MEMORY |
$8826 | Ausgabemaske für MEMORY |
$886D | Befehl CHRCOPY |
$8896 | Befehl RAM |
$88AF | Befehl ROM |
$88C8 | Holt Zeichennummer und setzt Zeiger |
$88E2 | Befehl CREATE |
$88FC | Befehl CHANGE |
$894F | Holt Spriteblock und setzt Zeiger |
$896D | Befehl MOVE |
$89A8 | Holt Flag und verändert Carry-Bit |
$89B8 | Befehl OVER |
$89F5 | Befehl INVERS |
$8A16 | Holt Spritenummer und berechnet Byte |
$8A2B | Befehl SPRITE |
$8A9B | Befehl MOBEX |
$8AD3 | Befehl MULTI |
$8AE5 | Befehl CLEAR |
$8AFB | Befehl ERROR |
$8B17 | Befehl DIR |
$8B7F | Befehl BORDER |
$8B86 | Befehl PAPER |
$8B8D | Befehl INK |
$8B94 | Befehl START |
$8BA0 | Tabelle der xBasic-Befehlswörter |
$8C80 | Adressen der xBasic-Befehle-1 |
$8CE0 | Tabelle der xBasic-Fehlermeldungen |
$8DE0 | Adressen der Fehlermeldungen |
$8E00 | RU-Stack |
$8E80 | CS-Stack |
$C000 | Farb-RAM bei hochauflösender Grafik |
$C400 | Video-RAM bei UDG |
$C800 | Neuer Zeichensatz |
$E000 | Hires-Bitmap |
PROGRAMM : XBASIC 64 8000 9312 ----------------------------------- 8000 : AF 80 3D 80 C3 C2 CD 38 49 8008 : 30 93 11 20 20 2A 2A 2A 9B 8010 : 2A 20 43 4F 4D 4D 4F 44 0A 8018 : 4F 52 45 20 36 34 20 20 AC 8020 : 20 58 42 41 53 49 43 20 F2 8028 : 50 4C 55 53 20 2A 2A 2A AE 8030 : 2A 0D 0D 20 20 20 20 20 EC 8038 : 20 20 20 20 00 20 BC F6 56 8040 : 20 E1 FF F0 03 4C 72 FE C9 8048 : 20 A1 80 20 54 80 20 8B 3E 8050 : 80 4C 7B E3 A9 7F 8D 0D 38 8058 : DC 8D 0D DD 8D 00 DC A9 99 8060 : 08 8D 0E DC 8D 0E DD 8D 2A 8068 : 0F DC 8D 0F DD A2 00 8E 3B 8070 : 03 DC 8E 03 DD 8E 18 D4 42 8078 : CA 8E 02 DC A9 07 8D 00 AE 8080 : DD A9 3F 8D 02 DD A9 36 D5 8088 : 4C D7 FD 20 1B E5 A9 06 D7 8090 : 8D 86 02 20 A0 E5 A9 0E E1 8098 : 8D 21 D0 A9 06 8D 20 D0 0E 80A0 : 60 20 15 FD A9 48 8D 2E 85 80A8 : 03 A9 80 8D 2F 03 60 8E FB 80B0 : 16 D0 20 A3 FD 20 50 FD C9 80B8 : A2 00 A0 80 20 2D FE 20 3A 80C0 : A1 80 20 8B 80 20 5E FF 9D 80C8 : A0 00 98 85 FB A9 A0 85 DA 80D0 : FC A2 20 B1 FB 91 FB 88 A9 80D8 : D0 F9 E6 FC CA D0 F4 A9 58 80E0 : 36 85 01 58 20 35 81 20 16 80E8 : BF E3 A9 09 A0 80 20 2D 0D 80F0 : E4 A2 07 A0 FF C8 B9 4D C3 80F8 : 81 8D 11 81 8D 18 81 EE 32 8100 : 18 81 C8 B9 4D 81 8D 12 7D 8108 : 81 8D 19 81 C8 B9 4D 81 59 8110 : 8D 05 A6 C8 B9 4D 81 8D 0A 8118 : 06 A6 CA D0 D8 A9 60 8D B5 8120 : 14 A7 A9 EA 8D BB A6 8D 3C 8128 : BC A6 A9 4C 8D 04 A6 8D DA 8130 : A0 AA 4C 9D E3 A2 0B BD E7 8138 : 41 81 9D 00 03 CA 10 F7 58 8140 : 60 55 82 1F 85 7C A5 DE 60 8148 : 81 13 82 5B 82 42 A0 68 EC 8150 : 81 A1 AA 91 82 17 AB 95 39 8158 : 82 49 A9 1C 82 A1 A8 84 4E 8160 : 81 24 A0 8A 81 05 A6 9F 87 8168 : 81 A5 7B 48 A5 7A 48 20 33 8170 : 79 00 20 9C A6 20 D7 AA A5 8178 : 68 85 7A 68 85 7B 20 F8 F5 8180 : A8 4C 79 00 20 8A AD 4C 52 8188 : F7 B7 D0 03 4C 1D A8 20 80 8190 : 84 81 20 13 A6 38 A5 5F C1 8198 : E9 01 A4 60 4C 24 A8 A6 0D 81A0 : 7A A0 FF A9 01 85 0B CA 9D 81A8 : C8 E8 BD 00 02 38 F9 11 40 81B0 : 91 F0 F5 C9 80 D0 12 A4 90 81B8 : 71 A9 CC C8 99 FB 01 A5 13 81C0 : 0B C8 E8 99 FB 01 4C D1 39 81C8 : A5 A6 7A E6 0B C8 B9 10 3A 81D0 : 91 10 FA B9 11 91 D0 D2 E6 81D8 : BD 00 02 4C 07 A6 30 03 0C 81E0 : 4C F3 A6 C9 FF F0 F9 24 C0 81E8 : 0F 30 F5 C9 CC F0 03 4C BF 81F0 : 24 A7 C8 B1 5F AA 84 49 40 81F8 : A0 FF CA F0 08 C8 B9 11 38 8200 : 91 10 FA 30 F5 C8 B9 11 0D 8208 : 91 10 03 4C EF A6 20 47 2F 8210 : AB D0 F2 20 73 00 20 1C D4 8218 : 82 4C AE A7 D0 01 60 C9 8B 8220 : CC F0 06 20 79 00 4C EF 93 8228 : A7 20 73 00 C9 80 90 03 A5 8230 : 4C 08 AF 0A A8 B9 F8 91 0D 8238 : 48 B9 F7 91 48 4C 73 00 42 8240 : A9 03 8D 00 DD A9 04 8D 25 8248 : 88 02 A9 1B 8D 11 D0 A9 97 8250 : 15 8D 18 D0 60 20 40 82 59 8258 : 4C 7F 86 A9 00 85 0D 20 DB 8260 : 73 00 C9 CC F0 06 20 79 92 8268 : 00 4C 8D AE 20 73 00 C9 F9 8270 : 80 B0 03 4C 08 AF E9 80 39 8278 : 48 C9 10 B0 06 20 73 00 EE 8280 : 20 F1 AE 68 0A A8 B9 00 1E 8288 : 99 85 55 B9 01 99 4C DE 3C 8290 : AF D0 03 4C D7 AA D0 01 0A 8298 : 60 C9 CC F0 03 4C A4 AA A8 82A0 : 20 73 00 C9 02 F0 03 4C FF 82A8 : AD AA 20 73 00 20 BD 82 1E 82B0 : 86 D3 84 D6 20 6C E5 20 59 82B8 : F7 AE 4C 91 82 20 9E B7 5F 82C0 : E0 28 90 03 4C 48 B2 86 18 82C8 : 02 20 FD AE 20 9E B7 E0 C7 82D0 : 19 B0 F1 8A A8 A6 02 60 97 82D8 : 20 BD 82 86 F7 84 F8 20 10 82E0 : FD AE 4C BD 82 AD 88 02 BB 82E8 : 85 FC A5 F7 85 FB A5 F8 14 82F0 : 0A A8 B9 02 83 18 65 FB 83 82F8 : 85 FB B9 03 83 65 FC 85 AC 8300 : FC 60 00 00 28 00 50 00 F0 8308 : 78 00 A0 00 C8 00 F0 00 F9 8310 : 18 01 40 01 68 01 90 01 AC 8318 : B8 01 E0 01 08 02 30 02 FE 8320 : 58 02 80 02 A8 02 D0 02 BC 8328 : F8 02 20 03 48 03 70 03 EE 8330 : 98 03 C0 03 20 D8 82 84 B6 8338 : FA 86 F9 20 E5 82 20 FD E7 8340 : AE 4C 9E B7 18 A5 FB 69 24 8348 : 28 85 FB 90 02 E6 FC 60 50 8350 : 20 34 83 86 02 18 A5 F9 A7 8358 : 65 F7 AA CA E0 28 90 07 5C 8360 : A9 27 E5 F7 4C 69 83 A5 7E 8368 : F9 8D 80 83 18 A5 FA 65 1E 8370 : F8 C9 19 90 07 A9 19 E5 93 8378 : F8 4C 7E 83 A5 FA AA A0 C4 8380 : 0A A5 02 91 FB 88 10 FB 4C 8388 : 20 44 83 CA D0 F1 60 A5 6E 8390 : FB 85 FD A5 FC 29 03 09 B9 8398 : D8 85 FE 60 20 34 83 20 F0 83A0 : 8F 83 A5 FD 85 FB A5 FE E7 83A8 : 85 FC 4C 53 83 20 9E B7 4C 83B0 : 8E 20 D0 60 20 9E B7 8E 81 83B8 : 21 D0 60 20 9E B7 8E 86 4C 83C0 : 02 60 A5 2B 85 FB A5 2C E8 83C8 : 85 FC A0 03 C8 B1 FB D0 FF 83D0 : FB C8 98 A0 00 18 65 FB B8 83D8 : 91 2B C8 A5 FC 69 00 91 24 83E0 : 2B A0 00 B1 FB D0 17 48 C5 83E8 : C8 B1 FB D0 15 18 A5 FB 42 83F0 : 69 02 85 2D A5 FC 69 00 49 83F8 : 85 2E 68 4C 60 A6 48 C8 26 8400 : B1 FB 85 FC 68 85 FB 4C EB 8408 : E1 83 A5 2D A4 2E 85 14 B4 8410 : 84 15 C4 30 D0 02 C5 2F E9 8418 : B0 18 69 02 90 01 C8 85 AE 8420 : 22 84 23 20 50 84 20 84 04 8428 : 84 8A 10 07 20 8D 84 4C EF 8430 : 3F 84 60 98 30 06 20 9D CB 8438 : 84 4C 3F 84 20 A6 84 A9 DF 8440 : 0D 20 D2 FF A5 14 A4 15 CA 8448 : 18 69 07 90 C1 C8 B0 BE 8B 8450 : A0 00 B1 14 AA 29 7F 20 11 8458 : D2 FF C8 B1 14 A8 29 7F BC 8460 : F0 03 20 D2 FF 8A 10 11 EB 8468 : 98 30 0A A9 2A 20 D2 FF BF 8470 : 68 68 4C 3F 84 A9 25 D0 D3 8478 : 4E 98 10 04 A9 24 D0 47 24 8480 : 60 20 D2 FF A9 20 20 D2 67 8488 : FF A9 3D D0 3A A0 00 B1 D1 8490 : 22 AA C8 B1 22 A8 8A 20 41 8498 : 95 B3 4C A0 84 20 A6 BB 89 84A0 : 20 DD BD 4C 1E AB 20 C5 F3 84A8 : 84 A0 02 B1 22 85 25 88 27 84B0 : B1 22 85 24 88 B1 22 85 02 84B8 : 26 F0 0A B1 24 20 D2 FF 9E 84C0 : C8 C4 26 D0 F6 A9 22 4C 6C 84C8 : D2 FF 20 9E B7 8A 0A 0A 82 84D0 : 0A 0A 85 02 20 FD AE 20 6E 84D8 : 9E B7 8A 29 0F 05 02 A0 7C 84E0 : C0 84 FC A0 00 84 FB A2 8F 84E8 : 04 91 FB 88 D0 FB E6 FC 47 84F0 : CA D0 F6 A9 00 8D 00 DD 3D 84F8 : A9 3B 8D 11 D0 A9 08 8D 5A 8500 : 18 D0 60 A9 E0 85 FC A9 4F 8508 : 00 85 FB A8 A2 20 91 FB 48 8510 : 88 D0 FB E6 FC CA D0 F6 33 8518 : 60 A5 02 30 07 A9 FF 85 9A 8520 : 02 20 40 82 4C 83 A4 20 46 8528 : EB B7 E0 C8 90 03 4C 48 23 8530 : B2 86 F7 A5 15 F0 0A C9 6C 8538 : 02 B0 F3 A5 14 C9 40 B0 36 8540 : ED 60 20 27 85 18 A5 14 22 8548 : 29 F8 85 FB A5 15 69 E0 38 8550 : 85 FC 18 A5 F7 29 07 65 BE 8558 : FB 85 FB 90 02 E6 FC A5 BD 8560 : F7 4A 4A 29 FE AA 18 BD 55 8568 : 76 85 65 FB 85 FB BD 77 98 8570 : 85 65 FC 85 FC 60 00 00 6A 8578 : 40 01 80 02 C0 03 00 05 C7 8580 : 40 06 80 07 C0 08 00 0A 25 8588 : 40 0B 80 0C C0 0D 00 0F 82 8590 : 40 10 80 11 C0 12 00 14 DF 8598 : 40 15 80 16 C0 17 00 19 3D 85A0 : 40 1A 80 1B C0 1C 00 1E 9A 85A8 : 20 42 85 A5 14 29 07 AA FB 85B0 : BD B4 85 60 80 40 20 10 DF 85B8 : 08 04 02 01 20 A8 85 78 B1 85C0 : A2 35 86 01 A0 00 11 FB 05 85C8 : 91 FB A2 36 86 01 58 60 59 85D0 : 20 A8 85 78 A2 35 86 01 A5 85D8 : 49 FF 31 FB 4C C8 85 20 4E 85E0 : A8 85 78 A2 35 86 01 51 EB 85E8 : FB 4C C8 85 A9 E0 85 FC 9E 85F0 : A0 00 84 FB A2 20 78 A9 91 85F8 : 35 85 01 B1 FB 49 FF 91 93 8600 : FB 88 D0 F7 E6 FC CA D0 95 8608 : F2 4C CA 85 AE E8 07 E0 94 8610 : 20 90 05 A9 00 4C 39 86 43 8618 : EE E8 07 20 F8 A8 AD E8 9E 8620 : 07 0A 0A AA A5 7A 9D 0D C3 8628 : 90 A5 7B 9D 0E 90 A5 39 8C 8630 : 9D 0F 90 A5 3A 9D 10 90 20 8638 : 60 0A AA BD FE 92 85 22 DE 8640 : BD FF 92 4C 45 A4 AD E8 2D 8648 : 07 D0 05 A9 01 4C 39 86 92 8650 : 20 79 00 20 9E AD A5 61 E2 8658 : D0 20 AD E8 07 0A 0A AA FF 8660 : BD 0D 90 85 7A BD 0E 90 68 8668 : 85 7B BD 0F 90 85 39 BD 92 8670 : 10 90 85 3A 20 79 00 4C D7 8678 : 1C 82 CE E8 07 10 F5 A9 C2 8680 : 00 8D E8 07 8D E9 07 4C 3F 8688 : 8B E3 D0 05 A9 02 4C 39 28 8690 : 86 C9 3A F0 F7 A0 FF C8 BD 8698 : B1 7A F0 04 C9 3A D0 F7 E5 86A0 : 88 84 F9 A5 2B 85 FB A5 B7 86A8 : 2C 85 FC A0 00 B1 FB 85 72 86B0 : FD C8 B1 FB 85 FE A0 04 D8 86B8 : B1 FB C9 CC F0 18 A5 FD D5 86C0 : F0 09 85 FB A5 FE 85 FC 78 86C8 : 4C AB 86 85 FB A5 FE D0 C7 86D0 : F5 A9 03 4C 39 86 C8 B1 33 86D8 : FB C9 2E D0 E1 18 A5 FB CB 86E0 : 69 07 85 FB 90 02 E6 FC 5C 86E8 : A4 F9 B1 FB D1 7A D0 CE 46 86F0 : 88 10 F7 A5 FB 85 7A A5 54 86F8 : FC 85 7B 4C 3B A9 AD E9 AB 8700 : 07 C9 20 90 05 A9 04 4C 4C 8708 : 39 86 EE E9 07 A5 7A 85 10 8710 : FB A5 7B 85 FC 20 F8 A8 73 8718 : AD E9 07 0A 0A AA A5 7A 3E 8720 : 9D 8D 90 A5 7B 9D 8E 90 5D 8728 : A5 39 9D 8F 90 A5 3A 9D 1D 8730 : 90 90 A5 FB 85 7A A5 FC AE 8738 : 85 7B 20 79 00 4C 8A 86 4C 8740 : AD E9 07 D0 05 A9 05 4C 08 8748 : 39 86 CE E9 07 0A 0A AA F3 8750 : BD 8D 90 85 7A BD 8E 90 9A 8758 : 85 7B BD 8F 90 85 39 BD 92 8760 : 90 90 85 3A 20 79 00 4C 47 8768 : 1C 82 D0 05 A9 06 4C 39 09 8770 : 86 A9 FF 85 4A 20 8A A3 92 8778 : 9A C9 8D F0 04 A9 07 D0 C4 8780 : ED 68 68 68 68 68 20 79 06 8788 : 00 20 84 81 4C A3 A8 F0 50 8790 : DB AD E9 07 D0 04 A9 08 81 8798 : D0 D4 CE E9 07 4C 86 87 BF 87A0 : 20 9E B7 8A 29 0F 8D 18 C0 87A8 : D4 60 20 9E B7 E0 00 D0 AC 87B0 : 03 4C 48 B2 E0 04 B0 F9 27 87B8 : BD C1 87 85 FB A9 D4 85 54 87C0 : FC 60 00 07 0E 20 FD AE 05 87C8 : 20 9E B7 E0 10 B0 E2 60 14 87D0 : 20 AA 87 20 C5 87 8A 0A 02 87D8 : 0A 0A 0A 85 02 20 C5 87 62 87E0 : 8A 05 02 A0 05 91 FB 20 8F 87E8 : C5 87 8A 0A 0A 0A 0A 85 79 87F0 : 02 20 C5 87 8A 05 02 A0 7F 87F8 : 06 91 FB 60 A2 00 86 F8 08 8800 : 20 73 00 C9 30 F0 0B C9 5D 8808 : 31 D0 A6 BD B4 85 05 F8 80 8810 : 85 F8 E8 E0 08 D0 E9 60 D7 8818 : 20 AA 87 20 FC 87 A0 04 0A 8820 : A5 F8 91 FB 20 73 00 F0 A5 8828 : 04 C9 3A D0 84 4C 79 00 4A 8830 : A0 04 84 BA A9 7E 85 B8 61 8838 : A9 00 85 FB 84 FC 85 B7 78 8840 : 85 B9 20 C0 FF A6 B8 20 1A 8848 : C9 FF A2 19 A9 0D 20 D2 06 8850 : FF 20 E1 FF F0 2E A0 00 DB 8858 : B1 FB 85 67 29 3F 06 67 C9 8860 : 24 67 10 02 09 80 70 02 D7 8868 : 09 40 20 D2 FF C8 C0 28 8D 8870 : D0 E6 98 18 65 FB 85 FB 21 8878 : 90 02 E6 FC CA D0 CD A9 20 8880 : 0D 20 D2 FF 20 CC FF A9 0E 8888 : 7E 4C C3 FF A9 08 85 BA 83 8890 : 20 B4 FF A9 6F 85 B9 20 8A 8898 : 96 FF 20 A5 FF 20 D2 FF 37 88A0 : C9 0D D0 F6 4C AB FF A9 78 88A8 : 24 85 FB A9 FB 85 BB A9 F1 88B0 : 00 85 BC A9 01 85 B7 A9 46 88B8 : 08 85 BA A9 60 85 B9 20 C0 88C0 : D5 F3 A5 BA 20 B4 FF A5 42 88C8 : B9 20 96 FF A9 00 85 90 09 88D0 : A0 03 84 FB 20 A5 FF 85 CD 88D8 : FC A4 90 D0 2F 20 A5 FF EF 88E0 : A4 90 D0 28 A4 FB 88 D0 F3 88E8 : E9 A6 FC 20 CD BD A9 20 19 88F0 : 20 D2 FF 20 A5 FF A6 90 93 88F8 : D0 12 AA F0 06 20 D2 FF 47 8900 : 4C F3 88 A9 0D 20 D2 FF BA 8908 : A0 02 D0 C6 4C 42 F6 0D 83 8910 : 50 52 4F 47 52 41 4D 4D 45 8918 : 3A 20 00 0D 56 41 52 49 4F 8920 : 41 42 4C 45 3A 20 00 0D FD 8928 : 41 52 52 41 59 53 20 20 40 8930 : 3A 20 00 0D 53 54 52 49 D0 8938 : 4E 47 53 20 3A 20 00 0D C1 8940 : 46 52 45 45 20 20 20 20 6D 8948 : 3A 20 00 A0 89 A9 0F 20 09 8950 : 1E AB 38 A5 2D E5 2B AA 0B 8958 : A5 2E E5 2C 20 CD BD A0 BC 8960 : 89 A9 1B 20 1E AB 38 A5 F4 8968 : 2F E5 2D AA A5 30 E5 2E FA 8970 : 20 CD BD A0 89 A9 27 20 BD 8978 : 1E AB 38 A5 31 E5 2F AA 83 8980 : A5 32 E5 30 20 CD BD A0 66 8988 : 89 A9 33 20 1E AB 38 A5 22 8990 : 37 E5 33 AA A5 38 E5 34 F8 8998 : 20 CD BD A0 89 A9 3F 20 45 89A0 : 1E AB 38 A5 33 E5 31 AA D3 89A8 : A5 34 E5 32 20 CD BD 4C 27 89B0 : D7 AA 78 A2 33 86 01 A9 0D 89B8 : D0 85 FC A9 C8 85 FE A0 B5 89C0 : 00 84 FB 84 FD A2 08 B1 0A 89C8 : FB 91 FD 88 D0 F9 E6 FC 8F 89D0 : E6 FE CA D0 F2 A2 36 86 2C 89D8 : 01 58 60 A9 00 8D 00 DD 7B 89E0 : A9 C4 8D 88 02 A9 12 8D 31 89E8 : 18 D0 60 20 9E B7 86 FB 3E 89F0 : A0 00 84 FC 06 FB 26 FC 24 89F8 : 06 FB 26 FC 06 FB 26 FC F8 8A00 : A5 FC 69 C8 85 FC 60 20 99 8A08 : EB 89 84 02 20 FD AE 20 06 8A10 : 9E B7 A4 02 8A 91 FB C8 AA 8A18 : C0 08 D0 EE 60 20 9E B7 DF 8A20 : E0 03 90 03 4C 48 B2 86 E5 8A28 : 02 20 FD AE 20 9E B7 E0 27 8A30 : 15 B0 F1 8A 0A 18 65 02 66 8A38 : 86 02 65 02 A8 60 AD 00 9D 8A40 : DD 49 03 0A 0A 0A 0A 0A F1 8A48 : 0A 85 F8 A9 00 85 F7 60 55 8A50 : 20 9E B7 E0 02 B0 CD 60 67 8A58 : 20 50 8A E0 01 F0 1E 20 AF 8A60 : FD AE 20 EB 89 20 FD AE 29 8A68 : 20 9E B7 E0 08 B0 B5 86 CB 8A70 : 02 20 FD AE 20 9E B7 A4 F7 8A78 : 02 8A 91 FB 60 20 FD AE FF 8A80 : 20 97 8A 20 FD AE 20 1D 22 8A88 : 8A 84 02 20 FD AE 20 9E EC 8A90 : B7 8A A4 02 91 F7 60 20 90 8A98 : 3E 8A 20 9E B7 86 FB A0 D8 8AA0 : 00 84 FC 06 FB 26 FC 06 D3 8AA8 : FB 26 FC 06 FB 26 FC 06 A7 8AB0 : FB 26 FC 06 FB 26 FC 06 AF 8AB8 : FB 26 FC 18 A5 FB 65 F7 C8 8AC0 : 85 F7 A5 FC 65 F8 85 F8 70 8AC8 : 60 20 50 8A E0 01 F0 17 A6 8AD0 : 20 FD AE 20 EB 89 A5 FB 38 8AD8 : 85 F7 A5 FC 85 F8 20 FD FE 8AE0 : AE 20 EB 89 A0 07 60 20 CE 8AE8 : FD AE 20 97 8A A5 F7 85 F8 8AF0 : FD A5 F8 85 FE 20 FD AE F5 8AF8 : 20 97 8A A0 3E 60 20 C9 95 8B00 : 8A C0 07 D0 08 B1 F7 91 D7 8B08 : FB 88 10 F9 60 B1 FD 91 39 8B10 : F7 88 10 F9 60 20 C9 8A D2 8B18 : C0 07 D0 0A B1 F7 11 FB E8 8B20 : 91 FB 88 10 F7 60 B1 FD 18 8B28 : 11 F7 91 F7 88 10 F7 60 42 8B30 : 20 50 8A E0 01 F0 12 20 57 8B38 : FD AE 20 EB 89 A0 07 B1 2F 8B40 : FB 49 FF 91 FB 88 10 F7 46 8B48 : 60 20 FD AE 20 97 8A A0 38 8B50 : 3E B1 F7 49 FF 91 F7 88 0B 8B58 : 10 F7 60 20 9E B7 E0 08 BB 8B60 : 90 03 4C 48 B2 86 02 20 36 8B68 : FD AE 20 EB B7 86 F7 A6 1F 8B70 : 02 A5 15 F0 0D C9 02 B0 31 8B78 : E9 AD 10 D0 1D EC 8B 4C 56 8B80 : 8A 8B BD EC 8B 49 FF 2D 3A 8B88 : 10 D0 8D 10 D0 8A 0A AA 45 8B90 : A5 14 9D 00 D0 A5 F7 9D FC 8B98 : 01 D0 20 FD AE 20 9E B7 9F 8BA0 : 18 AD 88 02 69 03 8D B3 3E 8BA8 : 8B A9 F8 8D B2 8B 8A A6 F7 8BB0 : 02 9D F8 C7 20 FD AE 20 A5 8BB8 : 9E B7 8A A6 02 9D 27 D0 F5 8BC0 : 20 FD AE 20 9E B7 8A A6 AE 8BC8 : 02 C9 02 B0 95 C9 01 F0 D3 8BD0 : 0B BD EF 8B 49 FF 2D 1C A9 8BD8 : D0 4C E2 8B AD 1C D0 1D 32 8BE0 : EF 8B 8D 1C D0 AD 15 D0 EC 8BE8 : 1D EF 8B 8D 15 D0 60 01 ED 8BF0 : 02 04 08 10 20 40 80 20 3F 8BF8 : 9E B7 E0 08 90 03 4C 48 8E 8C00 : B2 86 02 20 FD AE 20 9E 8D 8C08 : B7 E0 04 B0 F1 8A 48 A6 28 8C10 : 02 29 01 F0 09 AD 1D D0 19 8C18 : 1D EF 8B 4C 26 8C BD EF 37 8C20 : 8B 49 FF 2D 1D D0 8D 1D BE 8C28 : D0 68 29 02 F0 09 AD 17 F3 8C30 : D0 1D EF 8B 4C 3F 8C BD 69 8C38 : EF 8B 49 FF 2D 17 D0 8D 29 8C40 : 17 D0 60 20 9E B7 8E 25 08 8C48 : D0 20 FD AE 20 9E B7 8E 70 8C50 : 26 D0 60 D0 04 A9 00 F0 80 8C58 : 0F 20 9E B7 E0 08 B0 9E 64 8C60 : BD EF 8B 49 FF 2D 15 D0 80 8C68 : 8D 15 D0 60 F0 F9 C9 AB 1D 8C70 : D0 13 A0 02 B1 2B 8D 00 DD 8C78 : C0 C8 B1 2B 8D 01 C0 20 92 8C80 : 73 00 4C 9B 8C 20 6B A9 45 8C88 : A6 14 8E 00 C0 A6 15 8E 8F 8C90 : 01 C0 C9 AB D0 D1 20 73 DC 8C98 : 00 F0 10 20 6B A9 A5 14 DB 8CA0 : 8D 02 C0 A5 15 8D 03 C0 5E 8CA8 : 4C B3 8C A9 FE 8D 02 C0 0C 8CB0 : 8D 03 C0 AD 03 C0 38 ED 98 8CB8 : 01 C0 90 AB D0 0B AD 02 D3 8CC0 : C0 38 ED 00 C0 90 A0 F0 0D 8CC8 : 9E AD 00 C0 85 14 AD 01 07 8CD0 : C0 85 15 20 13 A6 90 8F 64 8CD8 : A9 E5 8D 02 03 A9 8C 8D E2 8CE0 : 03 03 4C 06 8D AD 03 C0 0D 8CE8 : 38 ED 01 C0 90 0B D0 16 40 8CF0 : AD 02 C0 38 ED 00 C0 B0 19 8CF8 : 0D A9 83 A2 A4 8D 02 03 D4 8D00 : 8E 03 03 4C 86 E3 AD 00 98 8D08 : C0 85 14 AD 01 C0 85 15 9C 8D10 : 20 13 A6 A0 00 B1 5F 85 8E 8D18 : F7 C8 B1 5F 85 F8 B1 F7 A2 8D20 : D0 08 A9 FF 8D 01 C0 4C DB 8D28 : 37 8D A0 02 B1 F7 8D 00 9F 8D30 : C0 C8 B1 F7 8D 01 C0 20 E4 8D38 : 87 EA A5 CB C9 03 F0 B9 03 8D40 : A0 02 B1 5F 85 63 C8 B1 34 8D48 : 5F 85 62 A2 90 38 20 49 35 8D50 : BC 20 DF BD 20 87 B4 20 1D 8D58 : A6 B6 AA A0 00 E8 CA F0 6C 8D60 : 0A B1 22 99 00 02 C8 C9 C5 8D68 : 0D D0 F3 A9 00 99 00 02 E0 8D70 : A2 FF A0 01 4C 86 A4 20 26 8D78 : 79 00 F0 40 20 6B A9 A5 85 8D80 : 14 A6 15 85 3D 86 3E 20 1F 8D88 : FD AE 20 6B A9 A5 14 A6 B7 8D90 : 15 85 3F 86 40 A0 00 A9 65 8D98 : 2C D1 7A D0 11 20 FD AE CD 8DA0 : 20 6B A9 A5 14 A6 15 85 6B 8DA8 : 41 86 42 4C CB 8D A0 02 F6 8DB0 : B1 2B 85 41 C8 B1 2B 85 52 8DB8 : 42 4C D8 8D A9 0A 85 3D 84 8DC0 : 85 3F A9 00 85 3E 85 40 30 8DC8 : 4C AE 8D A5 3D C5 41 A5 D6 8DD0 : 3E E5 42 B0 03 4C 6D 8F 0F 8DD8 : 20 71 8F A0 01 B1 43 F0 35 8DE0 : 38 A9 FF 85 14 85 15 20 9F 8DE8 : 2E 8F 20 8E A6 4C 25 8E 36 8DF0 : A0 00 B1 43 AA C8 B1 43 A3 8DF8 : F0 1F 48 C8 A5 3D 91 43 B4 8E00 : C8 A5 3E 91 43 86 43 68 A3 8E08 : 85 44 A5 3D 18 65 3F 85 75 8E10 : 3D A5 3E 65 40 85 3E 90 A6 8E18 : D7 20 60 A6 4C 86 E3 E6 43 8E20 : 7A D0 02 E6 7B A0 00 B1 80 8E28 : 7A D0 13 A0 02 B1 7A F0 5D 8E30 : BF A5 7A 18 69 05 85 7A 2D 8E38 : 90 EB E6 7B B0 E7 C9 22 9D 8E40 : D0 0B 20 73 00 C9 00 F0 3D 8E48 : E2 C9 22 D0 F5 C9 89 F0 67 8E50 : 17 C9 8D F0 13 C9 A7 F0 CD 8E58 : 0F C9 8A F0 0B C9 CB D0 DC 8E60 : BE 20 73 00 C9 A4 D0 BF 90 8E68 : 20 73 00 B0 BA 84 14 84 81 8E70 : 15 E9 2F 90 33 AA A5 15 A1 8E78 : 85 22 C9 19 B0 ED A5 14 DD 8E80 : 0A 26 22 0A 26 22 65 14 98 8E88 : 85 14 A5 22 65 15 85 15 04 8E90 : 06 14 26 15 8A 65 14 85 FC 8E98 : 14 90 02 E6 15 C8 B1 7A A5 8EA0 : C9 20 F0 F9 C9 3A 90 C9 39 8EA8 : A5 14 C5 41 A5 15 E5 42 10 8EB0 : 90 3E 84 CE 20 2E 8F 38 7C 8EB8 : A2 90 20 49 BC 20 DD BD 93 8EC0 : A0 FF C8 B9 01 01 D0 FA 1A 8EC8 : A5 7A 85 5F A5 7B 85 60 05 8ED0 : 38 98 E5 CE 30 1C F0 36 BC 8ED8 : 85 CE A5 2D 85 5A 18 65 2A 8EE0 : CE 85 58 A5 2E 85 5B 69 8B 8EE8 : 00 85 59 20 B8 A3 F0 1E AE 8EF0 : 90 30 49 FF A8 C8 A2 00 46 8EF8 : A5 5F C5 2D A5 60 E5 2E B5 8F00 : B0 0C B1 5F 81 5F E6 5F 7C 8F08 : D0 EE E6 60 D0 EA A0 00 FC 8F10 : B9 01 01 F0 05 91 7A C8 01 8F18 : D0 F6 20 71 8F 20 73 00 61 8F20 : 90 FB A0 00 C9 2C D0 02 1B 8F28 : A9 89 AA 4C 29 8E A5 3D E2 8F30 : A6 3E 85 63 86 62 A5 43 5C 8F38 : A6 44 85 22 86 23 A0 02 AE 8F40 : B1 22 C5 14 C8 B1 22 E5 65 8F48 : 15 B0 25 A0 00 B1 22 AA 7E 8F50 : C8 B1 22 86 22 85 23 B1 88 8F58 : 22 F0 15 A5 63 65 3F 85 56 8F60 : 63 A5 62 65 40 85 62 B0 F6 8F68 : 04 C9 FA 90 D1 4C 48 B2 27 8F70 : 60 20 33 A5 18 A5 22 69 6C 8F78 : 02 85 2D A5 23 69 00 85 C5 8F80 : 2E A5 41 A6 42 85 14 86 54 8F88 : 15 20 13 A6 A5 5F 85 43 39 8F90 : 86 44 60 D0 04 A2 0A D0 8A 8F98 : 03 20 9E B7 8E CA 8F A9 1B 8FA0 : AC 8D 04 03 A9 8F 8D 05 CC 8FA8 : 03 4C AE A7 68 48 C9 A1 A5 8FB0 : D0 39 88 B1 7A D0 0D A9 2B 8FB8 : 7C 8D 04 03 A9 A5 8D 05 64 8FC0 : 03 4C 74 A4 A5 14 A6 15 5B 8FC8 : 18 69 01 90 01 E8 85 63 1B 8FD0 : 86 62 A2 90 38 20 49 BC 65 8FD8 : 20 DF BD 20 87 B4 20 82 FF 8FE0 : B7 84 C6 B1 22 99 77 02 92 8FE8 : 88 10 F8 4C 7C A5 20 8A CA 8FF0 : AD 20 F7 B7 A5 14 85 F7 A3 8FF8 : A5 15 85 F8 20 FD AE 20 95 9000 : 8A AD 20 F7 B7 A0 00 A5 34 9008 : 14 91 F7 C8 A5 15 91 F7 35 9010 : 60 07 08 0A 00 07 08 0A A4 9018 : 00 07 08 0A 00 07 08 0A 4C 9020 : 00 07 08 0A 00 07 08 0A 54 9028 : 00 07 08 0A 00 07 08 0A 5C 9030 : 00 07 08 0A 00 07 08 0A 64 9038 : 00 07 08 0A 00 07 08 0A 6C 9040 : 00 07 08 0A 00 07 08 0A 74 9048 : 00 07 08 0A 00 07 08 0A 7C 9050 : 00 07 08 0A 00 07 08 0A 84 9058 : 00 07 08 0A 00 07 08 0A 8C 9060 : 00 07 08 0A 00 07 08 0A 94 9068 : 00 07 08 0A 00 07 08 0A 9C 9070 : 00 07 08 0A 00 07 08 0A A4 9078 : 00 07 08 0A 00 07 08 0A AC 9080 : 00 07 08 0A 00 07 08 0A B4 9088 : 00 07 08 0A 00 07 08 0A BC 9090 : 00 0C 08 0A 00 0C 08 0A 6E 9098 : 00 0C 08 0A 00 0C 08 0A 76 90A0 : 00 0C 08 0A 00 0C 08 0A 7E 90A8 : 00 0C 08 0A 00 0C 08 0A 86 90B0 : 00 0C 08 0A 00 0C 08 0A 8E 90B8 : 00 0C 08 0A 00 0C 08 0A 96 90C0 : 00 0C 08 0A 00 0C 08 0A 9E 90C8 : 00 0C 08 0A 00 0C 08 0A A6 90D0 : 00 0C 08 0A 00 0C 08 0A AE 90D8 : 00 0C 08 0A 00 0C 08 0A B6 90E0 : 00 0C 08 0A 00 0C 08 0A BE 90E8 : 00 0C 08 0A 00 0C 08 0A C6 90F0 : 00 0C 08 0A 00 0C 08 0A CE 90F8 : 00 0C 08 0A 00 0C 08 0A D6 9100 : 00 0C 08 0A 00 0C 08 0A DE 9108 : 00 0C 08 0A 00 0C 08 0A E6 9110 : 00 54 45 58 D4 41 54 A8 91 9118 : 46 49 4C CC 50 41 49 4E 80 9120 : D4 42 4F 52 44 45 D2 50 8E 9128 : 41 50 45 D2 49 4E CB 52 18 9130 : 45 53 43 55 C5 44 55 4D 09 9138 : D0 48 52 C7 43 4C 45 41 E8 9140 : D2 53 45 D4 52 45 53 45 CF 9148 : D4 49 4E 56 45 52 D3 52 FA 9150 : 45 56 45 52 D3 52 45 50 E1 9158 : 45 41 D4 55 4E 54 49 CC 64 9160 : 4A 55 4D D0 43 41 4C CC CB 9168 : 53 55 42 45 4E C4 45 58 70 9170 : 49 D4 42 52 41 4E 43 C8 23 9178 : 56 4F CC 45 4E 56 45 4C 97 9180 : 4F 50 C5 57 41 56 C5 48 C2 9188 : 43 4F 50 D9 45 52 52 4F 91 9190 : D2 44 49 D2 4D 45 4D 4F 04 9198 : 52 D9 43 48 52 43 4F 50 CE 91A0 : D9 52 41 CD 45 58 42 41 4F 91A8 : 53 49 C3 43 52 45 41 54 F6 91B0 : C5 43 48 41 4E 47 C5 4D 22 91B8 : 4F 56 C5 4F 56 45 D2 4E 05 91C0 : 45 47 41 54 C5 53 50 52 61 91C8 : 49 54 C5 4D 4F 42 45 D8 24 91D0 : 4D 55 4C 54 C9 4B 49 4C 1A 91D8 : CC 44 45 4C 45 54 C5 52 54 91E0 : 45 4E 55 4D 42 45 D2 41 67 91E8 : 55 54 CF 44 4F 4B C5 50 EB 91F0 : 52 4F 43 45 44 55 52 C5 27 91F8 : 00 3F 82 07 AF 4F 83 9B D4 9200 : 83 AC 83 B3 83 BA 83 C1 D0 9208 : 83 09 84 C9 84 02 85 BB 50 9210 : 85 CF 85 DE 85 EB 85 0B 9E 9218 : 86 45 86 89 86 FD 86 3F 04 9220 : 87 69 87 8E 87 9F 87 CF 43 9228 : 87 17 88 2F 88 8B 88 A6 97 9230 : 88 4A 89 B1 89 DA 89 07 19 9238 : AF 06 8A 57 8A FD 8A 14 63 9240 : 8B 2F 8B 5A 8B F6 8B 42 B4 9248 : 8C 52 8C 6B 8C 79 8D 92 7E 9250 : 8F ED 8F 3A A9 54 4F 4F 1A 9258 : 20 4D 41 4E 59 20 52 45 A3 9260 : 50 45 41 54 20 2E 2E 2E B6 9268 : 55 4E 54 49 CC 55 4E 54 7C 9270 : 49 4C 20 57 49 54 48 4F C9 9278 : 55 54 20 52 45 50 45 41 B8 9280 : D4 4D 49 53 53 49 4E 47 FF 9288 : 20 4C 41 42 45 CC 4C 41 D5 9290 : 42 45 4C 20 4E 4F 54 20 7D 9298 : 46 4F 55 4E C4 54 4F 4F 70 92A0 : 20 4D 41 4E 59 20 43 41 A7 92A8 : 4C 4C 20 2E 2E 2E 53 55 35 92B0 : 42 45 4E C4 53 55 42 45 34 92B8 : 4E 44 20 57 49 54 48 4F 12 92C0 : 55 54 20 43 41 4C CC 4D F4 92C8 : 49 53 53 49 4E 47 20 4C F1 92D0 : 49 4E 45 4E 55 4D 42 45 AF 92D8 : D2 45 58 49 54 20 57 49 C2 92E0 : 54 48 4F 55 54 20 47 4F D9 92E8 : 53 55 C2 42 52 41 4E 43 CE 92F0 : 48 20 57 49 54 48 4F 55 B7 92F8 : 54 20 43 41 4C CC 55 92 FB 9300 : 6D 92 81 92 8E 92 9D 92 82 9308 : B4 92 C7 92 D9 92 EB 92 50 9310 : FF FF 41