;https://forth-standard.org/standard/core/AND
;C AND x1 x2 -- x3 logical AND
FORTHWORD "AND"
-ANDD AND @PSP+,TOS
+ANDD AND @PSP+,TOS
MOV @IP+,PC
.ENDIF
FORTHWORD "{SD_TOOLS}"
MOV @IP+,PC
-; read logical sector and dump it
+; read logical sector and dump it
; ----------------------------------;
FORTHWORD "SECTOR." ; sector. -- don't forget to add decimal point to your sector number (if < 65536)
; ----------------------------------;
.word NUMGREATER ; ud -- display the double number
.word TYPE,SPACE ;
.word lit,SD_BUF
- .word lit,200h,DUMP ;
+ .word lit,200h,DUMP ;
.word EXIT ;
; ----------------------------------;
CLUSTER1 RRA W ; shift one right multiplicator
JNC CLUSTERLOOP ; if not carry
ADD &OrgClusters,X ; add OrgClusters = sector of virtual cluster 0 (word size)
- MOV X,0(PSP)
+ MOV X,0(PSP)
ADDC #0,TOS ; don't forget carry
JMP SECTOR ; jump to a defined word
; ----------------------------------;
\
\ it's an example:
+\ https://forth-standard.org/standard/core/DUP
+\ DUP x -- x x duplicate top of stack
+ [UNDEFINED] DUP
+ [IF]
+ CODE DUP
+BW1 SUB #2,PSP \ 2 push old TOS..
+ MOV TOS,0(PSP) \ 3 ..onto stack
+ MOV @IP+,PC \ 4
+ ENDCODE
+
+\ https://forth-standard.org/standard/core/qDUP
+\ ?DUP x -- 0 | x x DUP if nonzero
+ CODE ?DUP
+ CMP #0,TOS \ 2 test for TOS nonzero
+ 0<> ?GOTO BW1 \ 2
+ MOV @IP+,PC \ 4
+ ENDCODE
+ [THEN]
+
+\ https://forth-standard.org/standard/core/DROP
+\ DROP x -- drop top of stack
+ [UNDEFINED] DROP
+ [IF]
+ CODE DROP
+ MOV @PSP+,TOS \ 2
+ MOV @IP+,PC \ 4
+ ENDCODE
+ [THEN]
+
[UNDEFINED] =
[IF]
\ https://forth-standard.org/standard/core/Equal
\ because the risk of crushing thereafter.
\ Interpreting mode as below is required:
\ ------------------------------------------------------------------------------
- 4 = \ from SYS
+ DUP 4 = \ TOS = SYS value
[IF] \ if PUC event is <SW1+RESET> or -1 SYS
+ DROP
RST_RET \ remove definitions above
LOAD" SD_TEST.4TH" \ load a file to test the SD_Card driver
[ELSE] \ else
- ' SYS $0A + EXECUTE \ resumes WARM to remove definitions above
+ ' SYS $0A + EXECUTE \ return to n SYS to remove definitions above
[THEN] \ then
ECHO
-10000 89,0 POL2REC . . ; sin, cos -->
-10000 75,0 POL2REC . . ; sin, cos -->
-10000 60,0 POL2REC . . ; sin, cos -->
-10000 45,0 POL2REC . . ; sin, cos -->
-10000 30,0 POL2REC . . ; sin, cos -->
-10000 15,0 POL2REC . . ; sin, cos -->
-10000 1,0 POL2REC . . ; sin, cos -->
+10000 89,0 POL2REC . . ; sin, cos -->
+10000 75,0 POL2REC . . ; sin, cos -->
+10000 60,0 POL2REC . . ; sin, cos -->
+10000 45,0 POL2REC . . ; sin, cos -->
+10000 30,0 POL2REC . . ; sin, cos -->
+10000 15,0 POL2REC . . ; sin, cos -->
+10000 1,0 POL2REC . . ; sin, cos -->
\ module phase -- X Y
-16384 30,0 POL2REC SWAP . . ; x, y -->
-16384 45,0 POL2REC SWAP . . ; x, y -->
-16384 60,0 POL2REC SWAP . . ; x, y -->
+16384 30,0 POL2REC SWAP . . ; x, y -->
+16384 45,0 POL2REC SWAP . . ; x, y -->
+16384 60,0 POL2REC SWAP . . ; x, y -->
\
-10000 -89,0 POL2REC . . ; sin, cos -->
-10000 -75,0 POL2REC . . ; sin, cos -->
-10000 -60,0 POL2REC . . ; sin, cos -->
-10000 -45,0 POL2REC . . ; sin, cos -->
-10000 -30,0 POL2REC . . ; sin, cos -->
-10000 -15,0 POL2REC . . ; sin, cos -->
-10000 -1,0 POL2REC . . ; sin, cos -->
+10000 -89,0 POL2REC . . ; sin, cos -->
+10000 -75,0 POL2REC . . ; sin, cos -->
+10000 -60,0 POL2REC . . ; sin, cos -->
+10000 -45,0 POL2REC . . ; sin, cos -->
+10000 -30,0 POL2REC . . ; sin, cos -->
+10000 -15,0 POL2REC . . ; sin, cos -->
+10000 -1,0 POL2REC . . ; sin, cos -->
\ module phase -- X Y
-16384 -30,0 POL2REC SWAP . . ; x, y -->
-16384 -45,0 POL2REC SWAP . . ; x, y -->
-16384 -60,0 POL2REC SWAP . . ; x, y -->
+16384 -30,0 POL2REC SWAP . . ; x, y -->
+16384 -45,0 POL2REC SWAP . . ; x, y -->
+16384 -60,0 POL2REC SWAP . . ; x, y -->
\
--10000 89,0 POL2REC . . ; sin, cos -->
--10000 75,0 POL2REC . . ; sin, cos -->
--10000 60,0 POL2REC . . ; sin, cos -->
--10000 45,0 POL2REC . . ; sin, cos -->
--10000 30,0 POL2REC . . ; sin, cos -->
--10000 15,0 POL2REC . . ; sin, cos -->
--10000 1,0 POL2REC . . ; sin, cos -->
+-10000 89,0 POL2REC . . ; sin, cos -->
+-10000 75,0 POL2REC . . ; sin, cos -->
+-10000 60,0 POL2REC . . ; sin, cos -->
+-10000 45,0 POL2REC . . ; sin, cos -->
+-10000 30,0 POL2REC . . ; sin, cos -->
+-10000 15,0 POL2REC . . ; sin, cos -->
+-10000 1,0 POL2REC . . ; sin, cos -->
\ module phase -- X Y
--16384 30,0 POL2REC SWAP . . ; x, y -->
--16384 45,0 POL2REC SWAP . . ; x, y -->
--16384 60,0 POL2REC SWAP . . ; x, y -->
+-16384 30,0 POL2REC SWAP . . ; x, y -->
+-16384 45,0 POL2REC SWAP . . ; x, y -->
+-16384 60,0 POL2REC SWAP . . ; x, y -->
\
--10000 -89,0 POL2REC . . ; sin, cos -->
--10000 -75,0 POL2REC . . ; sin, cos -->
--10000 -60,0 POL2REC . . ; sin, cos -->
--10000 -45,0 POL2REC . . ; sin, cos -->
--10000 -30,0 POL2REC . . ; sin, cos -->
--10000 -15,0 POL2REC . . ; sin, cos -->
--10000 -1,0 POL2REC . . ; sin, cos -->
+-10000 -89,0 POL2REC . . ; sin, cos -->
+-10000 -75,0 POL2REC . . ; sin, cos -->
+-10000 -60,0 POL2REC . . ; sin, cos -->
+-10000 -45,0 POL2REC . . ; sin, cos -->
+-10000 -30,0 POL2REC . . ; sin, cos -->
+-10000 -15,0 POL2REC . . ; sin, cos -->
+-10000 -1,0 POL2REC . . ; sin, cos -->
\ module phase -- X Y
--16384 -30,0 POL2REC SWAP . . ; x, y -->
--16384 -45,0 POL2REC SWAP . . ; x, y -->
--16384 -60,0 POL2REC SWAP . . ; x, y -->
+-16384 -30,0 POL2REC SWAP . . ; x, y -->
+-16384 -45,0 POL2REC SWAP . . ; x, y -->
+-16384 -60,0 POL2REC SWAP . . ; x, y -->
\
-2 1 REC2POL F. . ; phase module -->
-2 -1 REC2POL F. . ; phase module -->
-20 10 REC2POL F. . ; phase module -->
-20 -10 REC2POL F. . ; phase module -->
-200 100 REC2POL F. . ; phase module -->
-100 -100 REC2POL F. . ; phase module -->
-2000 1000 REC2POL F. . ; phase module -->
-1000 -1000 REC2POL F. . ; phase module -->
-16000 8000 REC2POL F. . ; phase module -->
-16000 -8000 REC2POL F. . ; phase module -->
-16000 0 REC2POL F. . ; phase module -->
-0 16000 REC2POL F. . ; phase module -->
+2 1 REC2POL F. . ; phase module -->
+2 -1 REC2POL F. . ; phase module -->
+20 10 REC2POL F. . ; phase module -->
+20 -10 REC2POL F. . ; phase module -->
+200 100 REC2POL F. . ; phase module -->
+100 -100 REC2POL F. . ; phase module -->
+2000 1000 REC2POL F. . ; phase module -->
+1000 -1000 REC2POL F. . ; phase module -->
+16000 8000 REC2POL F. . ; phase module -->
+16000 -8000 REC2POL F. . ; phase module -->
+16000 0 REC2POL F. . ; phase module -->
+0 16000 REC2POL F. . ; phase module -->
\ 16384 -8192 REC2POL F. . ; --> abort
\ 0 0 REC2POL F. . ; --> abort
--2 1 REC2POL F. . ; phase module -->
--2 -1 REC2POL F. . ; phase module -->
--20 10 REC2POL F. . ; phase module -->
--20 -10 REC2POL F. . ; phase module -->
--200 100 REC2POL F. . ; phase module -->
--100 -100 REC2POL F. . ; phase module -->
--2000 1000 REC2POL F. . ; phase module -->
--1000 -1000 REC2POL F. . ; phase module -->
--16000 8000 REC2POL F. . ; phase module -->
--16000 -8000 REC2POL F. . ; phase module -->
-16000 0 REC2POL F. . ; phase module -->
-0 16000 REC2POL F. . ; phase module -->
+-2 1 REC2POL F. . ; phase module -->
+-2 -1 REC2POL F. . ; phase module -->
+-20 10 REC2POL F. . ; phase module -->
+-20 -10 REC2POL F. . ; phase module -->
+-200 100 REC2POL F. . ; phase module -->
+-100 -100 REC2POL F. . ; phase module -->
+-2000 1000 REC2POL F. . ; phase module -->
+-1000 -1000 REC2POL F. . ; phase module -->
+-16000 8000 REC2POL F. . ; phase module -->
+-16000 -8000 REC2POL F. . ; phase module -->
+16000 0 REC2POL F. . ; phase module -->
+0 16000 REC2POL F. . ; phase module -->
\ 16384 -8192 REC2POL F. . ; --> abort
\ 0 0 REC2POL F. . ; --> abort
-10000 89,0 POL2REC REC2POL ROT . F.
-10000 75,0 POL2REC REC2POL ROT . F.
-10000 60,0 POL2REC REC2POL ROT . F.
-10000 45,0 POL2REC REC2POL ROT . F.
-10000 30,0 POL2REC REC2POL ROT . F.
-10000 26,565 POL2REC REC2POL ROT . F.
-10000 15,0 POL2REC REC2POL ROT . F.
-10000 14,036 POL2REC REC2POL ROT . F.
-10000 7,125 POL2REC REC2POL ROT . F.
-10000 1,0 POL2REC REC2POL ROT . F.
+10000 89,0 POL2REC REC2POL ROT . F.
+10000 75,0 POL2REC REC2POL ROT . F.
+10000 60,0 POL2REC REC2POL ROT . F.
+10000 45,0 POL2REC REC2POL ROT . F.
+10000 30,0 POL2REC REC2POL ROT . F.
+10000 26,565 POL2REC REC2POL ROT . F.
+10000 15,0 POL2REC REC2POL ROT . F.
+10000 14,036 POL2REC REC2POL ROT . F.
+10000 7,125 POL2REC REC2POL ROT . F.
+10000 1,0 POL2REC REC2POL ROT . F.
MARKER {RC5TOLCD} \ restore the state before MARKER definition
\ \ {UARTI2CS}-2 = RET_ADR: by default MARKER_DOES does CALL #RET_ADR
8 ALLOT \ {UARTI2CS} make room to save previous INI_APP address
- \ {RC5TOLCD}+2 make room to save previous WDT_TIM_0_VEC
- \ {RC5TOLCD}+4 make room to save previous IR_VEC
- \ {RC5TOLCD}+6 make room for 20 us count loop.
+\ {RC5TOLCD}+2 make room to save previous WDT_TIM_0_VEC
+\ {RC5TOLCD}+4 make room to save previous IR_VEC
+\ {RC5TOLCD}+6 make room for 20 us count loop.
[UNDEFINED] TSTBIT
[IF]
\ ----------------------------------\
RST_SET
-ECHO
-
MARKER {RC5TOLCD} \ restore the state before MARKER definition
\ \ {UARTI2CS}-2 = RET_ADR: by default MARKER_DOES does CALL #RET_ADR
; BOOT.4th for MSP_EXP430FR5994
; --------
- [UNDEFINED] =
+ [UNDEFINED] DUP
+ [IF]
+ CODE DUP
+BW1 SUB #2,R15
+ MOV R14,0(R15)
+ MOV @R13+,R0
+ ENDCODE
+
+ CODE ?DUP
+ CMP #0,R14
+ 0<> ?GOTO BW1
+ MOV @R13+,R0
+ ENDCODE
+ [THEN]
+
+ [UNDEFINED] DROP
+ [IF]
+ CODE DROP
+ MOV @R15+,R14
+ MOV @R13+,R0
+ ENDCODE
+ [THEN]
+
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- $04 =
+ DUP 4 =
[IF]
+ DROP
RST_RET
- NOECHO LOAD" SD_TEST.4TH"
+ LOAD" SD_TEST.4TH"
[ELSE]
' SYS $0A + EXECUTE
[THEN]
[UNDEFINED] CR [IF]
DEFER CR
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
MOV @R13+,R0
ENDCODE
- CODE DO
+ CODE DO
SUB #2,R15
MOV R14,0(R15)
ADD #2,&$1DC8
[UNDEFINED] CASE [IF]
: CASE 0 ; IMMEDIATE
-
+
: OF
- 1+
- >R
+ 1+
+ >R
POSTPONE OVER POSTPONE =
- POSTPONE IF
- POSTPONE DROP
- R>
- ; IMMEDIATE
+ POSTPONE IF
+ POSTPONE DROP
+ R>
+ ; IMMEDIATE
: ENDOF
- >R
- POSTPONE ELSE
- R>
- ; IMMEDIATE
+ >R
+ POSTPONE ELSE
+ R>
+ ; IMMEDIATE
: ENDCASE
POSTPONE DROP
- 0 DO
- POSTPONE THEN
- LOOP
- ; IMMEDIATE
+ 0 DO
+ POSTPONE THEN
+ LOOP
+ ; IMMEDIATE
[THEN]
[UNDEFINED] S_ [IF]
CMP #0,&$1DBC
0= IF MOV @R13+,R0
THEN
- COLON
+ COLON
$1B
POSTPONE LITERAL
POSTPONE EMIT
[THEN]
: BAD_MHz
- $20 DUP EMIT
+ $20 DUP EMIT
ABORT" only for 1,4,8,16,24 MHz MCLK!"
;
ESC [8;42;80t
41 0 DO CR LOOP
ESC [H
-
+
$1800 @ DUP >R
." target MCLK = " 1000 U/ . ." MHz" CR
." choose your baudrate:" CR
R> CASE
#24000 OF $4 $0
ENDOF
- 24000 <
+ 24000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
R> CASE
#24000 OF $4 $EE00 ENDOF
#20000 OF $4 $0 ENDOF
- 20000 <
+ 20000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
#24000 OF $6 $0 ENDOF
#20000 OF $5 $0 ENDOF
#16000 OF $4 $0 ENDOF
- 16000 <
+ 16000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
#20000 OF $6 $D600 ENDOF
#16000 OF $5 $4900 ENDOF
#12000 OF $4 $0 ENDOF
- 12000 <
+ 12000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
#16000 OF $8 $D600 ENDOF
#12000 OF $6 $AA00 ENDOF
#8000 OF $5 $9200 ENDOF
- 8000 <
+ 8000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
#12000 OF $0D $0200 ENDOF
#8000 OF $8 $D600 ENDOF
#4000 OF $4 $4900 ENDOF
- 4000 <
+ 4000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
#8000 OF $11 $4A00 ENDOF
#4000 OF $8 $D600 ENDOF
#2000 OF $4 $4900 ENDOF
- 2000 <
+ 2000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
#4000 OF $11 $4A00 ENDOF
#2000 OF $8 $D600 ENDOF
#1000 OF $4 $4900 ENDOF
- 1000 <
+ 1000 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
#2000 OF $11 $4A00 ENDOF
#1000 OF $8 $D600 ENDOF
#500 OF $4 $4900 ENDOF
- 500 <
+ 500 <
IF OVR_BAUDS
THEN BAD_MHz
ENDCASE
." Change baudrate in Teraterm, save its setup, then reset target."
;
- CHNGBAUD
+ CHNGBAUD
39797 ,
39797 ,
- [UNDEFINED] DABS
+ [UNDEFINED] DABS
[IF]
CODE DABS
AND #-1,R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
[THEN]
RST_SET
-
+
CODE TSTBIT
MOV @R15+,R9
AND @R9,R14
[IF] ; MSP430FRxxxx with hardware_MPY
- [UNDEFINED] HOLDS
+ [UNDEFINED] HOLDS
[IF]
CODE HOLDS
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] F#S
+ [UNDEFINED] F#S
[IF]
CODE F#S
MOV 2(R15),R9
[ELSE] ; no hardware multiplier
- [UNDEFINED] HOLDS
+ [UNDEFINED] HOLDS
[IF]
CODE HOLDS
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] F#S
+ [UNDEFINED] F#S
[IF]
CODE F#S
MOV @R15,R12
CMP #0,R14
0<> WHILE
CMP #14,R13
- 0= UNTIL
+ 0= UNTIL
THEN
CALL #XSCALE
MOV R9,0(R15)
THEN
MOV R9,R12
CMP #0,R12
- S< IF
+ S< IF
XOR #-1,R12
ADD #1,R12
THEN
0= IF
CMP #0,R8
0= IF
- LO2HI
+ LO2HI
ABORT" null inputs!"
HI2LO
THEN
THEN
CALL #XSCALE
POPM #2,R13
- GOTO FW1
+ GOTO FW1
BEGIN
RRA R9
FW1 RRA R12
ENDCODE
- [UNDEFINED] F.
+ [UNDEFINED] F.
[IF]
CODE F.
MOV R14,R12
RST_SET
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] ROT
+ [UNDEFINED] ROT
[IF]
CODE ROT
MOV @R15,R10
ECHO
-10000 89,0 POL2REC . . ; sin, cos -->
-10000 75,0 POL2REC . . ; sin, cos -->
-10000 60,0 POL2REC . . ; sin, cos -->
-10000 45,0 POL2REC . . ; sin, cos -->
-10000 30,0 POL2REC . . ; sin, cos -->
-10000 15,0 POL2REC . . ; sin, cos -->
-10000 1,0 POL2REC . . ; sin, cos -->
-16384 30,0 POL2REC SWAP . . ; x, y -->
-16384 45,0 POL2REC SWAP . . ; x, y -->
-16384 60,0 POL2REC SWAP . . ; x, y -->
-
-10000 -89,0 POL2REC . . ; sin, cos -->
-10000 -75,0 POL2REC . . ; sin, cos -->
-10000 -60,0 POL2REC . . ; sin, cos -->
-10000 -45,0 POL2REC . . ; sin, cos -->
-10000 -30,0 POL2REC . . ; sin, cos -->
-10000 -15,0 POL2REC . . ; sin, cos -->
-10000 -1,0 POL2REC . . ; sin, cos -->
-16384 -30,0 POL2REC SWAP . . ; x, y -->
-16384 -45,0 POL2REC SWAP . . ; x, y -->
-16384 -60,0 POL2REC SWAP . . ; x, y -->
-
--10000 89,0 POL2REC . . ; sin, cos -->
--10000 75,0 POL2REC . . ; sin, cos -->
--10000 60,0 POL2REC . . ; sin, cos -->
--10000 45,0 POL2REC . . ; sin, cos -->
--10000 30,0 POL2REC . . ; sin, cos -->
--10000 15,0 POL2REC . . ; sin, cos -->
--10000 1,0 POL2REC . . ; sin, cos -->
--16384 30,0 POL2REC SWAP . . ; x, y -->
--16384 45,0 POL2REC SWAP . . ; x, y -->
--16384 60,0 POL2REC SWAP . . ; x, y -->
-
--10000 -89,0 POL2REC . . ; sin, cos -->
--10000 -75,0 POL2REC . . ; sin, cos -->
--10000 -60,0 POL2REC . . ; sin, cos -->
--10000 -45,0 POL2REC . . ; sin, cos -->
--10000 -30,0 POL2REC . . ; sin, cos -->
--10000 -15,0 POL2REC . . ; sin, cos -->
--10000 -1,0 POL2REC . . ; sin, cos -->
--16384 -30,0 POL2REC SWAP . . ; x, y -->
--16384 -45,0 POL2REC SWAP . . ; x, y -->
--16384 -60,0 POL2REC SWAP . . ; x, y -->
-
-
-2 1 REC2POL F. . ; phase module -->
-2 -1 REC2POL F. . ; phase module -->
-20 10 REC2POL F. . ; phase module -->
-20 -10 REC2POL F. . ; phase module -->
-200 100 REC2POL F. . ; phase module -->
-100 -100 REC2POL F. . ; phase module -->
-2000 1000 REC2POL F. . ; phase module -->
-1000 -1000 REC2POL F. . ; phase module -->
-16000 8000 REC2POL F. . ; phase module -->
-16000 -8000 REC2POL F. . ; phase module -->
-16000 0 REC2POL F. . ; phase module -->
-0 16000 REC2POL F. . ; phase module -->
-
--2 1 REC2POL F. . ; phase module -->
--2 -1 REC2POL F. . ; phase module -->
--20 10 REC2POL F. . ; phase module -->
--20 -10 REC2POL F. . ; phase module -->
--200 100 REC2POL F. . ; phase module -->
--100 -100 REC2POL F. . ; phase module -->
--2000 1000 REC2POL F. . ; phase module -->
--1000 -1000 REC2POL F. . ; phase module -->
--16000 8000 REC2POL F. . ; phase module -->
--16000 -8000 REC2POL F. . ; phase module -->
-16000 0 REC2POL F. . ; phase module -->
-0 16000 REC2POL F. . ; phase module -->
-
-10000 89,0 POL2REC REC2POL ROT . F.
-10000 75,0 POL2REC REC2POL ROT . F.
-10000 60,0 POL2REC REC2POL ROT . F.
-10000 45,0 POL2REC REC2POL ROT . F.
-10000 30,0 POL2REC REC2POL ROT . F.
-10000 26,565 POL2REC REC2POL ROT . F.
-10000 15,0 POL2REC REC2POL ROT . F.
-10000 14,036 POL2REC REC2POL ROT . F.
-10000 7,125 POL2REC REC2POL ROT . F.
-10000 1,0 POL2REC REC2POL ROT . F.
+10000 89,0 POL2REC . . ; sin, cos -->
+10000 75,0 POL2REC . . ; sin, cos -->
+10000 60,0 POL2REC . . ; sin, cos -->
+10000 45,0 POL2REC . . ; sin, cos -->
+10000 30,0 POL2REC . . ; sin, cos -->
+10000 15,0 POL2REC . . ; sin, cos -->
+10000 1,0 POL2REC . . ; sin, cos -->
+16384 30,0 POL2REC SWAP . . ; x, y -->
+16384 45,0 POL2REC SWAP . . ; x, y -->
+16384 60,0 POL2REC SWAP . . ; x, y -->
+
+10000 -89,0 POL2REC . . ; sin, cos -->
+10000 -75,0 POL2REC . . ; sin, cos -->
+10000 -60,0 POL2REC . . ; sin, cos -->
+10000 -45,0 POL2REC . . ; sin, cos -->
+10000 -30,0 POL2REC . . ; sin, cos -->
+10000 -15,0 POL2REC . . ; sin, cos -->
+10000 -1,0 POL2REC . . ; sin, cos -->
+16384 -30,0 POL2REC SWAP . . ; x, y -->
+16384 -45,0 POL2REC SWAP . . ; x, y -->
+16384 -60,0 POL2REC SWAP . . ; x, y -->
+
+-10000 89,0 POL2REC . . ; sin, cos -->
+-10000 75,0 POL2REC . . ; sin, cos -->
+-10000 60,0 POL2REC . . ; sin, cos -->
+-10000 45,0 POL2REC . . ; sin, cos -->
+-10000 30,0 POL2REC . . ; sin, cos -->
+-10000 15,0 POL2REC . . ; sin, cos -->
+-10000 1,0 POL2REC . . ; sin, cos -->
+-16384 30,0 POL2REC SWAP . . ; x, y -->
+-16384 45,0 POL2REC SWAP . . ; x, y -->
+-16384 60,0 POL2REC SWAP . . ; x, y -->
+
+-10000 -89,0 POL2REC . . ; sin, cos -->
+-10000 -75,0 POL2REC . . ; sin, cos -->
+-10000 -60,0 POL2REC . . ; sin, cos -->
+-10000 -45,0 POL2REC . . ; sin, cos -->
+-10000 -30,0 POL2REC . . ; sin, cos -->
+-10000 -15,0 POL2REC . . ; sin, cos -->
+-10000 -1,0 POL2REC . . ; sin, cos -->
+-16384 -30,0 POL2REC SWAP . . ; x, y -->
+-16384 -45,0 POL2REC SWAP . . ; x, y -->
+-16384 -60,0 POL2REC SWAP . . ; x, y -->
+
+
+2 1 REC2POL F. . ; phase module -->
+2 -1 REC2POL F. . ; phase module -->
+20 10 REC2POL F. . ; phase module -->
+20 -10 REC2POL F. . ; phase module -->
+200 100 REC2POL F. . ; phase module -->
+100 -100 REC2POL F. . ; phase module -->
+2000 1000 REC2POL F. . ; phase module -->
+1000 -1000 REC2POL F. . ; phase module -->
+16000 8000 REC2POL F. . ; phase module -->
+16000 -8000 REC2POL F. . ; phase module -->
+16000 0 REC2POL F. . ; phase module -->
+0 16000 REC2POL F. . ; phase module -->
+
+-2 1 REC2POL F. . ; phase module -->
+-2 -1 REC2POL F. . ; phase module -->
+-20 10 REC2POL F. . ; phase module -->
+-20 -10 REC2POL F. . ; phase module -->
+-200 100 REC2POL F. . ; phase module -->
+-100 -100 REC2POL F. . ; phase module -->
+-2000 1000 REC2POL F. . ; phase module -->
+-1000 -1000 REC2POL F. . ; phase module -->
+-16000 8000 REC2POL F. . ; phase module -->
+-16000 -8000 REC2POL F. . ; phase module -->
+16000 0 REC2POL F. . ; phase module -->
+0 16000 REC2POL F. . ; phase module -->
+
+10000 89,0 POL2REC REC2POL ROT . F.
+10000 75,0 POL2REC REC2POL ROT . F.
+10000 60,0 POL2REC REC2POL ROT . F.
+10000 45,0 POL2REC REC2POL ROT . F.
+10000 30,0 POL2REC REC2POL ROT . F.
+10000 26,565 POL2REC REC2POL ROT . F.
+10000 15,0 POL2REC REC2POL ROT . F.
+10000 14,036 POL2REC REC2POL ROT . F.
+10000 7,125 POL2REC REC2POL ROT . F.
+10000 1,0 POL2REC REC2POL ROT . F.
: ABORT_TEST \ flag --
$0D EMIT \ return to column 1
-POSTPONE {CORETEST} \ remove all test words
+POSTPONE {CORETEST} \ remove all test words
ABORT" {CORE_ANS} word set not found !"
;
: CORETESTSUCCESS
$0D EMIT \ -- $0D return to column 1
$0A BASE ! \ set decimal
-{CORETEST} \ remove all test words
+{CORETEST} \ remove all test words
." CORETEST + COREPLUSTEST success!" \ true --
;
\ DO 0 LOOP
\ ELSE 0 DO DROP LOOP THEN
\ THEN ;
-\
+\
\ : ERROR \ ( C-ADDR U -- ) DISPLAY AN ERROR MESSAGE FOLLOWED BY
\ \ THE LINE THAT HAD THE ERROR.
\ TYPE SOURCE TYPE CR \ DISPLAY LINE CORRESPONDING TO ERROR
: ACCEPT-TEST
CR ." PLEASE TYPE UP TO 80 CHARACTERS: "
-ABUF 80 \ ACCEPT \ JMT
+ABUF 80 \ ACCEPT \ JMT
['] ACCEPT >BODY \ JMT: find default part of deferred ACCEPT
EXECUTE \ JMT: execute ACCEPT
CR ." RECEIVED: " [CHAR] " EMIT
\ but WITHOUT ANY WARRANTY; without even the implied warranty of
\ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-\ The tests are not claimed to be comprehensive or correct
+\ The tests are not claimed to be comprehensive or correct
\ -----------------------------------------------------------------------------
\ The tests are based on John Hayes test program for the core word set
\ n2 is the value of I in a DO ... +LOOP
\ n3 is a test value
\ If n2=n3 then return n1-n2 else return 1
-: SET-I ( n1 n2 n3 -- n1-n2 | 1 )
+: SET-I ( n1 n2 n3 -- n1-n2 | 1 )
OVER = IF - ELSE 2DROP 1 THEN
;
T{ : GC5 S" A string"2DROP ; GC5 -> }T
T{ ( A comment)1234 -> 1234 }T
T{ : PB1 CR ." You should see 2345: "." 2345"( A comment) CR ; PB1 -> }T
-
+
\ -----------------------------------------------------------------------------
TESTING number prefixes # $ % and 'c' character input
\ Adapted from the Forth 200X Draft 14.5 document
T{ HERE 5 ALLOT -5 ALLOT HERE = -> <TRUE> }T
T{ HERE 0 ALLOT HERE = -> <TRUE> }T
-
+
\ -----------------------------------------------------------------------------
CR .( End of additional Core tests) \ "
MARKER {DOUBLE}
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] 0<
+ [UNDEFINED] 0<
[IF]
CODE 0<
ADD R14,R14
ENDCODE
[THEN]
- [UNDEFINED] DROP
+ [UNDEFINED] DROP
[IF]
CODE DROP
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] DUP
+ [UNDEFINED] DUP
[IF]
CODE DUP
BW1 SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] NIP
+ [UNDEFINED] NIP
[IF]
CODE NIP
ADD #2,R15
ENDCODE
[THEN]
- [UNDEFINED] UM/MOD
+ [UNDEFINED] UM/MOD
[IF]
CODE UM/MOD
PUSH #DROP
$180E @ 0< ; test the switch: $8000 / SYMETRIC DIVISION
[IF] ; $8000 DIVISION
- [UNDEFINED] FM/MOD
+ [UNDEFINED] FM/MOD
[IF]
CODE FM/MOD
MOV R14,R12
XOR #-1,R14
ADD #1,R14
THEN
-
+
CMP #0,0(R15)
0<> IF
CMP #1,R14
[THEN]
[ELSE] ; SYMETRIC DIVISION
- [UNDEFINED] SM/REM
+ [UNDEFINED] SM/REM
[IF]
CODE SM/REM
MOV R14,R12
[THEN]
[THEN]
- [UNDEFINED] /
+ [UNDEFINED] /
[IF]
: /
>R DUP 0< R>
[ $180E @ 0< ] [IF]
FM/MOD
- [ELSE]
+ [ELSE]
SM/REM
[THEN]
NIP
;
[THEN]
- [UNDEFINED] @
+ [UNDEFINED] @
[IF]
CODE @
MOV @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] !
+ [UNDEFINED] !
[IF]
CODE !
MOV @R15+,0(R14)
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] ROT
+ [UNDEFINED] ROT
[IF]
CODE ROT
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] <
+ [UNDEFINED] <
[IF]
CODE <
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] TO
+ [UNDEFINED] TO
[IF]
CODE TO
BIS #$200,R2
ENDCODE
[THEN]
- [UNDEFINED] DOES>
+ [UNDEFINED] DOES>
[IF]
- CODE DOES>
+ CODE DOES>
MOV &$1DB8,R10
MOV #$1285,0(R10)
MOV R13,2(R10)
ENDCODE
[THEN]
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
CODE SPACES
CMP #0,R14
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] 2@
+ [UNDEFINED] 2@
[IF]
CODE 2@
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] 2!
+ [UNDEFINED] 2!
[IF]
CODE 2!
MOV @R15+,0(R14)
ENDCODE
[THEN]
- [UNDEFINED] 2DUP
+ [UNDEFINED] 2DUP
[IF]
CODE 2DUP
SUB #4,R15
ENDCODE
[THEN]
- [UNDEFINED] 2DROP
+ [UNDEFINED] 2DROP
[IF]
CODE 2DROP
ADD #2,R15
ENDCODE
[THEN]
- [UNDEFINED] 2SWAP
+ [UNDEFINED] 2SWAP
[IF]
CODE 2SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] 2OVER
+ [UNDEFINED] 2OVER
[IF]
CODE 2OVER
SUB #4,R15
ENDCODE
[THEN]
- [UNDEFINED] 2>R
+ [UNDEFINED] 2>R
[IF]
CODE 2>R
PUSH @R15+
ENDCODE
[THEN]
- [UNDEFINED] 2R@
+ [UNDEFINED] 2R@
[IF]
CODE 2R@
SUB #4,R15
ENDCODE
[THEN]
- [UNDEFINED] 2R>
+ [UNDEFINED] 2R>
[IF]
CODE 2R>
SUB #4,R15
[THEN]
- [UNDEFINED] D.
+ [UNDEFINED] D.
[IF]
CODE D.
MOV R14,R12
ENDCODE
[THEN]
- [UNDEFINED] 2ROT
+ [UNDEFINED] 2ROT
[IF]
CODE 2ROT
MOV 8(R15),R9
ENDCODE
[THEN]
- [UNDEFINED] D>S
+ [UNDEFINED] D>S
[IF]
CODE D>S
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] D0=
+ [UNDEFINED] D0=
[IF]
CODE D0=
CMP #0,R14
ENDCODE
[THEN]
- [UNDEFINED] D0<
+ [UNDEFINED] D0<
[IF]
CODE D0<
CMP #0,R14
ENDCODE
[THEN]
- [UNDEFINED] D=
+ [UNDEFINED] D=
[IF]
CODE D=
CMP R14,2(R15)
ENDCODE
[THEN]
- [UNDEFINED] D<
+ [UNDEFINED] D<
[IF]
CODE D<
CMP R14,2(R15)
ENDCODE
[THEN]
- [UNDEFINED] DU<
+ [UNDEFINED] DU<
[IF]
CODE DU<
CMP R14,2(R15)
ENDCODE
[THEN]
- [UNDEFINED] D+
+ [UNDEFINED] D+
[IF]
CODE D+
BW1 ADD @R15+,2(R15)
ENDCODE
[THEN]
- [UNDEFINED] D-
+ [UNDEFINED] D-
[IF]
CODE D-
SUB @R15+,2(R15)
ENDCODE
[THEN]
- [UNDEFINED] DNEGATE
+ [UNDEFINED] DNEGATE
[IF]
CODE DNEGATE
XOR #-1,0(R15)
ENDCODE
[THEN]
- [UNDEFINED] DABS
+ [UNDEFINED] DABS
[IF]
CODE DABS
CMP #0,R14
ENDCODE
[THEN]
- [UNDEFINED] D2/
+ [UNDEFINED] D2/
[IF]
CODE D2/
RRA R14
ENDCODE
[THEN]
- [UNDEFINED] D2*
+ [UNDEFINED] D2*
[IF]
CODE D2*
ADD @R15,0(R15)
ENDCODE
[THEN]
- [UNDEFINED] DMAX
+ [UNDEFINED] DMAX
[IF]
: DMAX
2OVER 2OVER
;
[THEN]
- [UNDEFINED] DMIN
+ [UNDEFINED] DMIN
[IF]
: DMIN
2OVER 2OVER
D< IF
2DROP
- ELSE
+ ELSE
2>R 2DROP 2R>
THEN
;
[THEN]
RST_SET
-
+
CODE TSTBIT
MOV @R15+,R9
AND @R9,R14
[IF] ; MSP430FRxxxx with hardware_MPY
- [UNDEFINED] M*/
+ [UNDEFINED] M*/
[IF]
CODE M*/
MOV 4(R15),&$4D4
THEN
[ELSE] ; no hardware multiplier
- [UNDEFINED] M*/
+ [UNDEFINED] M*/
[IF]
CODE M*/
MOV #0,R6
CMP #0,R10
0<> IF
SUB #1,0(R15)
- SUBC #0,R14
+ SUBC #0,R14
THEN
THEN
- THEN
- MOV #$40B6,R5
- MOV #$40C4,R6
+ THEN
+ MOV #$40B6,R5
+ MOV #$40C4,R6
MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] 2VARIABLE
+ [UNDEFINED] 2VARIABLE
[IF]
: 2VARIABLE
- CREATE
+ CREATE
HI2LO
ADD #4,&$1DC8
MOV @R1+,R13
ENDCODE
[THEN]
- [UNDEFINED] 2CONSTANT
+ [UNDEFINED] 2CONSTANT
[IF]
: 2CONSTANT
CREATE
;
[THEN]
- [UNDEFINED] 2VALUE
+ [UNDEFINED] 2VALUE
[IF]
: 2VALUE
CREATE , ,
BIT #$200,R2
0= IF
MOV #2@,R0
- THEN
+ THEN
BIC #$200,R2
MOV #2!,R0
ENDCODE
[THEN]
- [UNDEFINED] 2LITERAL
+ [UNDEFINED] 2LITERAL
[IF]
CODE 2LITERAL
BIS #$200,R2
MOV #LITERAL,R0
ENDCODE IMMEDIATE
[THEN]
-
- [UNDEFINED] D.R
+
+ [UNDEFINED] D.R
[IF]
: D.R
- >R SWAP OVER DABS <# #S ROT SIGN #>
- R> OVER - SPACES TYPE
+ >R SWAP OVER DABS <# #S ROT SIGN #>
+ R> OVER - SPACES TYPE
;
[THEN]
; Complement to pass DOUBLE TESTS
- [UNDEFINED] VARIABLE
+ [UNDEFINED] VARIABLE
[IF]
- : VARIABLE
+ : VARIABLE
CREATE
HI2LO
MOV #$1287,-4(R10)
ENDCODE
[THEN]
- [UNDEFINED] CONSTANT
+ [UNDEFINED] CONSTANT
[IF]
- : CONSTANT
+ : CONSTANT
CREATE
HI2LO
MOV R14,-2(R10)
ENDCODE
[THEN]
- [UNDEFINED] CELLS
+ [UNDEFINED] CELLS
[IF]
CODE CELLS
ADD R14,R14
ENDCODE
[THEN]
- [UNDEFINED] DEPTH
+ [UNDEFINED] DEPTH
[IF]
CODE DEPTH
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] DO
+ [UNDEFINED] DO
[IF]
HDNCODE XDO
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
HDNCODE XPLOO
ADD R14,0(R1)
MOV @R15+,R14
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] I
+ [UNDEFINED] I
[IF]
CODE I
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] 0=
+ [UNDEFINED] 0=
[IF]
CODE 0=
SUB #1,R14
ENDCODE
[THEN]
- [UNDEFINED] SOURCE
+ [UNDEFINED] SOURCE
[IF]
CODE SOURCE
SUB #4,R15
ENDCODE
[THEN]
- [UNDEFINED] >IN
+ [UNDEFINED] >IN
[IF]
$1DC6 CONSTANT >IN
[THEN]
- [UNDEFINED] 1+
+ [UNDEFINED] 1+
[IF]
CODE 1+
ADD #1,R14
ENDCODE
[THEN]
- [UNDEFINED] CHAR
+ [UNDEFINED] CHAR
[IF]
: CHAR
$20 WORD 1+ C@
;
[THEN]
- [UNDEFINED] [CHAR]
+ [UNDEFINED] [CHAR]
[IF]
: [CHAR]
CHAR POSTPONE LITERAL
; IMMEDIATE
[THEN]
- [UNDEFINED] 2/
+ [UNDEFINED] 2/
[IF]
CODE 2/
RRA R14
ENDCODE
[THEN]
- [UNDEFINED] INVERT
+ [UNDEFINED] INVERT
[IF]
CODE INVERT
XOR #-1,R14
ENDCODE
[THEN]
- [UNDEFINED] RSHIFT
+ [UNDEFINED] RSHIFT
[IF]
CODE RSHIFT
MOV @R15+,R10
ENDCODE
[THEN]
- [UNDEFINED] S>D
+ [UNDEFINED] S>D
[IF]
: S>D
DUP 0<
;
[THEN]
- [UNDEFINED] 1-
+ [UNDEFINED] 1-
[IF]
CODE 1-
SUB #1,R14
ENDCODE
[THEN]
- [UNDEFINED] NEGATE
+ [UNDEFINED] NEGATE
[IF]
CODE NEGATE
XOR #-1,R14
ENDCODE
[THEN]
- [UNDEFINED] HERE
+ [UNDEFINED] HERE
[IF]
CODE HERE
MOV #$4032,R0
ENDCODE
[THEN]
- [UNDEFINED] CHARS
+ [UNDEFINED] CHARS
[IF]
CODE CHARS
MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] MOVE
+ [UNDEFINED] MOVE
[IF]
CODE MOVE
MOV R14,R10
ENDCODE
[THEN]
- [UNDEFINED] DECIMAL
+ [UNDEFINED] DECIMAL
[IF]
CODE DECIMAL
MOV #$0A,&$1DBE
ENDCODE
[THEN]
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
$1DBE CONSTANT BASE
[THEN]
[UNDEFINED] ( ; )
[IF]
- : (
+ : (
')' WORD DROP
; IMMEDIATE
[THEN]
; IMMEDIATE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
DEFER CR
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
CODE BEGIN
MOV #$4032,R0
ENDCODE IMMEDIATE
-
+
CODE UNTIL
MOV #$40AC,R9
BW1 ADD #4,&$1DC8
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
CODE AGAIN
MOV #$40B2,R9
GOTO BW1
ENDCODE IMMEDIATE
[THEN]
-
+
[UNDEFINED] WHILE
[IF]
: WHILE
POSTPONE IF SWAP
; IMMEDIATE
[THEN]
-
+
[UNDEFINED] REPEAT
[IF]
: REPEAT
MOV @R13+,R0
ENDCODE
- CODE DO
+ CODE DO
SUB #2,R15
MOV R14,0(R15)
ADD #2,&$1DC8
ENDCODE
[THEN]
- [UNDEFINED] 2/
+ [UNDEFINED] 2/
[IF]
CODE 2/
RRA R14
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[UNDEFINED] CASE
[IF]
: CASE
- 0
+ 0
; IMMEDIATE
: OF
- 1+
- >R
- POSTPONE OVER
+ 1+
+ >R
+ POSTPONE OVER
POSTPONE =
- POSTPONE IF
- POSTPONE DROP
- R>
- ; IMMEDIATE
+ POSTPONE IF
+ POSTPONE DROP
+ R>
+ ; IMMEDIATE
: ENDOF
- >R
- POSTPONE ELSE
- R>
- ; IMMEDIATE
+ >R
+ POSTPONE ELSE
+ R>
+ ; IMMEDIATE
: ENDCASE
POSTPONE DROP
- 0 DO
- POSTPONE THEN
- LOOP
- ; IMMEDIATE
+ 0 DO
+ POSTPONE THEN
+ LOOP
+ ; IMMEDIATE
[THEN]
[UNDEFINED] S_
MOV R9,0(R15)
MOV.B @R9+,R14
RRA R14
- MOV R14,R10
+ MOV R14,R10
BIT #1,R10
- 0= IF
+ 0= IF
ADD #1,R10
THEN
ADD R9,R10
ESC [7m
CR ." FastForth V"
- $180A @
+ $180A @
0 <# # $08 HOLD # '.' HOLD #S #> TYPE
." for MSP430FR"
HERE
ELSE ." DTC=3,"
THEN
THEN
- $20 EMIT
+ $20 EMIT
$180C @ U. $08 EMIT
." -Entry word set, "
$1800 @ 0 1000 UM/MOD U.
ESC [0m
CR
- ." /COUNTED-STRING = 255" CR
+ ." /COUNTED-STRING = 255" CR
." /HOLD = 34" CR
." /PAD = 84" CR
." ADDRESS-UNIT-BITS = 16" CR
2* DUP 0< IF 2* DUP 0< IF ." DOUBLE and "
THEN ." Q15.16 numbers handling" CR
ELSE 2* DUP 0< IF ." DOUBLE numbers handling" CR
- THEN
- THEN
- 2* DUP 0< IF ." MSP430_X assembler with TI's syntax"
+ THEN
+ THEN
+ 2* DUP 0< IF ." MSP430_X assembler with TI's syntax"
CR 2* 2*
ELSE
- 2* DUP
+ 2* DUP
0< IF ." MSP430 Assembler"
2* DUP
0< IF ." , 20bits extended addresses,"
THEN
." with TI's syntax" CR
THEN DROP
- [DEFINED] FORTH [IF] ." word-set management" CR
+ [DEFINED] FORTH [IF] ." word-set management" CR
[THEN]
[DEFINED] LOAD" [IF] ." SD_CARD Load" CR
[THEN]
- [DEFINED] BOOT [IF] ." SD_CARD Bootloader" CR
+ [DEFINED] BOOT [IF] ." SD_CARD Bootloader" CR
[THEN]
- [DEFINED] READ" [IF] ." SD_CARD Read/Write" CR
+ [DEFINED] READ" [IF] ." SD_CARD Read/Write" CR
[THEN]
$1DCA
@ ?DUP
WHILE
DUP $180C @ 2* -
- CR ESC [7m
+ CR ESC [7m
[DEFINED] FORTH
[IF] DUP BODY>SQNFA
[ELSE] OVER @
THEN
[THEN]
TYPE ." word-set"
- ESC [0m CR
+ ESC [0m CR
WORDS CR
REPEAT
[THEN]
[DEFINED] {DOUBLE} [IF] CR ." DOUBLE word set"
[THEN]
- [DEFINED] {UTILITY} [IF] CR ." UTILITY"
+ [DEFINED] {UTILITY} [IF] CR ." UTILITY"
[THEN]
- [DEFINED] {FIXPOINT} [IF] CR ." Q15.16 ADD SUB MUL DIV"
+ [DEFINED] {FIXPOINT} [IF] CR ." Q15.16 ADD SUB MUL DIV"
[THEN]
[DEFINED] {CORDIC} [IF] CR ." CORDIC engine"
[THEN]
- [DEFINED] {SD_TOOLS} [IF] CR ." SD_TOOLS"
+ [DEFINED] {SD_TOOLS} [IF] CR ." SD_TOOLS"
[THEN]
- [DEFINED] {RTC} [IF] CR ." RTC utility"
+ [DEFINED] {RTC} [IF] CR ." RTC utility"
[THEN]
- [DEFINED] {UARTI2CS} [IF] CR ." UART to I2C_FastForth bridge"
+ [DEFINED] {UARTI2CS} [IF] CR ." UART to I2C_FastForth bridge"
[THEN]
CR
0 SYS
COLON
$0D EMIT
ABORT" FastForth V3.9 please!"
- [UNDEFINED] WRITE
+ [UNDEFINED] WRITE
[IF]
1 ABORT" no SD_CARD_READ_WRITE addon!"
[THEN]
MARKER {SD_TEST}
- [UNDEFINED] EXIT
+ [UNDEFINED] EXIT
[IF]
CODE EXIT
MOV @R1+,R13
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
ENDCODE
[THEN]
- [UNDEFINED] 0=
+ [UNDEFINED] 0=
[IF]
CODE 0=
SUB #1,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] BEGIN
+ [UNDEFINED] BEGIN
[IF]
CODE BEGIN
MOV #$4032,R0
MOV @R13+,R0
ENDCODE
- CODE DO
+ CODE DO
SUB #2,R15
MOV R14,0(R15)
ADD #2,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] I
+ [UNDEFINED] I
[IF]
CODE I
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] MAX
+ [UNDEFINED] MAX
[IF]
CODE MAX
CMP @R15,R14
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] SPACE
+ [UNDEFINED] SPACE
[IF]
: SPACE
$20 EMIT ;
[THEN]
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
CODE SPACES
CMP #0,R14
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] DUP
+ [UNDEFINED] DUP
[IF]
CODE DUP
BW1 SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] CONSTANT
+ [UNDEFINED] CONSTANT
[IF]
- : CONSTANT
+ : CONSTANT
CREATE
HI2LO
MOV R14,-2(R10)
ENDCODE
[THEN]
- [UNDEFINED] STATE
+ [UNDEFINED] STATE
[IF]
$1DBC CONSTANT STATE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
-
+
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] U.R
+ [UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
$1DBE CONSTANT BASE
[THEN]
- [UNDEFINED] DUMP
+ [UNDEFINED] DUMP
[IF]
CODE DUMP
PUSH R13
DO I C@ 3 U.R LOOP
SPACE
I $10 + I 8 +
- DO I C@ 3 U.R LOOP
+ DO I C@ 3 U.R LOOP
SPACE SPACE
I $10 + I
DO I C@ $7E MIN $20 MAX EMIT LOOP
;
[THEN]
- [UNDEFINED] HERE
+ [UNDEFINED] HERE
[IF]
CODE HERE
MOV #BEGIN,R0
[THEN]
- [UNDEFINED] DROP
+ [UNDEFINED] DROP
[IF]
CODE DROP
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] 1+
+ [UNDEFINED] 1+
[IF]
CODE 1+
ADD #1,R14
ENDCODE
[THEN]
- [UNDEFINED] = [IF]
+ [UNDEFINED] =
+ [IF]
CODE =
SUB @R15+,R14
0<> IF
ENDCODE
[THEN]
- [UNDEFINED] CASE
+ [UNDEFINED] CASE
[IF]
: CASE
- 0
+ 0
; IMMEDIATE
: OF
- 1+
- >R
- POSTPONE OVER
+ 1+
+ >R
+ POSTPONE OVER
POSTPONE =
- POSTPONE IF
- POSTPONE DROP
- R>
- ; IMMEDIATE
+ POSTPONE IF
+ POSTPONE DROP
+ R>
+ ; IMMEDIATE
: ENDOF
- >R
- POSTPONE ELSE
- R>
- ; IMMEDIATE
+ >R
+ POSTPONE ELSE
+ R>
+ ; IMMEDIATE
: ENDCASE
POSTPONE DROP
- 0 DO
- POSTPONE THEN
- LOOP
- ; IMMEDIATE
+ 0 DO
+ POSTPONE THEN
+ LOOP
+ ; IMMEDIATE
[THEN]
CODE SD_EMIT
MOV @R13+,R0
ENDCODE
-: DOESWRITE
+ : DOESWRITE
['] SD_EMIT IS EMIT
$4000 HERE OVER - DUMP
['] EMIT >BODY IS EMIT
CLOSE
- ." , done"
-;
+ ;
: SD_TEST
ECHO
- $0D EMIT
+ $0D EMIT CR
+ ." ----------" CR
+ ." Bootloader" CR
+ ." ----------" CR
." ? Fast Forth Specifs" CR
." 0 Set date and time" CR
- ." 1 Load {UTILTY} words" CR
+ ." 1 Load {UTILITY} words" CR
." 2 Load {SD_TOOLS} words" CR
." 3 Load {CORE_COMP} words" CR
." 4 Load ANS core tests" CR
- ." 5 Load a 10k program " CR
- ." 6 Read only this source file" CR
+ ." 5 Load a source file to make 10k program" CR
+ ." 6 Read it only (47k)" CR
." 7 write FORTH dump in YOURFILE.TXT" CR
." 8 append FORTH dump to YOURFILE.TXT" CR
- ." 9 Load TST_WORDS" CR
- ." your choice : "
- KEY DUP EMIT CR
+ ." 9 delete YOURFILE.TXT" CR
+ ." your choice: "
+ KEY DUP EMIT
{SD_TEST}
CASE
'?' OF LOAD" FF_SPECS.4TH" ENDOF
'1' OF LOAD" UTILITY.4TH" ENDOF
'2' OF LOAD" SD_TOOLS.4TH" ENDOF
'3' OF LOAD" CORE_ANS.4TH" ENDOF
- '4' OF LOAD" CORETEST.4TH" ENDOF
+ '4' OF LOAD" CORETEST.4TH" ENDOF
'5' OF LOAD" PROG10K.4TH" ENDOF
'6' OF READ" PROG10K.4TH"
BEGIN READ
- UNTIL ." , done" ENDOF
- '7' OF ECHO
- WRITE" YOURFILE.TXT"
+ UNTIL ENDOF
+ '7' OF WRITE" YOURFILE.TXT"
DOESWRITE ENDOF
- '8' OF ECHO
- APPEND" YOURFILE.TXT"
+ '8' OF APPEND" YOURFILE.TXT"
DOESWRITE ENDOF
- '9' OF LOAD" TSTWORDS.4TH" ENDOF
+ '9' OF DEL" YOURFILE.TXT" ENDOF
ENDCASE
+ CR
;
- [THEN]
-
SD_TEST
[UNDEFINED] VARIABLE
[IF]
- : VARIABLE
+ : VARIABLE
CREATE
HI2LO
MOV #$1287,-4(R10)
[UNDEFINED] CONSTANT
[IF]
- : CONSTANT
+ : CONSTANT
CREATE
HI2LO
MOV R14,-2(R10)
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
[UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
ADD #2,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
CODE THEN
MOV &$1DC8,0(R14)
MOV @R15+,R14
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] BEGIN
+ [UNDEFINED] BEGIN
[IF]
CODE BEGIN
MOV #$4032,R0
ENDCODE IMMEDIATE
-
+
CODE UNTIL
MOV #$40AC,R9
BW1 ADD #4,&$1DC8
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
CODE AGAIN
MOV #$40B2,R9
GOTO BW1
ENDCODE IMMEDIATE
-
+
: WHILE
POSTPONE IF SWAP
; IMMEDIATE
-
+
: REPEAT
POSTPONE AGAIN POSTPONE THEN
; IMMEDIATE
[THEN]
- [UNDEFINED] DO
+ [UNDEFINED] DO
[IF]
HDNCODE XDO
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
HDNCODE XPLOO
ADD R14,0(R1)
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
$1DBE CONSTANT BASE
[THEN]
DO I C@ 3 U.R LOOP
SPACE
I $10 + I 8 +
- DO I C@ 3 U.R LOOP
+ DO I C@ 3 U.R LOOP
SPACE SPACE
I $10 + I
DO I C@ $7E MIN $20 MAX EMIT LOOP
CMP #%10,&BASE
0<> IF MOV #2,&BASE
ELSE MOV #$0A,&BASE
- THEN
+ THEN
COLON
BASE @ U.
;
[THEN]
: BYTES_TABLE_IDX
-CREATE
+CREATE
0 DO I C,
LOOP
DOES>
CODE IDX_TEST1
MOV.B BYTES_TABLE1(R14),R14
COLON
- U.
-;
+ U.
+;
0 IDX_TEST1 ; you should see 1 -->
TABLE 2 - CONSTANT PFA_TABLE
-CODE REDIRECT ; <table> -- redirects TABLE to argument <table>
+CODE REDIRECT ; <table> -- redirects TABLE to argument <table>
MOV R14,&PFA_TABLE
MOV @R15+,R14
MOV @R13+,R0
ENDCODE
-CODE REDIRECT0 ; -- redirects TABLE to TABLE0
+CODE REDIRECT0 ; -- redirects TABLE to TABLE0
MOV #TABLE0,&PFA_TABLE
MOV @R13+,R0
ENDCODE
-CODE REDIRECT10 ; -- redirects TABLE to TABLE10
+CODE REDIRECT10 ; -- redirects TABLE to TABLE10
MOV #TABLE10,&PFA_TABLE
MOV @R13+,R0
ENDCODE
-CODE REDIRECT20 ; -- redirects TABLE to TABLE20
+CODE REDIRECT20 ; -- redirects TABLE to TABLE20
MOV #TABLE20,&PFA_TABLE
MOV @R13+,R0
ENDCODE
SUB #2,R15
MOV R14,0(R15)
MOV @R13+,R0
-ENDCODE ; leaves its execution address (CFA) on stack
+ENDCODE ; leaves its execution address (CFA) on stack
DUP .
TRUC . ; display R14 value -->
-
+
' TRUC >BODY IS TRUC ; TRUC is reinitialized with its default action
-TRUC . ; display R14 value -->
+TRUC . ; display R14 value -->
+++ /dev/null
-
-
-MARKER {PID}
-
-[UNDEFINED] VARIABLE [IF]
-: VARIABLE
-CREATE
-HI2LO
-MOV @R1+,R13
-MOV #$1287,-4(R10)
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] CONSTANT [IF]
-: CONSTANT
-CREATE
-HI2LO
-MOV R14,-2(R10)
-MOV @R15+,R14
-MOV @R1+,R13
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] STATE [IF]
-$1DBC CONSTANT STATE
-[THEN]
-
-[UNDEFINED] ROT [IF]
-CODE ROT
-MOV @R15,R10
-MOV R14,0(R15)
-MOV 2(R15),R14
-MOV R10,2(R15)
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] SWAP [IF]
-CODE SWAP
-MOV @R15,R10
-MOV R14,0(R15)
-MOV R10,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] DUP [IF]
-CODE DUP
-BW1 SUB #2,R15
- MOV R14,0(R15)
- MOV @R13+,R0
-ENDCODE
-
-CODE ?DUP
-CMP #0,R14
-0<> ?GOTO BW1
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] AND [IF]
-CODE AND
-AND @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] SPACE [IF]
-: SPACE
-$20 EMIT ;
-[THEN]
-
-[UNDEFINED] R> [IF]
-CODE R>
-MOV R7,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] @ [IF]
-CODE @
-MOV @R14,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] ! [IF]
-CODE !
-MOV @R15+,0(R14)
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] C@ [IF]
-CODE C@
-MOV.B @R14,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] 1+ [IF]
-CODE 1+
-ADD #1,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] + [IF]
-CODE +
-ADD @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] - [IF]
-CODE -
-SUB @R15+,R14
-XOR #-1,R14
-ADD #1,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] MAX [IF]
-CODE MAX
- CMP @R15,R14
- S< ?GOTO FW1
-BW1 ADD #2,R15
- MOV @R13+,R0
-ENDCODE
-
-CODE MIN
- CMP @R15,R14
- S< ?GOTO BW1
-FW1 MOV @R15+,R14
- MOV @R13+,R0
-ENDCODE
-[THEN]
-
-
-[UNDEFINED] 2NIP [IF]
-CODE 2NIP
-MOV @R15,R9
-ADD #4,R15
-MOV R9,0(R15)
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] 2DUP [IF]
-CODE 2DUP
-SUB #4,R15
-MOV R14,2(R15)
-MOV 4(R15),0(R15)
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] 2SWAP [IF]
-CODE 2SWAP
-MOV @R15,R10
-MOV 4(R15),0(R15)
-MOV R10,4(R15)
-MOV R14,R10
-MOV 2(R15),R14
-MOV R10,2(R15)
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] 2ROT [IF]
-CODE 2ROT
-MOV 8(R15),R9
-MOV 6(R15),R8
-MOV 4(R15),8(R15)
-MOV 2(R15),6(R15)
-MOV @R15,4(R15)
-MOV R14,2(R15)
-MOV R9,0(R15)
-MOV R8,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] 2DROP [IF]
-CODE 2DROP
-ADD #2,R15
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] 2OVER [IF]
-CODE 2OVER
-SUB #4,R15
-MOV R14,2(R15)
-MOV 8(R15),0(R15)
-MOV 6(R15),R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] DABS [IF]
-CODE DABS
-AND #-1,R14
-U< IF
- XOR #-1,0(R15)
- XOR #-1,R14
- ADD #1,0(R15)
- ADDC #0,R14
-THEN
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] 2@ [IF]
-
-
- CODE 2@
- SUB #2,R15
- MOV 2(R14),0(R15)
- MOV @R14,R14
- MOV @R13+,R0
- ENDCODE
-[THEN]
-
-[UNDEFINED] 2! [IF]
-
-
- CODE 2!
- MOV @R15+,0(R14)
- MOV @R15+,2(R14)
- MOV @R15+,R14
- MOV @R13+,R0
- ENDCODE
-[THEN]
-
-CODE 2>R
-PUSH @R15+
-PUSH R14
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-
-CODE 2R@
-SUB #4,R15
-MOV R14,2(R15)
-MOV @R1,R14
-MOV 2(R1),0(R15)
-MOV @R13+,R0
-ENDCODE
-
-CODE 2R>
-SUB #4,R15
-MOV R14,2(R15)
-MOV @R1+,R14
-MOV @R1+,0(R15)
-MOV @R13+,R0
-ENDCODE
-
-[UNDEFINED] 2VARIABLE [IF]
-: 2VARIABLE
-CREATE 4 ALLOT
-;
-[THEN]
-
-[UNDEFINED] 2CONSTANT [IF]
-
- : 2CONSTANT
- CREATE , ,
- DOES> 2@
- ;
-[THEN]
-
-[UNDEFINED] <> [IF]
-CODE <>
-SUB @R15+,R14
-0<> IF
- MOV #-1,R14
-THEN
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] = [IF]
-CODE =
-SUB @R15+,R14
-0<> IF
- AND #0,R14
- MOV @R13+,R0
-THEN
-XOR #-1,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] U< [IF]
-CODE U<
-SUB @R15+,R14
-0<> IF
- MOV #-1,R14
- U< IF
- AND #0,R14
- THEN
-THEN
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] IF [IF]
-CODE IF
-SUB #2,R15
-MOV R14,0(R15)
-MOV &$1DC8,R14
-ADD #4,&$1DC8
-MOV #$40AC,0(R14)
-ADD #2,R14
-MOV @R13+,R0
-ENDCODE IMMEDIATE
-[THEN]
-
-[UNDEFINED] THEN [IF]
-CODE THEN
-MOV &$1DC8,0(R14)
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE IMMEDIATE
-[THEN]
-
-[UNDEFINED] ELSE [IF]
-CODE ELSE
-ADD #4,&$1DC8
-MOV &$1DC8,R10
-MOV #$40B2,-4(R10)
-MOV R10,0(R14)
-SUB #2,R10
-MOV R10,R14
-MOV @R13+,R0
-ENDCODE IMMEDIATE
-[THEN]
-
-[UNDEFINED] DEFER! [IF]
-CODE DEFER!
-MOV @R15+,2(R14)
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] IS [IF]
-: IS
-STATE @
-IF POSTPONE ['] POSTPONE DEFER!
-ELSE ' DEFER!
-THEN
-; IMMEDIATE
-[THEN]
-
-[UNDEFINED] >BODY [IF]
-CODE >BODY
-ADD #4,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-CODE F+
-BW1 ADD @R15+,2(R15)
- ADDC @R15+,R14
- MOV @R13+,R0
-ENDCODE
-
-CODE F-
-BW1 SUB @R15+,2(R15)
- SUBC R14,0(R15)
- MOV @R15+,R14
- MOV @R13+,R0
-ENDCODE
-
-CODE HOLDS
-BW3 MOV @R15+,R9
- ADD R14,R9
- MOV &$1DB2,R8
-BEGIN SUB #1,R9
- SUB #1,R14
-U>= WHILE SUB #1,R8
- MOV.B @R9,0(R8)
-REPEAT MOV R8,&$1DB2
- MOV @R15+,R14
- MOV @R13+,R0
-ENDCODE
-
-$1A00 4 + @ $81F3 U<
-$81EF $1A00 4 + @ U<
-= [IF] ; MSP430FR2xxx|MSP430FR4xxx subfamilies without hardware_MPY
-
-
-CODE F/
- PUSHM #4,R7
- MOV @R15+,R6
- MOV @R15+,R9
- MOV #0,R10
- MOV @R15,R8
- MOV #0,R11
- MOV R9,R12
- XOR R14,R12
- AND #-1,R9
-S< IF XOR #-1,R8
- XOR #-1,R9
- ADD #1,R8
- ADDC #0,R9
-THEN AND #-1,R14
-S< IF XOR #-1,R6
- XOR #-1,R14
- ADD #1,R6
- ADDC #0,R14
-THEN
- MOV #32,R5
-BW1 CMP R14,R10
- 0= IF CMP R6,R9
- THEN
- U>= IF SUB R6,R9
- SUBC R14,R10
- THEN
-BW2 ADDC R7,R7
- ADDC R4,R4
- SUB #1,R5
- 0< ?GOTO FW1
- ADD R11,R11
- ADDC R8,R8
- ADDC R9,R9
- ADDC R10,R10
- U< ?GOTO BW1
- SUB R6,R9
- SUBC R14,R10
- BIS #1,R2
- GOTO BW2
-FW1
- MOV R7,0(R15)
- MOV R4,R14
- POPM #4,R7
-BW1 AND #-1,R12
-S< IF XOR #-1,0(R15)
- XOR #-1,R14
- ADD #1,0(R15)
- ADDC #0,R14
-THEN MOV @R13+,R0
-ENDCODE
-
-CODE F#S
- MOV 2(R15),R9
- MOV @R15,2(R15)
- MOV R9,0(R15)
- PUSHM #2,R14
- MOV #0,R12
-BEGIN PUSH R12
- MOV &$1DBE,R14
- LO2HI
- UM*
- HI2LO
- SUB #2,R13
- CMP #10,R14
- U>= IF ADD #7,R14
- THEN ADD #$30,R14
- MOV @R1+,R12
- MOV.B R14,$1D90(R12)
- ADD #1,R12
- CMP 2(R1),R12
-U>= UNTIL
- POPM #2,R14
- MOV #0,0(R15)
- SUB #2,R15
- MOV #$1D90,0(R15)
- GOTO BW3
-ENDCODE
-
-CODE UDM*
- PUSH R13
- PUSHM #4,R7
- MOV 4(R15),R13
- MOV 2(R15),R11
- MOV @R15,R10
- MOV #0,R4
- MOV #0,R5
- MOV #0,4(R15)
- MOV #0,2(R15)
- MOV #0,R6
- MOV #0,R7
- MOV #1,R9
- MOV #0,R8
-BEGIN CMP #0,R9
- 0<> IF BIT R9,R10
- ELSE BIT R8,R14
- THEN
- 0<> IF ADD R13,4(R15)
- ADDC R11,2(R15)
- ADDC R4,R6
- ADDC R5,R7
- THEN ADD R13,R13
- ADDC R11,R11
- ADDC R4,R4
- ADDC R5,R5
- ADD R9,R9
- ADDC R8,R8
-U>= UNTIL MOV R6,0(R15)
- MOV R7,R14
- POPM #4,R7
- MOV @R1+,R13
- MOV @R13+,R0
-ENDCODE
-
-CODE F*
- MOV 2(R15),R12
- XOR R14,R12
- BIT #$8000,2(R15)
-0<> IF XOR #-1,2(R15)
- XOR #-1,4(R15)
- ADD #1,4(R15)
- ADDC #0,2(R15)
-THEN
- COLON
- DABS UDM*
- HI2LO
- MOV @R1+,R13
- MOV @R15+,R14
- MOV @R15+,0(R15)
- GOTO BW1
-ENDCODE
-
-[ELSE]
-
-CODE F/
- PUSHM #4,R7
- MOV @R15+,R6
- MOV @R15+,R9
- MOV #0,R10
- MOV @R15,R8
- MOV #0,R11
- MOV R9,R12
- XOR R14,R12
- AND #-1,R9
-S< IF XOR #-1,R8
- XOR #-1,R9
- ADD #1,R8
- ADDC #0,R9
-THEN AND #-1,R14
-S< IF XOR #-1,R6
- XOR #-1,R14
- ADD #1,R6
- ADDC #0,R14
-THEN MOV #32,R5
-BW1 CMP R14,R10
- 0= IF
- CMP R6,R9
- THEN
- U>= IF
- SUB R6,R9
- SUBC R14,R10
- THEN
-BW2 ADDC R7,R7
- ADDC R4,R4
- SUB #1,R5
- 0< ?GOTO FW1
- ADD R11,R11
- ADDC R8,R8
- ADDC R9,R9
- ADDC R10,R10
- U< ?GOTO BW1
- SUB R6,R9
- SUBC R14,R10
- BIS #1,R2
- GOTO BW2
-FW1 AND #-1,R12
-S< IF XOR #-1,R7
- XOR #-1,R4
- ADD #1,R7
- ADDC #0,R4
-THEN MOV R7,0(R15)
- MOV R4,R14
- POPM #4,R7
- MOV @R13+,R0
-ENDCODE
-
-CODE F#S
- MOV 2(R15),R9
- MOV @R15,2(R15)
- MOV R9,0(R15)
- MOV R14,R11
- MOV #0,R12
-BEGIN MOV @R15,&$4C0
- MOV &$1DBE,&$4C8
- MOV &$4E4,0(R15)
- MOV &$4E6,R14
- CMP #10,R14
- U>= IF ADD #7,R14
- THEN ADD #$30,R14
- MOV.B R14,$1D90(R12)
- ADD #1,R12
- CMP R11,R12
-0= UNTIL MOV #0,0(R15)
- MOV R11,R14
- SUB #2,R15
- MOV #$1D90,0(R15)
- GOTO BW3
-ENDCODE
-
-CODE F*
- MOV 4(R15),&$4D4
- MOV 2(R15),&$4D6
- MOV @R15,&$4E0
- MOV R14,&$4E2
- ADD #4,R15
- MOV &$4E6,0(R15)
- MOV &$4E8,R14
- MOV @R13+,R0
-ENDCODE
-
-[THEN]
-
-CODE F.N
-MOV R14,R11
-MOV @R15+,R14
-MOV R14,R12
-PUSHM #3,R13
-LO2HI
- <# DABS
- R> F#S
- $2C HOLD
- #S
- R> SIGN #>
- TYPE SPACE
-;
-
-
-CODE D<
- MOV @R15+,R12
- MOV @R15+,R11
- MOV @R15+,R10
-BW1 CMP R14,R11
- MOV #0,R14
-S< IF MOV #-1,R14
-THEN
-0= IF CMP R12,R10
- S< IF MOV #-1,R14
- THEN
-THEN
-MOV @R13+,R0
-ENDCODE
-
-CODE D>
-MOV R14,R11
-MOV @R15+,R10
-MOV @R15+,R14
-MOV @R15+,R12
-GOTO BW1
-ENDCODE
-
-CODE S2F
- SUB #2,R15
- MOV #0,0(R15)
- MOV @R13+,R0
-ENDCODE
-
-: F2S
- SWAP $8000 AND IF 1 + THEN ;
-
-: DMIN
- 2OVER 2OVER
- D< IF 2DROP ELSE 2NIP THEN
-;
-
-: DMAX
- 2OVER 2OVER
- D> IF 2DROP ELSE 2NIP THEN
-;
-
-: DRANGE
- 2ROT DMIN DMAX
-;
-
-: RANGE
- ROT MIN MAX
-;
-
-: F.000 3 F.N ;
-
-2VARIABLE KP
-2VARIABLE KI
-2VARIABLE KD
-VARIABLE SETPOINT
-
-VARIABLE SAMPLE_TIME
-VARIABLE OUT_MAX
-VARIABLE OUT_MIN
-VARIABLE OUT-OVERRIDE
-
-VARIABLE SET-VAL
-VARIABLE INPUT_PREV
-2VARIABLE I_SUM
-
-VARIABLE DEBUG
-0 DEBUG !
-
-: ?DEBUG DEBUG @ ;
-
-
-
-: CALC-R6
-KP 2@ F*
-?DEBUG IF ." Pval:" 2DUP F2S .
-THEN
-;
-
-
-: CALC-I
-KI 2@ F*
-I_SUM 2@ F+
-OUT_MIN @ S2F
-OUT_MAX @ S2F
-DRANGE
-2DUP I_SUM 2!
-?DEBUG IF ." Ival:" 2DUP F2S .
-THEN
-;
-
-: CALC-D
-
- INPUT_PREV @ -
- S2F KD 2@ F*
-?DEBUG IF ." Dval:" 2DUP F2S .
-THEN
-;
-
-: PID_COMPUTE
-DUP DUP SET-VAL @ SWAP - S2F
-2DUP CALC-R6
-2SWAP CALC-I F+
-ROT CALC-D F-
-
-F2S
-?DEBUG IF ." OUT:" DUP .
-THEN
-SWAP INPUT_PREV !
-OUT_MIN @ OUT_MAX @ RANGE
-?DEBUG IF ." PWM:" DUP .
-THEN
-;
-
-
-: SET
- SET-VAL ! ;
-
-: TUNING
-
-
- SAMPLE_TIME @ S2F 1000,0 F/ 2>R
-
- 2R@ F/ KD 2!
- 2R> F* KI 2!
- KP 2! ;
-
-: PID-INIT
- OUT_MAX !
- OUT_MIN !
- SAMPLE_TIME !
- TUNING
- 0 OUT-OVERRIDE !
- CR ." PID initialized - kp:" KP 2@ F.000 ." ki:" KI 2@ F.000 ." kd:" KD 2@ F.000
-;
-
-: PID
- OUT-OVERRIDE @ -1 = IF
- PID_COMPUTE
- ELSE
- CR ." SET:" SET-VAL @ . ." IS:" DUP .
- INPUT_PREV !
- OUT-OVERRIDE @
- ." PWM:" DUP .
- THEN ;
-
-: MANUAL
- OUT-OVERRIDE ! ;
-
-
-: AUTO
- OUT-OVERRIDE @ -1 <> IF
-
- OUT-OVERRIDE @
- OUT_MIN @ OUT_MAX @ RANGE
- S2F I_SUM 2!
- -1 OUT-OVERRIDE !
- THEN ;
-
-: AUTOHOLD
- INPUT_PREV @ SET-VAL !
- AUTO ;
-
-
-
-
-CODE STOP
- MOV @R13+,R0
-ENDCODE
-
-CODE APP_INIT
- MOV @R13+,R0
-ENDCODE
-
-CODE START
- MOV @R13+,R0
-ENDCODE
-
-
-ECHO
MARKER {RC5TOLCD}
8 ALLOT
-
-
-
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
ENDCODE
RST_SET
-ECHO
-
MARKER {RC5TOLCD}
8 ALLOT
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
MOV #$4082,-2(R10)
$180E $3C00 TSTBIT
[IF]
- MOV @R10+,&UART_WARM+2
+ MOV @R10+,&$4186+2
[ELSE]
MOV @R10+,&$4180+2
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MOV #STOP_R2L,&{RC5TOLCD}-2
$180E $3C00 TSTBIT
[IF]
- MOV &UART_WARM+2,&{RC5TOLCD}
- MOV #INIT_R2L,&UART_WARM+2
+ MOV &$4186+2,&{RC5TOLCD}
+ MOV #INIT_R2L,&$4186+2
[ELSE]
MOV &$4180+2,&{RC5TOLCD}
MOV #INIT_R2L,&$4180+2
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT
MOV @R15+,R9
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
BIS.B #$0F,&$224
COLON
TOP_LCD 2 20_US
- TOP_LCD 2 20_US
+ TOP_LCD 2 20_US
;
CODE LCD_WRF
[THEN]
MOV @R10+,&$FFEA
MOV @R10+,&$FFDE
- THEN
+ THEN
MOV @R1+,R0
ENDCODE
HDNCODE INIT_R2L
MOV #%10_1101_0100,&$3C0
- $1800 @ 16000 =
+ $1800 @ 16000 =
[IF]
MOV #1,&$3A0
MOV #1,&$3E0
[THEN]
- $1800 @ 24000 =
+ $1800 @ 24000 =
[IF]
MOV #2,&$3A0
MOV #2,&$3E0
MARKER {RTC}
- [UNDEFINED] OR
+ [UNDEFINED] OR
[IF]
CODE OR
BIS @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] C!
+ [UNDEFINED] C!
[IF]
CODE C!
MOV.B @R15+,0(R14)
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] DUP
+ [UNDEFINED] DUP
[IF]
CODE DUP
BW1 SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] DROP
+ [UNDEFINED] DROP
[IF]
CODE DROP
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] DEPTH
+ [UNDEFINED] DEPTH
[IF]
CODE DEPTH
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] 1+
+ [UNDEFINED] 1+
[IF]
CODE 1+
ADD #1,R14
ENDCODE
[THEN]
- [UNDEFINED] 1-
+ [UNDEFINED] 1-
[IF]
CODE 1-
SUB #1,R14
ENDCODE
[THEN]
- [UNDEFINED] U<
+ [UNDEFINED] U<
[IF]
CODE U<
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
MOV @R13+,R0
ENDCODE
- CODE DO
+ CODE DO
SUB #2,R15
MOV R14,0(R15)
ADD #2,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] BEGIN
+ [UNDEFINED] BEGIN
[IF]
CODE BEGIN
MOV #$4032,R0
ENDCODE IMMEDIATE
-
+
CODE UNTIL
MOV #$40AC,R9
BW1 ADD #4,&$1DC8
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
CODE AGAIN
MOV #$40B2,R9
GOTO BW1
ENDCODE IMMEDIATE
-
+
: WHILE
POSTPONE IF SWAP
; IMMEDIATE
-
+
: REPEAT
POSTPONE AGAIN POSTPONE THEN
; IMMEDIATE
[THEN]
- [UNDEFINED] CASE
+ [UNDEFINED] CASE
[IF]
- : CASE
- 0
+ : CASE
+ 0
; IMMEDIATE
: OF
- 1+
- >R
+ 1+
+ >R
POSTPONE OVER POSTPONE =
- POSTPONE IF
- POSTPONE DROP
- R>
- ; IMMEDIATE
+ POSTPONE IF
+ POSTPONE DROP
+ R>
+ ; IMMEDIATE
: ENDOF
- >R
- POSTPONE ELSE
- R>
- ; IMMEDIATE
+ >R
+ POSTPONE ELSE
+ R>
+ ; IMMEDIATE
: ENDCASE
POSTPONE DROP
- 0 DO
- POSTPONE THEN
- LOOP
- ; IMMEDIATE
+ 0 DO
+ POSTPONE THEN
+ LOOP
+ ; IMMEDIATE
[THEN]
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] MAX
+ [UNDEFINED] MAX
[IF]
CODE MAX
CMP @R15,R14
[THEN]
- [UNDEFINED] 2*
+ [UNDEFINED] 2*
[IF]
CODE 2*
ADD R14,R14
ENDCODE
[THEN]
- [UNDEFINED] UM*
+ [UNDEFINED] UM*
[IF]
CODE UM*
MOV @R15,&$4C0
ENDCODE
[THEN]
- [UNDEFINED] UM/MOD
+ [UNDEFINED] UM/MOD
[IF]
CODE UM/MOD
PUSH #DROP
U/MOD SWAP DROP
;
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
: SPACES
BEGIN
;
[THEN]
- [UNDEFINED] U.R
+ [UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
COLON
$4B2 C@ 2 U.R ':' EMIT
$4B1 C@ 2 U.R ':' EMIT
- $4B0 C@ 2 U.R
+ $4B0 C@ 2 U.R
;
-
+
: TIME!
2 DEPTH
U< IF
$4B1 C!
$4B2 C!
THEN
- ." it is " TIME?
+ ." it is " TIME?
;
CODE DATE?
4 OF ." Wed" ENDOF
5 OF ." Thu" ENDOF
6 OF ." Fri" ENDOF
- ENDCASE
+ ENDCASE
$4B6 @
$4B5 C@
$4B4 C@
$4B5 C@
$4B6 @
OVER 3 U<
- IF 1 - SWAP 12 + SWAP
+ IF 1 - SWAP 12 + SWAP
THEN
100 U/MOD
DUP 4 U/ SWAP 2* -
SWAP 1+ 13 5 U*/ + +
7 UMOD
$4B3 C!
- ." we are on " DATE?
+ ." we are on " DATE?
;
RST_SET
- [UNDEFINED] S_
+ [UNDEFINED] S_
[IF]
CODE S_
MOV #0,&$1DC0
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ESC
+ [UNDEFINED] ESC
[IF]
CODE ESC
CMP #0,&$1DBC
0= IF MOV @R13+,R0
THEN
- COLON
+ COLON
$1B
POSTPONE LITERAL
POSTPONE EMIT
; IMMEDIATE
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
ENDCODE
[THEN]
- [UNDEFINED] EXECUTE
+ [UNDEFINED] EXECUTE
[IF]
CODE EXECUTE
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] EVALUATE
+ [UNDEFINED] EVALUATE
[IF]
CODE EVALUATE
MOV #$1DC2,R9
MOV @R1+,&$1DC6
MOV @R1+,&$1DC4
MOV @R1+,&$1DC2
- MOV @R1+,R13
+ MOV @R1+,R13
MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
CR TIME!
RST_RET
;
-
+
ECHO
SET_TIME
COLON
$0D EMIT
ABORT" FastForth V3.9 please!"
- [UNDEFINED] WRITE
+ [UNDEFINED] WRITE
[IF]
1 ABORT" no SD_CARD_READ_WRITE addon!"
[THEN]
MARKER {SD_TEST}
- [UNDEFINED] EXIT
+ [UNDEFINED] EXIT
[IF]
CODE EXIT
MOV @R1+,R13
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
ENDCODE
[THEN]
- [UNDEFINED] 0=
+ [UNDEFINED] 0=
[IF]
CODE 0=
SUB #1,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] BEGIN
+ [UNDEFINED] BEGIN
[IF]
CODE BEGIN
MOV #$4032,R0
MOV @R13+,R0
ENDCODE
- CODE DO
+ CODE DO
SUB #2,R15
MOV R14,0(R15)
ADD #2,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] I
+ [UNDEFINED] I
[IF]
CODE I
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] MAX
+ [UNDEFINED] MAX
[IF]
CODE MAX
CMP @R15,R14
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] SPACE
+ [UNDEFINED] SPACE
[IF]
: SPACE
$20 EMIT ;
[THEN]
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
CODE SPACES
CMP #0,R14
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] DUP
+ [UNDEFINED] DUP
[IF]
CODE DUP
BW1 SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] CONSTANT
+ [UNDEFINED] CONSTANT
[IF]
- : CONSTANT
+ : CONSTANT
CREATE
HI2LO
MOV R14,-2(R10)
ENDCODE
[THEN]
- [UNDEFINED] STATE
+ [UNDEFINED] STATE
[IF]
$1DBC CONSTANT STATE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
-
+
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] U.R
+ [UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
$1DBE CONSTANT BASE
[THEN]
- [UNDEFINED] DUMP
+ [UNDEFINED] DUMP
[IF]
CODE DUMP
PUSH R13
DO I C@ 3 U.R LOOP
SPACE
I $10 + I 8 +
- DO I C@ 3 U.R LOOP
+ DO I C@ 3 U.R LOOP
SPACE SPACE
I $10 + I
DO I C@ $7E MIN $20 MAX EMIT LOOP
;
[THEN]
- [UNDEFINED] HERE
+ [UNDEFINED] HERE
[IF]
CODE HERE
MOV #BEGIN,R0
[THEN]
- [UNDEFINED] DROP
+ [UNDEFINED] DROP
[IF]
CODE DROP
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] 1+
+ [UNDEFINED] 1+
[IF]
CODE 1+
ADD #1,R14
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] CASE
+ [UNDEFINED] CASE
[IF]
: CASE
- 0
+ 0
; IMMEDIATE
: OF
1+
>R
- POSTPONE OVER
+ POSTPONE OVER
POSTPONE =
POSTPONE IF
POSTPONE DROP
R>
- ; IMMEDIATE
+ ; IMMEDIATE
: ENDOF
>R
- POSTPONE ELSE
+ POSTPONE ELSE
R>
- ; IMMEDIATE
+ ; IMMEDIATE
: ENDCASE
POSTPONE DROP
- 0 DO
- POSTPONE THEN
- LOOP
- ; IMMEDIATE
+ 0 DO
+ POSTPONE THEN
+ LOOP
+ ; IMMEDIATE
[THEN]
CODE SD_EMIT
$0D EMIT
CR
." ----------" CR
- ." Bootloader" CR
+ ." SD_TESTS " CR
." ----------" CR
." ? Fast Forth Specifs" CR
." 0 Set date and time" CR
." 8 append FORTH dump to YOURFILE.TXT" CR
." 9 delete YOURFILE.TXT" CR
." your choice: "
- KEY DUP EMIT
+ KEY DUP EMIT CR
NOECHO
{SD_TEST}
CASE
'1' OF LOAD" UTILITY.4TH" ENDOF
'2' OF LOAD" SD_TOOLS.4TH" ENDOF
'3' OF LOAD" CORE_ANS.4TH" ENDOF
- '4' OF LOAD" CORETEST.4TH" ENDOF
+ '4' OF LOAD" CORETEST.4TH" ENDOF
'5' OF LOAD" PROG10K.4TH" ENDOF
'6' OF READ" PROG10K.4TH"
BEGIN READ
MARKER {SD_TOOLS}
- [UNDEFINED] HERE
+ [UNDEFINED] HERE
[IF]
CODE HERE
MOV #$4032,R0
ENDCODE
[THEN]
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] MAX
+ [UNDEFINED] MAX
[IF]
CODE MAX
CMP @R15,R14
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] SPACE
+ [UNDEFINED] SPACE
[IF]
: SPACE
$20 EMIT ;
[THEN]
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
CODE SPACES
CMP #0,R14
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] U.R
+ [UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
MOV @R13+,R0
ENDCODE
- CODE DO
+ CODE DO
SUB #2,R15
MOV R14,0(R15)
ADD #2,&$1DC8
[THEN]
- [UNDEFINED] I
+ [UNDEFINED] I
[IF]
CODE I
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] DUMP
+ [UNDEFINED] DUMP
[IF]
CODE DUMP
PUSH R13
ADD @R15,R14
LO2HI
SWAP
- $FFF0 AND
DO CR
I 4 U.R SPACE
I 8 + I
DO I C@ 3 U.R LOOP
SPACE
I $10 + I 8 +
- DO I C@ 3 U.R LOOP
+ DO I C@ 3 U.R LOOP
SPACE SPACE
I $10 + I
DO I C@ $7E MIN $20 MAX EMIT LOOP
U< WHILE
ADD R9,R9
ADDC R14,R14
- REPEAT
+ REPEAT
ADD &$2010,R9
- MOV R9,0(R15)
+ MOV R9,0(R15)
ADDC #0,R14
GOTO BW1
ENDCODE
MARKER {TEST_ASMX}
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] MAX
+ [UNDEFINED] MAX
[IF]
CODE MAX
CMP @R15,R14
BW1 ADD #2,R15
MOV @R13+,R0
ENDCODE
-
+
CODE MIN
CMP @R15,R14
S< ?GOTO BW1
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] CONSTANT
+ [UNDEFINED] CONSTANT
[IF]
- : CONSTANT
+ : CONSTANT
CREATE
HI2LO
MOV R14,-2(R10)
ENDCODE
[THEN]
- [UNDEFINED] SPACE
+ [UNDEFINED] SPACE
[IF]
: SPACE
$20 EMIT ;
[THEN]
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
CODE SPACES
CMP #0,R14
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] U.R
+ [UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
- [UNDEFINED] DO
+ [UNDEFINED] DO
[IF]
HDNCODE XDO
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
HDNCODE XPLOO
ADD R14,0(R1)
MOV @R15+,R14
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] I
+ [UNDEFINED] I
[IF]
CODE I
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
DEFER CR
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
$1DBE CONSTANT BASE
[THEN]
- [UNDEFINED] DUMP
+ [UNDEFINED] DUMP
[IF]
CODE DUMP
PUSH R13
DO I C@ 3 U.R LOOP
SPACE
I $10 + I 8 +
- DO I C@ 3 U.R LOOP
+ DO I C@ 3 U.R LOOP
SPACE SPACE
I $10 + I
DO I C@ $7E MIN $20 MAX EMIT LOOP
;
[THEN]
- [UNDEFINED] HERE
+ [UNDEFINED] HERE
[IF]
CODE HERE
MOV #$4032,R0
RST_RET
; -----------------------------------------------------------------------------
-; DTCforthMSP430FR5xxx ASSEMBLER, OPCODES VI extended single operand
+; DTCforthMSP430FR5xxx ASSEMBLER, OPCODES VI extended single operand
; -----------------------------------------------------------------------------
; absolute and immediate instructs. must be written as $x.xxxx (DOUBLE numbers)
; indexed instructions must be written as $.xxxx(REG) (DOUBLE numbers)
; you should see: 5B 12 44 33 40 18 5B 12 44 33
RST_RET
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
' # 2 + CONSTANT BASE
[THEN]
;
: %U.
-BASE @ %10 BASE ! SWAP 8 EMIT U. BASE !
+BASE @ %10 BASE ! SWAP 8 EMIT U. BASE !
RST_RET
;
MARKER {TSTWORDS}
- [UNDEFINED] 0=
+ [UNDEFINED] 0=
[IF]
CODE 0=
SUB #1,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
ADD #2,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
CODE THEN
MOV &$1DC8,0(R14)
MOV @R15+,R14
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] BEGIN
+ [UNDEFINED] BEGIN
[IF]
CODE BEGIN
MOV #$4032,R0
ENDCODE IMMEDIATE
-
+
CODE UNTIL
MOV #$40AC,R9
BW1 ADD #4,&$1DC8
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
CODE AGAIN
MOV #$40B2,R9
GOTO BW1
ENDCODE IMMEDIATE
-
+
: WHILE
POSTPONE IF SWAP
; IMMEDIATE
-
+
: REPEAT
POSTPONE AGAIN POSTPONE THEN
; IMMEDIATE
[THEN]
- [UNDEFINED] DO
+ [UNDEFINED] DO
[IF]
HDNCODE XDO
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
HDNCODE XPLOO
ADD R14,0(R1)
MOV @R15+,R14
ECHO
-: LOOP_TEST 8 0 DO I . LOOP
+: LOOP_TEST 8 0 DO I . LOOP
;
LOOP_TEST
: LOOP_TEST1
BEGIN DUP U. 1 -
?DUP
- 0= UNTIL
+ 0= UNTIL
;
: FIND_TEST
$20 WORD
- 50000 0
+ 50000 0
DO
- DUP
+ DUP
FIND DROP DROP
LOOP
FIND
0= IF ABORT" <-- not found !"
ELSE ABORT" <-- found !"
- THEN
+ THEN
;
-\
\ No newline at end of file
+\
\ No newline at end of file
BIS.B R10,&$263
BIS.B R10,&$267
MOV #0,&$3C0
- MOV #0,&$3C6
BIC.B #$80,&$20C
BIC.B #$80,&$204
BIC.B #$40,&$21A
MOV @R10+,&$FFDE
THEN
MOV #1,R14
- MOV #UART_WARM+4,R0
+ MOV #$4186+4,R0
ENDCODE
HDNCODE I2CM_START
BIS.B #4,&$265
THEN
BIC.B #2,&$265
- MOV R0,R0
+ BEGIN
+ BIT.B #2,&$261
+ 0<> UNTIL
BIS.B #2,&$265
SUB #1,R10
0= UNTIL
BIT.B #2,&$261
0<> UNTIL
BIS.B #2,&$265
- BEGIN
- BIT #2,&$5DC
- 0<> UNTIL
- MOV.B R9,&$5CE
+ CMP.B #4,&{UARTI2CS}+9
+ 0<> IF
+ BEGIN
+ BIT #2,&$5DC
+ 0<> UNTIL
+ MOV.B R9,&$5CE
+ THEN
REPEAT
CMP.B #4,R9
U>= IF
ABORT_UTILITY
- MARKER {UTILITY}
+ MARKER {UTILITY}
- [UNDEFINED] EXIT
+ [UNDEFINED] EXIT
[IF]
CODE EXIT
MOV @R1+,R13
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] U<
+ [UNDEFINED] U<
[IF]
CODE U<
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
CODE BEGIN
MOV #$4032,R0
ENDCODE IMMEDIATE
-
+
CODE UNTIL
MOV #$40AC,R9
BW1 ADD #4,&$1DC8
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
CODE AGAIN
MOV #$40B2,R9
GOTO BW1
ENDCODE IMMEDIATE
-
+
: WHILE
POSTPONE IF SWAP
; IMMEDIATE
-
+
: REPEAT
POSTPONE AGAIN POSTPONE THEN
; IMMEDIATE
[THEN]
- [UNDEFINED] DO
+ [UNDEFINED] DO
[IF]
HDNCODE XDO
MOV #$8000,R9
MOV @R15+,R14
MOV @R13+,R0
ENDCODE IMMEDIATE
-
+
HDNCODE XPLOO
ADD R14,0(R1)
MOV @R15+,R14
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] I
+ [UNDEFINED] I
[IF]
CODE I
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] DUP
+ [UNDEFINED] DUP
[IF]
CODE DUP
BW1 SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] DROP
+ [UNDEFINED] DROP
[IF]
CODE DROP
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] SPACE
+ [UNDEFINED] SPACE
[IF]
: SPACE
$20 EMIT ;
[THEN]
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
CODE SPACES
CMP #0,R14
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] 2DUP
+ [UNDEFINED] 2DUP
[IF]
CODE 2DUP
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] 1+
+ [UNDEFINED] 1+
[IF]
CODE 1+
ADD #1,R14
ENDCODE
[THEN]
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] AND
+ [UNDEFINED] AND
[IF]
CODE AND
AND @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] ROT
+ [UNDEFINED] ROT
[IF]
CODE ROT
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] MAX
+ [UNDEFINED] MAX
[IF]
CODE MAX
CMP @R15,R14
BW1 ADD #2,R15
MOV @R13+,R0
ENDCODE
-
+
CODE MIN
CMP @R15,R14
S< ?GOTO BW1
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] CONSTANT
+ [UNDEFINED] CONSTANT
[IF]
- : CONSTANT
+ : CONSTANT
CREATE
HI2LO
MOV R14,-2(R10)
ENDCODE
[THEN]
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
$1DBE CONSTANT BASE
[THEN]
- [UNDEFINED] .S
+ [UNDEFINED] .S
[IF]
CODE .S
MOV R14,-2(R15)
$08 EMIT
$3E EMIT SPACE
2DUP 1+
- U< IF
+ U< IF
DROP DROP EXIT
THEN
BASE @ >R
$10 BASE !
- DO
+ DO
'$' EMIT
I @ U.
2 +LOOP
;
[THEN]
- [UNDEFINED] .RS
+ [UNDEFINED] .RS
[IF]
CODE .RS
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] ?
+ [UNDEFINED] ?
[IF]
- CODE ?
+ CODE ?
MOV @R14,R14
MOV #U.,R0
ENDCODE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
CODE CR
; IS CR
[THEN]
- [UNDEFINED] 2/
+ [UNDEFINED] 2/
[IF]
CODE 2/
RRA R14
ENDCODE
[THEN]
- [UNDEFINED] WORDS
+ [UNDEFINED] WORDS
[IF]
: WORDS
- CR
+ CR
$1DCE @ $1CE4
$180C @ DUP +
MOVE
DUP I $1CE4 + @
U< IF
DROP DROP
- I DUP
+ I DUP
$1CE4 + @
THEN
2 +LOOP
;
[THEN]
- [UNDEFINED] U.R
+ [UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
- [UNDEFINED] DUMP
+ [UNDEFINED] DUMP
[IF]
CODE DUMP
PUSH R13
DO I C@ 3 U.R LOOP
SPACE
I $10 + I 8 +
- DO I C@ 3 U.R LOOP
+ DO I C@ 3 U.R LOOP
SPACE SPACE
I $10 + I
DO I C@ $7E MIN $20 MAX EMIT LOOP
'CR' EMIT
CR
." ----------" CR
- ." Bootloader" CR
+ ." SD_TESTS " CR
." ----------" CR
." ? Fast Forth Specifs" CR
." 0 Set date and time" CR
." 8 append FORTH dump to YOURFILE.TXT" CR
." 9 delete YOURFILE.TXT" CR
." your choice: "
- KEY DUP EMIT
+ KEY DUP EMIT CR
NOECHO
{SD_TEST} \ remove {SD_TEST} application
CASE
ENDCODE
[THEN]
-\ https://forth-standard.org/standard/core/AND
-\ C AND x1 x2 -- x3 logical AND
- [UNDEFINED] AND
- [IF]
- CODE AND
- AND @PSP+,TOS
- MOV @IP+,PC
- ENDCODE
- [THEN]
-
\ https://forth-standard.org/standard/core/Plus
\ + n1/u1 n2/u2 -- n3/u3 add n1+n2
[UNDEFINED] +
ADD @PSP,TOS \ -- ORG END
LO2HI
SWAP \ -- END ORG
- $FFF0 AND \ -- END ORG_modulo_16
+\ $FFF0 AND \ -- END ORG_modulo_16
DO CR \ generate line
I 4 U.R SPACE \ generate address
I 8 + I
\ example : POPM #6,IP pop Y,X,W,T,S,IP registers from return stack, with IP last poped
\
\ ASSEMBLER conditionnal usage before IF UNTIL WHILE : S< S>= U< U>= 0= 0<> 0>=
-\ ASSEMBLER conditionnal usage before ?GOTO : S< S>= U< U>= 0= 0<> 0<
+\ ASSEMBLER conditionnal usage before ?GOTO : S< S>= U< U>= 0= 0<> 0<
\
\ ================================================================================
\ coupled to a PL2303HXD/TA cable, this driver enables a FastForth target to act as USB to I2C_Slave bridge,
\ In addition, it simulates a full duplex communication while the I2C bus is only half duplex.
\ Don't forget to wire 3k3 pull up resistors on wires SDA SCL!
\ ================================================================================
-\
+\
\ driver test : MCLK=24MHz, PL2303HXD with shortened cable (20cm), WIFI off, all windows apps closed else Scite and TERATERM.
\ ----------- .
\ . ┌────────────────────────────────┐
\ | | ║───────────────┐ ┌────────────────────────────────║ / ┌───────────────────────────────┐ |──┘
\ | | ║ | 3 wires | MSP430FR2355 @ 24MHz ║/ | MSP430FR5738 @ 24 MHz | |
\ | TERATERM -o--> USB --o--> USB2UART --o--> UART --o--> FAST FORTH ---> UARTI2CS --o--> I2C --o--> FAST FORTH with |──┘
-\ | terminal | ║ | 6 MBds | (I2C MASTER) ║ | I2C TERMINAL |
+\ | terminal | ║ | 6 MBds | (I2C MASTER) ║ | I2C TERMINAL |
\ | | ║───────────────┘ └────────────────────────────────║ └───────────────────────────────┘
-\ | | ║ |<- l=20cm->| ║
-\ └───────────────┘ ╚════════════════════════════════════════════════════════════╝
+\ | | ║ |<- l=20cm->| ║
+\ └───────────────┘ ╚════════════════════════════════════════════════════════════╝
\
\ test results :
\ ------------
\ downloading (+ interpret + compile + execute) CORETEST.4TH to I2C Master target = 1016ms.
\ downloading (+ interpret + compile + execute) CORETEST.4TH to I2C Slave target = 1422ms.
\ the difference (406 ms) is the time of the I2C Half duplex exchange.
-\ [(45906 chars * 9 bits) + (1533 * 31)] / 0,406 = 1,135 MHz (9 bits / char + (2*START + 2*STOP + 2*addr + CTRL_Char) / line)
+\ [(45906 chars * 9 bits) + (1533 * 31)] / 0,406 = 1,135 MHz (9 bits / char + (2*START + 2*STOP + 2*addr + CTRL_Char) / line)
\ ==> 113 % of I2C Fast-mode Plus (Fm+)!
-\
+\
\ also connected to and tested with another I2C_FastForth target with MCLK = 1MHz (I2C CLK = MCLK ! ).
\
\ The I2C_Slave address is defined as 'MYSLAVEADR' in forthMSP430FR.asm source file of I2C_Slave target.
-\ You can use any pin for SDA and SCL, preferably in the interval Px0...Px3.
+\ You can use any pin for SDA and SCL, preferably in the interval Px0...Px3.
\ don't forget to add 3.3k pullup resitors on wires SDA and SCL.
\
\
\ 1- the I2C bus is Master to Slave oriented, the Slave does not decide anything.
\ This order of things allows in any case to establish the connection.
\ The I2C Master device is therefore placed on the TERMINAL side and the FastForth target on the I2C Slave side.
-\ But once the link is established, we have to find a trick to reverse the roles,
+\ But once the link is established, we have to find a trick to reverse the roles,
\ so that the slave can take control of the data exchange.
\
-\ 2- The I2C bus operates on half duplex.
+\ 2- The I2C bus operates on half duplex.
\ Another trick will be to simulate an I2C_Master TERMINAL in Full Duplex mode.
\
\ 3- Without forgetting a visual effect to show the lack of I2C connection...
\ Finally, if the master receives a $FF as data, he considers the link broken,
\ it performs ABORT which forces a START RX into a 500 ms loop with an appropriate visual effect...
\
-\ Once the slave sends the CTRL_Char $00, he falls asleep,
+\ Once the slave sends the CTRL_Char $00, he falls asleep,
\ On its receipt, the master also falls asleep, awaiting a UART RX interruption.
\ As long as the TERMINAL is silent, the master and the slave remain in SLEEP mode,
\ (a part the Tx0_INT interrupt every 1/2 s).
\ |
\ GND------------------------------GND |
\ Vcc-------------o---o------------Vcc |
-\ | | |
-\ 3 3 |
-\ k k |
-\ 3 3 v
+\ | | |
+\ 3 3 |
+\ k k |
+\ 3 3 v
\ I2C_FastForth | | UARTI2CS +---------------------------------------+
\ hardware +--------------|---o-------------+ Software | +-----------------------------+ |
\ I2C Slave | +-------o----------+ | I2C Master | | +------(option)-----+ | |
\ MSP_EXP430FR5739 P1.7 P1.6 P4.0 P4.1 MSP_EXP430FR5739 P2.0 P2.1 P2.2 PL2303TA TERATERM.EXE
\ MSP_EXP430FR5969 P1.7 P1.6 P1.2 P1.3 MSP_EXP430FR5969 P2.0 P2.1 P4.1 PL2303HXD
\ MSP_EXP430FR5994 P7.1 P7.0 P8.2 P8.1 MSP_EXP430FR5994 P2.0 P2.1 P4.2 CP2102
-\ MSP_EXP430FR6989 P1.7 P1.6 P1.3 P1.5 MSP_EXP430FR6989 P3.4 P3.5 P3.0
-\ MSP_EXP430FR4133 P5.3 P5.2 P8.2 P8.3 MSP_EXP430FR4133 P1.0 P1.1 P2.3
-\ CHIPSTICK_FR2433 P1.3 P1.2 P2.0 P2.2 CHIPSTICK_FR2433 P1.4 P1.5 P3.2
-\ MSP_EXP430FR2433 P1.3 P1.2 P3.2 P3.1 MSP_EXP430FR2433 P1.4 P1.5 P1.0
-\ MSP_EXP430FR2355 P1.3 P1.2 P3.2 P3.3 MSP_EXP430FR2355 P4.3 P4.2 P2.0
-\ LP_MSP430FR2476 P4.3 P4.4 P3.2 P3.3 LP_MSP430FR2476 P1.4 P1.5 P6.1
+\ MSP_EXP430FR6989 P1.7 P1.6 P1.3 P1.5 MSP_EXP430FR6989 P3.4 P3.5 P3.0
+\ MSP_EXP430FR4133 P5.3 P5.2 P8.2 P8.3 MSP_EXP430FR4133 P1.0 P1.1 P2.3
+\ CHIPSTICK_FR2433 P1.3 P1.2 P2.0 P2.2 CHIPSTICK_FR2433 P1.4 P1.5 P3.2
+\ MSP_EXP430FR2433 P1.3 P1.2 P3.2 P3.1 MSP_EXP430FR2433 P1.4 P1.5 P1.0
+\ MSP_EXP430FR2355 P1.3 P1.2 P3.2 P3.3 MSP_EXP430FR2355 P4.3 P4.2 P2.0
+\ LP_MSP430FR2476 P4.3 P4.4 P3.2 P3.3 LP_MSP430FR2476 P1.4 P1.5 P6.1
\ first, we do some tests allowing the download
\ ------------------------\
\ USER_PARAM+8 addr = {UARTI2CS}+8 <-- I2C_Slave_Addr << 1
\ USER_PARAM+9 addr = {UARTI2CS}+9 <-- Half_Duplex flag : 4 --> NOECHO, <> 4 --> ECHO
- [UNDEFINED] TSTBIT
+ [UNDEFINED] TSTBIT
[IF]
CODE TSTBIT \ addr bit_mask -- true/flase flag
MOV @PSP+,X
\ ^^^^^^^^^^^^ OPTION ^^^^^^^^\
CALL #I2CM_STOP \ stop properly I2C_BUS
MOV #SM_BUS,W \
- BIC.B W,&I2CSM_DIR \ restore I2C_BUS I/O as input
+ BIC.B W,&I2CSM_DIR \ restore I2C_BUS I/O as input
BIS.B W,&I2CSM_OUT \ with pull up resistors
BIS.B W,&I2CSM_REN \
\ ----------------------------\
MOV @W+,&HARD_APP \ restore previous (default) HARD_APP value
MOV @W+,&SLEEP_APP \ restore previous (default) SLEEP_APP value
MOV @W+,&TERM_VEC \ restore previous (default) TERM_VEC value
- MOV @W+,&P1_VEC \ restore previous (default) P1_VEC value
+ MOV @W+,&P1_VEC \ restore previous (default) P1_VEC value
THEN
\ ----------------------------\
MOV #1,TOS \ TOS = USERSYS value we want for TERATERM(ALT+B)|USBtoI2C_bridge(SW2)|SYS_failures events
0<> UNTIL \ 2 h because Slave can strech SCL low (wake up from interrupt)
BIT.B #SM_SDA,&I2CSM_IN \ 3 h _ get SDA state
BIS.B #SM_SCL,&I2CSM_DIR \ 3 h v_ SCL as output : force SCL low
-\ ^^^^^^^^^^^ Multi-Master-Mode ^^^^^^^^^^\
+\ ^^^^^^^^^^^ Multi-Master-Mode ^^^^^^^^^^\
MOV @RSP+,0(RSP) \ remove RET to ReStart after a collision detection
-\ vvvvvvvvvvv Multi-Master-Mode vvvvvvvvvv\
+\ vvvvvvvvvvv Multi-Master-Mode vvvvvvvvvv\
MOV @RSP+,PC \ RET to Nack/Ack select
ENDCODE
\ ----------------------------------------\
\ ****************************************\
HDNCODE U2I_TERM_INT \ UART RX interrupt starts on first char of each line sent by TERMINAL
-\ ****************************************\
+\ ****************************************\
ADD #4,RSP \ 1 remove unused PC_RET and SR_RET
\ ----------------------------------------\
\ get one line from UART TERMINAL to PAD \ S = 'CR', T = 0
0<> UNTIL \ 2 )
MOV.B Y,&TERM_TXBUF \ 3 return all characters to UART_TERMINAL except CR+LF which will be later by I2C_SLAVE
THEN \
- BEGIN \
+ BEGIN \
BIT #1,&TERM_IFG \ 3 wait for next char received
- 0<> UNTIL \ 2
+ 0<> UNTIL \ 2
REPEAT \ 2 2 cycles loop ==> up to UART 2.58 Mbds @ 8MHz
CALL #UART_RXOFF \ stops UART RX still char CR is received, the LF char is being transmitted.
BEGIN \
MOV.B S,PAD_ORG(T) \ 3 store it into buffer
\ ========================================\ here I2C_Slave is sleeping in its ACCEPT routine
\ I2C MASTER TX \ now we transmit UART RX buffer (PAD) to I2C_Slave, S = LF|KEY = last char to transmit
-\ ========================================\
+\ ========================================\
\ ----------------------------------------\
\ I2C_Master_TX_Start \ S = last char UART RXed
\ ----------------------------------------\
-\ ^^^^^^^^^^^ Multi-Master-Mode ^^^^^^^^^^\
+\ ^^^^^^^^^^^ Multi-Master-Mode ^^^^^^^^^^\
PUSH PC \ PUSH next address as RET for START with collision detection
\ vvvvvvvvvvv Multi-Master-Mode vvvvvvvvvv\
MOV #0,X \ to Start I2C_Master_TX
ENDCODE \ |
\ ****************************************\ v
-\ wakes up every 1/2s by P1.6 int to listen I2C Slave or
+\ wakes up every 1/2s by P1.6 int to listen I2C Slave or
\ break from TERMINAL/USB_to_I2C_bridge.
\ ********************************************\ |
HDNCODE 500MS_INT \ |
\ ********************************************\ |
ADD #4,RSP \ 1 remove PC_RET, SR_RET |
-\ --------------------------------------------\ |
+\ --------------------------------------------\ |
FW1 \ <────── does START <──────┘
FW2 \ <────── if Nack on Address Master TX
-\ ^^^^^^^^^^^ Multi-Master-Mode ^^^^^^^^^^^^^^\
+\ ^^^^^^^^^^^ Multi-Master-Mode ^^^^^^^^^^^^^^\
PUSH PC \ PUSH next address as RET for START with collision detection
-\ vvvvvvvvvvv Multi-Master-Mode vvvvvvvvvvvvvv\
+\ vvvvvvvvvvv Multi-Master-Mode vvvvvvvvvvvvvv\
\ ============================================\
\ I2C_MASTER RX \ le driver I2C_Master envoie START RX en boucle continue (X < 4) ou discontinue (X >= 4).
\ ============================================\ le test d'un break en provenance de l'UART est intégré dans cette boucle.
\ ----------------------------------------\ _
BIC.B #SM_SCL,&I2CSM_DIR \ 3 l _^ release SCL to enable START RX
MOV #1,X \ to Start I2C_Master as RX
- CALL #I2CM_START \ Start MASTER RX
+ CALL #I2CM_START \ Start MASTER RX
0<> IF \ if Nack_On_Address
CALL #I2CM_STOP \ I2C_Master Send STOP
MOV #'.',&TERM_TXBUF \ to view the absence of I2C_target at the I2C_Addr provided.
MOV #SLEEP,PC \ which executes SLEEP_U2I then RXON before LPM0 shut down.
THEN \
\ ----------------------------------------\
-\ I2C_Master_RX_data \
+\ I2C_Master_RX_data \ End of RX_Data only on Ctrl_Char {$00|$01|$02|$FF}
\ ----------------------------------------\
\ vvvvvvvvvvvvv OPTION vvvvvvvvvvvvvvvvvvv\
BIS.B #LED2,&LED2_OUT \ green led ON = I2C RX
U>= WHILE \ 2 l ASCII char received, from char 'BS' up to char $7F.
\ --------------------------------\
\ I2C_Master_RX Send Ack \ on ASCII char >= $08
-\ --------------------------------\
+\ --------------------------------\
BIS.B #SM_SDA,&I2CSM_DIR \ 3 l _ set SDA as Ack
BIC.B #SM_SCL,&I2CSM_DIR \ 3 l _^ release SCL (high)
BEGIN \ we must wait I2C_Slave software (data processing)
\ --------------------------------\
\ I2C_Master echoes to TERMINAL \
\ --------------------------------\
- BEGIN \
- BIT #2,&TERM_IFG \ 3 l UART TX buffer empty ?
- 0<> UNTIL \ 2 l loop if no
- MOV.B X,&TERM_TXBUF \ 3 h send RXed ASCII char to UART TERMINAL
+ CMP.B #4,&{UARTI2CS}+9 \ 3 W = HALF_DUPLEX = $04 if NOECHO, $05 if ECHO
+ 0<> IF
+ BEGIN \
+ BIT #2,&TERM_IFG \ 3 l UART TX buffer empty ?
+ 0<> UNTIL \ 2 l loop if no
+ MOV.B X,&TERM_TXBUF \ 3 h send RXed ASCII char to UART TERMINAL
+ THEN
REPEAT \ 2 l loop back to I2C_Master_RX_data for chars >= 8
\ ------------------------------------\
\ case of RX CTRL_Chars < $08 \ here Master holds SCL low, Slave can test it: CMP #8,&TERM_STATW
\ ------------------------------------\ see forthMSP430FR_TERM_I2C.asm
- CMP.B #4,X \ 1
+ CMP.B #4,X \ 1
U>= IF \ 2
MOV.B X,&{UARTI2CS}+9 \ set NOECHO = $04, ECHO = $05
BIS.B #SM_SDA,&I2CSM_DIR \ 3 l prepare Ack for Ctrl_Chars $04 $05
THEN \
\ ------------------------------------\
\ Master_RX send Ack/Nack on data \ Ack for $04, $05, Nack for $00, $01, $02
-\ ------------------------------------\ _
+\ ------------------------------------\ _
BIC.B #SM_SCL,&I2CSM_DIR \ 3 l _^ release SCL (high)
BEGIN \ we must wait I2C_Slave software (data processing)
BIT.B #SM_SCL,&I2CSM_IN \ 3 h by testing SCL released
0<> UNTIL \ 2 h (because Slave can strech SCL low)
BIT.B #SM_SDA,&I2CSM_IN \ 3 h _ get SDA as TX Ack/Nack state
BIS.B #SM_SCL,&I2CSM_DIR \ 3 h v_ SCL as output : force SCL low
-\ ------------------------------------\ l
+\ ------------------------------------\ l
0<> UNTIL \ if Ack, loop back to Master_RX data for CTRL_Char $04,$05
-\ ----------------------------------------\
+\ ----------------------------------------\
\ Nack is sent by Master \ l case of CTRL-Char {$00|$01|$02}
-\ ----------------------------------------\
+\ ----------------------------------------\
CMP.B #2,X \ $02 = ctrl_char for ABORT request
U>= WHILE \
-\ ----------------------------------------\
+\ ----------------------------------------\
\ CTRL_Char $02|$03 \ l if ABORT request, SDA is high, SCL is low
\ ----------------------------------------\
0= IF \ if ABORT request $02 :
MOV.B #0,&{UARTI2CS}+9 \ set echo ON I2C_Master side
CALL #UART_RXON \ resume UART downloading source file
- BEGIN \
+ BEGIN \
BIC #UCRXIFG,&TERM_IFG \ clear UCRXIFG
MOV &FREQ_KHZ,X \ 1000, 2000, 4000, 8000, 16000, 240000
\ BEGIN MOV #32,W \ 2~ <-------+ windows 10 seems very slow...
0= UNTIL \ 2~ 200~ loop -----+
BIT #UCRXIFG,&TERM_IFG \ 4 new char in TERMRXBUF during this delay ?
0= UNTIL \ 2 yes, the input stream may be still active: loop back
- THEN
+ THEN
REPEAT \ loop back to reSTART RX
\ --------------------------------------------\
\ I2C_Master_RX Send STOP \ remainder: CTRL_Chars $00,$01
-\ --------------------------------------------\
+\ --------------------------------------------\
CALL #I2CM_STOP \
\ vvvvvvvvvvvvvvv OPTION vvvvvvvvvvvvvvvvvvvvv\
BIC.B #LED2,&LED2_OUT \ green led OFF = endof I2C RX
\ ou en fin du temps TxIFG ==> 500MS_INT \
0= IF \ prepare U2I_TERM_INT environment
MOV #SLEEP,PC \ which executes SLEEP_U2I then RXON, enabling TERMINAL TX, before LPM0 shut down.
- THEN \
+ THEN \
\ --------------------------------------------\
\ I2C_Slave KEY ctl_char $01 \ I2C_Slave request for KEY input
\ --------------------------------------------\
CALL #UART_RXON \ enables TERMINAL to TX; use no registers
BEGIN \ wait for a char
BIT #UCRXIFG,&TERM_IFG \ received char ?
- 0<> UNTIL \
+ 0<> UNTIL \
CALL #UART_RXOFF \ stops UART RX; use no registers
MOV #0,T \ ready to store KEY char as last char to be received
GOTO BW2 \ goto end of UART RX line input
- ENDCODE \
+ ENDCODE \
\ ********************************************\
\ --------------------------------------------\
\ ----------------------------\
HDNCODE INIT_U2I \ adds the INIT_HARD_APP to HARD_APP called by PUC|WARM
-\ ----------------------------\
+\ ----------------------------\
\ init 500MS_INT \ used to scan I2C_Slave hard RESET and to slow down (re)START RX loop
-\ ----------------------------\
+\ ----------------------------\
\ MOV #%10_1101_0100,&TB0_CTL \ ACLK/4=8192Hz, up mode, clear timer
MOV #4096,&TB0CCR0 \ time 0.5s
\ ------------------------------\
MOV #4095,&TB0CCR2 \ 0.12 ms pulse
BIS.B #BIT7,&P1DIR \ P1.7 as output
BIS.B #BIT7,&P1SEL1 \ P1.7 as TB0.2 output
- BIS.B #BIT6,&P1IE
+ BIS.B #BIT6,&P1IE
\ ----------------------------\
\ init I2C_MASTER I/O \ see \inc\your_target.pat to find I2C MASTER SDA & SCL pins (as SM_BUS)
\ ----------------------------\
\ run previous INIT_HARD_APP \
\ ----------------------------\
CALL &{UARTI2CS} \ execute previous INIT_HARD_APP to init TERM_UC, activates I/O.
-\ ----------------------------\ TOS = SYSRSTIV = $00|$02|$04|$0E|$xx = POWER_ON|RST|SVSH_threshold|SYS_failures
+\ ----------------------------\ TOS = SYSRSTIV = $00|$02|$04|$0E|$xx = POWER_ON|RST|SVSH_threshold|SYS_failures
\ define new SYSRSTIV select \
\ ----------------------------\
CMP #$0E,TOS \ SVSHIFG SVSH event ?
\ UARTI2CS starts the USB to I2C bridge, to quit: TERATERM(Alt-B) or USB_to_I2C_bridge(SW2)
\ --------------------------------\
- : UARTI2CS \ I2C_Addr&b0 --
+ : UARTI2CS \ I2C_Addr&b0 --
\ --------------------------------\ init UARTI2CS environment.
- 'CR' EMIT 'LF' EMIT \
+ 'CR' EMIT 'LF' EMIT \
HI2LO
MOV @RSP+,IP \
BEGIN
ENDCODE \
\ --------------------------------\
- RST_SET ECHO
+ RST_SET ECHO
$12 UARTI2CS ; TERATERM(Alt-B) or USB_to_I2C_bridge(SW2) to quit
@1800
80 3E 08 00 A1 F7 18 00 FD FF 35 01 10 00 A1 59
-EC 42 7E 41 1C 56 FC 54 5C 43 74 5E 60 4C 1A 4C
+EC 42 7E 41 F8 54 00 55 5C 43 4A 5E 60 4C 1A 4C
1A 4C D2 42 90 43 58 43 3C 1D E0 1C 0E 46 B6 40
-C4 40 2A 45 20 00 0A 00 00 1C 7E 41 1C 56 FC 54
-5C 43 74 5E 60 4C 1A 4C 1A 4C 00 00 00 00 00 00
+C4 40 2A 45 20 00 0A 00 00 1C 7E 41 F8 54 00 55
+5C 43 4A 5E 60 4C 1A 4C 1A 4C 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
@4000
92 12 40 18 12 D2 06 18 FB 3F 2F 83 8F 4E 00 00
32 20 9B 42 1E 20 16 00 3A 4F 09 4E 0E 43 1C 42
1E 20 1B 42 20 20 02 3C DA 43 2D 83 0C 9B 16 2C
58 4C 00 1E 1C 53 78 90 20 00 09 2C 78 90 0A 00
-F5 23 82 4C 1E 20 3D 41 3C 40 20 00 A6 3F 0E 99
+F5 23 82 4C 1E 20 3D 41 3C 40 20 00 A6 3F 09 9E
91 27 CA 48 00 00 1A 53 1E 53 8C 3F 1A 15 B0 12
-6A 57 19 17 DC 3F 00 00 08 54 59 50 45 00 0D 12
+7A 57 19 17 DC 3F 00 00 08 54 59 50 45 00 0D 12
3D 40 2E 44 29 4F 8F 4E 00 00 7E 49 AF 3F 30 44
2D 83 2F 83 5E 83 F7 23 3D 41 2F 53 3E 4F 30 4D
86 12 20 00 0C 4E 38 4F 3C 9F 39 4F 3E 4F 31 22
48 49 A2 83 C8 1D 1A 42 C8 1D EF 3F 7C 4B 0B 48
49 32 4C 4F A2 53 C8 1D 1A 42 C8 1D 8A 4A FE FF
82 43 BC 1D B9 3F 08 4C B2 40 1A 4C D0 1D 82 4E
-CE 1D 30 40 A0 45 85 12 06 4C 06 4A 7A 58 76 5A
-88 58 10 5E 4A 46 F4 46 F0 5C EE 4B 40 4B 1A 4B
-B6 4A 96 58 22 4D 5A 5A 00 00 00 00 85 12 06 4C
-9C 53 20 52 42 54 48 51 A4 51 F2 51 CE 52 88 54
+CE 1D 30 40 A0 45 85 12 06 4C 06 4A CC 58 C8 5A
+DA 58 EA 5D 4A 46 F4 46 D4 5C EE 4B 40 4B 1A 4B
+B6 4A E8 58 22 4D AC 5A 00 00 00 00 85 12 06 4C
+9C 53 20 52 42 54 48 51 A4 51 F2 51 CE 52 84 54
6A 50 8E 51 00 00 00 00 DC 4B 5A 4F 00 00 F6 52
3A 4C B2 40 1A 4C CE 1D 82 43 D0 1D 30 4D 3B 40
0A 00 BA 49 00 00 2A 53 2B 83 FB 23 30 41 00 00
8A 10 C2 4A 4E 06 82 93 46 06 05 24 92 B3 6C 06
FD 27 C2 93 4C 06 19 83 F3 23 5A 42 4C 06 30 41
80 53 12 52 5F 53 45 43 54 5F 57 58 1C D3 F2 40
-51 00 19 20 B0 12 A8 53 38 20 B0 12 1C 54 6A 53
+51 00 19 20 B0 12 A8 53 36 20 B0 12 1C 54 6A 53
04 24 FB 23 D9 42 4C 06 FF 1D F2 43 4E 06 03 43
-19 53 39 90 01 02 F6 23 F2 43 4E 06 3C C0 03 00
-D2 D3 23 02 30 41 DA 52 12 57 5F 53 45 43 54 5F
-57 58 2C D3 F0 40 58 00 81 CB B0 12 A8 53 15 20
-3A 40 FE FF 29 43 B0 12 20 54 D2 49 00 1E 4E 06
-03 43 19 53 39 90 00 02 F8 23 39 40 03 00 B0 12
-1E 54 7A C0 E1 00 6A 82 D9 27 8C 10 1C 52 4C 06
-D2 D3 23 02 84 12 9E 43 1E 40 0B 3C 20 53 44 20
-45 72 72 6F 72 21 E8 54 2F 83 8F 4E 00 00 B2 40
-10 00 BE 1D 0E 4C 84 12 4E 46 12 41 B0 12 54 41
-E2 B2 60 02 8A 20 B2 40 81 A9 40 06 B2 40 30 00
-46 06 D2 D3 25 02 B2 D0 C0 04 0C 02 92 C3 40 06
-39 40 6E 01 29 83 89 43 02 20 FC 23 39 42 B0 12
-1E 54 D2 C3 23 02 2C 42 B2 40 95 00 14 20 B2 40
-00 40 18 20 B0 12 18 54 02 24 30 40 CA 54 B0 12
-1C 54 7A 93 FC 23 B2 40 87 AA 14 20 92 43 16 20
-B2 40 00 48 18 20 B0 12 18 54 29 42 B0 12 1E 54
-92 43 14 20 82 43 16 20 78 43 3C 42 B2 40 00 77
-18 20 B0 12 18 54 B2 40 40 69 18 20 B0 12 D6 53
-03 24 58 83 F3 23 D9 3F 0C 5C A2 43 16 20 B2 40
-00 50 18 20 B0 12 D6 53 D0 23 92 D3 40 06 82 43
-46 06 92 C3 40 06 0A 43 09 43 B0 12 4C 54 38 40
-00 1E 92 48 C6 01 04 20 92 48 C8 01 06 20 5C 48
-C2 01 7C 80 0C 00 08 24 5C 53 06 24 6C 52 04 24
-3C 50 07 20 30 40 D0 54 09 43 B0 12 4C 54 A2 43
-2C 20 19 48 0E 00 82 49 08 20 1A 48 24 00 82 4A
-0A 20 09 5A 82 49 0C 20 09 5A 58 48 0D 00 82 48
-12 20 09 88 09 88 82 49 10 20 30 41 82 43 32 20
-30 40 84 41 92 4B 0E 00 22 20 92 4B 10 00 24 20
-5A 42 23 20 58 42 22 20 59 42 24 20 89 10 0A D9
-88 10 08 58 0A 6A 88 10 08 58 30 41 1A 52 08 20
-09 43 FC 3E 92 42 22 20 D0 04 92 42 24 20 D2 04
+19 53 39 90 03 02 F6 23 3C C0 03 00 D2 D3 23 02
+30 41 DA 52 12 57 5F 53 45 43 54 5F 57 58 2C D3
+F0 40 58 00 85 CB B0 12 A8 53 15 20 3A 40 FE FF
+29 43 B0 12 20 54 D2 49 00 1E 4E 06 03 43 19 53
+39 90 00 02 F8 23 39 40 03 00 B0 12 1E 54 7A C0
+E1 00 6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3 23 02
+84 12 9E 43 1E 40 0B 3C 20 53 44 20 45 72 72 6F
+72 21 E4 54 2F 83 8F 4E 00 00 B2 40 10 00 BE 1D
+0E 4C 84 12 4E 46 12 41 82 43 32 20 30 40 84 41
+B0 12 54 41 E2 B2 60 02 8A 20 B2 40 81 A9 40 06
+B2 40 30 00 46 06 D2 D3 25 02 B2 D0 C0 04 0C 02
+92 C3 40 06 39 40 6E 01 29 83 89 43 02 20 FC 23
+39 42 B0 12 1E 54 D2 C3 23 02 2C 42 B2 40 95 00
+14 20 B2 40 00 40 18 20 B0 12 18 54 02 24 30 40
+C6 54 B0 12 1C 54 7A 93 FC 23 B2 40 87 AA 14 20
+92 43 16 20 B2 40 00 48 18 20 B0 12 18 54 29 42
+B0 12 1E 54 92 43 14 20 82 43 16 20 78 43 3C 42
+B2 40 00 77 18 20 B0 12 18 54 B2 40 40 69 18 20
+B0 12 D6 53 03 24 58 83 F3 23 D9 3F 0C 5C A2 43
+16 20 B2 40 00 50 18 20 B0 12 D6 53 D0 23 92 D3
+40 06 82 43 46 06 92 C3 40 06 0A 43 09 43 B0 12
+4C 54 38 40 00 1E 92 48 C6 01 04 20 92 48 C8 01
+06 20 5C 48 C2 01 7C 80 0C 00 08 24 5C 53 06 24
+6C 52 04 24 3C 50 07 20 30 40 CC 54 09 43 B0 12
+4C 54 A2 43 2C 20 19 48 0E 00 82 49 08 20 1A 48
+24 00 82 4A 0A 20 09 5A 82 49 0C 20 09 5A 58 48
+0D 00 82 48 12 20 09 88 09 88 82 49 10 20 30 41
+1A 52 08 20 09 43 12 3F 9B 52 1E 20 12 00 8B 63
+14 00 1A 42 1A 20 19 42 1C 20 29 3F 92 4B 0E 00
+22 20 92 4B 10 00 24 20 5A 42 23 20 58 42 22 20
+59 42 24 20 89 10 0A D9 88 10 08 58 0A 6A 88 10
+08 58 30 41 92 42 22 20 D0 04 92 42 24 20 D2 04
92 42 12 20 C8 04 92 42 E4 04 1A 20 92 42 E6 04
1C 20 92 52 10 20 1A 20 82 63 1C 20 30 41 92 4B
-0E 00 22 20 92 4B 10 00 24 20 B0 12 54 56 5A 4B
+0E 00 22 20 92 4B 10 00 24 20 B0 12 64 56 5A 4B
03 00 82 5A 1A 20 82 63 1C 20 30 41 3C 42 3B 40
38 20 09 43 CB 93 02 00 10 24 9B 92 24 20 0C 00
-04 20 9B 92 22 20 0A 00 A3 25 09 4B 3B 50 1C 00
-3B 90 18 21 EF 23 0C 5C 9B 3D 0C 43 82 4B 32 20
+04 20 9B 92 22 20 0A 00 C4 25 09 4B 3B 50 1C 00
+3B 90 18 21 EF 23 0C 5C BC 3D 0C 43 82 4B 32 20
8B 49 00 00 09 93 0A 24 99 52 C6 1D 16 00 4A 93
05 34 C9 93 02 00 02 34 5A 59 02 00 CB 4A 02 00
CB 43 03 00 9B 42 1A 20 04 00 9B 42 1C 20 06 00
9B 52 C6 1D 1A 00 22 3C 30 41 1B 42 32 20 82 43
1E 20 B2 90 00 02 20 20 3F 20 BB 80 00 02 12 00
8B 73 14 00 DB 53 03 00 DB 92 12 20 03 00 0E 28
-CB 43 03 00 B0 12 24 56 B0 12 4C 56 8B 43 10 00
+CB 43 03 00 B0 12 3C 56 B0 12 20 56 8B 43 10 00
9B 48 00 1E 0E 00 9B 48 02 1E 10 00 B2 40 00 02
20 20 8B 93 14 00 0B 20 92 9B 12 00 1E 20 1C 2C
BB 90 00 02 12 00 03 2C 92 4B 12 00 20 20 B0 12
-7E 56 1A 42 1A 20 19 42 1C 20 38 3E CB 43 02 00
+8E 56 1A 42 1A 20 19 42 1C 20 30 3E CB 43 02 00
2B 4B 82 4B 32 20 0B 93 06 24 92 4B 16 00 1E 20
-B0 12 AC 57 22 C3 30 41 1B 42 32 20 0B 93 FB 27
-EB 92 02 00 04 20 B0 12 6A 5B B0 12 5A 5C CB 93
-02 00 E4 37 1E 4B 18 00 9F 4B 1A 00 00 00 31 50
-06 00 3D 41 B0 12 DC 57 02 24 30 40 B0 43 B2 40
-3C 1D A0 40 B2 40 D2 42 D0 42 30 40 9E 43 09 93
-07 24 F8 90 20 00 00 1E 03 20 18 53 19 83 F9 23
-30 41 98 4C 0B 52 45 41 44 22 5A 43 20 3C 00 4B
-09 44 45 4C 22 00 6A 43 1A 3C C6 49 0D 57 52 49
-54 45 22 00 6A 42 13 3C AE 49 0F 41 50 50 45 4E
-44 22 7A 42 0C 3C AA 4B 0A 43 4C 4F 53 45 B0 12
-F8 57 30 4D 0E 49 0B 4C 4F 41 44 22 7A 43 2F 83
-8F 4E 00 00 0E 4A 82 93 BC 1D 0B 24 0D 12 84 12
-0A 40 0A 40 FC 48 FC 48 7C 45 0A 40 D2 58 FC 48
-0E 46 0D 12 84 12 0A 40 22 00 92 46 4C 49 D0 58
-3D 41 36 4F 0E 56 82 4E 36 20 A2 43 22 20 82 43
-24 20 1C 43 0E 96 8C 24 F6 90 3A 00 01 00 01 20
-26 53 F6 90 5C 00 00 00 03 20 16 53 0E 96 66 24
-82 46 34 20 B0 12 54 56 15 42 12 20 B0 12 D2 57
-2C 43 0A 43 08 4A 58 0E 08 58 82 48 30 20 C8 93
-00 1E 60 24 39 42 F8 96 00 1E 04 20 18 53 19 83
-FA 23 16 53 F6 90 2E 00 FF FF 19 24 39 50 03 00
-B0 12 3E 58 06 20 F6 90 5C 00 FF FF 29 24 0E 96
-27 28 16 42 34 20 1A 53 3A 90 10 00 DB 23 92 53
-1A 20 82 63 1C 20 15 83 D1 23 2C 42 49 3C F6 90
-2E 00 FE FF EE 27 B0 12 3E 58 EB 23 39 40 03 00
-F8 96 00 1E 04 20 18 53 19 83 FA 23 09 3C 0E 96
-E0 2F F6 90 5C 00 FF FF DC 23 B0 12 3E 58 D9 23
-18 42 30 20 92 48 1A 1E 22 20 92 48 14 1E 24 20
-F8 B0 10 00 0B 1E 13 24 82 93 24 20 05 20 82 93
-22 20 02 20 A2 43 22 20 0E 96 9A 23 92 42 22 20
-2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F
-B0 12 9C 56 35 40 B6 40 36 40 C4 40 3A 4F 3E 4F
-0A 93 04 24 7A 93 39 20 0C 93 02 20 30 40 B0 43
-0D 12 84 12 9E 43 1E 40 0B 3C 20 4F 70 65 6E 45
-72 72 6F 72 B2 40 E6 54 E2 B2 60 02 02 24 30 40
-86 41 92 12 3E 18 3F 40 7E 1C 8F 43 00 00 0D 12
-84 12 1E 40 0F 4C 4F 41 44 22 20 42 4F 4F 54 2E
-34 54 48 22 B2 40 7C 49 54 58 08 42 4F 4F 54 00
-B2 40 18 5A C2 42 30 4D 4C 47 0C 4E 4F 42 4F 4F
-54 00 B2 40 86 41 C2 42 30 4D 1A 93 89 20 0C 93
-C7 23 30 4D 4A 5A 08 52 45 41 44 00 2F 83 8F 4E
-00 00 1E 42 32 20 B0 12 6A 57 1E 82 32 20 30 4D
-08 4A 1A 52 08 20 B0 12 A0 5A 0A 48 1A 52 0C 20
-09 43 30 40 92 54 3C 42 0A 12 2A 41 82 9A 0A 20
-2B 25 B0 12 4C 56 88 93 02 1E 03 20 88 93 00 1E
-08 24 28 52 38 90 00 02 F6 2B 91 53 00 00 08 43
-EC 3F A2 41 26 20 82 48 28 20 0C 43 B8 43 00 1E
-6A 41 B8 40 FF 0F 02 1E 08 11 8A 10 08 5A 5A 41
-01 00 0A 11 08 10 82 4A 24 20 82 48 22 20 2A 41
-B0 12 90 5A 3A 41 30 41 90 4B 0A 00 16 C5 90 4B
-0C 00 12 C5 B0 12 30 56 82 4A 26 20 82 48 28 20
-0A 12 B0 12 4C 56 1A 48 00 1E 88 43 00 1E 19 48
-02 1E 88 43 02 1E 39 F0 FF 0F 39 90 FF 0F 02 20
-3A 93 10 24 82 4A 22 20 82 49 24 20 B0 12 30 56
-2A 91 E9 27 09 4A 2A 41 81 49 00 00 B0 12 90 5A
-2A 41 DF 3F 3A 41 30 40 90 5A 9B 52 1E 20 12 00
-8B 63 14 00 1A 42 1A 20 19 42 1C 20 30 40 92 54
-2A 93 BC 20 0C 93 09 20 F8 40 E5 00 00 1E B0 12
-74 5B B0 12 08 5B B0 12 F8 57 30 4D F2 B0 40 00
-A2 04 29 20 F2 B0 10 00 A2 04 FC 27 5A 42 B0 04
-4A 11 59 42 B4 04 F2 40 20 00 C0 04 D2 42 B1 04
-C8 04 1A 52 E4 04 D2 42 B5 04 C8 04 19 52 E4 04
-D2 42 B2 04 C0 04 B2 40 00 08 C8 04 1A 52 E4 04
-92 42 B6 04 C0 04 B2 80 BC 07 C0 04 B2 40 00 02
-C8 04 19 52 E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C
-3D 3E 3F 5B 5C 5D 7C 2E 29 92 06 28 39 80 03 00
-B0 12 48 5C 39 40 03 00 7A 4B C8 4A 00 1E 82 9B
-36 20 12 28 0D 12 3D 40 0F 00 3C 40 F8 5B 7A 9C
-F3 27 1D 83 FC 23 3D 41 6A 9C E6 27 3A 80 21 00
-EB 3B 18 53 19 83 E8 23 09 93 06 24 F8 40 20 00
-00 1E 18 53 19 83 FA 23 30 41 1A 4B 04 00 19 4B
-06 00 B0 12 4C 54 18 4B 08 00 B0 12 9C 5B 88 49
+B0 12 BC 57 22 C3 30 41 1B 42 32 20 0B 93 FB 27
+EB 92 02 00 1E 38 B0 12 28 56 1A 4B 04 00 19 4B
+06 00 B0 12 4C 54 18 4B 08 00 B0 12 B8 5B 88 49
12 1E 88 4A 16 1E 88 49 18 1E 98 4B 12 00 1C 1E
-98 4B 14 00 1E 1E 1A 4B 04 00 19 4B 06 00 30 40
-92 54 B2 40 00 02 1E 20 1B 42 32 20 B0 12 6A 5B
-82 43 1E 20 DB 53 03 00 DB 92 12 20 03 00 1D 28
-B0 12 24 56 08 12 0A 12 B0 12 A6 5A 2A 91 03 24
-2A 41 B0 12 4C 56 3A 41 38 41 98 42 22 20 00 1E
-98 42 24 20 02 1E B0 12 90 5A AB 42 02 00 9B 42
-22 20 0E 00 9B 42 24 20 10 00 30 40 8A 56 6C 58
-0A 57 52 49 54 45 B0 12 92 5C 30 4D 2A 92 54 20
-2C 93 0E 24 0C 93 3D 24 0D 12 84 12 1E 40 0C 3C
-20 57 72 69 74 65 45 72 72 6F 72 00 B2 40 E6 54
-0A 43 08 43 B0 12 A6 5A B0 12 D2 57 18 42 30 20
-F8 40 20 00 0B 1E B0 12 9C 5B 88 43 0C 1E 88 4A
-0E 1E 88 49 10 1E 98 42 24 20 14 1E 98 42 22 20
-1A 1E 88 43 1C 1E 88 43 1E 1E 2C 42 1B 42 34 20
-82 9B 36 20 D1 27 FB 90 2E 00 00 00 CD 27 39 40
-0B 00 B0 12 18 5C B0 12 74 5B 2A 42 B0 12 9C 56
-30 4D B0 12 08 5B 8B 43 12 00 8B 43 14 00 90 4B
-0A 00 90 C2 90 4B 0C 00 8C C2 B0 12 30 56 B0 12
-A6 5A B0 12 DA 5C 30 4D 2C 93 BA 27 0C 93 AC 23
-EB 42 02 00 58 4B 13 00 59 4B 14 00 89 10 09 58
-58 4B 15 00 5B 42 12 20 0A 43 3C 42 08 11 09 10
-4A 10 1C 83 0B 11 FA 2B 0A 11 1C 83 FD 37 1B 42
-32 20 19 5B 0A 00 18 6B 0C 00 8B 49 0E 00 8B 48
-10 00 CB 4A 03 00 B0 12 CE 57 1A 4B 12 00 BB C0
-FF 01 12 00 3A F0 FF 01 82 4A 1E 20 30 4D 60 58
-10 54 45 52 4D 32 53 44 22 00 0D 12 84 12 74 58
-22 5E 0A 43 B0 12 5C 43 92 B3 DC 05 FD 27 59 42
-CC 05 C2 49 CE 05 69 92 0D 24 CA 49 00 1E 1A 53
-3A 90 FF 01 04 24 F0 2B B0 12 92 5C EA 3F B0 12
-F8 42 EA 3F F2 90 0D 00 CC 05 FC 27 B0 12 F8 42
-F2 90 0A 00 CC 05 FC 27 82 4A 1E 20 B0 12 F8 57
-3D 41 30 4D
+98 4B 14 00 1E 1E 1A 4B 04 00 19 4B 06 00 B0 12
+8E 54 CB 93 02 00 CA 37 1E 4B 18 00 9F 4B 1A 00
+00 00 31 50 06 00 3D 41 B0 12 EC 57 02 24 30 40
+B0 43 B2 40 3C 1D A0 40 B2 40 D2 42 D0 42 30 40
+9E 43 09 93 07 24 F8 90 20 00 00 1E 03 20 18 53
+19 83 F9 23 30 41 92 4B 0A 00 22 20 92 4B 0C 00
+24 20 D2 3E 98 4C 0B 52 45 41 44 22 5A 43 20 3C
+00 4B 09 44 45 4C 22 00 6A 43 1A 3C C6 49 0D 57
+52 49 54 45 22 00 6A 42 13 3C AE 49 0F 41 50 50
+45 4E 44 22 7A 42 0C 3C AA 4B 0A 43 4C 4F 53 45
+B0 12 08 58 30 4D 0E 49 0B 4C 4F 41 44 22 7A 43
+2F 83 8F 4E 00 00 0E 4A 82 93 BC 1D 0B 24 0D 12
+84 12 0A 40 0A 40 FC 48 FC 48 7C 45 0A 40 24 59
+FC 48 0E 46 0D 12 84 12 0A 40 22 00 92 46 4C 49
+22 59 3D 41 36 4F 0E 56 82 4E 36 20 A2 43 22 20
+82 43 24 20 1C 43 0E 96 8C 24 F6 90 3A 00 01 00
+01 20 26 53 F6 90 5C 00 00 00 03 20 16 53 0E 96
+66 24 82 46 34 20 B0 12 64 56 15 42 12 20 B0 12
+E2 57 2C 43 0A 43 08 4A 58 0E 08 58 82 48 30 20
+C8 93 00 1E 60 24 39 42 F8 96 00 1E 04 20 18 53
+19 83 FA 23 16 53 F6 90 2E 00 FF FF 19 24 39 50
+03 00 B0 12 82 58 06 20 F6 90 5C 00 FF FF 29 24
+0E 96 27 28 16 42 34 20 1A 53 3A 90 10 00 DB 23
+92 53 1A 20 82 63 1C 20 15 83 D1 23 2C 42 49 3C
+F6 90 2E 00 FE FF EE 27 B0 12 82 58 EB 23 39 40
+03 00 F8 96 00 1E 04 20 18 53 19 83 FA 23 09 3C
+0E 96 E0 2F F6 90 5C 00 FF FF DC 23 B0 12 82 58
+D9 23 18 42 30 20 92 48 1A 1E 22 20 92 48 14 1E
+24 20 F8 B0 10 00 0B 1E 13 24 82 93 24 20 05 20
+82 93 22 20 02 20 A2 43 22 20 0E 96 9A 23 92 42
+22 20 2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C
+2A 4F B0 12 AC 56 35 40 B6 40 36 40 C4 40 3A 4F
+3E 4F 0A 93 04 24 7A 93 39 20 0C 93 02 20 30 40
+B0 43 0D 12 84 12 9E 43 1E 40 0B 3C 20 4F 70 65
+6E 45 72 72 6F 72 B2 40 E2 54 92 12 3E 18 E2 B2
+60 02 02 24 30 40 8A 41 3F 40 7E 1C 8F 43 00 00
+0D 12 84 12 1E 40 0F 4C 4F 41 44 22 20 42 4F 4F
+54 2E 34 54 48 22 B2 40 7C 49 A6 58 08 42 4F 4F
+54 00 B2 40 6A 5A C2 42 30 4D 4C 47 0C 4E 4F 42
+4F 4F 54 00 B2 40 86 41 C2 42 30 4D 1A 93 6E 20
+0C 93 C7 23 30 4D 9C 5A 08 52 45 41 44 00 2F 83
+8F 4E 00 00 1E 42 32 20 B0 12 7A 57 1E 82 32 20
+30 4D B0 12 96 58 0A 12 B0 12 20 56 1A 48 00 1E
+88 43 00 1E 19 48 02 1E 88 43 02 1E 39 F0 FF 0F
+39 90 FF 0F 02 20 3A 93 10 24 82 4A 22 20 82 49
+24 20 B0 12 48 56 2A 91 E9 27 09 4A 2A 41 81 49
+00 00 B0 12 2C 5B 2A 41 DF 3F 3A 41 08 4A 1A 52
+08 20 B0 12 3C 5B 0A 48 1A 52 0C 20 09 43 30 40
+8E 54 3C 42 0A 12 2A 41 82 9A 0A 20 CF 24 B0 12
+20 56 88 93 02 1E 03 20 88 93 00 1E 08 24 28 52
+38 90 00 02 F6 2B 91 53 00 00 08 43 EC 3F 0C 43
+B8 43 00 1E 6A 41 B8 40 FF 0F 02 1E 08 11 8A 10
+08 5A 5A 41 01 00 0A 11 08 10 82 4A 24 20 82 48
+22 20 2A 41 B0 12 2C 5B 3A 41 30 41 2A 93 A0 20
+0C 93 09 20 F8 40 E5 00 00 1E B0 12 32 56 B0 12
+E2 5A B0 12 08 58 30 4D F2 B0 40 00 A2 04 29 20
+F2 B0 10 00 A2 04 FC 27 5A 42 B0 04 4A 11 59 42
+B4 04 F2 40 20 00 C0 04 D2 42 B1 04 C8 04 1A 52
+E4 04 D2 42 B5 04 C8 04 19 52 E4 04 D2 42 B2 04
+C0 04 B2 40 00 08 C8 04 1A 52 E4 04 92 42 B6 04
+C0 04 B2 80 BC 07 C0 04 B2 40 00 02 C8 04 19 52
+E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E 3F 5B
+5C 5D 7C 2E 29 92 06 28 39 80 03 00 B0 12 64 5C
+39 40 03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28
+0D 12 3D 40 0F 00 3C 40 14 5C 7A 9C F3 27 1D 83
+FC 23 3D 41 6A 9C E6 27 3A 80 21 00 EB 3B 18 53
+19 83 E8 23 09 93 06 24 F8 40 20 00 00 1E 18 53
+19 83 FA 23 30 41 B2 40 00 02 1E 20 1B 42 32 20
+B0 12 28 56 82 43 1E 20 DB 53 03 00 DB 92 12 20
+03 00 1D 28 B0 12 3C 56 08 12 0A 12 B0 12 42 5B
+2A 91 03 24 2A 41 B0 12 20 56 3A 41 38 41 98 42
+22 20 00 1E 98 42 24 20 02 1E B0 12 2C 5B AB 42
+02 00 9B 42 22 20 0E 00 9B 42 24 20 10 00 30 40
+9A 56 BE 58 0A 57 52 49 54 45 B0 12 76 5C 30 4D
+2A 92 4E 20 2C 93 0E 24 0C 93 3D 24 0D 12 84 12
+1E 40 0C 3C 20 57 72 69 74 65 45 72 72 6F 72 00
+B2 40 E2 54 0A 43 38 42 B0 12 42 5B B0 12 E2 57
+18 42 30 20 F8 40 20 00 0B 1E B0 12 B8 5B 88 43
+0C 1E 88 4A 0E 1E 88 49 10 1E 98 42 24 20 14 1E
+98 42 22 20 1A 1E 88 43 1C 1E 88 43 1E 1E 2C 42
+1B 42 34 20 82 9B 36 20 D1 27 FB 90 2E 00 00 00
+CD 27 39 40 0B 00 B0 12 34 5C B0 12 32 56 2A 42
+B0 12 AC 56 30 4D B0 12 E2 5A 8B 43 12 00 8B 43
+14 00 B0 12 96 58 B0 12 42 5B B0 12 BE 5C 30 4D
+2C 93 C0 27 0C 93 B2 23 B0 12 96 58 82 4A 2A 20
+B0 12 20 56 1A 48 00 1E 19 48 02 1E 39 90 FF 0F
+02 20 3A 93 0A 24 82 4A 22 20 82 49 24 20 B0 12
+48 56 82 9A 2A 20 EE 27 97 3E 1A 4B 12 00 08 4A
+39 40 FF 01 8B C9 12 00 08 F9 82 48 1E 20 59 42
+12 20 19 83 8A 10 4A 11 0A F9 CB 4A 03 00 B0 12
+C2 5C B0 12 E2 57 30 4D B2 58 10 54 45 52 4D 32
+53 44 22 00 0D 12 84 12 C6 58 FC 5D 0A 43 B0 12
+5C 43 92 B3 DC 05 FD 27 59 42 CC 05 69 92 0D 24
+CA 49 00 1E 1A 53 3A 90 FF 01 04 24 F2 2B B0 12
+76 5C EC 3F B0 12 F8 42 EC 3F F2 90 0D 00 CC 05
+FC 27 B0 12 F8 42 F2 90 0A 00 CC 05 FC 27 82 4A
+1E 20 B0 12 08 58 3D 41 30 4D
@FF80
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
@1800
80 3E 04 00 00 00 18 00 FD FF 35 01 10 00 A1 59
-EC 42 7E 41 1C 56 FC 54 5C 43 74 5E 60 4C 1A 4C
+EC 42 7E 41 F8 54 00 55 5C 43 4A 5E 60 4C 1A 4C
1A 4C D2 42 90 43 58 43 3C 1D E0 1C 0E 46 B6 40
-C4 40 2A 45 20 00 0A 00 00 1C 7E 41 1C 56 FC 54
-5C 43 74 5E 60 4C 1A 4C 1A 4C 00 00 00 00 00 00
+C4 40 2A 45 20 00 0A 00 00 1C 7E 41 F8 54 00 55
+5C 43 4A 5E 60 4C 1A 4C 1A 4C 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
@4000
92 12 40 18 12 D2 06 18 FB 3F 2F 83 8F 4E 00 00
32 20 9B 42 1E 20 16 00 3A 4F 09 4E 0E 43 1C 42
1E 20 1B 42 20 20 02 3C DA 43 2D 83 0C 9B 16 2C
58 4C 00 1E 1C 53 78 90 20 00 09 2C 78 90 0A 00
-F5 23 82 4C 1E 20 3D 41 3C 40 20 00 A6 3F 0E 99
+F5 23 82 4C 1E 20 3D 41 3C 40 20 00 A6 3F 09 9E
91 27 CA 48 00 00 1A 53 1E 53 8C 3F 1A 15 B0 12
-6A 57 19 17 DC 3F 00 00 08 54 59 50 45 00 0D 12
+7A 57 19 17 DC 3F 00 00 08 54 59 50 45 00 0D 12
3D 40 2E 44 29 4F 8F 4E 00 00 7E 49 AF 3F 30 44
2D 83 2F 83 5E 83 F7 23 3D 41 2F 53 3E 4F 30 4D
86 12 20 00 0C 4E 38 4F 3C 9F 39 4F 3E 4F 31 22
48 49 A2 83 C8 1D 1A 42 C8 1D EF 3F 7C 4B 0B 48
49 32 4C 4F A2 53 C8 1D 1A 42 C8 1D 8A 4A FE FF
82 43 BC 1D B9 3F 08 4C B2 40 1A 4C D0 1D 82 4E
-CE 1D 30 40 A0 45 85 12 06 4C 06 4A 7A 58 76 5A
-88 58 10 5E 4A 46 F4 46 F0 5C EE 4B 40 4B 1A 4B
-B6 4A 96 58 22 4D 5A 5A 00 00 00 00 85 12 06 4C
-9C 53 20 52 42 54 48 51 A4 51 F2 51 CE 52 88 54
+CE 1D 30 40 A0 45 85 12 06 4C 06 4A CC 58 C8 5A
+DA 58 EA 5D 4A 46 F4 46 D4 5C EE 4B 40 4B 1A 4B
+B6 4A E8 58 22 4D AC 5A 00 00 00 00 85 12 06 4C
+9C 53 20 52 42 54 48 51 A4 51 F2 51 CE 52 84 54
6A 50 8E 51 00 00 00 00 DC 4B 5A 4F 00 00 F6 52
3A 4C B2 40 1A 4C CE 1D 82 43 D0 1D 30 4D 3B 40
0A 00 BA 49 00 00 2A 53 2B 83 FB 23 30 41 00 00
8A 10 C2 4A 4E 06 82 93 46 06 05 24 92 B3 6C 06
FD 27 C2 93 4C 06 19 83 F3 23 5A 42 4C 06 30 41
80 53 12 52 5F 53 45 43 54 5F 57 58 1C D3 F2 40
-51 00 19 20 B0 12 A8 53 38 20 B0 12 1C 54 6A 53
+51 00 19 20 B0 12 A8 53 36 20 B0 12 1C 54 6A 53
04 24 FB 23 D9 42 4C 06 FF 1D F2 43 4E 06 03 43
-19 53 39 90 01 02 F6 23 F2 43 4E 06 3C C0 03 00
-D2 D3 23 02 30 41 DA 52 12 57 5F 53 45 43 54 5F
-57 58 2C D3 F0 40 58 00 81 CB B0 12 A8 53 15 20
-3A 40 FE FF 29 43 B0 12 20 54 D2 49 00 1E 4E 06
-03 43 19 53 39 90 00 02 F8 23 39 40 03 00 B0 12
-1E 54 7A C0 E1 00 6A 82 D9 27 8C 10 1C 52 4C 06
-D2 D3 23 02 84 12 9E 43 1E 40 0B 3C 20 53 44 20
-45 72 72 6F 72 21 E8 54 2F 83 8F 4E 00 00 B2 40
-10 00 BE 1D 0E 4C 84 12 4E 46 12 41 B0 12 54 41
-E2 B2 60 02 8A 20 B2 40 81 A9 40 06 B2 40 30 00
-46 06 D2 D3 25 02 B2 D0 C0 04 0C 02 92 C3 40 06
-39 40 6E 01 29 83 89 43 02 20 FC 23 39 42 B0 12
-1E 54 D2 C3 23 02 2C 42 B2 40 95 00 14 20 B2 40
-00 40 18 20 B0 12 18 54 02 24 30 40 CA 54 B0 12
-1C 54 7A 93 FC 23 B2 40 87 AA 14 20 92 43 16 20
-B2 40 00 48 18 20 B0 12 18 54 29 42 B0 12 1E 54
-92 43 14 20 82 43 16 20 78 43 3C 42 B2 40 00 77
-18 20 B0 12 18 54 B2 40 40 69 18 20 B0 12 D6 53
-03 24 58 83 F3 23 D9 3F 0C 5C A2 43 16 20 B2 40
-00 50 18 20 B0 12 D6 53 D0 23 92 D3 40 06 82 43
-46 06 92 C3 40 06 0A 43 09 43 B0 12 4C 54 38 40
-00 1E 92 48 C6 01 04 20 92 48 C8 01 06 20 5C 48
-C2 01 7C 80 0C 00 08 24 5C 53 06 24 6C 52 04 24
-3C 50 07 20 30 40 D0 54 09 43 B0 12 4C 54 A2 43
-2C 20 19 48 0E 00 82 49 08 20 1A 48 24 00 82 4A
-0A 20 09 5A 82 49 0C 20 09 5A 58 48 0D 00 82 48
-12 20 09 88 09 88 82 49 10 20 30 41 82 43 32 20
-30 40 84 41 92 4B 0E 00 22 20 92 4B 10 00 24 20
-5A 42 23 20 58 42 22 20 59 42 24 20 89 10 0A D9
-88 10 08 58 0A 6A 88 10 08 58 30 41 1A 52 08 20
-09 43 FC 3E 92 42 22 20 D0 04 92 42 24 20 D2 04
+19 53 39 90 03 02 F6 23 3C C0 03 00 D2 D3 23 02
+30 41 DA 52 12 57 5F 53 45 43 54 5F 57 58 2C D3
+F0 40 58 00 85 CB B0 12 A8 53 15 20 3A 40 FE FF
+29 43 B0 12 20 54 D2 49 00 1E 4E 06 03 43 19 53
+39 90 00 02 F8 23 39 40 03 00 B0 12 1E 54 7A C0
+E1 00 6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3 23 02
+84 12 9E 43 1E 40 0B 3C 20 53 44 20 45 72 72 6F
+72 21 E4 54 2F 83 8F 4E 00 00 B2 40 10 00 BE 1D
+0E 4C 84 12 4E 46 12 41 82 43 32 20 30 40 84 41
+B0 12 54 41 E2 B2 60 02 8A 20 B2 40 81 A9 40 06
+B2 40 30 00 46 06 D2 D3 25 02 B2 D0 C0 04 0C 02
+92 C3 40 06 39 40 6E 01 29 83 89 43 02 20 FC 23
+39 42 B0 12 1E 54 D2 C3 23 02 2C 42 B2 40 95 00
+14 20 B2 40 00 40 18 20 B0 12 18 54 02 24 30 40
+C6 54 B0 12 1C 54 7A 93 FC 23 B2 40 87 AA 14 20
+92 43 16 20 B2 40 00 48 18 20 B0 12 18 54 29 42
+B0 12 1E 54 92 43 14 20 82 43 16 20 78 43 3C 42
+B2 40 00 77 18 20 B0 12 18 54 B2 40 40 69 18 20
+B0 12 D6 53 03 24 58 83 F3 23 D9 3F 0C 5C A2 43
+16 20 B2 40 00 50 18 20 B0 12 D6 53 D0 23 92 D3
+40 06 82 43 46 06 92 C3 40 06 0A 43 09 43 B0 12
+4C 54 38 40 00 1E 92 48 C6 01 04 20 92 48 C8 01
+06 20 5C 48 C2 01 7C 80 0C 00 08 24 5C 53 06 24
+6C 52 04 24 3C 50 07 20 30 40 CC 54 09 43 B0 12
+4C 54 A2 43 2C 20 19 48 0E 00 82 49 08 20 1A 48
+24 00 82 4A 0A 20 09 5A 82 49 0C 20 09 5A 58 48
+0D 00 82 48 12 20 09 88 09 88 82 49 10 20 30 41
+1A 52 08 20 09 43 12 3F 9B 52 1E 20 12 00 8B 63
+14 00 1A 42 1A 20 19 42 1C 20 29 3F 92 4B 0E 00
+22 20 92 4B 10 00 24 20 5A 42 23 20 58 42 22 20
+59 42 24 20 89 10 0A D9 88 10 08 58 0A 6A 88 10
+08 58 30 41 92 42 22 20 D0 04 92 42 24 20 D2 04
92 42 12 20 C8 04 92 42 E4 04 1A 20 92 42 E6 04
1C 20 92 52 10 20 1A 20 82 63 1C 20 30 41 92 4B
-0E 00 22 20 92 4B 10 00 24 20 B0 12 54 56 5A 4B
+0E 00 22 20 92 4B 10 00 24 20 B0 12 64 56 5A 4B
03 00 82 5A 1A 20 82 63 1C 20 30 41 3C 42 3B 40
38 20 09 43 CB 93 02 00 10 24 9B 92 24 20 0C 00
-04 20 9B 92 22 20 0A 00 A3 25 09 4B 3B 50 1C 00
-3B 90 18 21 EF 23 0C 5C 9B 3D 0C 43 82 4B 32 20
+04 20 9B 92 22 20 0A 00 C4 25 09 4B 3B 50 1C 00
+3B 90 18 21 EF 23 0C 5C BC 3D 0C 43 82 4B 32 20
8B 49 00 00 09 93 0A 24 99 52 C6 1D 16 00 4A 93
05 34 C9 93 02 00 02 34 5A 59 02 00 CB 4A 02 00
CB 43 03 00 9B 42 1A 20 04 00 9B 42 1C 20 06 00
9B 52 C6 1D 1A 00 22 3C 30 41 1B 42 32 20 82 43
1E 20 B2 90 00 02 20 20 3F 20 BB 80 00 02 12 00
8B 73 14 00 DB 53 03 00 DB 92 12 20 03 00 0E 28
-CB 43 03 00 B0 12 24 56 B0 12 4C 56 8B 43 10 00
+CB 43 03 00 B0 12 3C 56 B0 12 20 56 8B 43 10 00
9B 48 00 1E 0E 00 9B 48 02 1E 10 00 B2 40 00 02
20 20 8B 93 14 00 0B 20 92 9B 12 00 1E 20 1C 2C
BB 90 00 02 12 00 03 2C 92 4B 12 00 20 20 B0 12
-7E 56 1A 42 1A 20 19 42 1C 20 38 3E CB 43 02 00
+8E 56 1A 42 1A 20 19 42 1C 20 30 3E CB 43 02 00
2B 4B 82 4B 32 20 0B 93 06 24 92 4B 16 00 1E 20
-B0 12 AC 57 22 C3 30 41 1B 42 32 20 0B 93 FB 27
-EB 92 02 00 04 20 B0 12 6A 5B B0 12 5A 5C CB 93
-02 00 E4 37 1E 4B 18 00 9F 4B 1A 00 00 00 31 50
-06 00 3D 41 B0 12 DC 57 02 24 30 40 B0 43 B2 40
-3C 1D A0 40 B2 40 D2 42 D0 42 30 40 9E 43 09 93
-07 24 F8 90 20 00 00 1E 03 20 18 53 19 83 F9 23
-30 41 98 4C 0B 52 45 41 44 22 5A 43 20 3C 00 4B
-09 44 45 4C 22 00 6A 43 1A 3C C6 49 0D 57 52 49
-54 45 22 00 6A 42 13 3C AE 49 0F 41 50 50 45 4E
-44 22 7A 42 0C 3C AA 4B 0A 43 4C 4F 53 45 B0 12
-F8 57 30 4D 0E 49 0B 4C 4F 41 44 22 7A 43 2F 83
-8F 4E 00 00 0E 4A 82 93 BC 1D 0B 24 0D 12 84 12
-0A 40 0A 40 FC 48 FC 48 7C 45 0A 40 D2 58 FC 48
-0E 46 0D 12 84 12 0A 40 22 00 92 46 4C 49 D0 58
-3D 41 36 4F 0E 56 82 4E 36 20 A2 43 22 20 82 43
-24 20 1C 43 0E 96 8C 24 F6 90 3A 00 01 00 01 20
-26 53 F6 90 5C 00 00 00 03 20 16 53 0E 96 66 24
-82 46 34 20 B0 12 54 56 15 42 12 20 B0 12 D2 57
-2C 43 0A 43 08 4A 58 0E 08 58 82 48 30 20 C8 93
-00 1E 60 24 39 42 F8 96 00 1E 04 20 18 53 19 83
-FA 23 16 53 F6 90 2E 00 FF FF 19 24 39 50 03 00
-B0 12 3E 58 06 20 F6 90 5C 00 FF FF 29 24 0E 96
-27 28 16 42 34 20 1A 53 3A 90 10 00 DB 23 92 53
-1A 20 82 63 1C 20 15 83 D1 23 2C 42 49 3C F6 90
-2E 00 FE FF EE 27 B0 12 3E 58 EB 23 39 40 03 00
-F8 96 00 1E 04 20 18 53 19 83 FA 23 09 3C 0E 96
-E0 2F F6 90 5C 00 FF FF DC 23 B0 12 3E 58 D9 23
-18 42 30 20 92 48 1A 1E 22 20 92 48 14 1E 24 20
-F8 B0 10 00 0B 1E 13 24 82 93 24 20 05 20 82 93
-22 20 02 20 A2 43 22 20 0E 96 9A 23 92 42 22 20
-2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F
-B0 12 9C 56 35 40 B6 40 36 40 C4 40 3A 4F 3E 4F
-0A 93 04 24 7A 93 39 20 0C 93 02 20 30 40 B0 43
-0D 12 84 12 9E 43 1E 40 0B 3C 20 4F 70 65 6E 45
-72 72 6F 72 B2 40 E6 54 E2 B2 60 02 02 24 30 40
-86 41 92 12 3E 18 3F 40 7E 1C 8F 43 00 00 0D 12
-84 12 1E 40 0F 4C 4F 41 44 22 20 42 4F 4F 54 2E
-34 54 48 22 B2 40 7C 49 54 58 08 42 4F 4F 54 00
-B2 40 18 5A C2 42 30 4D 4C 47 0C 4E 4F 42 4F 4F
-54 00 B2 40 86 41 C2 42 30 4D 1A 93 89 20 0C 93
-C7 23 30 4D 4A 5A 08 52 45 41 44 00 2F 83 8F 4E
-00 00 1E 42 32 20 B0 12 6A 57 1E 82 32 20 30 4D
-08 4A 1A 52 08 20 B0 12 A0 5A 0A 48 1A 52 0C 20
-09 43 30 40 92 54 3C 42 0A 12 2A 41 82 9A 0A 20
-2B 25 B0 12 4C 56 88 93 02 1E 03 20 88 93 00 1E
-08 24 28 52 38 90 00 02 F6 2B 91 53 00 00 08 43
-EC 3F A2 41 26 20 82 48 28 20 0C 43 B8 43 00 1E
-6A 41 B8 40 FF 0F 02 1E 08 11 8A 10 08 5A 5A 41
-01 00 0A 11 08 10 82 4A 24 20 82 48 22 20 2A 41
-B0 12 90 5A 3A 41 30 41 90 4B 0A 00 16 C5 90 4B
-0C 00 12 C5 B0 12 30 56 82 4A 26 20 82 48 28 20
-0A 12 B0 12 4C 56 1A 48 00 1E 88 43 00 1E 19 48
-02 1E 88 43 02 1E 39 F0 FF 0F 39 90 FF 0F 02 20
-3A 93 10 24 82 4A 22 20 82 49 24 20 B0 12 30 56
-2A 91 E9 27 09 4A 2A 41 81 49 00 00 B0 12 90 5A
-2A 41 DF 3F 3A 41 30 40 90 5A 9B 52 1E 20 12 00
-8B 63 14 00 1A 42 1A 20 19 42 1C 20 30 40 92 54
-2A 93 BC 20 0C 93 09 20 F8 40 E5 00 00 1E B0 12
-74 5B B0 12 08 5B B0 12 F8 57 30 4D F2 B0 40 00
-A2 04 29 20 F2 B0 10 00 A2 04 FC 27 5A 42 B0 04
-4A 11 59 42 B4 04 F2 40 20 00 C0 04 D2 42 B1 04
-C8 04 1A 52 E4 04 D2 42 B5 04 C8 04 19 52 E4 04
-D2 42 B2 04 C0 04 B2 40 00 08 C8 04 1A 52 E4 04
-92 42 B6 04 C0 04 B2 80 BC 07 C0 04 B2 40 00 02
-C8 04 19 52 E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C
-3D 3E 3F 5B 5C 5D 7C 2E 29 92 06 28 39 80 03 00
-B0 12 48 5C 39 40 03 00 7A 4B C8 4A 00 1E 82 9B
-36 20 12 28 0D 12 3D 40 0F 00 3C 40 F8 5B 7A 9C
-F3 27 1D 83 FC 23 3D 41 6A 9C E6 27 3A 80 21 00
-EB 3B 18 53 19 83 E8 23 09 93 06 24 F8 40 20 00
-00 1E 18 53 19 83 FA 23 30 41 1A 4B 04 00 19 4B
-06 00 B0 12 4C 54 18 4B 08 00 B0 12 9C 5B 88 49
+B0 12 BC 57 22 C3 30 41 1B 42 32 20 0B 93 FB 27
+EB 92 02 00 1E 38 B0 12 28 56 1A 4B 04 00 19 4B
+06 00 B0 12 4C 54 18 4B 08 00 B0 12 B8 5B 88 49
12 1E 88 4A 16 1E 88 49 18 1E 98 4B 12 00 1C 1E
-98 4B 14 00 1E 1E 1A 4B 04 00 19 4B 06 00 30 40
-92 54 B2 40 00 02 1E 20 1B 42 32 20 B0 12 6A 5B
-82 43 1E 20 DB 53 03 00 DB 92 12 20 03 00 1D 28
-B0 12 24 56 08 12 0A 12 B0 12 A6 5A 2A 91 03 24
-2A 41 B0 12 4C 56 3A 41 38 41 98 42 22 20 00 1E
-98 42 24 20 02 1E B0 12 90 5A AB 42 02 00 9B 42
-22 20 0E 00 9B 42 24 20 10 00 30 40 8A 56 6C 58
-0A 57 52 49 54 45 B0 12 92 5C 30 4D 2A 92 54 20
-2C 93 0E 24 0C 93 3D 24 0D 12 84 12 1E 40 0C 3C
-20 57 72 69 74 65 45 72 72 6F 72 00 B2 40 E6 54
-0A 43 08 43 B0 12 A6 5A B0 12 D2 57 18 42 30 20
-F8 40 20 00 0B 1E B0 12 9C 5B 88 43 0C 1E 88 4A
-0E 1E 88 49 10 1E 98 42 24 20 14 1E 98 42 22 20
-1A 1E 88 43 1C 1E 88 43 1E 1E 2C 42 1B 42 34 20
-82 9B 36 20 D1 27 FB 90 2E 00 00 00 CD 27 39 40
-0B 00 B0 12 18 5C B0 12 74 5B 2A 42 B0 12 9C 56
-30 4D B0 12 08 5B 8B 43 12 00 8B 43 14 00 90 4B
-0A 00 90 C2 90 4B 0C 00 8C C2 B0 12 30 56 B0 12
-A6 5A B0 12 DA 5C 30 4D 2C 93 BA 27 0C 93 AC 23
-EB 42 02 00 58 4B 13 00 59 4B 14 00 89 10 09 58
-58 4B 15 00 5B 42 12 20 0A 43 3C 42 08 11 09 10
-4A 10 1C 83 0B 11 FA 2B 0A 11 1C 83 FD 37 1B 42
-32 20 19 5B 0A 00 18 6B 0C 00 8B 49 0E 00 8B 48
-10 00 CB 4A 03 00 B0 12 CE 57 1A 4B 12 00 BB C0
-FF 01 12 00 3A F0 FF 01 82 4A 1E 20 30 4D 60 58
-10 54 45 52 4D 32 53 44 22 00 0D 12 84 12 74 58
-22 5E 0A 43 B0 12 5C 43 92 B3 DC 05 FD 27 59 42
-CC 05 C2 49 CE 05 69 92 0D 24 CA 49 00 1E 1A 53
-3A 90 FF 01 04 24 F0 2B B0 12 92 5C EA 3F B0 12
-F8 42 EA 3F F2 90 0D 00 CC 05 FC 27 B0 12 F8 42
-F2 90 0A 00 CC 05 FC 27 82 4A 1E 20 B0 12 F8 57
-3D 41 30 4D
+98 4B 14 00 1E 1E 1A 4B 04 00 19 4B 06 00 B0 12
+8E 54 CB 93 02 00 CA 37 1E 4B 18 00 9F 4B 1A 00
+00 00 31 50 06 00 3D 41 B0 12 EC 57 02 24 30 40
+B0 43 B2 40 3C 1D A0 40 B2 40 D2 42 D0 42 30 40
+9E 43 09 93 07 24 F8 90 20 00 00 1E 03 20 18 53
+19 83 F9 23 30 41 92 4B 0A 00 22 20 92 4B 0C 00
+24 20 D2 3E 98 4C 0B 52 45 41 44 22 5A 43 20 3C
+00 4B 09 44 45 4C 22 00 6A 43 1A 3C C6 49 0D 57
+52 49 54 45 22 00 6A 42 13 3C AE 49 0F 41 50 50
+45 4E 44 22 7A 42 0C 3C AA 4B 0A 43 4C 4F 53 45
+B0 12 08 58 30 4D 0E 49 0B 4C 4F 41 44 22 7A 43
+2F 83 8F 4E 00 00 0E 4A 82 93 BC 1D 0B 24 0D 12
+84 12 0A 40 0A 40 FC 48 FC 48 7C 45 0A 40 24 59
+FC 48 0E 46 0D 12 84 12 0A 40 22 00 92 46 4C 49
+22 59 3D 41 36 4F 0E 56 82 4E 36 20 A2 43 22 20
+82 43 24 20 1C 43 0E 96 8C 24 F6 90 3A 00 01 00
+01 20 26 53 F6 90 5C 00 00 00 03 20 16 53 0E 96
+66 24 82 46 34 20 B0 12 64 56 15 42 12 20 B0 12
+E2 57 2C 43 0A 43 08 4A 58 0E 08 58 82 48 30 20
+C8 93 00 1E 60 24 39 42 F8 96 00 1E 04 20 18 53
+19 83 FA 23 16 53 F6 90 2E 00 FF FF 19 24 39 50
+03 00 B0 12 82 58 06 20 F6 90 5C 00 FF FF 29 24
+0E 96 27 28 16 42 34 20 1A 53 3A 90 10 00 DB 23
+92 53 1A 20 82 63 1C 20 15 83 D1 23 2C 42 49 3C
+F6 90 2E 00 FE FF EE 27 B0 12 82 58 EB 23 39 40
+03 00 F8 96 00 1E 04 20 18 53 19 83 FA 23 09 3C
+0E 96 E0 2F F6 90 5C 00 FF FF DC 23 B0 12 82 58
+D9 23 18 42 30 20 92 48 1A 1E 22 20 92 48 14 1E
+24 20 F8 B0 10 00 0B 1E 13 24 82 93 24 20 05 20
+82 93 22 20 02 20 A2 43 22 20 0E 96 9A 23 92 42
+22 20 2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C
+2A 4F B0 12 AC 56 35 40 B6 40 36 40 C4 40 3A 4F
+3E 4F 0A 93 04 24 7A 93 39 20 0C 93 02 20 30 40
+B0 43 0D 12 84 12 9E 43 1E 40 0B 3C 20 4F 70 65
+6E 45 72 72 6F 72 B2 40 E2 54 92 12 3E 18 E2 B2
+60 02 02 24 30 40 8A 41 3F 40 7E 1C 8F 43 00 00
+0D 12 84 12 1E 40 0F 4C 4F 41 44 22 20 42 4F 4F
+54 2E 34 54 48 22 B2 40 7C 49 A6 58 08 42 4F 4F
+54 00 B2 40 6A 5A C2 42 30 4D 4C 47 0C 4E 4F 42
+4F 4F 54 00 B2 40 86 41 C2 42 30 4D 1A 93 6E 20
+0C 93 C7 23 30 4D 9C 5A 08 52 45 41 44 00 2F 83
+8F 4E 00 00 1E 42 32 20 B0 12 7A 57 1E 82 32 20
+30 4D B0 12 96 58 0A 12 B0 12 20 56 1A 48 00 1E
+88 43 00 1E 19 48 02 1E 88 43 02 1E 39 F0 FF 0F
+39 90 FF 0F 02 20 3A 93 10 24 82 4A 22 20 82 49
+24 20 B0 12 48 56 2A 91 E9 27 09 4A 2A 41 81 49
+00 00 B0 12 2C 5B 2A 41 DF 3F 3A 41 08 4A 1A 52
+08 20 B0 12 3C 5B 0A 48 1A 52 0C 20 09 43 30 40
+8E 54 3C 42 0A 12 2A 41 82 9A 0A 20 CF 24 B0 12
+20 56 88 93 02 1E 03 20 88 93 00 1E 08 24 28 52
+38 90 00 02 F6 2B 91 53 00 00 08 43 EC 3F 0C 43
+B8 43 00 1E 6A 41 B8 40 FF 0F 02 1E 08 11 8A 10
+08 5A 5A 41 01 00 0A 11 08 10 82 4A 24 20 82 48
+22 20 2A 41 B0 12 2C 5B 3A 41 30 41 2A 93 A0 20
+0C 93 09 20 F8 40 E5 00 00 1E B0 12 32 56 B0 12
+E2 5A B0 12 08 58 30 4D F2 B0 40 00 A2 04 29 20
+F2 B0 10 00 A2 04 FC 27 5A 42 B0 04 4A 11 59 42
+B4 04 F2 40 20 00 C0 04 D2 42 B1 04 C8 04 1A 52
+E4 04 D2 42 B5 04 C8 04 19 52 E4 04 D2 42 B2 04
+C0 04 B2 40 00 08 C8 04 1A 52 E4 04 92 42 B6 04
+C0 04 B2 80 BC 07 C0 04 B2 40 00 02 C8 04 19 52
+E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E 3F 5B
+5C 5D 7C 2E 29 92 06 28 39 80 03 00 B0 12 64 5C
+39 40 03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28
+0D 12 3D 40 0F 00 3C 40 14 5C 7A 9C F3 27 1D 83
+FC 23 3D 41 6A 9C E6 27 3A 80 21 00 EB 3B 18 53
+19 83 E8 23 09 93 06 24 F8 40 20 00 00 1E 18 53
+19 83 FA 23 30 41 B2 40 00 02 1E 20 1B 42 32 20
+B0 12 28 56 82 43 1E 20 DB 53 03 00 DB 92 12 20
+03 00 1D 28 B0 12 3C 56 08 12 0A 12 B0 12 42 5B
+2A 91 03 24 2A 41 B0 12 20 56 3A 41 38 41 98 42
+22 20 00 1E 98 42 24 20 02 1E B0 12 2C 5B AB 42
+02 00 9B 42 22 20 0E 00 9B 42 24 20 10 00 30 40
+9A 56 BE 58 0A 57 52 49 54 45 B0 12 76 5C 30 4D
+2A 92 4E 20 2C 93 0E 24 0C 93 3D 24 0D 12 84 12
+1E 40 0C 3C 20 57 72 69 74 65 45 72 72 6F 72 00
+B2 40 E2 54 0A 43 38 42 B0 12 42 5B B0 12 E2 57
+18 42 30 20 F8 40 20 00 0B 1E B0 12 B8 5B 88 43
+0C 1E 88 4A 0E 1E 88 49 10 1E 98 42 24 20 14 1E
+98 42 22 20 1A 1E 88 43 1C 1E 88 43 1E 1E 2C 42
+1B 42 34 20 82 9B 36 20 D1 27 FB 90 2E 00 00 00
+CD 27 39 40 0B 00 B0 12 34 5C B0 12 32 56 2A 42
+B0 12 AC 56 30 4D B0 12 E2 5A 8B 43 12 00 8B 43
+14 00 B0 12 96 58 B0 12 42 5B B0 12 BE 5C 30 4D
+2C 93 C0 27 0C 93 B2 23 B0 12 96 58 82 4A 2A 20
+B0 12 20 56 1A 48 00 1E 19 48 02 1E 39 90 FF 0F
+02 20 3A 93 0A 24 82 4A 22 20 82 49 24 20 B0 12
+48 56 82 9A 2A 20 EE 27 97 3E 1A 4B 12 00 08 4A
+39 40 FF 01 8B C9 12 00 08 F9 82 48 1E 20 59 42
+12 20 19 83 8A 10 4A 11 0A F9 CB 4A 03 00 B0 12
+C2 5C B0 12 E2 57 30 4D B2 58 10 54 45 52 4D 32
+53 44 22 00 0D 12 84 12 C6 58 FC 5D 0A 43 B0 12
+5C 43 92 B3 DC 05 FD 27 59 42 CC 05 69 92 0D 24
+CA 49 00 1E 1A 53 3A 90 FF 01 04 24 F2 2B B0 12
+76 5C EC 3F B0 12 F8 42 EC 3F F2 90 0D 00 CC 05
+FC 27 B0 12 F8 42 F2 90 0A 00 CC 05 FC 27 82 4A
+1E 20 B0 12 08 58 3D 41 30 4D
@FF80
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
@1800
80 3E 12 00 00 00 F8 00 FD FF 35 01 10 00 A1 43
-E6 42 56 41 F8 55 D8 54 44 41 56 5E 3C 4C F6 4B
-F6 4B D4 42 58 43 30 43 3C 1D E0 1C EA 45 B6 40
-C4 40 06 45 20 00 0A 00 00 1C 56 41 F8 55 D8 54
-44 41 56 5E 3C 4C F6 4B F6 4B 00 00 00 00 00 00
+E0 42 50 41 CE 54 D6 54 44 41 2E 5E 36 4C F0 4B
+F0 4B CE 42 52 43 2A 43 3C 1D E0 1C E4 45 B6 40
+C4 40 00 45 20 00 0A 00 00 1C 50 41 CE 54 D6 54
+44 41 2E 5E 36 4C F0 4B F0 4B 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
@4000
92 12 40 18 12 D2 06 18 FB 3F 2F 83 8F 4E 00 00
12 D3 F5 3F 35 40 B6 40 8F 4A 02 00 8F 49 00 00
0E 48 30 41 82 4E C2 1D B2 4F C4 1D 82 43 C6 1D
3E 4F 30 4D 2F 82 8F 4E 02 00 3E 40 54 00 BF 40
-3C 1D 00 00 AF 4F FE FF 2F 83 12 3D 0E 93 3E 4F
-C3 21 2D 4D 30 4D 2F 83 8F 4E 00 00 3E 41 0D 12
+3C 1D 00 00 AF 4F FE FF 2F 83 0F 3D 0E 93 3E 4F
+C0 21 2D 4D 30 4D 2F 83 8F 4E 00 00 3E 41 0D 12
3D 4E 30 4D 2F 83 8F 4E 00 00 3E 41 2E 4E 30 4D
-92 12 3C 18 3D 41 39 40 22 18 B2 49 D2 42 B2 49
-56 43 B2 49 2E 43 B2 49 A0 40 31 49 34 49 35 49
+92 12 3C 18 3D 41 39 40 22 18 B2 49 CC 42 B2 49
+50 43 B2 49 28 43 B2 49 A0 40 31 49 34 49 35 49
36 49 37 49 B2 49 C0 1D B2 49 BE 1D B2 49 00 1C
-82 43 BC 1D 30 40 B0 4C 8F 93 02 00 02 20 2F 52
-BF 3F 28 43 B0 12 46 41 B0 12 D0 40 10 45 AC 40
-42 41 70 43 1E 40 05 1B 5B 37 6D 40 FA 43 0A 40
-02 18 32 45 5E 46 FA 43 1E 40 04 1B 5B 30 6D 00
-FA 43 46 49 48 43 A2 B3 EC 06 FD 27 C2 48 CE 06
-A2 B2 EC 06 FD 27 30 41 B2 D0 C0 07 C0 06 18 42
-02 18 08 11 38 D0 00 04 82 48 D4 06 F2 D0 03 00
-6A 02 92 C3 C0 06 A2 D2 EA 06 92 C3 30 01 30 41
-92 12 3E 18 84 12 70 43 1E 40 07 0D 0A 1B 5B 37
-6D 40 FA 43 0A 40 02 18 32 45 5E 46 0A 40 23 00
-54 43 5E 46 1E 40 19 46 61 73 74 46 6F 72 74 68
-20 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 2C 20
-FA 43 0A 40 40 FF 32 40 26 45 2A 46 1E 40 0A 62
-79 74 65 73 20 66 72 65 65 00 B2 40 36 41 00 00
-06 53 59 53 0E 93 07 38 02 24 1E B3 04 28 30 12
-80 41 01 12 6D 3F 82 4E 08 18 92 12 3A 18 F2 B0
-40 00 40 02 02 20 B2 43 08 18 B2 40 04 A5 20 01
-B2 D0 03 00 04 01 B2 D0 10 00 00 01 B2 40 80 5A
-5C 01 31 40 E0 1C 3F 40 80 1C B2 D3 06 02 B2 40
-FC FF 02 02 B2 43 26 02 B2 D3 22 02 B2 43 42 02
-B2 D3 46 02 B2 43 62 02 B2 D3 66 02 F2 43 26 03
-F2 D3 22 03 F2 40 A5 00 41 01 F2 40 10 00 40 01
-D2 43 41 01 F2 40 A5 00 61 01 B2 40 48 00 62 01
-82 43 66 01 B2 40 33 00 64 01 D2 43 61 01 39 40
-40 00 18 42 00 18 18 83 FE 23 19 83 FA 23 F2 D0
-10 00 2A 03 F2 40 A5 00 A1 04 F2 C0 40 00 A2 04
-B2 42 B0 01 39 40 00 10 29 83 89 43 00 1C FC 23
-1E 42 08 18 82 43 08 18 3E F3 02 20 1E 42 9E 01
-B0 12 D0 40 80 41 00 00 0C 41 43 43 45 50 54 00
-30 40 D4 42 0A 4E 2E 4F 0A 5E 3B 40 0A 00 3C 40
-20 00 3D 15 8D 3E 21 52 A2 C2 EC 06 B2 B0 10 00
-C0 06 86 22 3A 17 92 B3 EC 06 FD 27 58 42 CC 06
-48 9B 0E 24 48 9C 06 2C 78 92 F5 23 2E 9F F3 27
-1E 83 F1 3F 0E 9A EF 2F CE 48 00 00 1E 53 EB 3F
-3E 8F 08 4C 1B 3C 00 00 06 4B 45 59 30 40 30 43
-58 43 B0 12 46 41 2F 83 8F 4E 00 00 92 B3 EC 06
-FD 27 1E 42 CC 06 B0 12 44 41 30 4D 00 00 08 45
-4D 49 54 00 30 40 58 43 08 4E 3E 4F A2 B3 EC 06
-FD 27 C2 48 CE 06 30 4D 4E 43 08 45 43 48 4F 00
-B2 40 C2 48 62 43 38 40 05 00 B0 12 46 41 30 4D
-00 00 0C 4E 4F 45 43 48 4F 00 B2 40 30 4D 62 43
-28 42 F3 3F 0D 12 3D 40 B4 43 1B 42 32 20 9B 42
-1E 20 16 00 3A 4F 09 4E 0E 43 1C 42 1E 20 1B 42
-20 20 02 3C B6 43 2D 83 0C 9B 16 2C 58 4C 00 1E
-1C 53 78 90 20 00 09 2C 78 90 0A 00 F5 23 82 4C
-1E 20 3D 41 3C 40 20 00 A4 3F 0E 99 BF 27 CA 48
-00 00 1A 53 1E 53 BA 3F 1A 15 B0 12 46 57 19 17
-DC 3F 00 00 08 54 59 50 45 00 0D 12 3D 40 0A 44
-29 4F 8F 4E 00 00 7E 49 A5 3F 0C 44 2D 83 2F 83
-5E 83 F7 23 3D 41 2F 53 3E 4F 30 4D 86 12 20 00
-0C 4E 38 4F 3C 9F 39 4F 3E 4F 43 22 F9 98 00 00
-40 22 19 53 1C 83 FA 23 2D 53 30 4D 2F 53 3E 4F
-1E 83 37 22 9B 24 28 43 0D 5B 45 4C 53 45 5D 00
-0D 12 84 12 0A 40 00 00 2A 45 1C 44 6E 46 28 49
-B0 40 98 44 14 40 06 5B 54 48 45 4E 5D 00 20 44
-76 44 3C 44 5A 44 14 40 06 5B 45 4C 53 45 5D 00
-20 44 88 44 3C 44 58 44 1E 40 04 5B 49 46 5D 00
-20 44 5A 44 B2 40 58 44 1E 40 05 0D 6B 6F 20 0A
-FA 43 9A 40 84 40 B2 40 5A 44 48 44 0D 5B 54 48
-45 4E 5D 00 30 4D AC 44 09 5B 49 46 5D 00 0E 93
-3E 4F C6 27 30 4D B8 44 13 5B 44 45 46 49 4E 45
-44 5D 0D 12 84 12 1C 44 6E 46 D6 46 7A 48 EA 45
-C8 44 17 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12
-84 12 1C 44 6E 46 D6 46 FA 44 3D 41 2F 53 1E 83
-0E 7E 30 4D 3F 12 2F 83 8F 4E 00 00 3E 41 30 4D
-8F 4E FE FF 2F 83 30 4D 8F 4E FE FF 3E 40 80 1C
-0E 8F 0E 11 F7 3F 3E 8F 3E E3 1E 53 30 4D 00 00
-02 40 2E 4E 30 4D C8 42 02 21 BE 4F 00 00 3E 4F
-30 4D 0E 5E 0E 7E 3E E3 30 4D 3E 8F 01 28 0E F3
-30 4D E0 41 05 53 22 00 82 43 C0 1D 0D 12 84 12
-0A 40 1E 40 D8 48 0A 40 22 00 6E 46 6E 45 B2 40
-20 00 C0 1D 1A 53 1A B3 82 6A C8 1D 3E 4F 3D 41
-30 4D 82 43 05 2E 22 00 0D 12 84 12 58 45 0A 40
-FA 43 D8 48 EA 45 00 00 04 3C 23 00 B2 40 B2 1D
-B2 1D 30 4D 54 45 02 23 1B 42 BE 1D 2C 4F 2F 83
-B0 12 46 40 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 1D 18 42 B2 1D C8 4A
-00 00 30 4D A6 45 04 23 53 00 0D 12 84 12 A8 45
-E2 45 2D 83 09 DE 09 93 E1 23 3D 41 30 4D D6 45
-04 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 08 48 4F 4C 44 00 4A 4E 3E 4F DB 3F
-F0 45 08 53 49 47 4E 00 0E 93 3E 4F 7A 40 2D 00
-D2 33 30 4D 6A 43 04 55 2E 00 0C 43 2F 83 8F 4E
-00 00 0E 4C 1D 15 3E F3 06 34 BF E3 00 00 3E E3
-9F 53 00 00 0E 63 84 12 9C 45 1C 44 0A 46 DA 45
-06 45 18 46 F4 45 FA 43 EA 45 84 45 02 2E 0E 93
-E4 37 3C 43 E3 3F 00 00 08 57 4F 52 44 00 3C 40
-C2 1D 39 4C 38 4C 09 58 38 5C 2A 4C 09 98 1D 24
-7E 98 FC 27 18 83 1B 42 C0 1D F8 90 27 00 00 00
-04 20 E8 98 02 00 01 20 0B 43 CA 4C 00 00 09 98
-0C 24 7C 48 4E 9C 09 24 1A 53 7C 90 61 00 F5 2B
-7C 90 7B 00 F2 2F 4C 8B F0 3F 18 82 C4 1D 82 48
-C6 1D 1E 42 C8 1D 0A 8E CE 4A 00 00 30 4D 00 00
-08 46 49 4E 44 00 2F 83 0C 4E 3B 40 CE 1D 3E 4B
-0E 93 1E 24 58 4C 01 00 78 F0 0F 00 08 58 0E 58
-2E 53 1E 4E FE FF 0E 93 F2 27 09 4E 78 49 48 11
-68 9C F7 23 0A 4C FA 99 01 00 F3 23 1A 53 58 83
-FA 23 19 B3 09 63 0C 49 6E 4E 1E F3 01 20 1E 83
-8F 4C 00 00 30 4D 5C 46 0E 3E 4E 55 4D 42 45 52
-1B 42 BE 1D 3C 4F 38 4F 29 4F 2F 82 82 4B C0 04
-6A 4C 7A 80 3A 00 03 28 7A 80 07 00 12 28 7A 50
-0A 00 0A 9B 22 C3 0D 2C 82 49 E0 04 82 48 E2 04
-19 42 E4 04 18 42 E6 04 09 5A 08 63 1C 53 1E 83
-E7 23 8F 4C 00 00 8F 48 02 00 8F 49 04 00 30 4D
-32 C0 00 02 3F 82 8F 4E 06 00 08 43 09 43 1B 42
-BE 1D 0C 4E 0E 43 1E 15 3D 40 E0 47 7E 4C 6A 4C
-7A 80 2D 00 16 24 CA 2F 2B 43 7A 52 14 24 3B 52
-6A 53 11 24 3B 40 10 00 5A 93 0D 24 6A 92 41 20
-3E 90 03 00 3E 20 FC 9C 01 00 6C 4C 8F 4C 04 00
-38 3C B1 43 02 00 1E 83 FC 9C 00 00 E0 23 AE 27
-E2 47 2F 24 2D 83 6A 4C 7A 90 5F 00 BF 27 32 B0
-00 02 27 20 32 D0 00 02 7A 80 2E 00 B7 27 6A 53
-20 20 0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C
-69 49 79 80 3A 00 03 28 79 80 07 00 0C 28 79 50
-0A 00 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12
-3E 40 2A 17 E8 3F 9F 4F 04 00 02 00 AF 4F 04 00
-4A 93 1D 17 06 24 32 C0 00 02 3F 50 06 00 0E F3
-30 4D 2F 53 9F 4F 02 00 04 00 BF 4F 00 00 3E E3
-09 20 3E E3 BF E3 02 00 BF E3 00 00 9F 53 02 00
-8F 63 00 00 32 B0 00 02 01 20 2F 53 30 4D 98 45
-03 5C 92 42 C2 1D C6 1D 30 4D 0D 12 84 12 84 40
-1C 44 6E 46 B0 40 B2 49 D6 46 9C 48 0A 4E 3E 4F
-3D 40 B6 48 6D 27 3D 40 90 48 1A E2 BC 1D 14 24
-0E 12 3E 4F 30 41 B8 48 3E 4F 3D 40 90 48 19 20
-DE 53 00 00 68 4E 08 5E F8 40 3F 00 00 00 3D 40
-8E 4A 2A 3C 80 48 02 2C A2 53 C8 1D 1A 42 C8 1D
-8A 4E FE FF 3E 4F 30 4D D6 48 0F 4C 49 54 45 52
-41 4C 82 93 BC 1D 0D 24 09 4E 1A 42 C8 1D A2 52
-C8 1D BA 40 0A 40 00 00 8A 49 02 00 3E 4F 32 B0
-00 02 32 C0 00 02 03 24 8A 4E 02 00 EE 3F 30 4D
-12 46 0A 43 4F 55 4E 54 2F 83 7A 4E 8F 4E 00 00
-0E 4A 3E F3 30 4D 38 45 0A 41 4C 4C 4F 54 82 5E
-C8 1D 3E 4F 30 4D 3F 40 80 1C 0E 43 84 12 1E 40
-02 0D 0A 00 FA 43 94 40 8A 48 18 45 42 45 1E 40
-0B 73 74 61 63 6B 20 65 6D 70 74 79 08 41 32 40
-0A 40 40 FF 4A 45 1E 40 09 46 52 41 4D 20 66 75
-6C 6C 08 41 B2 40 4E 49 38 49 0D 41 42 4F 52 54
-22 00 0D 12 84 12 58 45 0A 40 08 41 D8 48 EA 45
-68 46 02 27 0D 12 84 12 1C 44 6E 46 D6 46 B0 40
-B4 49 7C 45 C0 48 E2 44 07 5B 27 5D 0D 12 84 12
-A4 49 0A 40 0A 40 D8 48 D8 48 EA 45 B8 49 03 5B
-82 43 BC 1D 30 4D 00 00 02 5D B2 43 BC 1D 30 4D
-30 45 11 50 4F 53 54 50 4F 4E 45 00 0D 12 84 12
-1C 44 6E 46 D6 46 B0 40 B4 49 42 45 AC 40 0C 4A
-0A 40 0A 40 D8 48 D8 48 0A 40 D8 48 D8 48 EA 45
-00 00 02 3A 30 12 62 4A 92 B3 C8 1D A2 63 C8 1D
-0D 12 84 12 1C 44 6E 46 2A 4A 3D 41 5A D3 5A 53
-0A 5E 19 42 CC 1D 08 4E 5E 4E 01 00 3E F0 0F 00
-0E 5E 09 5E 3E 4F E8 58 00 00 82 48 B4 1D 82 49
-B6 1D 82 4A B8 1D 82 4F BA 1D 2A 52 82 4A C8 1D
-30 41 BA 40 0D 12 FC FF BA 40 84 12 FE FF B2 43
-BC 1D 30 4D 82 9F BA 1D 66 25 84 12 1E 40 0F 73
-74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21 12 41
-CE 49 03 3B 82 93 BC 1D F4 26 0D 12 84 12 0A 40
-EA 45 D8 48 74 4A D0 49 EA 45 00 00 12 49 4D 4D
-45 44 49 41 54 45 18 42 B4 1D D8 D3 00 00 30 4D
-22 49 0C 43 52 45 41 54 45 00 B0 12 18 4A BA 40
-86 12 FC FF 8A 4A FE FF 3A 3D F4 43 0A 44 4F 45
-53 3E 1A 42 B8 1D BA 40 85 12 00 00 8A 4D 02 00
-3D 41 30 4D 12 4A 0E 3A 4E 4F 4E 41 4D 45 30 12
-62 4A 2F 83 8F 4E 00 00 1A 42 C8 1D 1A B3 0A 63
-0E 4A 39 40 12 02 08 49 98 3F AC 4A 05 49 53 00
-0D 12 82 93 BC 1D 08 20 84 12 A4 49 2E 4B 3D 41
-BE 4F 02 00 3E 4F 30 4D 84 12 BC 49 0A 40 30 4B
-D8 48 EA 45 C2 4A 08 43 4F 44 45 00 B0 12 18 4A
-A2 82 C8 1D 61 3C 04 46 0E 48 44 4E 43 4F 44 45
-B2 40 1C 4C CC 1D F2 3F 00 00 0E 45 4E 44 43 4F
-44 45 0D 12 84 12 74 4A 7A 4B 3D 41 92 42 D0 1D
-CC 1D 5D 3C 46 4B 0E 43 4F 44 45 4E 4E 4D 30 12
-50 4B B7 3F 00 00 0A 43 4F 4C 4F 4E 1A 42 C8 1D
-BA 40 0D 12 00 00 BA 40 84 12 02 00 A2 52 C8 1D
-B2 43 BC 1D E3 3F 00 00 0A 4C 4F 32 48 49 A2 83
-C8 1D 1A 42 C8 1D EF 3F 58 4B 0B 48 49 32 4C 4F
-A2 53 C8 1D 1A 42 C8 1D 8A 4A FE FF 82 43 BC 1D
-B9 3F E4 4B B2 40 F6 4B D0 1D 82 4E CE 1D 30 40
-7C 45 85 12 E2 4B E2 49 56 58 52 5A 64 58 EC 5D
-26 46 D0 46 CC 5C CA 4B 1C 4B F6 4A 92 4A 72 58
-FE 4C 36 5A 00 00 00 00 85 12 E2 4B 78 53 FC 51
-1E 54 24 51 80 51 CE 51 AA 52 64 54 46 50 6A 51
-00 00 00 00 B8 4B 36 4F 00 00 D2 52 16 4C B2 40
-F6 4B CE 1D 82 43 D0 1D 30 4D 3B 40 0A 00 BA 49
-00 00 2A 53 2B 83 FB 23 30 41 00 00 0E 52 53 54
-5F 53 45 54 39 40 C8 1D 3A 40 42 18 B0 12 4A 4C
-30 4D 5C 4C 0E 52 53 54 5F 52 45 54 39 40 42 18
-2C 49 3A 40 C8 1D B0 12 4A 4C 1A 42 CA 1D 3B 40
-10 00 09 4A 08 49 29 83 18 48 FE FF 0C 98 FC 2B
-89 48 00 00 1B 83 F6 23 2A 4A 0A 93 F0 23 30 4D
-0E 93 E4 37 39 40 10 00 29 83 B9 43 80 FF FC 23
-B9 40 10 42 FE FF 29 83 B9 40 FA 41 FE FF 39 90
-AE FF F9 23 39 40 10 18 B2 49 BC FF 3B 40 10 00
-3A 40 3A 18 B0 12 4E 4C 82 43 4A 18 C7 3F F0 4C
-B2 4E 42 18 BE 12 3E 4F 3D 41 C0 3F D8 49 0C 4D
-41 52 4B 45 52 00 12 12 C6 1D 0D 12 84 12 1C 44
-6E 46 D6 46 AC 40 1C 4D 10 45 B0 48 1E 4D 3E 4F
-3D 41 B2 41 C6 1D B0 12 18 4A BA 40 85 12 FC FF
-BA 40 EE 4C FE FF 28 83 8A 48 00 00 BA 40 82 40
-02 00 A2 52 C8 1D 18 42 B4 1D 19 42 B6 1D A8 49
-FE FF 89 48 00 00 30 4D 12 12 C6 1D 84 12 6E 46
-D6 46 AC 40 88 4D 68 4D 3C 4E 3C 80 87 12 0A 24
-1C 53 02 20 2E 4E 06 3C BE 90 EE 4C 00 00 01 20
-3E 52 2E 83 21 53 30 41 80 47 AC 40 90 4D 84 4D
-92 4D B2 41 C6 1D 30 41 92 83 C6 1D 3E 40 28 00
-0A 4E 3D 15 B0 12 58 4D 15 20 3E 40 2B 00 B0 12
-58 4D 06 20 3E 40 2D 00 B0 12 58 4D 92 83 C6 1D
-0E 12 1E 41 02 00 84 12 6E 46 80 47 AC 40 B4 49
-D2 4D 3E 51 3A 17 30 41 B0 12 98 4D 19 42 C8 1D
-89 4E 00 00 A2 53 C8 1D 3E 40 29 00 92 53 C6 1D
-1A 42 C6 1D 3D 15 84 12 6E 46 80 47 AC 40 0A 4E
-02 4E 3E 90 10 00 E6 2B 7C 2D 0C 4E A2 41 C6 1D
-E1 3F 03 20 B0 12 F0 4D 43 3C 7A 90 23 00 24 20
-B0 12 A0 4D 3C 40 00 03 0E 93 1C 24 3C 40 10 03
-1E 93 18 24 3C 40 20 03 2E 93 14 24 3C 40 20 02
-2E 92 10 24 3C 40 30 02 3E 92 0C 24 3C 40 30 03
-3E 93 08 24 3C 40 30 00 19 42 C8 1D A2 53 C8 1D
-89 4E 00 00 3E 4F 30 4D 7A 90 26 00 05 20 3C 40
-10 02 B0 12 A0 4D F0 3F 7A 90 40 00 14 20 3C 40
-20 00 B0 12 EC 4D 0C 20 3C D0 10 00 3E 40 2B 00
-B0 12 F0 4D 92 92 C2 1D C6 1D 02 24 92 53 C6 1D
-8E 10 0C 5E DF 3F 3C D0 10 00 B0 12 D8 4D F2 3F
-03 20 B0 12 F0 4D F5 3F 7A 90 26 00 03 20 3C D0
-82 00 D7 3F 3C D0 80 00 B0 12 D8 4D EA 3F 0C 43
-1B 42 C8 1D A2 53 C8 1D 3A 40 20 00 19 42 C6 1D
-19 52 C4 1D 7A 99 FE 27 5A 49 FF FF 19 82 C4 1D
-82 49 C6 1D 7A 90 52 00 30 4D 00 00 08 52 45 54
-49 00 0D 12 84 12 0A 40 00 13 D8 48 EA 45 0A 40
-2C 00 CE 4E 12 4E 1C 44 D8 4E B0 4E 1E 4F 3D 41
-2C DE 8B 4C 00 00 9E 3F 00 00 06 4D 4F 56 85 12
-0E 4F 00 40 2A 4F 0A 4D 4F 56 2E 42 85 12 0E 4F
-40 40 00 00 06 41 44 44 85 12 0E 4F 00 50 44 4F
-0A 41 44 44 2E 42 85 12 0E 4F 40 50 50 4F 08 41
-44 44 43 00 85 12 0E 4F 00 60 5E 4F 0C 41 44 44
-43 2E 42 00 85 12 0E 4F 40 60 96 4B 08 53 55 42
-43 00 85 12 0E 4F 00 70 7C 4F 0C 53 55 42 43 2E
-42 00 85 12 0E 4F 40 70 8A 4F 06 53 55 42 85 12
-0E 4F 00 80 9A 4F 0A 53 55 42 2E 42 85 12 0E 4F
-40 80 A6 4F 06 43 4D 50 85 12 0E 4F 00 90 B4 4F
-0A 43 4D 50 2E 42 85 12 0E 4F 40 90 00 00 08 44
-41 44 44 00 85 12 0E 4F 00 A0 CE 4F 0C 44 41 44
-44 2E 42 00 85 12 0E 4F 40 A0 FC 4E 06 42 49 54
-85 12 0E 4F 00 B0 EC 4F 0A 42 49 54 2E 42 85 12
-0E 4F 40 B0 F8 4F 06 42 49 43 85 12 0E 4F 00 C0
-06 50 0A 42 49 43 2E 42 85 12 0E 4F 40 C0 12 50
-06 42 49 53 85 12 0E 4F 00 D0 20 50 0A 42 49 53
-2E 42 85 12 0E 4F 40 D0 00 00 06 58 4F 52 85 12
-0E 4F 00 E0 3A 50 0A 58 4F 52 2E 42 85 12 0E 4F
-40 E0 6C 4F 06 41 4E 44 85 12 0E 4F 00 F0 54 50
-0A 41 4E 44 2E 42 85 12 0E 4F 40 F0 1C 44 CE 4E
-12 4E 74 50 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
-0C DA 4D 3F 2C 50 06 52 52 43 85 12 6C 50 00 10
-86 50 0A 52 52 43 2E 42 85 12 6C 50 40 10 C0 4F
-08 53 57 50 42 00 85 12 6C 50 80 10 92 50 06 52
-52 41 85 12 6C 50 00 11 AE 50 0A 52 52 41 2E 42
-85 12 6C 50 40 11 A0 50 06 53 58 54 85 12 6C 50
-80 11 00 00 08 50 55 53 48 00 85 12 6C 50 00 12
-D4 50 0C 50 55 53 48 2E 42 00 85 12 6C 50 40 12
-C8 50 08 43 41 4C 4C 00 85 12 6C 50 80 12 1A 53
-0E 4A 84 12 5E 46 1E 40 0D 6F 75 74 20 6F 66 20
-62 6F 75 6E 64 73 12 41 F2 50 06 53 3E 3D 86 12
-00 38 1A 51 04 53 3C 00 86 12 00 34 E2 50 06 30
-3E 3D 86 12 00 30 2E 51 04 30 3C 00 86 12 00 30
-6A 4B 04 55 3C 00 86 12 00 2C 42 51 06 55 3E 3D
-86 12 00 28 38 51 06 30 3C 3E 86 12 00 24 56 51
-04 30 3D 00 86 12 00 20 00 00 04 49 46 00 1A 42
-C8 1D 8A 4E 00 00 A2 53 C8 1D 0E 4A 30 4D DC 4F
-08 54 48 45 4E 00 1A 42 C8 1D 08 4E 3E 4F 09 48
-29 53 0A 89 0A 11 3A 90 00 02 B2 2F 88 DA 00 00
-30 4D 4C 51 08 45 4C 53 45 00 1A 42 C8 1D BA 40
-00 3C 00 00 A2 53 C8 1D 2F 83 8F 4A 00 00 E3 3F
-BA 50 0A 42 45 47 49 4E 30 40 32 40 A4 51 0A 55
-4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C8 1D 2A 83
-0A 89 0A 11 3A 90 00 FE 8B 3B 3A F0 FF 03 08 DA
-89 48 00 00 A2 53 C8 1D 30 4D 60 50 0A 41 47 41
-49 4E 0A 4E 38 40 00 3C E7 3F 00 00 0A 57 48 49
-4C 45 0D 12 84 12 6E 51 04 45 EA 45 C2 51 0C 52
-45 50 45 41 54 00 0D 12 84 12 02 52 86 51 EA 45
-32 52 3D 41 08 4E 3E 4F 2A 48 B2 92 C6 1D CB 2F
-98 42 C8 1D 00 00 30 4D 1E 52 06 42 57 31 85 12
-30 52 00 00 4A 52 06 42 57 32 85 12 30 52 00 00
-56 52 06 42 57 33 85 12 30 52 00 00 6E 52 3D 41
-1A 42 C8 1D 28 4E 8E 43 00 00 B2 92 C6 1D 86 2B
-BA 4F 00 00 A2 53 C8 1D 8E 4A 00 00 3E 4F 30 4D
-00 00 06 46 57 31 85 12 6C 52 00 00 92 52 06 46
-57 32 85 12 6C 52 00 00 9E 52 06 46 57 33 85 12
-6C 52 00 00 0C 52 08 47 4F 54 4F 00 2F 83 8F 4E
-00 00 3E 40 00 3C 0D 12 84 12 A4 49 B0 48 EA 45
-00 00 0A 3F 47 4F 54 4F 3E 90 00 30 F4 27 3E E0
-00 04 3E B0 00 10 EF 27 3E E0 00 08 EC 3F D8 4E
-0A 40 2C 00 6E 46 80 47 AC 40 B4 49 1C 44 CE 4E
-B0 4E 04 53 0A 4E 3E 4F 1A 83 F9 32 29 4E 59 0E
-0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00
-EE 2E 5A 0E AD 3E 2A 92 EA 2E 8A 10 5A 06 A8 3E
-62 52 08 52 52 43 4D 00 85 12 EE 52 50 00 32 53
-08 52 52 41 4D 00 85 12 EE 52 50 01 40 53 08 52
-4C 41 4D 00 85 12 EE 52 50 02 4E 53 08 52 52 55
-4D 00 85 12 EE 52 50 03 60 51 0A 50 55 53 48 4D
-85 12 EE 52 00 15 6A 53 08 50 4F 50 4D 00 85 12
-EE 52 00 17 D2 C3 23 02 E2 B2 60 02 02 24 30 40
-FA 41 1A 52 04 20 19 62 06 20 92 43 14 20 C2 4A
-15 20 8A 10 C2 4A 16 20 C2 49 17 20 89 10 C2 49
-18 20 B0 12 F8 53 5A 53 FC 23 39 40 05 00 D2 49
-14 20 4E 06 82 93 46 06 05 24 92 B3 6C 06 FD 27
-C2 93 4C 06 59 83 F3 2F 19 83 0B 30 F2 43 4E 06
-82 93 46 06 03 24 92 B3 6C 06 FD 27 5A 92 4C 06
-F3 23 30 41 1A 43 E1 3F 19 43 3A 43 8A 10 C2 4A
-4E 06 82 93 46 06 05 24 92 B3 6C 06 FD 27 C2 93
-4C 06 19 83 F3 23 5A 42 4C 06 30 41 5C 53 12 52
-5F 53 45 43 54 5F 57 58 1C D3 F2 40 51 00 19 20
-B0 12 84 53 38 20 B0 12 F8 53 6A 53 04 24 FB 23
-D9 42 4C 06 FF 1D F2 43 4E 06 03 43 19 53 39 90
-01 02 F6 23 F2 43 4E 06 3C C0 03 00 D2 D3 23 02
-30 41 B6 52 12 57 5F 53 45 43 54 5F 57 58 2C D3
-F0 40 58 00 A5 CB B0 12 84 53 15 20 3A 40 FE FF
-29 43 B0 12 FC 53 D2 49 00 1E 4E 06 03 43 19 53
-39 90 00 02 F8 23 39 40 03 00 B0 12 FA 53 7A C0
-E1 00 6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3 23 02
-84 12 70 43 1E 40 0B 3C 20 53 44 20 45 72 72 6F
-72 21 C4 54 2F 83 8F 4E 00 00 B2 40 10 00 BE 1D
-0E 4C 84 12 2A 46 12 41 B0 12 58 41 E2 B2 60 02
-8A 20 B2 40 81 A9 40 06 B2 40 30 00 46 06 D2 D3
-25 02 B2 D0 C0 04 0C 02 92 C3 40 06 39 40 6E 01
-29 83 89 43 02 20 FC 23 39 42 B0 12 FA 53 D2 C3
-23 02 2C 42 B2 40 95 00 14 20 B2 40 00 40 18 20
-B0 12 F4 53 02 24 30 40 A6 54 B0 12 F8 53 7A 93
-FC 23 B2 40 87 AA 14 20 92 43 16 20 B2 40 00 48
-18 20 B0 12 F4 53 29 42 B0 12 FA 53 92 43 14 20
-82 43 16 20 78 43 3C 42 B2 40 00 77 18 20 B0 12
-F4 53 B2 40 40 69 18 20 B0 12 B2 53 03 24 58 83
-F3 23 D9 3F 0C 5C A2 43 16 20 B2 40 00 50 18 20
-B0 12 B2 53 D0 23 92 D3 40 06 82 43 46 06 92 C3
-40 06 0A 43 09 43 B0 12 28 54 38 40 00 1E 92 48
-C6 01 04 20 92 48 C8 01 06 20 5C 48 C2 01 7C 80
-0C 00 08 24 5C 53 06 24 6C 52 04 24 3C 50 07 20
-30 40 AC 54 09 43 B0 12 28 54 A2 43 2C 20 19 48
-0E 00 82 49 08 20 1A 48 24 00 82 4A 0A 20 09 5A
-82 49 0C 20 09 5A 58 48 0D 00 82 48 12 20 09 88
-09 88 82 49 10 20 30 41 82 43 32 20 30 40 56 41
-92 4B 0E 00 22 20 92 4B 10 00 24 20 5A 42 23 20
-58 42 22 20 59 42 24 20 89 10 0A D9 88 10 08 58
-0A 6A 88 10 08 58 30 41 1A 52 08 20 09 43 FC 3E
-92 42 22 20 D0 04 92 42 24 20 D2 04 92 42 12 20
-C8 04 92 42 E4 04 1A 20 92 42 E6 04 1C 20 92 52
-10 20 1A 20 82 63 1C 20 30 41 92 4B 0E 00 22 20
-92 4B 10 00 24 20 B0 12 30 56 5A 4B 03 00 82 5A
-1A 20 82 63 1C 20 30 41 3C 42 3B 40 38 20 09 43
-CB 93 02 00 10 24 9B 92 24 20 0C 00 04 20 9B 92
-22 20 0A 00 A3 25 09 4B 3B 50 1C 00 3B 90 18 21
-EF 23 0C 5C 9B 3D 0C 43 82 4B 32 20 8B 49 00 00
-09 93 0A 24 99 52 C6 1D 16 00 4A 93 05 34 C9 93
-02 00 02 34 5A 59 02 00 CB 4A 02 00 CB 43 03 00
-9B 42 1A 20 04 00 9B 42 1C 20 06 00 18 42 30 20
-8B 48 08 00 9B 48 1A 1E 0A 00 9B 48 14 1E 0C 00
-9B 48 1A 1E 0E 00 9B 48 14 1E 10 00 9B 48 1C 1E
-12 00 9B 48 1E 1E 14 00 82 43 1E 20 6A 93 1A 24
-A4 37 8B 43 16 00 7A 93 02 24 07 38 35 3C B2 40
-1C 21 A0 40 B2 40 94 43 D2 42 9B 42 C2 1D 18 00
-9B 82 C6 1D 18 00 9B 42 C4 1D 1A 00 9B 52 C6 1D
-1A 00 22 3C 30 41 1B 42 32 20 82 43 1E 20 B2 90
-00 02 20 20 3F 20 BB 80 00 02 12 00 8B 73 14 00
-DB 53 03 00 DB 92 12 20 03 00 0E 28 CB 43 03 00
-B0 12 00 56 B0 12 28 56 8B 43 10 00 9B 48 00 1E
-0E 00 9B 48 02 1E 10 00 B2 40 00 02 20 20 8B 93
-14 00 0B 20 92 9B 12 00 1E 20 1C 2C BB 90 00 02
-12 00 03 2C 92 4B 12 00 20 20 B0 12 5A 56 1A 42
-1A 20 19 42 1C 20 38 3E CB 43 02 00 2B 4B 82 4B
-32 20 0B 93 06 24 92 4B 16 00 1E 20 B0 12 88 57
-22 C3 30 41 1B 42 32 20 0B 93 FB 27 EB 92 02 00
-04 20 B0 12 46 5B B0 12 36 5C CB 93 02 00 E4 37
-1E 4B 18 00 9F 4B 1A 00 00 00 31 50 06 00 3D 41
-B0 12 B8 57 02 24 30 40 8A 43 B2 40 3C 1D A0 40
-B2 40 D4 42 D2 42 30 40 70 43 09 93 07 24 F8 90
-20 00 00 1E 03 20 18 53 19 83 F9 23 30 41 74 4C
-0B 52 45 41 44 22 5A 43 20 3C DC 4A 09 44 45 4C
-22 00 6A 43 1A 3C A2 49 0D 57 52 49 54 45 22 00
-6A 42 13 3C 8A 49 0F 41 50 50 45 4E 44 22 7A 42
-0C 3C 86 4B 0A 43 4C 4F 53 45 B0 12 D4 57 30 4D
-EA 48 0B 4C 4F 41 44 22 7A 43 2F 83 8F 4E 00 00
-0E 4A 82 93 BC 1D 0B 24 0D 12 84 12 0A 40 0A 40
-D8 48 D8 48 58 45 0A 40 AE 58 D8 48 EA 45 0D 12
-84 12 0A 40 22 00 6E 46 28 49 AC 58 3D 41 36 4F
-0E 56 82 4E 36 20 A2 43 22 20 82 43 24 20 1C 43
-0E 96 8C 24 F6 90 3A 00 01 00 01 20 26 53 F6 90
-5C 00 00 00 03 20 16 53 0E 96 66 24 82 46 34 20
-B0 12 30 56 15 42 12 20 B0 12 AE 57 2C 43 0A 43
-08 4A 58 0E 08 58 82 48 30 20 C8 93 00 1E 60 24
-39 42 F8 96 00 1E 04 20 18 53 19 83 FA 23 16 53
-F6 90 2E 00 FF FF 19 24 39 50 03 00 B0 12 1A 58
-06 20 F6 90 5C 00 FF FF 29 24 0E 96 27 28 16 42
-34 20 1A 53 3A 90 10 00 DB 23 92 53 1A 20 82 63
-1C 20 15 83 D1 23 2C 42 49 3C F6 90 2E 00 FE FF
-EE 27 B0 12 1A 58 EB 23 39 40 03 00 F8 96 00 1E
-04 20 18 53 19 83 FA 23 09 3C 0E 96 E0 2F F6 90
-5C 00 FF FF DC 23 B0 12 1A 58 D9 23 18 42 30 20
-92 48 1A 1E 22 20 92 48 14 1E 24 20 F8 B0 10 00
-0B 1E 13 24 82 93 24 20 05 20 82 93 22 20 02 20
-A2 43 22 20 0E 96 9A 23 92 42 22 20 2C 20 92 42
-24 20 2E 20 8F 43 00 00 03 3C 2A 4F B0 12 78 56
-35 40 B6 40 36 40 C4 40 3A 4F 3E 4F 0A 93 04 24
-7A 93 39 20 0C 93 02 20 30 40 8A 43 0D 12 84 12
-70 43 1E 40 0B 3C 20 4F 70 65 6E 45 72 72 6F 72
-B2 40 C2 54 E2 B2 60 02 02 24 30 40 80 41 92 12
-3E 18 3F 40 7E 1C 8F 43 00 00 0D 12 84 12 1E 40
-0F 4C 4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22
-B2 40 58 49 30 58 08 42 4F 4F 54 00 B2 40 F4 59
-C4 42 30 4D 28 47 0C 4E 4F 42 4F 4F 54 00 B2 40
-80 41 C4 42 30 4D 1A 93 89 20 0C 93 C7 23 30 4D
-26 5A 08 52 45 41 44 00 2F 83 8F 4E 00 00 1E 42
-32 20 B0 12 46 57 1E 82 32 20 30 4D 08 4A 1A 52
-08 20 B0 12 7C 5A 0A 48 1A 52 0C 20 09 43 30 40
-6E 54 3C 42 0A 12 2A 41 82 9A 0A 20 2B 25 B0 12
-28 56 88 93 02 1E 03 20 88 93 00 1E 08 24 28 52
-38 90 00 02 F6 2B 91 53 00 00 08 43 EC 3F A2 41
-26 20 82 48 28 20 0C 43 B8 43 00 1E 6A 41 B8 40
-FF 0F 02 1E 08 11 8A 10 08 5A 5A 41 01 00 0A 11
-08 10 82 4A 24 20 82 48 22 20 2A 41 B0 12 6C 5A
-3A 41 30 41 90 4B 0A 00 3A C5 90 4B 0C 00 36 C5
-B0 12 0C 56 82 4A 26 20 82 48 28 20 0A 12 B0 12
-28 56 1A 48 00 1E 88 43 00 1E 19 48 02 1E 88 43
+82 43 BC 1D 30 40 AA 4C 8F 93 02 00 02 20 2F 52
+BF 3F 28 43 B0 12 46 41 B0 12 D0 40 0A 45 AC 40
+42 41 6A 43 1E 40 05 1B 5B 37 6D 40 F4 43 0A 40
+02 18 2C 45 58 46 F4 43 1E 40 04 1B 5B 30 6D 00
+F4 43 40 49 48 43 A2 B3 EC 06 FD 27 C2 48 CE 06
+30 41 B2 D0 C0 07 C0 06 18 42 02 18 08 11 38 D0
+00 04 82 48 D4 06 F2 D0 03 00 6A 02 92 C3 C0 06
+A2 D2 EA 06 92 C3 30 01 30 41 92 12 3E 18 84 12
+6A 43 1E 40 07 0D 0A 1B 5B 37 6D 40 F4 43 0A 40
+02 18 2C 45 58 46 0A 40 23 00 4E 43 58 46 1E 40
+19 46 61 73 74 46 6F 72 74 68 20 A9 4A 2E 4D 2E
+54 68 6F 6F 72 65 6E 73 2C 20 F4 43 0A 40 40 FF
+32 40 20 45 24 46 1E 40 0A 62 79 74 65 73 20 66
+72 65 65 00 B2 40 36 41 00 00 06 53 59 53 0E 93
+07 38 02 24 1E B3 04 28 30 12 7A 41 01 12 70 3F
+82 4E 08 18 92 12 3A 18 F2 B0 40 00 40 02 02 20
+B2 43 08 18 B2 40 04 A5 20 01 B2 D0 03 00 04 01
+B2 D0 10 00 00 01 B2 40 80 5A 5C 01 31 40 E0 1C
+3F 40 80 1C B2 D3 06 02 B2 40 FC FF 02 02 B2 43
+26 02 B2 D3 22 02 B2 43 42 02 B2 D3 46 02 B2 43
+62 02 B2 D3 66 02 F2 43 26 03 F2 D3 22 03 F2 40
+A5 00 41 01 F2 40 10 00 40 01 D2 43 41 01 F2 40
+A5 00 61 01 B2 40 48 00 62 01 82 43 66 01 B2 40
+33 00 64 01 D2 43 61 01 39 40 40 00 18 42 00 18
+18 83 FE 23 19 83 FA 23 F2 D0 10 00 2A 03 F2 40
+A5 00 A1 04 F2 C0 40 00 A2 04 B2 42 B0 01 39 40
+00 10 29 83 89 43 00 1C FC 23 1E 42 08 18 82 43
+08 18 3E F3 02 20 1E 42 9E 01 B0 12 D0 40 7A 41
+00 00 0C 41 43 43 45 50 54 00 30 40 CE 42 0A 4E
+2E 4F 0A 5E 3B 40 0A 00 3C 40 20 00 3D 15 90 3E
+21 52 A2 C2 EC 06 B2 B0 10 00 C0 06 89 22 3A 17
+92 B3 EC 06 FD 27 58 42 CC 06 48 9B 0E 24 48 9C
+06 2C 78 92 F5 23 2E 9F F3 27 1E 83 F1 3F 0E 9A
+EF 2F CE 48 00 00 1E 53 EB 3F 3E 8F 08 4C 1B 3C
+00 00 06 4B 45 59 30 40 2A 43 58 43 B0 12 46 41
+2F 83 8F 4E 00 00 92 B3 EC 06 FD 27 1E 42 CC 06
+B0 12 44 41 30 4D 00 00 08 45 4D 49 54 00 30 40
+52 43 08 4E 3E 4F A2 B3 EC 06 FD 27 C2 48 CE 06
+30 4D 48 43 08 45 43 48 4F 00 B2 40 C2 48 5C 43
+38 40 05 00 B0 12 46 41 30 4D 00 00 0C 4E 4F 45
+43 48 4F 00 B2 40 30 4D 5C 43 28 42 F3 3F 0D 12
+3D 40 AE 43 1B 42 32 20 9B 42 1E 20 16 00 3A 4F
+09 4E 0E 43 1C 42 1E 20 1B 42 20 20 02 3C B0 43
+2D 83 0C 9B 16 2C 58 4C 00 1E 1C 53 78 90 20 00
+09 2C 78 90 0A 00 F5 23 82 4C 1E 20 3D 41 3C 40
+20 00 A4 3F 09 9E BF 27 CA 48 00 00 1A 53 1E 53
+BA 3F 1A 15 B0 12 50 57 19 17 DC 3F 00 00 08 54
+59 50 45 00 0D 12 3D 40 04 44 29 4F 8F 4E 00 00
+7E 49 A5 3F 06 44 2D 83 2F 83 5E 83 F7 23 3D 41
+2F 53 3E 4F 30 4D 86 12 20 00 0C 4E 38 4F 3C 9F
+39 4F 3E 4F 46 22 F9 98 00 00 43 22 19 53 1C 83
+FA 23 2D 53 30 4D 2F 53 3E 4F 1E 83 3A 22 9B 24
+22 43 0D 5B 45 4C 53 45 5D 00 0D 12 84 12 0A 40
+00 00 24 45 16 44 68 46 22 49 B0 40 92 44 14 40
+06 5B 54 48 45 4E 5D 00 1A 44 70 44 36 44 54 44
+14 40 06 5B 45 4C 53 45 5D 00 1A 44 82 44 36 44
+52 44 1E 40 04 5B 49 46 5D 00 1A 44 54 44 B2 40
+52 44 1E 40 05 0D 6B 6F 20 0A F4 43 9A 40 84 40
+B2 40 54 44 42 44 0D 5B 54 48 45 4E 5D 00 30 4D
+A6 44 09 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D
+B2 44 13 5B 44 45 46 49 4E 45 44 5D 0D 12 84 12
+16 44 68 46 D0 46 74 48 E4 45 C2 44 17 5B 55 4E
+44 45 46 49 4E 45 44 5D 0D 12 84 12 16 44 68 46
+D0 46 F4 44 3D 41 2F 53 1E 83 0E 7E 30 4D 3F 12
+2F 83 8F 4E 00 00 3E 41 30 4D 8F 4E FE FF 2F 83
+30 4D 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11 F7 3F
+3E 8F 3E E3 1E 53 30 4D 00 00 02 40 2E 4E 30 4D
+C2 42 02 21 BE 4F 00 00 3E 4F 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 01 28 0E F3 30 4D DA 41 05 53
+22 00 82 43 C0 1D 0D 12 84 12 0A 40 1E 40 D2 48
+0A 40 22 00 68 46 68 45 B2 40 20 00 C0 1D 1A 53
+1A B3 82 6A C8 1D 3E 4F 3D 41 30 4D 7C 43 05 2E
+22 00 0D 12 84 12 52 45 0A 40 F4 43 D2 48 E4 45
+00 00 04 3C 23 00 B2 40 B2 1D B2 1D 30 4D 4E 45
+02 23 1B 42 BE 1D 2C 4F 2F 83 B0 12 46 40 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 1D 18 42 B2 1D C8 4A 00 00 30 4D A0 45
+04 23 53 00 0D 12 84 12 A2 45 DC 45 2D 83 09 DE
+09 93 E1 23 3D 41 30 4D D0 45 04 23 3E 00 9F 42
+B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00 08 48
+4F 4C 44 00 4A 4E 3E 4F DB 3F EA 45 08 53 49 47
+4E 00 0E 93 3E 4F 7A 40 2D 00 D2 33 30 4D 64 43
+04 55 2E 00 0C 43 2F 83 8F 4E 00 00 0E 4C 1D 15
+3E F3 06 34 BF E3 00 00 3E E3 9F 53 00 00 0E 63
+84 12 96 45 16 44 04 46 D4 45 00 45 12 46 EE 45
+F4 43 E4 45 7E 45 02 2E 0E 93 E4 37 3C 43 E3 3F
+00 00 08 57 4F 52 44 00 3C 40 C2 1D 39 4C 38 4C
+09 58 38 5C 2A 4C 09 98 1D 24 7E 98 FC 27 18 83
+1B 42 C0 1D F8 90 27 00 00 00 04 20 E8 98 02 00
+01 20 0B 43 CA 4C 00 00 09 98 0C 24 7C 48 4E 9C
+09 24 1A 53 7C 90 61 00 F5 2B 7C 90 7B 00 F2 2F
+4C 8B F0 3F 18 82 C4 1D 82 48 C6 1D 1E 42 C8 1D
+0A 8E CE 4A 00 00 30 4D 00 00 08 46 49 4E 44 00
+2F 83 0C 4E 3B 40 CE 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 0F 00 08 58 0E 58 2E 53 1E 4E FE FF
+0E 93 F2 27 09 4E 78 49 48 11 68 9C F7 23 0A 4C
+FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63
+0C 49 6E 4E 1E F3 01 20 1E 83 8F 4C 00 00 30 4D
+56 46 0E 3E 4E 55 4D 42 45 52 1B 42 BE 1D 3C 4F
+38 4F 29 4F 2F 82 82 4B C0 04 6A 4C 7A 80 3A 00
+03 28 7A 80 07 00 12 28 7A 50 0A 00 0A 9B 22 C3
+0D 2C 82 49 E0 04 82 48 E2 04 19 42 E4 04 18 42
+E6 04 09 5A 08 63 1C 53 1E 83 E7 23 8F 4C 00 00
+8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 3F 82
+8F 4E 06 00 08 43 09 43 1B 42 BE 1D 0C 4E 0E 43
+1E 15 3D 40 DA 47 7E 4C 6A 4C 7A 80 2D 00 16 24
+CA 2F 2B 43 7A 52 14 24 3B 52 6A 53 11 24 3B 40
+10 00 5A 93 0D 24 6A 92 41 20 3E 90 03 00 3E 20
+FC 9C 01 00 6C 4C 8F 4C 04 00 38 3C B1 43 02 00
+1E 83 FC 9C 00 00 E0 23 AE 27 DC 47 2F 24 2D 83
+6A 4C 7A 90 5F 00 BF 27 32 B0 00 02 27 20 32 D0
+00 02 7A 80 2E 00 B7 27 6A 53 20 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 3A 00
+03 28 79 80 07 00 0C 28 79 50 0A 00 09 9B 08 2C
+8F 49 00 00 0E 4B 2C 15 B0 12 3E 40 2A 17 E8 3F
+9F 4F 04 00 02 00 AF 4F 04 00 4A 93 1D 17 06 24
+32 C0 00 02 3F 50 06 00 0E F3 30 4D 2F 53 9F 4F
+02 00 04 00 BF 4F 00 00 3E E3 09 20 3E E3 BF E3
+02 00 BF E3 00 00 9F 53 02 00 8F 63 00 00 32 B0
+00 02 01 20 2F 53 30 4D 92 45 03 5C 92 42 C2 1D
+C6 1D 30 4D 0D 12 84 12 84 40 16 44 68 46 B0 40
+AC 49 D0 46 96 48 0A 4E 3E 4F 3D 40 B0 48 6D 27
+3D 40 8A 48 1A E2 BC 1D 14 24 0E 12 3E 4F 30 41
+B2 48 3E 4F 3D 40 8A 48 19 20 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 88 4A 2A 3C 7A 48
+02 2C A2 53 C8 1D 1A 42 C8 1D 8A 4E FE FF 3E 4F
+30 4D D0 48 0F 4C 49 54 45 52 41 4C 82 93 BC 1D
+0D 24 09 4E 1A 42 C8 1D A2 52 C8 1D BA 40 0A 40
+00 00 8A 49 02 00 3E 4F 32 B0 00 02 32 C0 00 02
+03 24 8A 4E 02 00 EE 3F 30 4D 0C 46 0A 43 4F 55
+4E 54 2F 83 7A 4E 8F 4E 00 00 0E 4A 3E F3 30 4D
+32 45 0A 41 4C 4C 4F 54 82 5E C8 1D 3E 4F 30 4D
+3F 40 80 1C 0E 43 84 12 1E 40 02 0D 0A 00 F4 43
+94 40 84 48 12 45 3C 45 1E 40 0B 73 74 61 63 6B
+20 65 6D 70 74 79 08 41 32 40 0A 40 40 FF 44 45
+1E 40 09 46 52 41 4D 20 66 75 6C 6C 08 41 B2 40
+48 49 32 49 0D 41 42 4F 52 54 22 00 0D 12 84 12
+52 45 0A 40 08 41 D2 48 E4 45 62 46 02 27 0D 12
+84 12 16 44 68 46 D0 46 B0 40 AE 49 76 45 BA 48
+DC 44 07 5B 27 5D 0D 12 84 12 9E 49 0A 40 0A 40
+D2 48 D2 48 E4 45 B2 49 03 5B 82 43 BC 1D 30 4D
+00 00 02 5D B2 43 BC 1D 30 4D 2A 45 11 50 4F 53
+54 50 4F 4E 45 00 0D 12 84 12 16 44 68 46 D0 46
+B0 40 AE 49 3C 45 AC 40 06 4A 0A 40 0A 40 D2 48
+D2 48 0A 40 D2 48 D2 48 E4 45 00 00 02 3A 30 12
+5C 4A 92 B3 C8 1D A2 63 C8 1D 0D 12 84 12 16 44
+68 46 24 4A 3D 41 5A D3 5A 53 0A 5E 19 42 CC 1D
+08 4E 5E 4E 01 00 3E F0 0F 00 0E 5E 09 5E 3E 4F
+E8 58 00 00 82 48 B4 1D 82 49 B6 1D 82 4A B8 1D
+82 4F BA 1D 2A 52 82 4A C8 1D 30 41 BA 40 0D 12
+FC FF BA 40 84 12 FE FF B2 43 BC 1D 30 4D 82 9F
+BA 1D 66 25 84 12 1E 40 0F 73 74 61 63 6B 20 6D
+69 73 6D 61 74 63 68 21 12 41 C8 49 03 3B 82 93
+BC 1D F4 26 0D 12 84 12 0A 40 E4 45 D2 48 6E 4A
+CA 49 E4 45 00 00 12 49 4D 4D 45 44 49 41 54 45
+18 42 B4 1D D8 D3 00 00 30 4D 1C 49 0C 43 52 45
+41 54 45 00 B0 12 12 4A BA 40 86 12 FC FF 8A 4A
+FE FF 3A 3D EE 43 0A 44 4F 45 53 3E 1A 42 B8 1D
+BA 40 85 12 00 00 8A 4D 02 00 3D 41 30 4D 0C 4A
+0E 3A 4E 4F 4E 41 4D 45 30 12 5C 4A 2F 83 8F 4E
+00 00 1A 42 C8 1D 1A B3 0A 63 0E 4A 39 40 12 02
+08 49 98 3F A6 4A 05 49 53 00 0D 12 82 93 BC 1D
+08 20 84 12 9E 49 28 4B 3D 41 BE 4F 02 00 3E 4F
+30 4D 84 12 B6 49 0A 40 2A 4B D2 48 E4 45 BC 4A
+08 43 4F 44 45 00 B0 12 12 4A A2 82 C8 1D 61 3C
+FE 45 0E 48 44 4E 43 4F 44 45 B2 40 16 4C CC 1D
+F2 3F 00 00 0E 45 4E 44 43 4F 44 45 0D 12 84 12
+6E 4A 74 4B 3D 41 92 42 D0 1D CC 1D 5D 3C 40 4B
+0E 43 4F 44 45 4E 4E 4D 30 12 4A 4B B7 3F 00 00
+0A 43 4F 4C 4F 4E 1A 42 C8 1D BA 40 0D 12 00 00
+BA 40 84 12 02 00 A2 52 C8 1D B2 43 BC 1D E3 3F
+00 00 0A 4C 4F 32 48 49 A2 83 C8 1D 1A 42 C8 1D
+EF 3F 52 4B 0B 48 49 32 4C 4F A2 53 C8 1D 1A 42
+C8 1D 8A 4A FE FF 82 43 BC 1D B9 3F DE 4B B2 40
+F0 4B D0 1D 82 4E CE 1D 30 40 76 45 85 12 DC 4B
+DC 49 A2 58 9E 5A B0 58 C0 5D 20 46 CA 46 AA 5C
+C4 4B 16 4B F0 4A 8C 4A BE 58 F8 4C 82 5A 00 00
+00 00 85 12 DC 4B 72 53 F6 51 18 54 1E 51 7A 51
+C8 51 A4 52 5A 54 40 50 64 51 00 00 00 00 B2 4B
+30 4F 00 00 CC 52 10 4C B2 40 F0 4B CE 1D 82 43
+D0 1D 30 4D 3B 40 0A 00 BA 49 00 00 2A 53 2B 83
+FB 23 30 41 00 00 0E 52 53 54 5F 53 45 54 39 40
+C8 1D 3A 40 42 18 B0 12 44 4C 30 4D 56 4C 0E 52
+53 54 5F 52 45 54 39 40 42 18 2C 49 3A 40 C8 1D
+B0 12 44 4C 1A 42 CA 1D 3B 40 10 00 09 4A 08 49
+29 83 18 48 FE FF 0C 98 FC 2B 89 48 00 00 1B 83
+F6 23 2A 4A 0A 93 F0 23 30 4D 0E 93 E4 37 39 40
+10 00 29 83 B9 43 80 FF FC 23 B9 40 0A 42 FE FF
+29 83 B9 40 F4 41 FE FF 39 90 AE FF F9 23 39 40
+10 18 B2 49 BC FF 3B 40 10 00 3A 40 3A 18 B0 12
+48 4C 82 43 4A 18 C7 3F EA 4C B2 4E 42 18 BE 12
+3E 4F 3D 41 C0 3F D2 49 0C 4D 41 52 4B 45 52 00
+12 12 C6 1D 0D 12 84 12 16 44 68 46 D0 46 AC 40
+16 4D 0A 45 AA 48 18 4D 3E 4F 3D 41 B2 41 C6 1D
+B0 12 12 4A BA 40 85 12 FC FF BA 40 E8 4C FE FF
+28 83 8A 48 00 00 BA 40 82 40 02 00 A2 52 C8 1D
+18 42 B4 1D 19 42 B6 1D A8 49 FE FF 89 48 00 00
+30 4D 12 12 C6 1D 84 12 68 46 D0 46 AC 40 82 4D
+62 4D 3C 4E 3C 80 87 12 0A 24 1C 53 02 20 2E 4E
+06 3C BE 90 E8 4C 00 00 01 20 3E 52 2E 83 21 53
+30 41 7A 47 AC 40 8A 4D 7E 4D 8C 4D B2 41 C6 1D
+30 41 92 83 C6 1D 3E 40 28 00 0A 4E 3D 15 B0 12
+52 4D 15 20 3E 40 2B 00 B0 12 52 4D 06 20 3E 40
+2D 00 B0 12 52 4D 92 83 C6 1D 0E 12 1E 41 02 00
+84 12 68 46 7A 47 AC 40 AE 49 CC 4D 3E 51 3A 17
+30 41 B0 12 92 4D 19 42 C8 1D 89 4E 00 00 A2 53
+C8 1D 3E 40 29 00 92 53 C6 1D 1A 42 C6 1D 3D 15
+84 12 68 46 7A 47 AC 40 04 4E FC 4D 3E 90 10 00
+E6 2B 7C 2D 06 4E A2 41 C6 1D E1 3F 03 20 B0 12
+EA 4D 43 3C 7A 90 23 00 24 20 B0 12 9A 4D 3C 40
+00 03 0E 93 1C 24 3C 40 10 03 1E 93 18 24 3C 40
+20 03 2E 93 14 24 3C 40 20 02 2E 92 10 24 3C 40
+30 02 3E 92 0C 24 3C 40 30 03 3E 93 08 24 3C 40
+30 00 19 42 C8 1D A2 53 C8 1D 89 4E 00 00 3E 4F
+30 4D 7A 90 26 00 05 20 3C 40 10 02 B0 12 9A 4D
+F0 3F 7A 90 40 00 14 20 3C 40 20 00 B0 12 E6 4D
+0C 20 3C D0 10 00 3E 40 2B 00 B0 12 EA 4D 92 92
+C2 1D C6 1D 02 24 92 53 C6 1D 8E 10 0C 5E DF 3F
+3C D0 10 00 B0 12 D2 4D F2 3F 03 20 B0 12 EA 4D
+F5 3F 7A 90 26 00 03 20 3C D0 82 00 D7 3F 3C D0
+80 00 B0 12 D2 4D EA 3F 0C 43 1B 42 C8 1D A2 53
+C8 1D 3A 40 20 00 19 42 C6 1D 19 52 C4 1D 7A 99
+FE 27 5A 49 FF FF 19 82 C4 1D 82 49 C6 1D 7A 90
+52 00 30 4D 00 00 08 52 45 54 49 00 0D 12 84 12
+0A 40 00 13 D2 48 E4 45 0A 40 2C 00 C8 4E 0C 4E
+16 44 D2 4E AA 4E 18 4F 3D 41 2C DE 8B 4C 00 00
+9E 3F 00 00 06 4D 4F 56 85 12 08 4F 00 40 24 4F
+0A 4D 4F 56 2E 42 85 12 08 4F 40 40 00 00 06 41
+44 44 85 12 08 4F 00 50 3E 4F 0A 41 44 44 2E 42
+85 12 08 4F 40 50 4A 4F 08 41 44 44 43 00 85 12
+08 4F 00 60 58 4F 0C 41 44 44 43 2E 42 00 85 12
+08 4F 40 60 90 4B 08 53 55 42 43 00 85 12 08 4F
+00 70 76 4F 0C 53 55 42 43 2E 42 00 85 12 08 4F
+40 70 84 4F 06 53 55 42 85 12 08 4F 00 80 94 4F
+0A 53 55 42 2E 42 85 12 08 4F 40 80 A0 4F 06 43
+4D 50 85 12 08 4F 00 90 AE 4F 0A 43 4D 50 2E 42
+85 12 08 4F 40 90 00 00 08 44 41 44 44 00 85 12
+08 4F 00 A0 C8 4F 0C 44 41 44 44 2E 42 00 85 12
+08 4F 40 A0 F6 4E 06 42 49 54 85 12 08 4F 00 B0
+E6 4F 0A 42 49 54 2E 42 85 12 08 4F 40 B0 F2 4F
+06 42 49 43 85 12 08 4F 00 C0 00 50 0A 42 49 43
+2E 42 85 12 08 4F 40 C0 0C 50 06 42 49 53 85 12
+08 4F 00 D0 1A 50 0A 42 49 53 2E 42 85 12 08 4F
+40 D0 00 00 06 58 4F 52 85 12 08 4F 00 E0 34 50
+0A 58 4F 52 2E 42 85 12 08 4F 40 E0 66 4F 06 41
+4E 44 85 12 08 4F 00 F0 4E 50 0A 41 4E 44 2E 42
+85 12 08 4F 40 F0 16 44 C8 4E 0C 4E 6E 50 0A 4C
+3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4D 3F 26 50
+06 52 52 43 85 12 66 50 00 10 80 50 0A 52 52 43
+2E 42 85 12 66 50 40 10 BA 4F 08 53 57 50 42 00
+85 12 66 50 80 10 8C 50 06 52 52 41 85 12 66 50
+00 11 A8 50 0A 52 52 41 2E 42 85 12 66 50 40 11
+9A 50 06 53 58 54 85 12 66 50 80 11 00 00 08 50
+55 53 48 00 85 12 66 50 00 12 CE 50 0C 50 55 53
+48 2E 42 00 85 12 66 50 40 12 C2 50 08 43 41 4C
+4C 00 85 12 66 50 80 12 1A 53 0E 4A 84 12 58 46
+1E 40 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
+12 41 EC 50 06 53 3E 3D 86 12 00 38 14 51 04 53
+3C 00 86 12 00 34 DC 50 06 30 3E 3D 86 12 00 30
+28 51 04 30 3C 00 86 12 00 30 64 4B 04 55 3C 00
+86 12 00 2C 3C 51 06 55 3E 3D 86 12 00 28 32 51
+06 30 3C 3E 86 12 00 24 50 51 04 30 3D 00 86 12
+00 20 00 00 04 49 46 00 1A 42 C8 1D 8A 4E 00 00
+A2 53 C8 1D 0E 4A 30 4D D6 4F 08 54 48 45 4E 00
+1A 42 C8 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11
+3A 90 00 02 B2 2F 88 DA 00 00 30 4D 46 51 08 45
+4C 53 45 00 1A 42 C8 1D BA 40 00 3C 00 00 A2 53
+C8 1D 2F 83 8F 4A 00 00 E3 3F B4 50 0A 42 45 47
+49 4E 30 40 32 40 9E 51 0A 55 4E 54 49 4C 3A 4F
+08 4E 3E 4F 19 42 C8 1D 2A 83 0A 89 0A 11 3A 90
+00 FE 8B 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
+C8 1D 30 4D 5A 50 0A 41 47 41 49 4E 0A 4E 38 40
+00 3C E7 3F 00 00 0A 57 48 49 4C 45 0D 12 84 12
+68 51 FE 44 E4 45 BC 51 0C 52 45 50 45 41 54 00
+0D 12 84 12 FC 51 80 51 E4 45 2C 52 3D 41 08 4E
+3E 4F 2A 48 B2 92 C6 1D CB 2F 98 42 C8 1D 00 00
+30 4D 18 52 06 42 57 31 85 12 2A 52 00 00 44 52
+06 42 57 32 85 12 2A 52 00 00 50 52 06 42 57 33
+85 12 2A 52 00 00 68 52 3D 41 1A 42 C8 1D 28 4E
+8E 43 00 00 B2 92 C6 1D 86 2B BA 4F 00 00 A2 53
+C8 1D 8E 4A 00 00 3E 4F 30 4D 00 00 06 46 57 31
+85 12 66 52 00 00 8C 52 06 46 57 32 85 12 66 52
+00 00 98 52 06 46 57 33 85 12 66 52 00 00 06 52
+08 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C
+0D 12 84 12 9E 49 AA 48 E4 45 00 00 0A 3F 47 4F
+54 4F 3E 90 00 30 F4 27 3E E0 00 04 3E B0 00 10
+EF 27 3E E0 00 08 EC 3F D2 4E 0A 40 2C 00 68 46
+7A 47 AC 40 AE 49 16 44 C8 4E AA 4E FE 52 0A 4E
+3E 4F 1A 83 F9 32 29 4E 59 0E 0A 28 08 4C 59 0A
+01 28 0C 8A 08 8A 38 90 10 00 EE 2E 5A 0E AD 3E
+2A 92 EA 2E 8A 10 5A 06 A8 3E 5C 52 08 52 52 43
+4D 00 85 12 E8 52 50 00 2C 53 08 52 52 41 4D 00
+85 12 E8 52 50 01 3A 53 08 52 4C 41 4D 00 85 12
+E8 52 50 02 48 53 08 52 52 55 4D 00 85 12 E8 52
+50 03 5A 51 0A 50 55 53 48 4D 85 12 E8 52 00 15
+64 53 08 50 4F 50 4D 00 85 12 E8 52 00 17 D2 C3
+23 02 E2 B2 60 02 02 24 30 40 F4 41 1A 52 04 20
+19 62 06 20 92 43 14 20 C2 4A 15 20 8A 10 C2 4A
+16 20 C2 49 17 20 89 10 C2 49 18 20 B0 12 F2 53
+5A 53 FC 23 39 40 05 00 D2 49 14 20 4E 06 82 93
+46 06 05 24 92 B3 6C 06 FD 27 C2 93 4C 06 59 83
+F3 2F 19 83 0B 30 F2 43 4E 06 82 93 46 06 03 24
+92 B3 6C 06 FD 27 5A 92 4C 06 F3 23 30 41 1A 43
+E1 3F 19 43 3A 43 8A 10 C2 4A 4E 06 82 93 46 06
+05 24 92 B3 6C 06 FD 27 C2 93 4C 06 19 83 F3 23
+5A 42 4C 06 30 41 56 53 12 52 5F 53 45 43 54 5F
+57 58 1C D3 F2 40 51 00 19 20 B0 12 7E 53 36 20
+B0 12 F2 53 6A 53 04 24 FB 23 D9 42 4C 06 FF 1D
+F2 43 4E 06 03 43 19 53 39 90 03 02 F6 23 3C C0
+03 00 D2 D3 23 02 30 41 B0 52 12 57 5F 53 45 43
+54 5F 57 58 2C D3 F0 40 58 00 AF CB B0 12 7E 53
+15 20 3A 40 FE FF 29 43 B0 12 F6 53 D2 49 00 1E
+4E 06 03 43 19 53 39 90 00 02 F8 23 39 40 03 00
+B0 12 F4 53 7A C0 E1 00 6A 82 D9 27 8C 10 1C 52
+4C 06 D2 D3 23 02 84 12 6A 43 1E 40 0B 3C 20 53
+44 20 45 72 72 6F 72 21 BA 54 2F 83 8F 4E 00 00
+B2 40 10 00 BE 1D 0E 4C 84 12 24 46 12 41 82 43
+32 20 30 40 50 41 B0 12 52 41 E2 B2 60 02 8A 20
+B2 40 81 A9 40 06 B2 40 30 00 46 06 D2 D3 25 02
+B2 D0 C0 04 0C 02 92 C3 40 06 39 40 6E 01 29 83
+89 43 02 20 FC 23 39 42 B0 12 F4 53 D2 C3 23 02
+2C 42 B2 40 95 00 14 20 B2 40 00 40 18 20 B0 12
+EE 53 02 24 30 40 9C 54 B0 12 F2 53 7A 93 FC 23
+B2 40 87 AA 14 20 92 43 16 20 B2 40 00 48 18 20
+B0 12 EE 53 29 42 B0 12 F4 53 92 43 14 20 82 43
+16 20 78 43 3C 42 B2 40 00 77 18 20 B0 12 EE 53
+B2 40 40 69 18 20 B0 12 AC 53 03 24 58 83 F3 23
+D9 3F 0C 5C A2 43 16 20 B2 40 00 50 18 20 B0 12
+AC 53 D0 23 92 D3 40 06 82 43 46 06 92 C3 40 06
+0A 43 09 43 B0 12 22 54 38 40 00 1E 92 48 C6 01
+04 20 92 48 C8 01 06 20 5C 48 C2 01 7C 80 0C 00
+08 24 5C 53 06 24 6C 52 04 24 3C 50 07 20 30 40
+A2 54 09 43 B0 12 22 54 A2 43 2C 20 19 48 0E 00
+82 49 08 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49
+0C 20 09 5A 58 48 0D 00 82 48 12 20 09 88 09 88
+82 49 10 20 30 41 1A 52 08 20 09 43 12 3F 9B 52
+1E 20 12 00 8B 63 14 00 1A 42 1A 20 19 42 1C 20
+29 3F 92 4B 0E 00 22 20 92 4B 10 00 24 20 5A 42
+23 20 58 42 22 20 59 42 24 20 89 10 0A D9 88 10
+08 58 0A 6A 88 10 08 58 30 41 92 42 22 20 D0 04
+92 42 24 20 D2 04 92 42 12 20 C8 04 92 42 E4 04
+1A 20 92 42 E6 04 1C 20 92 52 10 20 1A 20 82 63
+1C 20 30 41 92 4B 0E 00 22 20 92 4B 10 00 24 20
+B0 12 3A 56 5A 4B 03 00 82 5A 1A 20 82 63 1C 20
+30 41 3C 42 3B 40 38 20 09 43 CB 93 02 00 10 24
+9B 92 24 20 0C 00 04 20 9B 92 22 20 0A 00 C4 25
+09 4B 3B 50 1C 00 3B 90 18 21 EF 23 0C 5C BC 3D
+0C 43 82 4B 32 20 8B 49 00 00 09 93 0A 24 99 52
+C6 1D 16 00 4A 93 05 34 C9 93 02 00 02 34 5A 59
+02 00 CB 4A 02 00 CB 43 03 00 9B 42 1A 20 04 00
+9B 42 1C 20 06 00 18 42 30 20 8B 48 08 00 9B 48
+1A 1E 0A 00 9B 48 14 1E 0C 00 9B 48 1A 1E 0E 00
+9B 48 14 1E 10 00 9B 48 1C 1E 12 00 9B 48 1E 1E
+14 00 82 43 1E 20 6A 93 1A 24 A4 37 8B 43 16 00
+7A 93 02 24 07 38 35 3C B2 40 1C 21 A0 40 B2 40
+8E 43 CC 42 9B 42 C2 1D 18 00 9B 82 C6 1D 18 00
+9B 42 C4 1D 1A 00 9B 52 C6 1D 1A 00 22 3C 30 41
+1B 42 32 20 82 43 1E 20 B2 90 00 02 20 20 3F 20
+BB 80 00 02 12 00 8B 73 14 00 DB 53 03 00 DB 92
+12 20 03 00 0E 28 CB 43 03 00 B0 12 12 56 B0 12
+F6 55 8B 43 10 00 9B 48 00 1E 0E 00 9B 48 02 1E
+10 00 B2 40 00 02 20 20 8B 93 14 00 0B 20 92 9B
+12 00 1E 20 1C 2C BB 90 00 02 12 00 03 2C 92 4B
+12 00 20 20 B0 12 64 56 1A 42 1A 20 19 42 1C 20
+30 3E CB 43 02 00 2B 4B 82 4B 32 20 0B 93 06 24
+92 4B 16 00 1E 20 B0 12 92 57 22 C3 30 41 1B 42
+32 20 0B 93 FB 27 EB 92 02 00 1E 38 B0 12 FE 55
+1A 4B 04 00 19 4B 06 00 B0 12 22 54 18 4B 08 00
+B0 12 8E 5B 88 49 12 1E 88 4A 16 1E 88 49 18 1E
+98 4B 12 00 1C 1E 98 4B 14 00 1E 1E 1A 4B 04 00
+19 4B 06 00 B0 12 64 54 CB 93 02 00 CA 37 1E 4B
+18 00 9F 4B 1A 00 00 00 31 50 06 00 3D 41 B0 12
+C2 57 02 24 30 40 84 43 B2 40 3C 1D A0 40 B2 40
+CE 42 CC 42 30 40 6A 43 09 93 07 24 F8 90 20 00
+00 1E 03 20 18 53 19 83 F9 23 30 41 92 4B 0A 00
+22 20 92 4B 0C 00 24 20 D2 3E 6E 4C 0B 52 45 41
+44 22 5A 43 20 3C D6 4A 09 44 45 4C 22 00 6A 43
+1A 3C 9C 49 0D 57 52 49 54 45 22 00 6A 42 13 3C
+84 49 0F 41 50 50 45 4E 44 22 7A 42 0C 3C 80 4B
+0A 43 4C 4F 53 45 B0 12 DE 57 30 4D E4 48 0B 4C
+4F 41 44 22 7A 43 2F 83 8F 4E 00 00 0E 4A 82 93
+BC 1D 0B 24 0D 12 84 12 0A 40 0A 40 D2 48 D2 48
+52 45 0A 40 FA 58 D2 48 E4 45 0D 12 84 12 0A 40
+22 00 68 46 22 49 F8 58 3D 41 36 4F 0E 56 82 4E
+36 20 A2 43 22 20 82 43 24 20 1C 43 0E 96 8C 24
+F6 90 3A 00 01 00 01 20 26 53 F6 90 5C 00 00 00
+03 20 16 53 0E 96 66 24 82 46 34 20 B0 12 3A 56
+15 42 12 20 B0 12 B8 57 2C 43 0A 43 08 4A 58 0E
+08 58 82 48 30 20 C8 93 00 1E 60 24 39 42 F8 96
+00 1E 04 20 18 53 19 83 FA 23 16 53 F6 90 2E 00
+FF FF 19 24 39 50 03 00 B0 12 58 58 06 20 F6 90
+5C 00 FF FF 29 24 0E 96 27 28 16 42 34 20 1A 53
+3A 90 10 00 DB 23 92 53 1A 20 82 63 1C 20 15 83
+D1 23 2C 42 49 3C F6 90 2E 00 FE FF EE 27 B0 12
+58 58 EB 23 39 40 03 00 F8 96 00 1E 04 20 18 53
+19 83 FA 23 09 3C 0E 96 E0 2F F6 90 5C 00 FF FF
+DC 23 B0 12 58 58 D9 23 18 42 30 20 92 48 1A 1E
+22 20 92 48 14 1E 24 20 F8 B0 10 00 0B 1E 13 24
+82 93 24 20 05 20 82 93 22 20 02 20 A2 43 22 20
+0E 96 9A 23 92 42 22 20 2C 20 92 42 24 20 2E 20
+8F 43 00 00 03 3C 2A 4F B0 12 82 56 35 40 B6 40
+36 40 C4 40 3A 4F 3E 4F 0A 93 04 24 7A 93 39 20
+0C 93 02 20 30 40 84 43 0D 12 84 12 6A 43 1E 40
+0B 3C 20 4F 70 65 6E 45 72 72 6F 72 B2 40 B8 54
+92 12 3E 18 E2 B2 60 02 02 24 30 40 7E 41 3F 40
+7E 1C 8F 43 00 00 0D 12 84 12 1E 40 0F 4C 4F 41
+44 22 20 42 4F 4F 54 2E 34 54 48 22 B2 40 52 49
+7C 58 08 42 4F 4F 54 00 B2 40 40 5A BE 42 30 4D
+22 47 0C 4E 4F 42 4F 4F 54 00 B2 40 7A 41 BE 42
+30 4D 1A 93 6E 20 0C 93 C7 23 30 4D 72 5A 08 52
+45 41 44 00 2F 83 8F 4E 00 00 1E 42 32 20 B0 12
+50 57 1E 82 32 20 30 4D B0 12 6C 58 0A 12 B0 12
+F6 55 1A 48 00 1E 88 43 00 1E 19 48 02 1E 88 43
02 1E 39 F0 FF 0F 39 90 FF 0F 02 20 3A 93 10 24
-82 4A 22 20 82 49 24 20 B0 12 0C 56 2A 91 E9 27
-09 4A 2A 41 81 49 00 00 B0 12 6C 5A 2A 41 DF 3F
-3A 41 30 40 6C 5A 9B 52 1E 20 12 00 8B 63 14 00
-1A 42 1A 20 19 42 1C 20 30 40 6E 54 2A 93 BC 20
-0C 93 09 20 F8 40 E5 00 00 1E B0 12 50 5B B0 12
-E4 5A B0 12 D4 57 30 4D F2 B0 40 00 A2 04 29 20
-F2 B0 10 00 A2 04 FC 27 5A 42 B0 04 4A 11 59 42
-B4 04 F2 40 20 00 C0 04 D2 42 B1 04 C8 04 1A 52
-E4 04 D2 42 B5 04 C8 04 19 52 E4 04 D2 42 B2 04
-C0 04 B2 40 00 08 C8 04 1A 52 E4 04 92 42 B6 04
-C0 04 B2 80 BC 07 C0 04 B2 40 00 02 C8 04 19 52
-E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E 3F 5B
-5C 5D 7C 2E 29 92 06 28 39 80 03 00 B0 12 24 5C
-39 40 03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28
-0D 12 3D 40 0F 00 3C 40 D4 5B 7A 9C F3 27 1D 83
-FC 23 3D 41 6A 9C E6 27 3A 80 21 00 EB 3B 18 53
-19 83 E8 23 09 93 06 24 F8 40 20 00 00 1E 18 53
-19 83 FA 23 30 41 1A 4B 04 00 19 4B 06 00 B0 12
-28 54 18 4B 08 00 B0 12 78 5B 88 49 12 1E 88 4A
-16 1E 88 49 18 1E 98 4B 12 00 1C 1E 98 4B 14 00
-1E 1E 1A 4B 04 00 19 4B 06 00 30 40 6E 54 B2 40
-00 02 1E 20 1B 42 32 20 B0 12 46 5B 82 43 1E 20
-DB 53 03 00 DB 92 12 20 03 00 1D 28 B0 12 00 56
-08 12 0A 12 B0 12 82 5A 2A 91 03 24 2A 41 B0 12
-28 56 3A 41 38 41 98 42 22 20 00 1E 98 42 24 20
-02 1E B0 12 6C 5A AB 42 02 00 9B 42 22 20 0E 00
-9B 42 24 20 10 00 30 40 66 56 48 58 0A 57 52 49
-54 45 B0 12 6E 5C 30 4D 2A 92 54 20 2C 93 0E 24
-0C 93 3D 24 0D 12 84 12 1E 40 0C 3C 20 57 72 69
-74 65 45 72 72 6F 72 00 B2 40 C2 54 0A 43 08 43
-B0 12 82 5A B0 12 AE 57 18 42 30 20 F8 40 20 00
-0B 1E B0 12 78 5B 88 43 0C 1E 88 4A 0E 1E 88 49
-10 1E 98 42 24 20 14 1E 98 42 22 20 1A 1E 88 43
-1C 1E 88 43 1E 1E 2C 42 1B 42 34 20 82 9B 36 20
-D1 27 FB 90 2E 00 00 00 CD 27 39 40 0B 00 B0 12
-F4 5B B0 12 50 5B 2A 42 B0 12 78 56 30 4D B0 12
-E4 5A 8B 43 12 00 8B 43 14 00 90 4B 0A 00 B4 C2
-90 4B 0C 00 B0 C2 B0 12 0C 56 B0 12 82 5A B0 12
-B6 5C 30 4D 2C 93 BA 27 0C 93 AC 23 EB 42 02 00
-58 4B 13 00 59 4B 14 00 89 10 09 58 58 4B 15 00
-5B 42 12 20 0A 43 3C 42 08 11 09 10 4A 10 1C 83
-0B 11 FA 2B 0A 11 1C 83 FD 37 1B 42 32 20 19 5B
-0A 00 18 6B 0C 00 8B 49 0E 00 8B 48 10 00 CB 4A
-03 00 B0 12 AA 57 1A 4B 12 00 BB C0 FF 01 12 00
-3A F0 FF 01 82 4A 1E 20 30 4D 3C 58 10 54 45 52
-4D 32 53 44 22 00 0D 12 84 12 50 58 FE 5D 0A 43
-7D 40 0A 00 B0 12 44 41 3A 90 00 02 03 28 B0 12
-6E 5C 0A 43 92 B3 EC 06 FD 27 59 42 CC 06 69 92
-11 24 CA 49 00 1E 1A 53 49 9D EE 23 A2 B3 EC 06
-FD 27 F2 40 0D 00 CE 06 A2 B3 EC 06 FD 27 C2 4D
-CE 06 E0 3F C2 9D CC 06 FD 23 82 4A 1E 20 B0 12
-D4 57 3D 41 30 4D
+82 4A 22 20 82 49 24 20 B0 12 1E 56 2A 91 E9 27
+09 4A 2A 41 81 49 00 00 B0 12 02 5B 2A 41 DF 3F
+3A 41 08 4A 1A 52 08 20 B0 12 12 5B 0A 48 1A 52
+0C 20 09 43 30 40 64 54 3C 42 0A 12 2A 41 82 9A
+0A 20 CF 24 B0 12 F6 55 88 93 02 1E 03 20 88 93
+00 1E 08 24 28 52 38 90 00 02 F6 2B 91 53 00 00
+08 43 EC 3F 0C 43 B8 43 00 1E 6A 41 B8 40 FF 0F
+02 1E 08 11 8A 10 08 5A 5A 41 01 00 0A 11 08 10
+82 4A 24 20 82 48 22 20 2A 41 B0 12 02 5B 3A 41
+30 41 2A 93 A0 20 0C 93 09 20 F8 40 E5 00 00 1E
+B0 12 08 56 B0 12 B8 5A B0 12 DE 57 30 4D F2 B0
+40 00 A2 04 29 20 F2 B0 10 00 A2 04 FC 27 5A 42
+B0 04 4A 11 59 42 B4 04 F2 40 20 00 C0 04 D2 42
+B1 04 C8 04 1A 52 E4 04 D2 42 B5 04 C8 04 19 52
+E4 04 D2 42 B2 04 C0 04 B2 40 00 08 C8 04 1A 52
+E4 04 92 42 B6 04 C0 04 B2 80 BC 07 C0 04 B2 40
+00 02 C8 04 19 52 E4 04 30 41 22 2A 2B 2C 2F 3A
+3B 3C 3D 3E 3F 5B 5C 5D 7C 2E 29 92 06 28 39 80
+03 00 B0 12 3A 5C 39 40 03 00 7A 4B C8 4A 00 1E
+82 9B 36 20 12 28 0D 12 3D 40 0F 00 3C 40 EA 5B
+7A 9C F3 27 1D 83 FC 23 3D 41 6A 9C E6 27 3A 80
+21 00 EB 3B 18 53 19 83 E8 23 09 93 06 24 F8 40
+20 00 00 1E 18 53 19 83 FA 23 30 41 B2 40 00 02
+1E 20 1B 42 32 20 B0 12 FE 55 82 43 1E 20 DB 53
+03 00 DB 92 12 20 03 00 1D 28 B0 12 12 56 08 12
+0A 12 B0 12 18 5B 2A 91 03 24 2A 41 B0 12 F6 55
+3A 41 38 41 98 42 22 20 00 1E 98 42 24 20 02 1E
+B0 12 02 5B AB 42 02 00 9B 42 22 20 0E 00 9B 42
+24 20 10 00 30 40 70 56 94 58 0A 57 52 49 54 45
+B0 12 4C 5C 30 4D 2A 92 4E 20 2C 93 0E 24 0C 93
+3D 24 0D 12 84 12 1E 40 0C 3C 20 57 72 69 74 65
+45 72 72 6F 72 00 B2 40 B8 54 0A 43 38 42 B0 12
+18 5B B0 12 B8 57 18 42 30 20 F8 40 20 00 0B 1E
+B0 12 8E 5B 88 43 0C 1E 88 4A 0E 1E 88 49 10 1E
+98 42 24 20 14 1E 98 42 22 20 1A 1E 88 43 1C 1E
+88 43 1E 1E 2C 42 1B 42 34 20 82 9B 36 20 D1 27
+FB 90 2E 00 00 00 CD 27 39 40 0B 00 B0 12 0A 5C
+B0 12 08 56 2A 42 B0 12 82 56 30 4D B0 12 B8 5A
+8B 43 12 00 8B 43 14 00 B0 12 6C 58 B0 12 18 5B
+B0 12 94 5C 30 4D 2C 93 C0 27 0C 93 B2 23 B0 12
+6C 58 82 4A 2A 20 B0 12 F6 55 1A 48 00 1E 19 48
+02 1E 39 90 FF 0F 02 20 3A 93 0A 24 82 4A 22 20
+82 49 24 20 B0 12 1E 56 82 9A 2A 20 EE 27 97 3E
+1A 4B 12 00 08 4A 39 40 FF 01 8B C9 12 00 08 F9
+82 48 1E 20 59 42 12 20 19 83 8A 10 4A 11 0A F9
+CB 4A 03 00 B0 12 98 5C B0 12 B8 57 30 4D 88 58
+10 54 45 52 4D 32 53 44 22 00 0D 12 84 12 84 43
+9C 58 D4 5D 0A 43 7D 40 0A 00 B0 12 44 41 3A 90
+00 02 03 28 B0 12 4C 5C 0A 43 92 B3 EC 06 FD 27
+59 42 CC 06 69 92 11 24 CA 49 00 1E 1A 53 49 9D
+EE 23 A2 B3 EC 06 FD 27 F2 40 0D 00 CE 06 A2 B3
+EC 06 FD 27 C2 4D CE 06 E0 3F C2 9D CC 06 FD 23
+82 4A 1E 20 B0 12 DE 57 3D 41 30 40 6A 43
@FF80
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
-77 00 10 00 12 00 14 00 16 00 00 00 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 E6 42 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 10 42
+77 00 10 00 12 00 14 00 16 00 00 00 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 E0 42 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 0A 42
q
@1800
E8 03 08 00 00 D6 18 00 FD FF 35 01 10 00 A1 59
-DA 42 7E 41 0A 56 EA 54 4A 43 62 5E 4E 4C 08 4C
+DA 42 7E 41 E6 54 EE 54 4A 43 38 5E 4E 4C 08 4C
08 4C C0 42 7E 43 46 43 3C 1D E0 1C FC 45 B6 40
-C4 40 18 45 20 00 0A 00 00 1C 7E 41 0A 56 EA 54
-4A 43 62 5E 4E 4C 08 4C 08 4C 00 00 00 00 00 00
+C4 40 18 45 20 00 0A 00 00 1C 7E 41 E6 54 EE 54
+4A 43 38 5E 4E 4C 08 4C 08 4C 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
@4000
92 12 40 18 12 D2 06 18 FB 3F 2F 83 8F 4E 00 00
9B 42 1E 20 16 00 3A 4F 09 4E 0E 43 1C 42 1E 20
1B 42 20 20 02 3C C8 43 2D 83 0C 9B 16 2C 58 4C
00 1E 1C 53 78 90 20 00 09 2C 78 90 0A 00 F5 23
-82 4C 1E 20 3D 41 3C 40 20 00 A6 3F 0E 99 91 27
-CA 48 00 00 1A 53 1E 53 8C 3F 1A 15 B0 12 58 57
+82 4C 1E 20 3D 41 3C 40 20 00 A6 3F 09 9E 91 27
+CA 48 00 00 1A 53 1E 53 8C 3F 1A 15 B0 12 68 57
19 17 DC 3F 00 00 08 54 59 50 45 00 0D 12 3D 40
1C 44 29 4F 8F 4E 00 00 7E 49 AF 3F 1E 44 2D 83
2F 83 5E 83 F7 23 3D 41 2F 53 3E 4F 30 4D 86 12
A2 83 C8 1D 1A 42 C8 1D EF 3F 6A 4B 0B 48 49 32
4C 4F A2 53 C8 1D 1A 42 C8 1D 8A 4A FE FF 82 43
BC 1D B9 3F F6 4B B2 40 08 4C D0 1D 82 4E CE 1D
-30 40 8E 45 85 12 F4 4B F4 49 68 58 64 5A 76 58
-FE 5D 38 46 E2 46 DE 5C DC 4B 2E 4B 08 4B A4 4A
-84 58 10 4D 48 5A 00 00 00 00 85 12 F4 4B 8A 53
-0E 52 30 54 36 51 92 51 E0 51 BC 52 76 54 58 50
+30 40 8E 45 85 12 F4 4B F4 49 BA 58 B6 5A C8 58
+D8 5D 38 46 E2 46 C2 5C DC 4B 2E 4B 08 4B A4 4A
+D6 58 10 4D 9A 5A 00 00 00 00 85 12 F4 4B 8A 53
+0E 52 30 54 36 51 92 51 E0 51 BC 52 72 54 58 50
7C 51 00 00 00 00 CA 4B 48 4F 00 00 E4 52 28 4C
B2 40 08 4C CE 1D 82 43 D0 1D 30 4D 3B 40 0A 00
BA 49 00 00 2A 53 2B 83 FB 23 30 41 00 00 0E 52
C2 4A 4E 06 82 93 46 06 05 24 92 B3 6C 06 FD 27
C2 93 4C 06 19 83 F3 23 5A 42 4C 06 30 41 6E 53
12 52 5F 53 45 43 54 5F 57 58 1C D3 F2 40 51 00
-19 20 B0 12 96 53 38 20 B0 12 0A 54 6A 53 04 24
+19 20 B0 12 96 53 36 20 B0 12 0A 54 6A 53 04 24
FB 23 D9 42 4C 06 FF 1D F2 43 4E 06 03 43 19 53
-39 90 01 02 F6 23 F2 43 4E 06 3C C0 03 00 D2 D3
-23 02 30 41 C8 52 12 57 5F 53 45 43 54 5F 57 58
-2C D3 F0 40 58 00 93 CB B0 12 96 53 15 20 3A 40
-FE FF 29 43 B0 12 0E 54 D2 49 00 1E 4E 06 03 43
-19 53 39 90 00 02 F8 23 39 40 03 00 B0 12 0C 54
-7A C0 E1 00 6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3
-23 02 84 12 8C 43 1E 40 0B 3C 20 53 44 20 45 72
-72 6F 72 21 D6 54 2F 83 8F 4E 00 00 B2 40 10 00
-BE 1D 0E 4C 84 12 3C 46 12 41 B0 12 54 41 E2 B2
-60 02 8A 20 B2 40 81 A9 40 06 B2 40 03 00 46 06
-D2 D3 25 02 B2 D0 C0 04 0C 02 92 C3 40 06 39 40
-6E 01 29 83 89 43 02 20 FC 23 39 42 B0 12 0C 54
-D2 C3 23 02 2C 42 B2 40 95 00 14 20 B2 40 00 40
-18 20 B0 12 06 54 02 24 30 40 B8 54 B0 12 0A 54
-7A 93 FC 23 B2 40 87 AA 14 20 92 43 16 20 B2 40
-00 48 18 20 B0 12 06 54 29 42 B0 12 0C 54 92 43
-14 20 82 43 16 20 78 43 3C 42 B2 40 00 77 18 20
-B0 12 06 54 B2 40 40 69 18 20 B0 12 C4 53 03 24
-58 83 F3 23 D9 3F 0C 5C A2 43 16 20 B2 40 00 50
-18 20 B0 12 C4 53 D0 23 92 D3 40 06 82 43 46 06
-92 C3 40 06 0A 43 09 43 B0 12 3A 54 38 40 00 1E
-92 48 C6 01 04 20 92 48 C8 01 06 20 5C 48 C2 01
-7C 80 0C 00 08 24 5C 53 06 24 6C 52 04 24 3C 50
-07 20 30 40 BE 54 09 43 B0 12 3A 54 A2 43 2C 20
-19 48 0E 00 82 49 08 20 1A 48 24 00 82 4A 0A 20
-09 5A 82 49 0C 20 09 5A 58 48 0D 00 82 48 12 20
-09 88 09 88 82 49 10 20 30 41 82 43 32 20 30 40
-84 41 92 4B 0E 00 22 20 92 4B 10 00 24 20 5A 42
-23 20 58 42 22 20 59 42 24 20 89 10 0A D9 88 10
-08 58 0A 6A 88 10 08 58 30 41 1A 52 08 20 09 43
-FC 3E 92 42 22 20 D0 04 92 42 24 20 D2 04 92 42
+39 90 03 02 F6 23 3C C0 03 00 D2 D3 23 02 30 41
+C8 52 12 57 5F 53 45 43 54 5F 57 58 2C D3 F0 40
+58 00 97 CB B0 12 96 53 15 20 3A 40 FE FF 29 43
+B0 12 0E 54 D2 49 00 1E 4E 06 03 43 19 53 39 90
+00 02 F8 23 39 40 03 00 B0 12 0C 54 7A C0 E1 00
+6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3 23 02 84 12
+8C 43 1E 40 0B 3C 20 53 44 20 45 72 72 6F 72 21
+D2 54 2F 83 8F 4E 00 00 B2 40 10 00 BE 1D 0E 4C
+84 12 3C 46 12 41 82 43 32 20 30 40 84 41 B0 12
+54 41 E2 B2 60 02 8A 20 B2 40 81 A9 40 06 B2 40
+03 00 46 06 D2 D3 25 02 B2 D0 C0 04 0C 02 92 C3
+40 06 39 40 6E 01 29 83 89 43 02 20 FC 23 39 42
+B0 12 0C 54 D2 C3 23 02 2C 42 B2 40 95 00 14 20
+B2 40 00 40 18 20 B0 12 06 54 02 24 30 40 B4 54
+B0 12 0A 54 7A 93 FC 23 B2 40 87 AA 14 20 92 43
+16 20 B2 40 00 48 18 20 B0 12 06 54 29 42 B0 12
+0C 54 92 43 14 20 82 43 16 20 78 43 3C 42 B2 40
+00 77 18 20 B0 12 06 54 B2 40 40 69 18 20 B0 12
+C4 53 03 24 58 83 F3 23 D9 3F 0C 5C A2 43 16 20
+B2 40 00 50 18 20 B0 12 C4 53 D0 23 92 D3 40 06
+82 43 46 06 92 C3 40 06 0A 43 09 43 B0 12 3A 54
+38 40 00 1E 92 48 C6 01 04 20 92 48 C8 01 06 20
+5C 48 C2 01 7C 80 0C 00 08 24 5C 53 06 24 6C 52
+04 24 3C 50 07 20 30 40 BA 54 09 43 B0 12 3A 54
+A2 43 2C 20 19 48 0E 00 82 49 08 20 1A 48 24 00
+82 4A 0A 20 09 5A 82 49 0C 20 09 5A 58 48 0D 00
+82 48 12 20 09 88 09 88 82 49 10 20 30 41 1A 52
+08 20 09 43 12 3F 9B 52 1E 20 12 00 8B 63 14 00
+1A 42 1A 20 19 42 1C 20 29 3F 92 4B 0E 00 22 20
+92 4B 10 00 24 20 5A 42 23 20 58 42 22 20 59 42
+24 20 89 10 0A D9 88 10 08 58 0A 6A 88 10 08 58
+30 41 92 42 22 20 D0 04 92 42 24 20 D2 04 92 42
12 20 C8 04 92 42 E4 04 1A 20 92 42 E6 04 1C 20
92 52 10 20 1A 20 82 63 1C 20 30 41 92 4B 0E 00
-22 20 92 4B 10 00 24 20 B0 12 42 56 5A 4B 03 00
+22 20 92 4B 10 00 24 20 B0 12 52 56 5A 4B 03 00
82 5A 1A 20 82 63 1C 20 30 41 3C 42 3B 40 38 20
09 43 CB 93 02 00 10 24 9B 92 24 20 0C 00 04 20
-9B 92 22 20 0A 00 A3 25 09 4B 3B 50 1C 00 3B 90
-18 21 EF 23 0C 5C 9B 3D 0C 43 82 4B 32 20 8B 49
+9B 92 22 20 0A 00 C4 25 09 4B 3B 50 1C 00 3B 90
+18 21 EF 23 0C 5C BC 3D 0C 43 82 4B 32 20 8B 49
00 00 09 93 0A 24 99 52 C6 1D 16 00 4A 93 05 34
C9 93 02 00 02 34 5A 59 02 00 CB 4A 02 00 CB 43
03 00 9B 42 1A 20 04 00 9B 42 1C 20 06 00 18 42
C6 1D 1A 00 22 3C 30 41 1B 42 32 20 82 43 1E 20
B2 90 00 02 20 20 3F 20 BB 80 00 02 12 00 8B 73
14 00 DB 53 03 00 DB 92 12 20 03 00 0E 28 CB 43
-03 00 B0 12 12 56 B0 12 3A 56 8B 43 10 00 9B 48
+03 00 B0 12 2A 56 B0 12 0E 56 8B 43 10 00 9B 48
00 1E 0E 00 9B 48 02 1E 10 00 B2 40 00 02 20 20
8B 93 14 00 0B 20 92 9B 12 00 1E 20 1C 2C BB 90
-00 02 12 00 03 2C 92 4B 12 00 20 20 B0 12 6C 56
-1A 42 1A 20 19 42 1C 20 38 3E CB 43 02 00 2B 4B
+00 02 12 00 03 2C 92 4B 12 00 20 20 B0 12 7C 56
+1A 42 1A 20 19 42 1C 20 30 3E CB 43 02 00 2B 4B
82 4B 32 20 0B 93 06 24 92 4B 16 00 1E 20 B0 12
-9A 57 22 C3 30 41 1B 42 32 20 0B 93 FB 27 EB 92
-02 00 04 20 B0 12 58 5B B0 12 48 5C CB 93 02 00
-E4 37 1E 4B 18 00 9F 4B 1A 00 00 00 31 50 06 00
-3D 41 B0 12 CA 57 02 24 30 40 9E 43 B2 40 3C 1D
-A0 40 B2 40 C0 42 BE 42 30 40 8C 43 09 93 07 24
-F8 90 20 00 00 1E 03 20 18 53 19 83 F9 23 30 41
-86 4C 0B 52 45 41 44 22 5A 43 20 3C EE 4A 09 44
-45 4C 22 00 6A 43 1A 3C B4 49 0D 57 52 49 54 45
-22 00 6A 42 13 3C 9C 49 0F 41 50 50 45 4E 44 22
-7A 42 0C 3C 98 4B 0A 43 4C 4F 53 45 B0 12 E6 57
-30 4D FC 48 0B 4C 4F 41 44 22 7A 43 2F 83 8F 4E
-00 00 0E 4A 82 93 BC 1D 0B 24 0D 12 84 12 0A 40
-0A 40 EA 48 EA 48 6A 45 0A 40 C0 58 EA 48 FC 45
-0D 12 84 12 0A 40 22 00 80 46 3A 49 BE 58 3D 41
-36 4F 0E 56 82 4E 36 20 A2 43 22 20 82 43 24 20
-1C 43 0E 96 8C 24 F6 90 3A 00 01 00 01 20 26 53
-F6 90 5C 00 00 00 03 20 16 53 0E 96 66 24 82 46
-34 20 B0 12 42 56 15 42 12 20 B0 12 C0 57 2C 43
-0A 43 08 4A 58 0E 08 58 82 48 30 20 C8 93 00 1E
-60 24 39 42 F8 96 00 1E 04 20 18 53 19 83 FA 23
-16 53 F6 90 2E 00 FF FF 19 24 39 50 03 00 B0 12
-2C 58 06 20 F6 90 5C 00 FF FF 29 24 0E 96 27 28
-16 42 34 20 1A 53 3A 90 10 00 DB 23 92 53 1A 20
-82 63 1C 20 15 83 D1 23 2C 42 49 3C F6 90 2E 00
-FE FF EE 27 B0 12 2C 58 EB 23 39 40 03 00 F8 96
-00 1E 04 20 18 53 19 83 FA 23 09 3C 0E 96 E0 2F
-F6 90 5C 00 FF FF DC 23 B0 12 2C 58 D9 23 18 42
-30 20 92 48 1A 1E 22 20 92 48 14 1E 24 20 F8 B0
-10 00 0B 1E 13 24 82 93 24 20 05 20 82 93 22 20
-02 20 A2 43 22 20 0E 96 9A 23 92 42 22 20 2C 20
-92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F B0 12
-8A 56 35 40 B6 40 36 40 C4 40 3A 4F 3E 4F 0A 93
-04 24 7A 93 39 20 0C 93 02 20 30 40 9E 43 0D 12
-84 12 8C 43 1E 40 0B 3C 20 4F 70 65 6E 45 72 72
-6F 72 B2 40 D4 54 E2 B2 60 02 02 24 30 40 86 41
-92 12 3E 18 3F 40 7E 1C 8F 43 00 00 0D 12 84 12
-1E 40 0F 4C 4F 41 44 22 20 42 4F 4F 54 2E 34 54
-48 22 B2 40 6A 49 42 58 08 42 4F 4F 54 00 B2 40
-06 5A B0 42 30 4D 3A 47 0C 4E 4F 42 4F 4F 54 00
-B2 40 86 41 B0 42 30 4D 1A 93 89 20 0C 93 C7 23
-30 4D 38 5A 08 52 45 41 44 00 2F 83 8F 4E 00 00
-1E 42 32 20 B0 12 58 57 1E 82 32 20 30 4D 08 4A
-1A 52 08 20 B0 12 8E 5A 0A 48 1A 52 0C 20 09 43
-30 40 80 54 3C 42 0A 12 2A 41 82 9A 0A 20 2B 25
-B0 12 3A 56 88 93 02 1E 03 20 88 93 00 1E 08 24
-28 52 38 90 00 02 F6 2B 91 53 00 00 08 43 EC 3F
-A2 41 26 20 82 48 28 20 0C 43 B8 43 00 1E 6A 41
-B8 40 FF 0F 02 1E 08 11 8A 10 08 5A 5A 41 01 00
-0A 11 08 10 82 4A 24 20 82 48 22 20 2A 41 B0 12
-7E 5A 3A 41 30 41 90 4B 0A 00 28 C5 90 4B 0C 00
-24 C5 B0 12 1E 56 82 4A 26 20 82 48 28 20 0A 12
-B0 12 3A 56 1A 48 00 1E 88 43 00 1E 19 48 02 1E
-88 43 02 1E 39 F0 FF 0F 39 90 FF 0F 02 20 3A 93
-10 24 82 4A 22 20 82 49 24 20 B0 12 1E 56 2A 91
-E9 27 09 4A 2A 41 81 49 00 00 B0 12 7E 5A 2A 41
-DF 3F 3A 41 30 40 7E 5A 9B 52 1E 20 12 00 8B 63
-14 00 1A 42 1A 20 19 42 1C 20 30 40 80 54 2A 93
-BC 20 0C 93 09 20 F8 40 E5 00 00 1E B0 12 62 5B
-B0 12 F6 5A B0 12 E6 57 30 4D F2 B0 40 00 A2 04
-29 20 F2 B0 10 00 A2 04 FC 27 5A 42 B0 04 4A 11
-59 42 B4 04 F2 40 20 00 C0 04 D2 42 B1 04 C8 04
-1A 52 E4 04 D2 42 B5 04 C8 04 19 52 E4 04 D2 42
-B2 04 C0 04 B2 40 00 08 C8 04 1A 52 E4 04 92 42
-B6 04 C0 04 B2 80 BC 07 C0 04 B2 40 00 02 C8 04
-19 52 E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E
-3F 5B 5C 5D 7C 2E 29 92 06 28 39 80 03 00 B0 12
-36 5C 39 40 03 00 7A 4B C8 4A 00 1E 82 9B 36 20
-12 28 0D 12 3D 40 0F 00 3C 40 E6 5B 7A 9C F3 27
-1D 83 FC 23 3D 41 6A 9C E6 27 3A 80 21 00 EB 3B
-18 53 19 83 E8 23 09 93 06 24 F8 40 20 00 00 1E
-18 53 19 83 FA 23 30 41 1A 4B 04 00 19 4B 06 00
-B0 12 3A 54 18 4B 08 00 B0 12 8A 5B 88 49 12 1E
+AA 57 22 C3 30 41 1B 42 32 20 0B 93 FB 27 EB 92
+02 00 1E 38 B0 12 16 56 1A 4B 04 00 19 4B 06 00
+B0 12 3A 54 18 4B 08 00 B0 12 A6 5B 88 49 12 1E
88 4A 16 1E 88 49 18 1E 98 4B 12 00 1C 1E 98 4B
-14 00 1E 1E 1A 4B 04 00 19 4B 06 00 30 40 80 54
-B2 40 00 02 1E 20 1B 42 32 20 B0 12 58 5B 82 43
-1E 20 DB 53 03 00 DB 92 12 20 03 00 1D 28 B0 12
-12 56 08 12 0A 12 B0 12 94 5A 2A 91 03 24 2A 41
-B0 12 3A 56 3A 41 38 41 98 42 22 20 00 1E 98 42
-24 20 02 1E B0 12 7E 5A AB 42 02 00 9B 42 22 20
-0E 00 9B 42 24 20 10 00 30 40 78 56 5A 58 0A 57
-52 49 54 45 B0 12 80 5C 30 4D 2A 92 54 20 2C 93
-0E 24 0C 93 3D 24 0D 12 84 12 1E 40 0C 3C 20 57
-72 69 74 65 45 72 72 6F 72 00 B2 40 D4 54 0A 43
-08 43 B0 12 94 5A B0 12 C0 57 18 42 30 20 F8 40
-20 00 0B 1E B0 12 8A 5B 88 43 0C 1E 88 4A 0E 1E
-88 49 10 1E 98 42 24 20 14 1E 98 42 22 20 1A 1E
-88 43 1C 1E 88 43 1E 1E 2C 42 1B 42 34 20 82 9B
-36 20 D1 27 FB 90 2E 00 00 00 CD 27 39 40 0B 00
-B0 12 06 5C B0 12 62 5B 2A 42 B0 12 8A 56 30 4D
-B0 12 F6 5A 8B 43 12 00 8B 43 14 00 90 4B 0A 00
-A2 C2 90 4B 0C 00 9E C2 B0 12 1E 56 B0 12 94 5A
-B0 12 C8 5C 30 4D 2C 93 BA 27 0C 93 AC 23 EB 42
-02 00 58 4B 13 00 59 4B 14 00 89 10 09 58 58 4B
-15 00 5B 42 12 20 0A 43 3C 42 08 11 09 10 4A 10
-1C 83 0B 11 FA 2B 0A 11 1C 83 FD 37 1B 42 32 20
-19 5B 0A 00 18 6B 0C 00 8B 49 0E 00 8B 48 10 00
-CB 4A 03 00 B0 12 BC 57 1A 4B 12 00 BB C0 FF 01
-12 00 3A F0 FF 01 82 4A 1E 20 30 4D 4E 58 10 54
-45 52 4D 32 53 44 22 00 0D 12 84 12 62 58 10 5E
-0A 43 B0 12 4A 43 92 B3 DC 05 FD 27 59 42 CC 05
-C2 49 CE 05 69 92 0D 24 CA 49 00 1E 1A 53 3A 90
-FF 01 04 24 F0 2B B0 12 80 5C EA 3F B0 12 E6 42
-EA 3F F2 90 0D 00 CC 05 FC 27 B0 12 E6 42 F2 90
-0A 00 CC 05 FC 27 82 4A 1E 20 B0 12 E6 57 3D 41
-30 4D
+14 00 1E 1E 1A 4B 04 00 19 4B 06 00 B0 12 7C 54
+CB 93 02 00 CA 37 1E 4B 18 00 9F 4B 1A 00 00 00
+31 50 06 00 3D 41 B0 12 DA 57 02 24 30 40 9E 43
+B2 40 3C 1D A0 40 B2 40 C0 42 BE 42 30 40 8C 43
+09 93 07 24 F8 90 20 00 00 1E 03 20 18 53 19 83
+F9 23 30 41 92 4B 0A 00 22 20 92 4B 0C 00 24 20
+D2 3E 86 4C 0B 52 45 41 44 22 5A 43 20 3C EE 4A
+09 44 45 4C 22 00 6A 43 1A 3C B4 49 0D 57 52 49
+54 45 22 00 6A 42 13 3C 9C 49 0F 41 50 50 45 4E
+44 22 7A 42 0C 3C 98 4B 0A 43 4C 4F 53 45 B0 12
+F6 57 30 4D FC 48 0B 4C 4F 41 44 22 7A 43 2F 83
+8F 4E 00 00 0E 4A 82 93 BC 1D 0B 24 0D 12 84 12
+0A 40 0A 40 EA 48 EA 48 6A 45 0A 40 12 59 EA 48
+FC 45 0D 12 84 12 0A 40 22 00 80 46 3A 49 10 59
+3D 41 36 4F 0E 56 82 4E 36 20 A2 43 22 20 82 43
+24 20 1C 43 0E 96 8C 24 F6 90 3A 00 01 00 01 20
+26 53 F6 90 5C 00 00 00 03 20 16 53 0E 96 66 24
+82 46 34 20 B0 12 52 56 15 42 12 20 B0 12 D0 57
+2C 43 0A 43 08 4A 58 0E 08 58 82 48 30 20 C8 93
+00 1E 60 24 39 42 F8 96 00 1E 04 20 18 53 19 83
+FA 23 16 53 F6 90 2E 00 FF FF 19 24 39 50 03 00
+B0 12 70 58 06 20 F6 90 5C 00 FF FF 29 24 0E 96
+27 28 16 42 34 20 1A 53 3A 90 10 00 DB 23 92 53
+1A 20 82 63 1C 20 15 83 D1 23 2C 42 49 3C F6 90
+2E 00 FE FF EE 27 B0 12 70 58 EB 23 39 40 03 00
+F8 96 00 1E 04 20 18 53 19 83 FA 23 09 3C 0E 96
+E0 2F F6 90 5C 00 FF FF DC 23 B0 12 70 58 D9 23
+18 42 30 20 92 48 1A 1E 22 20 92 48 14 1E 24 20
+F8 B0 10 00 0B 1E 13 24 82 93 24 20 05 20 82 93
+22 20 02 20 A2 43 22 20 0E 96 9A 23 92 42 22 20
+2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F
+B0 12 9A 56 35 40 B6 40 36 40 C4 40 3A 4F 3E 4F
+0A 93 04 24 7A 93 39 20 0C 93 02 20 30 40 9E 43
+0D 12 84 12 8C 43 1E 40 0B 3C 20 4F 70 65 6E 45
+72 72 6F 72 B2 40 D0 54 92 12 3E 18 E2 B2 60 02
+02 24 30 40 8A 41 3F 40 7E 1C 8F 43 00 00 0D 12
+84 12 1E 40 0F 4C 4F 41 44 22 20 42 4F 4F 54 2E
+34 54 48 22 B2 40 6A 49 94 58 08 42 4F 4F 54 00
+B2 40 58 5A B0 42 30 4D 3A 47 0C 4E 4F 42 4F 4F
+54 00 B2 40 86 41 B0 42 30 4D 1A 93 6E 20 0C 93
+C7 23 30 4D 8A 5A 08 52 45 41 44 00 2F 83 8F 4E
+00 00 1E 42 32 20 B0 12 68 57 1E 82 32 20 30 4D
+B0 12 84 58 0A 12 B0 12 0E 56 1A 48 00 1E 88 43
+00 1E 19 48 02 1E 88 43 02 1E 39 F0 FF 0F 39 90
+FF 0F 02 20 3A 93 10 24 82 4A 22 20 82 49 24 20
+B0 12 36 56 2A 91 E9 27 09 4A 2A 41 81 49 00 00
+B0 12 1A 5B 2A 41 DF 3F 3A 41 08 4A 1A 52 08 20
+B0 12 2A 5B 0A 48 1A 52 0C 20 09 43 30 40 7C 54
+3C 42 0A 12 2A 41 82 9A 0A 20 CF 24 B0 12 0E 56
+88 93 02 1E 03 20 88 93 00 1E 08 24 28 52 38 90
+00 02 F6 2B 91 53 00 00 08 43 EC 3F 0C 43 B8 43
+00 1E 6A 41 B8 40 FF 0F 02 1E 08 11 8A 10 08 5A
+5A 41 01 00 0A 11 08 10 82 4A 24 20 82 48 22 20
+2A 41 B0 12 1A 5B 3A 41 30 41 2A 93 A0 20 0C 93
+09 20 F8 40 E5 00 00 1E B0 12 20 56 B0 12 D0 5A
+B0 12 F6 57 30 4D F2 B0 40 00 A2 04 29 20 F2 B0
+10 00 A2 04 FC 27 5A 42 B0 04 4A 11 59 42 B4 04
+F2 40 20 00 C0 04 D2 42 B1 04 C8 04 1A 52 E4 04
+D2 42 B5 04 C8 04 19 52 E4 04 D2 42 B2 04 C0 04
+B2 40 00 08 C8 04 1A 52 E4 04 92 42 B6 04 C0 04
+B2 80 BC 07 C0 04 B2 40 00 02 C8 04 19 52 E4 04
+30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E 3F 5B 5C 5D
+7C 2E 29 92 06 28 39 80 03 00 B0 12 52 5C 39 40
+03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28 0D 12
+3D 40 0F 00 3C 40 02 5C 7A 9C F3 27 1D 83 FC 23
+3D 41 6A 9C E6 27 3A 80 21 00 EB 3B 18 53 19 83
+E8 23 09 93 06 24 F8 40 20 00 00 1E 18 53 19 83
+FA 23 30 41 B2 40 00 02 1E 20 1B 42 32 20 B0 12
+16 56 82 43 1E 20 DB 53 03 00 DB 92 12 20 03 00
+1D 28 B0 12 2A 56 08 12 0A 12 B0 12 30 5B 2A 91
+03 24 2A 41 B0 12 0E 56 3A 41 38 41 98 42 22 20
+00 1E 98 42 24 20 02 1E B0 12 1A 5B AB 42 02 00
+9B 42 22 20 0E 00 9B 42 24 20 10 00 30 40 88 56
+AC 58 0A 57 52 49 54 45 B0 12 64 5C 30 4D 2A 92
+4E 20 2C 93 0E 24 0C 93 3D 24 0D 12 84 12 1E 40
+0C 3C 20 57 72 69 74 65 45 72 72 6F 72 00 B2 40
+D0 54 0A 43 38 42 B0 12 30 5B B0 12 D0 57 18 42
+30 20 F8 40 20 00 0B 1E B0 12 A6 5B 88 43 0C 1E
+88 4A 0E 1E 88 49 10 1E 98 42 24 20 14 1E 98 42
+22 20 1A 1E 88 43 1C 1E 88 43 1E 1E 2C 42 1B 42
+34 20 82 9B 36 20 D1 27 FB 90 2E 00 00 00 CD 27
+39 40 0B 00 B0 12 22 5C B0 12 20 56 2A 42 B0 12
+9A 56 30 4D B0 12 D0 5A 8B 43 12 00 8B 43 14 00
+B0 12 84 58 B0 12 30 5B B0 12 AC 5C 30 4D 2C 93
+C0 27 0C 93 B2 23 B0 12 84 58 82 4A 2A 20 B0 12
+0E 56 1A 48 00 1E 19 48 02 1E 39 90 FF 0F 02 20
+3A 93 0A 24 82 4A 22 20 82 49 24 20 B0 12 36 56
+82 9A 2A 20 EE 27 97 3E 1A 4B 12 00 08 4A 39 40
+FF 01 8B C9 12 00 08 F9 82 48 1E 20 59 42 12 20
+19 83 8A 10 4A 11 0A F9 CB 4A 03 00 B0 12 B0 5C
+B0 12 D0 57 30 4D A0 58 10 54 45 52 4D 32 53 44
+22 00 0D 12 84 12 B4 58 EA 5D 0A 43 B0 12 4A 43
+92 B3 DC 05 FD 27 59 42 CC 05 69 92 0D 24 CA 49
+00 1E 1A 53 3A 90 FF 01 04 24 F2 2B B0 12 64 5C
+EC 3F B0 12 E6 42 EC 3F F2 90 0D 00 CC 05 FC 27
+B0 12 E6 42 F2 90 0A 00 CC 05 FC 27 82 4A 1E 20
+B0 12 F6 57 3D 41 30 4D
@FF80
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
@1800
E8 03 12 00 00 00 F8 00 FD FF 35 01 10 00 A1 43
-D4 42 56 41 E6 55 C6 54 44 41 44 5E 2A 4C E4 4B
-E4 4B C2 42 46 43 1E 43 3C 1D E0 1C D8 45 B6 40
-C4 40 F4 44 20 00 0A 00 00 1C 56 41 E6 55 C6 54
-44 41 44 5E 2A 4C E4 4B E4 4B 00 00 00 00 00 00
+CE 42 50 41 BC 54 C4 54 44 41 1C 5E 24 4C DE 4B
+DE 4B BC 42 40 43 18 43 3C 1D E0 1C D2 45 B6 40
+C4 40 EE 44 20 00 0A 00 00 1C 50 41 BC 54 C4 54
+44 41 1C 5E 24 4C DE 4B DE 4B 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
@4000
92 12 40 18 12 D2 06 18 FB 3F 2F 83 8F 4E 00 00
12 D3 F5 3F 35 40 B6 40 8F 4A 02 00 8F 49 00 00
0E 48 30 41 82 4E C2 1D B2 4F C4 1D 82 43 C6 1D
3E 4F 30 4D 2F 82 8F 4E 02 00 3E 40 54 00 BF 40
-3C 1D 00 00 AF 4F FE FF 2F 83 09 3D 0E 93 3E 4F
-BA 21 2D 4D 30 4D 2F 83 8F 4E 00 00 3E 41 0D 12
+3C 1D 00 00 AF 4F FE FF 2F 83 06 3D 0E 93 3E 4F
+B7 21 2D 4D 30 4D 2F 83 8F 4E 00 00 3E 41 0D 12
3D 4E 30 4D 2F 83 8F 4E 00 00 3E 41 2E 4E 30 4D
-92 12 3C 18 3D 41 39 40 22 18 B2 49 C0 42 B2 49
-44 43 B2 49 1C 43 B2 49 A0 40 31 49 34 49 35 49
+92 12 3C 18 3D 41 39 40 22 18 B2 49 BA 42 B2 49
+3E 43 B2 49 16 43 B2 49 A0 40 31 49 34 49 35 49
36 49 37 49 B2 49 C0 1D B2 49 BE 1D B2 49 00 1C
-82 43 BC 1D 30 40 9E 4C 8F 93 02 00 02 20 2F 52
-BF 3F 28 43 B0 12 46 41 B0 12 D0 40 FE 44 AC 40
-42 41 5E 43 1E 40 05 1B 5B 37 6D 40 E8 43 0A 40
-02 18 20 45 4C 46 E8 43 1E 40 04 1B 5B 30 6D 00
-E8 43 34 49 48 43 A2 B3 EC 06 FD 27 C2 48 CE 06
-A2 B2 EC 06 FD 27 30 41 B2 D0 C0 07 C0 06 18 42
-02 18 08 11 38 D0 00 04 82 48 D4 06 F2 D0 03 00
-6A 02 92 C3 C0 06 A2 D2 EA 06 92 C3 30 01 30 41
-92 12 3E 18 84 12 5E 43 1E 40 07 0D 0A 1B 5B 37
-6D 40 E8 43 0A 40 02 18 20 45 4C 46 0A 40 23 00
-42 43 4C 46 1E 40 19 46 61 73 74 46 6F 72 74 68
-20 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 2C 20
-E8 43 0A 40 40 FF 32 40 14 45 18 46 1E 40 0A 62
-79 74 65 73 20 66 72 65 65 00 B2 40 36 41 00 00
-06 53 59 53 0E 93 07 38 02 24 1E B3 04 28 30 12
-80 41 01 12 6D 3F 82 4E 08 18 92 12 3A 18 F2 B0
-40 00 40 02 02 20 B2 43 08 18 B2 40 04 A5 20 01
-B2 D0 03 00 04 01 B2 D0 10 00 00 01 B2 40 80 5A
-5C 01 31 40 E0 1C 3F 40 80 1C B2 D3 06 02 B2 40
-FC FF 02 02 B2 43 26 02 B2 D3 22 02 B2 43 42 02
-B2 D3 46 02 B2 43 62 02 B2 D3 66 02 F2 43 26 03
-F2 D3 22 03 F2 40 A5 00 61 01 82 43 62 01 82 43
-66 01 B2 40 33 00 64 01 D2 43 61 01 39 40 40 00
-18 42 00 18 18 83 FE 23 19 83 FA 23 F2 D0 10 00
-2A 03 F2 40 A5 00 A1 04 F2 C0 40 00 A2 04 B2 42
-B0 01 39 40 00 10 29 83 89 43 00 1C FC 23 1E 42
-08 18 82 43 08 18 3E F3 02 20 1E 42 9E 01 B0 12
-D0 40 80 41 00 00 0C 41 43 43 45 50 54 00 30 40
-C2 42 0A 4E 2E 4F 0A 5E 3B 40 0A 00 3C 40 20 00
-3D 15 96 3E 21 52 A2 C2 EC 06 B2 B0 10 00 C0 06
-8F 22 3A 17 92 B3 EC 06 FD 27 58 42 CC 06 48 9B
-0E 24 48 9C 06 2C 78 92 F5 23 2E 9F F3 27 1E 83
-F1 3F 0E 9A EF 2F CE 48 00 00 1E 53 EB 3F 3E 8F
-08 4C 1B 3C 00 00 06 4B 45 59 30 40 1E 43 58 43
-B0 12 46 41 2F 83 8F 4E 00 00 92 B3 EC 06 FD 27
-1E 42 CC 06 B0 12 44 41 30 4D 00 00 08 45 4D 49
-54 00 30 40 46 43 08 4E 3E 4F A2 B3 EC 06 FD 27
-C2 48 CE 06 30 4D 3C 43 08 45 43 48 4F 00 B2 40
-C2 48 50 43 38 40 05 00 B0 12 46 41 30 4D 00 00
-0C 4E 4F 45 43 48 4F 00 B2 40 30 4D 50 43 28 42
-F3 3F 0D 12 3D 40 A2 43 1B 42 32 20 9B 42 1E 20
-16 00 3A 4F 09 4E 0E 43 1C 42 1E 20 1B 42 20 20
-02 3C A4 43 2D 83 0C 9B 16 2C 58 4C 00 1E 1C 53
-78 90 20 00 09 2C 78 90 0A 00 F5 23 82 4C 1E 20
-3D 41 3C 40 20 00 A4 3F 0E 99 BF 27 CA 48 00 00
-1A 53 1E 53 BA 3F 1A 15 B0 12 34 57 19 17 DC 3F
-00 00 08 54 59 50 45 00 0D 12 3D 40 F8 43 29 4F
-8F 4E 00 00 7E 49 A5 3F FA 43 2D 83 2F 83 5E 83
-F7 23 3D 41 2F 53 3E 4F 30 4D 86 12 20 00 0C 4E
-38 4F 3C 9F 39 4F 3E 4F 4C 22 F9 98 00 00 49 22
-19 53 1C 83 FA 23 2D 53 30 4D 2F 53 3E 4F 1E 83
-40 22 9B 24 16 43 0D 5B 45 4C 53 45 5D 00 0D 12
-84 12 0A 40 00 00 18 45 0A 44 5C 46 16 49 B0 40
-86 44 14 40 06 5B 54 48 45 4E 5D 00 0E 44 64 44
-2A 44 48 44 14 40 06 5B 45 4C 53 45 5D 00 0E 44
-76 44 2A 44 46 44 1E 40 04 5B 49 46 5D 00 0E 44
-48 44 B2 40 46 44 1E 40 05 0D 6B 6F 20 0A E8 43
-9A 40 84 40 B2 40 48 44 36 44 0D 5B 54 48 45 4E
-5D 00 30 4D 9A 44 09 5B 49 46 5D 00 0E 93 3E 4F
-C6 27 30 4D A6 44 13 5B 44 45 46 49 4E 45 44 5D
-0D 12 84 12 0A 44 5C 46 C4 46 68 48 D8 45 B6 44
-17 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12 84 12
-0A 44 5C 46 C4 46 E8 44 3D 41 2F 53 1E 83 0E 7E
-30 4D 3F 12 2F 83 8F 4E 00 00 3E 41 30 4D 8F 4E
-FE FF 2F 83 30 4D 8F 4E FE FF 3E 40 80 1C 0E 8F
-0E 11 F7 3F 3E 8F 3E E3 1E 53 30 4D 00 00 02 40
-2E 4E 30 4D B6 42 02 21 BE 4F 00 00 3E 4F 30 4D
-0E 5E 0E 7E 3E E3 30 4D 3E 8F 01 28 0E F3 30 4D
-E0 41 05 53 22 00 82 43 C0 1D 0D 12 84 12 0A 40
-1E 40 C6 48 0A 40 22 00 5C 46 5C 45 B2 40 20 00
-C0 1D 1A 53 1A B3 82 6A C8 1D 3E 4F 3D 41 30 4D
-70 43 05 2E 22 00 0D 12 84 12 46 45 0A 40 E8 43
-C6 48 D8 45 00 00 04 3C 23 00 B2 40 B2 1D B2 1D
-30 4D 42 45 02 23 1B 42 BE 1D 2C 4F 2F 83 B0 12
-46 40 BF 4F 00 00 7A 90 0A 00 02 28 7A 50 07 00
-7A 50 30 00 92 83 B2 1D 18 42 B2 1D C8 4A 00 00
-30 4D 94 45 04 23 53 00 0D 12 84 12 96 45 D0 45
-2D 83 09 DE 09 93 E1 23 3D 41 30 4D C4 45 04 23
-3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D
-00 00 08 48 4F 4C 44 00 4A 4E 3E 4F DB 3F DE 45
-08 53 49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D2 33
-30 4D 58 43 04 55 2E 00 0C 43 2F 83 8F 4E 00 00
-0E 4C 1D 15 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 84 12 8A 45 0A 44 F8 45 C8 45 F4 44
-06 46 E2 45 E8 43 D8 45 72 45 02 2E 0E 93 E4 37
-3C 43 E3 3F 00 00 08 57 4F 52 44 00 3C 40 C2 1D
-39 4C 38 4C 09 58 38 5C 2A 4C 09 98 1D 24 7E 98
-FC 27 18 83 1B 42 C0 1D F8 90 27 00 00 00 04 20
-E8 98 02 00 01 20 0B 43 CA 4C 00 00 09 98 0C 24
-7C 48 4E 9C 09 24 1A 53 7C 90 61 00 F5 2B 7C 90
-7B 00 F2 2F 4C 8B F0 3F 18 82 C4 1D 82 48 C6 1D
-1E 42 C8 1D 0A 8E CE 4A 00 00 30 4D 00 00 08 46
-49 4E 44 00 2F 83 0C 4E 3B 40 CE 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 0F 00 08 58 0E 58 2E 53
-1E 4E FE FF 0E 93 F2 27 09 4E 78 49 48 11 68 9C
-F7 23 0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23
-19 B3 09 63 0C 49 6E 4E 1E F3 01 20 1E 83 8F 4C
-00 00 30 4D 4A 46 0E 3E 4E 55 4D 42 45 52 1B 42
-BE 1D 3C 4F 38 4F 29 4F 2F 82 82 4B C0 04 6A 4C
-7A 80 3A 00 03 28 7A 80 07 00 12 28 7A 50 0A 00
-0A 9B 22 C3 0D 2C 82 49 E0 04 82 48 E2 04 19 42
-E4 04 18 42 E6 04 09 5A 08 63 1C 53 1E 83 E7 23
-8F 4C 00 00 8F 48 02 00 8F 49 04 00 30 4D 32 C0
-00 02 3F 82 8F 4E 06 00 08 43 09 43 1B 42 BE 1D
-0C 4E 0E 43 1E 15 3D 40 CE 47 7E 4C 6A 4C 7A 80
-2D 00 16 24 CA 2F 2B 43 7A 52 14 24 3B 52 6A 53
-11 24 3B 40 10 00 5A 93 0D 24 6A 92 41 20 3E 90
-03 00 3E 20 FC 9C 01 00 6C 4C 8F 4C 04 00 38 3C
-B1 43 02 00 1E 83 FC 9C 00 00 E0 23 AE 27 D0 47
-2F 24 2D 83 6A 4C 7A 90 5F 00 BF 27 32 B0 00 02
-27 20 32 D0 00 02 7A 80 2E 00 B7 27 6A 53 20 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 3A 00 03 28 79 80 07 00 0C 28 79 50 0A 00
-09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 3E 40
-2A 17 E8 3F 9F 4F 04 00 02 00 AF 4F 04 00 4A 93
-1D 17 06 24 32 C0 00 02 3F 50 06 00 0E F3 30 4D
-2F 53 9F 4F 02 00 04 00 BF 4F 00 00 3E E3 09 20
-3E E3 BF E3 02 00 BF E3 00 00 9F 53 02 00 8F 63
-00 00 32 B0 00 02 01 20 2F 53 30 4D 86 45 03 5C
-92 42 C2 1D C6 1D 30 4D 0D 12 84 12 84 40 0A 44
-5C 46 B0 40 A0 49 C4 46 8A 48 0A 4E 3E 4F 3D 40
-A4 48 6D 27 3D 40 7E 48 1A E2 BC 1D 14 24 0E 12
-3E 4F 30 41 A6 48 3E 4F 3D 40 7E 48 19 20 DE 53
-00 00 68 4E 08 5E F8 40 3F 00 00 00 3D 40 7C 4A
-2A 3C 6E 48 02 2C A2 53 C8 1D 1A 42 C8 1D 8A 4E
-FE FF 3E 4F 30 4D C4 48 0F 4C 49 54 45 52 41 4C
-82 93 BC 1D 0D 24 09 4E 1A 42 C8 1D A2 52 C8 1D
-BA 40 0A 40 00 00 8A 49 02 00 3E 4F 32 B0 00 02
-32 C0 00 02 03 24 8A 4E 02 00 EE 3F 30 4D 00 46
-0A 43 4F 55 4E 54 2F 83 7A 4E 8F 4E 00 00 0E 4A
-3E F3 30 4D 26 45 0A 41 4C 4C 4F 54 82 5E C8 1D
-3E 4F 30 4D 3F 40 80 1C 0E 43 84 12 1E 40 02 0D
-0A 00 E8 43 94 40 78 48 06 45 30 45 1E 40 0B 73
-74 61 63 6B 20 65 6D 70 74 79 08 41 32 40 0A 40
-40 FF 38 45 1E 40 09 46 52 41 4D 20 66 75 6C 6C
-08 41 B2 40 3C 49 26 49 0D 41 42 4F 52 54 22 00
-0D 12 84 12 46 45 0A 40 08 41 C6 48 D8 45 56 46
-02 27 0D 12 84 12 0A 44 5C 46 C4 46 B0 40 A2 49
-6A 45 AE 48 D0 44 07 5B 27 5D 0D 12 84 12 92 49
-0A 40 0A 40 C6 48 C6 48 D8 45 A6 49 03 5B 82 43
-BC 1D 30 4D 00 00 02 5D B2 43 BC 1D 30 4D 1E 45
-11 50 4F 53 54 50 4F 4E 45 00 0D 12 84 12 0A 44
-5C 46 C4 46 B0 40 A2 49 30 45 AC 40 FA 49 0A 40
-0A 40 C6 48 C6 48 0A 40 C6 48 C6 48 D8 45 00 00
-02 3A 30 12 50 4A 92 B3 C8 1D A2 63 C8 1D 0D 12
-84 12 0A 44 5C 46 18 4A 3D 41 5A D3 5A 53 0A 5E
-19 42 CC 1D 08 4E 5E 4E 01 00 3E F0 0F 00 0E 5E
-09 5E 3E 4F E8 58 00 00 82 48 B4 1D 82 49 B6 1D
-82 4A B8 1D 82 4F BA 1D 2A 52 82 4A C8 1D 30 41
-BA 40 0D 12 FC FF BA 40 84 12 FE FF B2 43 BC 1D
-30 4D 82 9F BA 1D 66 25 84 12 1E 40 0F 73 74 61
-63 6B 20 6D 69 73 6D 61 74 63 68 21 12 41 BC 49
-03 3B 82 93 BC 1D F4 26 0D 12 84 12 0A 40 D8 45
-C6 48 62 4A BE 49 D8 45 00 00 12 49 4D 4D 45 44
-49 41 54 45 18 42 B4 1D D8 D3 00 00 30 4D 10 49
-0C 43 52 45 41 54 45 00 B0 12 06 4A BA 40 86 12
-FC FF 8A 4A FE FF 3A 3D E2 43 0A 44 4F 45 53 3E
-1A 42 B8 1D BA 40 85 12 00 00 8A 4D 02 00 3D 41
-30 4D 00 4A 0E 3A 4E 4F 4E 41 4D 45 30 12 50 4A
-2F 83 8F 4E 00 00 1A 42 C8 1D 1A B3 0A 63 0E 4A
-39 40 12 02 08 49 98 3F 9A 4A 05 49 53 00 0D 12
-82 93 BC 1D 08 20 84 12 92 49 1C 4B 3D 41 BE 4F
-02 00 3E 4F 30 4D 84 12 AA 49 0A 40 1E 4B C6 48
-D8 45 B0 4A 08 43 4F 44 45 00 B0 12 06 4A A2 82
-C8 1D 61 3C F2 45 0E 48 44 4E 43 4F 44 45 B2 40
-0A 4C CC 1D F2 3F 00 00 0E 45 4E 44 43 4F 44 45
-0D 12 84 12 62 4A 68 4B 3D 41 92 42 D0 1D CC 1D
-5D 3C 34 4B 0E 43 4F 44 45 4E 4E 4D 30 12 3E 4B
-B7 3F 00 00 0A 43 4F 4C 4F 4E 1A 42 C8 1D BA 40
-0D 12 00 00 BA 40 84 12 02 00 A2 52 C8 1D B2 43
-BC 1D E3 3F 00 00 0A 4C 4F 32 48 49 A2 83 C8 1D
-1A 42 C8 1D EF 3F 46 4B 0B 48 49 32 4C 4F A2 53
-C8 1D 1A 42 C8 1D 8A 4A FE FF 82 43 BC 1D B9 3F
-D2 4B B2 40 E4 4B D0 1D 82 4E CE 1D 30 40 6A 45
-85 12 D0 4B D0 49 44 58 40 5A 52 58 DA 5D 14 46
-BE 46 BA 5C B8 4B 0A 4B E4 4A 80 4A 60 58 EC 4C
-24 5A 00 00 00 00 85 12 D0 4B 66 53 EA 51 0C 54
-12 51 6E 51 BC 51 98 52 52 54 34 50 58 51 00 00
-00 00 A6 4B 24 4F 00 00 C0 52 04 4C B2 40 E4 4B
-CE 1D 82 43 D0 1D 30 4D 3B 40 0A 00 BA 49 00 00
-2A 53 2B 83 FB 23 30 41 00 00 0E 52 53 54 5F 53
-45 54 39 40 C8 1D 3A 40 42 18 B0 12 38 4C 30 4D
-4A 4C 0E 52 53 54 5F 52 45 54 39 40 42 18 2C 49
-3A 40 C8 1D B0 12 38 4C 1A 42 CA 1D 3B 40 10 00
-09 4A 08 49 29 83 18 48 FE FF 0C 98 FC 2B 89 48
-00 00 1B 83 F6 23 2A 4A 0A 93 F0 23 30 4D 0E 93
-E4 37 39 40 10 00 29 83 B9 43 80 FF FC 23 B9 40
-10 42 FE FF 29 83 B9 40 FA 41 FE FF 39 90 AE FF
-F9 23 39 40 10 18 B2 49 BC FF 3B 40 10 00 3A 40
-3A 18 B0 12 3C 4C 82 43 4A 18 C7 3F DE 4C B2 4E
-42 18 BE 12 3E 4F 3D 41 C0 3F C6 49 0C 4D 41 52
-4B 45 52 00 12 12 C6 1D 0D 12 84 12 0A 44 5C 46
-C4 46 AC 40 0A 4D FE 44 9E 48 0C 4D 3E 4F 3D 41
-B2 41 C6 1D B0 12 06 4A BA 40 85 12 FC FF BA 40
-DC 4C FE FF 28 83 8A 48 00 00 BA 40 82 40 02 00
-A2 52 C8 1D 18 42 B4 1D 19 42 B6 1D A8 49 FE FF
-89 48 00 00 30 4D 12 12 C6 1D 84 12 5C 46 C4 46
-AC 40 76 4D 56 4D 3C 4E 3C 80 87 12 0A 24 1C 53
-02 20 2E 4E 06 3C BE 90 DC 4C 00 00 01 20 3E 52
-2E 83 21 53 30 41 6E 47 AC 40 7E 4D 72 4D 80 4D
-B2 41 C6 1D 30 41 92 83 C6 1D 3E 40 28 00 0A 4E
-3D 15 B0 12 46 4D 15 20 3E 40 2B 00 B0 12 46 4D
-06 20 3E 40 2D 00 B0 12 46 4D 92 83 C6 1D 0E 12
-1E 41 02 00 84 12 5C 46 6E 47 AC 40 A2 49 C0 4D
-3E 51 3A 17 30 41 B0 12 86 4D 19 42 C8 1D 89 4E
-00 00 A2 53 C8 1D 3E 40 29 00 92 53 C6 1D 1A 42
-C6 1D 3D 15 84 12 5C 46 6E 47 AC 40 F8 4D F0 4D
-3E 90 10 00 E6 2B 7C 2D FA 4D A2 41 C6 1D E1 3F
-03 20 B0 12 DE 4D 43 3C 7A 90 23 00 24 20 B0 12
-8E 4D 3C 40 00 03 0E 93 1C 24 3C 40 10 03 1E 93
-18 24 3C 40 20 03 2E 93 14 24 3C 40 20 02 2E 92
-10 24 3C 40 30 02 3E 92 0C 24 3C 40 30 03 3E 93
-08 24 3C 40 30 00 19 42 C8 1D A2 53 C8 1D 89 4E
-00 00 3E 4F 30 4D 7A 90 26 00 05 20 3C 40 10 02
-B0 12 8E 4D F0 3F 7A 90 40 00 14 20 3C 40 20 00
-B0 12 DA 4D 0C 20 3C D0 10 00 3E 40 2B 00 B0 12
-DE 4D 92 92 C2 1D C6 1D 02 24 92 53 C6 1D 8E 10
-0C 5E DF 3F 3C D0 10 00 B0 12 C6 4D F2 3F 03 20
-B0 12 DE 4D F5 3F 7A 90 26 00 03 20 3C D0 82 00
-D7 3F 3C D0 80 00 B0 12 C6 4D EA 3F 0C 43 1B 42
-C8 1D A2 53 C8 1D 3A 40 20 00 19 42 C6 1D 19 52
-C4 1D 7A 99 FE 27 5A 49 FF FF 19 82 C4 1D 82 49
-C6 1D 7A 90 52 00 30 4D 00 00 08 52 45 54 49 00
-0D 12 84 12 0A 40 00 13 C6 48 D8 45 0A 40 2C 00
-BC 4E 00 4E 0A 44 C6 4E 9E 4E 0C 4F 3D 41 2C DE
-8B 4C 00 00 9E 3F 00 00 06 4D 4F 56 85 12 FC 4E
-00 40 18 4F 0A 4D 4F 56 2E 42 85 12 FC 4E 40 40
-00 00 06 41 44 44 85 12 FC 4E 00 50 32 4F 0A 41
-44 44 2E 42 85 12 FC 4E 40 50 3E 4F 08 41 44 44
-43 00 85 12 FC 4E 00 60 4C 4F 0C 41 44 44 43 2E
-42 00 85 12 FC 4E 40 60 84 4B 08 53 55 42 43 00
-85 12 FC 4E 00 70 6A 4F 0C 53 55 42 43 2E 42 00
-85 12 FC 4E 40 70 78 4F 06 53 55 42 85 12 FC 4E
-00 80 88 4F 0A 53 55 42 2E 42 85 12 FC 4E 40 80
-94 4F 06 43 4D 50 85 12 FC 4E 00 90 A2 4F 0A 43
-4D 50 2E 42 85 12 FC 4E 40 90 00 00 08 44 41 44
-44 00 85 12 FC 4E 00 A0 BC 4F 0C 44 41 44 44 2E
-42 00 85 12 FC 4E 40 A0 EA 4E 06 42 49 54 85 12
-FC 4E 00 B0 DA 4F 0A 42 49 54 2E 42 85 12 FC 4E
-40 B0 E6 4F 06 42 49 43 85 12 FC 4E 00 C0 F4 4F
-0A 42 49 43 2E 42 85 12 FC 4E 40 C0 00 50 06 42
-49 53 85 12 FC 4E 00 D0 0E 50 0A 42 49 53 2E 42
-85 12 FC 4E 40 D0 00 00 06 58 4F 52 85 12 FC 4E
-00 E0 28 50 0A 58 4F 52 2E 42 85 12 FC 4E 40 E0
-5A 4F 06 41 4E 44 85 12 FC 4E 00 F0 42 50 0A 41
-4E 44 2E 42 85 12 FC 4E 40 F0 0A 44 BC 4E 00 4E
-62 50 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA
-4D 3F 1A 50 06 52 52 43 85 12 5A 50 00 10 74 50
-0A 52 52 43 2E 42 85 12 5A 50 40 10 AE 4F 08 53
-57 50 42 00 85 12 5A 50 80 10 80 50 06 52 52 41
-85 12 5A 50 00 11 9C 50 0A 52 52 41 2E 42 85 12
-5A 50 40 11 8E 50 06 53 58 54 85 12 5A 50 80 11
-00 00 08 50 55 53 48 00 85 12 5A 50 00 12 C2 50
-0C 50 55 53 48 2E 42 00 85 12 5A 50 40 12 B6 50
-08 43 41 4C 4C 00 85 12 5A 50 80 12 1A 53 0E 4A
-84 12 4C 46 1E 40 0D 6F 75 74 20 6F 66 20 62 6F
-75 6E 64 73 12 41 E0 50 06 53 3E 3D 86 12 00 38
-08 51 04 53 3C 00 86 12 00 34 D0 50 06 30 3E 3D
-86 12 00 30 1C 51 04 30 3C 00 86 12 00 30 58 4B
-04 55 3C 00 86 12 00 2C 30 51 06 55 3E 3D 86 12
-00 28 26 51 06 30 3C 3E 86 12 00 24 44 51 04 30
-3D 00 86 12 00 20 00 00 04 49 46 00 1A 42 C8 1D
-8A 4E 00 00 A2 53 C8 1D 0E 4A 30 4D CA 4F 08 54
-48 45 4E 00 1A 42 C8 1D 08 4E 3E 4F 09 48 29 53
-0A 89 0A 11 3A 90 00 02 B2 2F 88 DA 00 00 30 4D
-3A 51 08 45 4C 53 45 00 1A 42 C8 1D BA 40 00 3C
-00 00 A2 53 C8 1D 2F 83 8F 4A 00 00 E3 3F A8 50
-0A 42 45 47 49 4E 30 40 32 40 92 51 0A 55 4E 54
-49 4C 3A 4F 08 4E 3E 4F 19 42 C8 1D 2A 83 0A 89
-0A 11 3A 90 00 FE 8B 3B 3A F0 FF 03 08 DA 89 48
-00 00 A2 53 C8 1D 30 4D 4E 50 0A 41 47 41 49 4E
-0A 4E 38 40 00 3C E7 3F 00 00 0A 57 48 49 4C 45
-0D 12 84 12 5C 51 F2 44 D8 45 B0 51 0C 52 45 50
-45 41 54 00 0D 12 84 12 F0 51 74 51 D8 45 20 52
-3D 41 08 4E 3E 4F 2A 48 B2 92 C6 1D CB 2F 98 42
-C8 1D 00 00 30 4D 0C 52 06 42 57 31 85 12 1E 52
-00 00 38 52 06 42 57 32 85 12 1E 52 00 00 44 52
-06 42 57 33 85 12 1E 52 00 00 5C 52 3D 41 1A 42
-C8 1D 28 4E 8E 43 00 00 B2 92 C6 1D 86 2B BA 4F
-00 00 A2 53 C8 1D 8E 4A 00 00 3E 4F 30 4D 00 00
-06 46 57 31 85 12 5A 52 00 00 80 52 06 46 57 32
-85 12 5A 52 00 00 8C 52 06 46 57 33 85 12 5A 52
-00 00 FA 51 08 47 4F 54 4F 00 2F 83 8F 4E 00 00
-3E 40 00 3C 0D 12 84 12 92 49 9E 48 D8 45 00 00
-0A 3F 47 4F 54 4F 3E 90 00 30 F4 27 3E E0 00 04
-3E B0 00 10 EF 27 3E E0 00 08 EC 3F C6 4E 0A 40
-2C 00 5C 46 6E 47 AC 40 A2 49 0A 44 BC 4E 9E 4E
-F2 52 0A 4E 3E 4F 1A 83 F9 32 29 4E 59 0E 0A 28
-08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00 EE 2E
-5A 0E AD 3E 2A 92 EA 2E 8A 10 5A 06 A8 3E 50 52
-08 52 52 43 4D 00 85 12 DC 52 50 00 20 53 08 52
-52 41 4D 00 85 12 DC 52 50 01 2E 53 08 52 4C 41
-4D 00 85 12 DC 52 50 02 3C 53 08 52 52 55 4D 00
-85 12 DC 52 50 03 4E 51 0A 50 55 53 48 4D 85 12
-DC 52 00 15 58 53 08 50 4F 50 4D 00 85 12 DC 52
-00 17 D2 C3 23 02 E2 B2 60 02 02 24 30 40 FA 41
-1A 52 04 20 19 62 06 20 92 43 14 20 C2 4A 15 20
-8A 10 C2 4A 16 20 C2 49 17 20 89 10 C2 49 18 20
-B0 12 E6 53 5A 53 FC 23 39 40 05 00 D2 49 14 20
-4E 06 82 93 46 06 05 24 92 B3 6C 06 FD 27 C2 93
-4C 06 59 83 F3 2F 19 83 0B 30 F2 43 4E 06 82 93
-46 06 03 24 92 B3 6C 06 FD 27 5A 92 4C 06 F3 23
-30 41 1A 43 E1 3F 19 43 3A 43 8A 10 C2 4A 4E 06
-82 93 46 06 05 24 92 B3 6C 06 FD 27 C2 93 4C 06
-19 83 F3 23 5A 42 4C 06 30 41 4A 53 12 52 5F 53
-45 43 54 5F 57 58 1C D3 F2 40 51 00 19 20 B0 12
-72 53 38 20 B0 12 E6 53 6A 53 04 24 FB 23 D9 42
-4C 06 FF 1D F2 43 4E 06 03 43 19 53 39 90 01 02
-F6 23 F2 43 4E 06 3C C0 03 00 D2 D3 23 02 30 41
-A4 52 12 57 5F 53 45 43 54 5F 57 58 2C D3 F0 40
-58 00 B7 CB B0 12 72 53 15 20 3A 40 FE FF 29 43
-B0 12 EA 53 D2 49 00 1E 4E 06 03 43 19 53 39 90
-00 02 F8 23 39 40 03 00 B0 12 E8 53 7A C0 E1 00
-6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3 23 02 84 12
-5E 43 1E 40 0B 3C 20 53 44 20 45 72 72 6F 72 21
-B2 54 2F 83 8F 4E 00 00 B2 40 10 00 BE 1D 0E 4C
-84 12 18 46 12 41 B0 12 58 41 E2 B2 60 02 8A 20
-B2 40 81 A9 40 06 B2 40 03 00 46 06 D2 D3 25 02
-B2 D0 C0 04 0C 02 92 C3 40 06 39 40 6E 01 29 83
-89 43 02 20 FC 23 39 42 B0 12 E8 53 D2 C3 23 02
-2C 42 B2 40 95 00 14 20 B2 40 00 40 18 20 B0 12
-E2 53 02 24 30 40 94 54 B0 12 E6 53 7A 93 FC 23
-B2 40 87 AA 14 20 92 43 16 20 B2 40 00 48 18 20
-B0 12 E2 53 29 42 B0 12 E8 53 92 43 14 20 82 43
-16 20 78 43 3C 42 B2 40 00 77 18 20 B0 12 E2 53
-B2 40 40 69 18 20 B0 12 A0 53 03 24 58 83 F3 23
-D9 3F 0C 5C A2 43 16 20 B2 40 00 50 18 20 B0 12
-A0 53 D0 23 92 D3 40 06 82 43 46 06 92 C3 40 06
-0A 43 09 43 B0 12 16 54 38 40 00 1E 92 48 C6 01
-04 20 92 48 C8 01 06 20 5C 48 C2 01 7C 80 0C 00
-08 24 5C 53 06 24 6C 52 04 24 3C 50 07 20 30 40
-9A 54 09 43 B0 12 16 54 A2 43 2C 20 19 48 0E 00
-82 49 08 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49
-0C 20 09 5A 58 48 0D 00 82 48 12 20 09 88 09 88
-82 49 10 20 30 41 82 43 32 20 30 40 56 41 92 4B
-0E 00 22 20 92 4B 10 00 24 20 5A 42 23 20 58 42
-22 20 59 42 24 20 89 10 0A D9 88 10 08 58 0A 6A
-88 10 08 58 30 41 1A 52 08 20 09 43 FC 3E 92 42
-22 20 D0 04 92 42 24 20 D2 04 92 42 12 20 C8 04
-92 42 E4 04 1A 20 92 42 E6 04 1C 20 92 52 10 20
-1A 20 82 63 1C 20 30 41 92 4B 0E 00 22 20 92 4B
-10 00 24 20 B0 12 1E 56 5A 4B 03 00 82 5A 1A 20
-82 63 1C 20 30 41 3C 42 3B 40 38 20 09 43 CB 93
-02 00 10 24 9B 92 24 20 0C 00 04 20 9B 92 22 20
-0A 00 A3 25 09 4B 3B 50 1C 00 3B 90 18 21 EF 23
-0C 5C 9B 3D 0C 43 82 4B 32 20 8B 49 00 00 09 93
-0A 24 99 52 C6 1D 16 00 4A 93 05 34 C9 93 02 00
-02 34 5A 59 02 00 CB 4A 02 00 CB 43 03 00 9B 42
-1A 20 04 00 9B 42 1C 20 06 00 18 42 30 20 8B 48
-08 00 9B 48 1A 1E 0A 00 9B 48 14 1E 0C 00 9B 48
-1A 1E 0E 00 9B 48 14 1E 10 00 9B 48 1C 1E 12 00
-9B 48 1E 1E 14 00 82 43 1E 20 6A 93 1A 24 A4 37
-8B 43 16 00 7A 93 02 24 07 38 35 3C B2 40 1C 21
-A0 40 B2 40 82 43 C0 42 9B 42 C2 1D 18 00 9B 82
-C6 1D 18 00 9B 42 C4 1D 1A 00 9B 52 C6 1D 1A 00
-22 3C 30 41 1B 42 32 20 82 43 1E 20 B2 90 00 02
-20 20 3F 20 BB 80 00 02 12 00 8B 73 14 00 DB 53
-03 00 DB 92 12 20 03 00 0E 28 CB 43 03 00 B0 12
-EE 55 B0 12 16 56 8B 43 10 00 9B 48 00 1E 0E 00
-9B 48 02 1E 10 00 B2 40 00 02 20 20 8B 93 14 00
-0B 20 92 9B 12 00 1E 20 1C 2C BB 90 00 02 12 00
-03 2C 92 4B 12 00 20 20 B0 12 48 56 1A 42 1A 20
-19 42 1C 20 38 3E CB 43 02 00 2B 4B 82 4B 32 20
-0B 93 06 24 92 4B 16 00 1E 20 B0 12 76 57 22 C3
-30 41 1B 42 32 20 0B 93 FB 27 EB 92 02 00 04 20
-B0 12 34 5B B0 12 24 5C CB 93 02 00 E4 37 1E 4B
-18 00 9F 4B 1A 00 00 00 31 50 06 00 3D 41 B0 12
-A6 57 02 24 30 40 78 43 B2 40 3C 1D A0 40 B2 40
-C2 42 C0 42 30 40 5E 43 09 93 07 24 F8 90 20 00
-00 1E 03 20 18 53 19 83 F9 23 30 41 62 4C 0B 52
-45 41 44 22 5A 43 20 3C CA 4A 09 44 45 4C 22 00
-6A 43 1A 3C 90 49 0D 57 52 49 54 45 22 00 6A 42
-13 3C 78 49 0F 41 50 50 45 4E 44 22 7A 42 0C 3C
-74 4B 0A 43 4C 4F 53 45 B0 12 C2 57 30 4D D8 48
-0B 4C 4F 41 44 22 7A 43 2F 83 8F 4E 00 00 0E 4A
-82 93 BC 1D 0B 24 0D 12 84 12 0A 40 0A 40 C6 48
-C6 48 46 45 0A 40 9C 58 C6 48 D8 45 0D 12 84 12
-0A 40 22 00 5C 46 16 49 9A 58 3D 41 36 4F 0E 56
-82 4E 36 20 A2 43 22 20 82 43 24 20 1C 43 0E 96
-8C 24 F6 90 3A 00 01 00 01 20 26 53 F6 90 5C 00
-00 00 03 20 16 53 0E 96 66 24 82 46 34 20 B0 12
-1E 56 15 42 12 20 B0 12 9C 57 2C 43 0A 43 08 4A
-58 0E 08 58 82 48 30 20 C8 93 00 1E 60 24 39 42
-F8 96 00 1E 04 20 18 53 19 83 FA 23 16 53 F6 90
-2E 00 FF FF 19 24 39 50 03 00 B0 12 08 58 06 20
-F6 90 5C 00 FF FF 29 24 0E 96 27 28 16 42 34 20
-1A 53 3A 90 10 00 DB 23 92 53 1A 20 82 63 1C 20
-15 83 D1 23 2C 42 49 3C F6 90 2E 00 FE FF EE 27
-B0 12 08 58 EB 23 39 40 03 00 F8 96 00 1E 04 20
-18 53 19 83 FA 23 09 3C 0E 96 E0 2F F6 90 5C 00
-FF FF DC 23 B0 12 08 58 D9 23 18 42 30 20 92 48
-1A 1E 22 20 92 48 14 1E 24 20 F8 B0 10 00 0B 1E
-13 24 82 93 24 20 05 20 82 93 22 20 02 20 A2 43
-22 20 0E 96 9A 23 92 42 22 20 2C 20 92 42 24 20
-2E 20 8F 43 00 00 03 3C 2A 4F B0 12 66 56 35 40
-B6 40 36 40 C4 40 3A 4F 3E 4F 0A 93 04 24 7A 93
-39 20 0C 93 02 20 30 40 78 43 0D 12 84 12 5E 43
-1E 40 0B 3C 20 4F 70 65 6E 45 72 72 6F 72 B2 40
-B0 54 E2 B2 60 02 02 24 30 40 80 41 92 12 3E 18
-3F 40 7E 1C 8F 43 00 00 0D 12 84 12 1E 40 0F 4C
-4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22 B2 40
-46 49 1E 58 08 42 4F 4F 54 00 B2 40 E2 59 B2 42
-30 4D 16 47 0C 4E 4F 42 4F 4F 54 00 B2 40 80 41
-B2 42 30 4D 1A 93 89 20 0C 93 C7 23 30 4D 14 5A
-08 52 45 41 44 00 2F 83 8F 4E 00 00 1E 42 32 20
-B0 12 34 57 1E 82 32 20 30 4D 08 4A 1A 52 08 20
-B0 12 6A 5A 0A 48 1A 52 0C 20 09 43 30 40 5C 54
-3C 42 0A 12 2A 41 82 9A 0A 20 2B 25 B0 12 16 56
-88 93 02 1E 03 20 88 93 00 1E 08 24 28 52 38 90
-00 02 F6 2B 91 53 00 00 08 43 EC 3F A2 41 26 20
-82 48 28 20 0C 43 B8 43 00 1E 6A 41 B8 40 FF 0F
-02 1E 08 11 8A 10 08 5A 5A 41 01 00 0A 11 08 10
-82 4A 24 20 82 48 22 20 2A 41 B0 12 5A 5A 3A 41
-30 41 90 4B 0A 00 4C C5 90 4B 0C 00 48 C5 B0 12
-FA 55 82 4A 26 20 82 48 28 20 0A 12 B0 12 16 56
+82 43 BC 1D 30 40 98 4C 8F 93 02 00 02 20 2F 52
+BF 3F 28 43 B0 12 46 41 B0 12 D0 40 F8 44 AC 40
+42 41 58 43 1E 40 05 1B 5B 37 6D 40 E2 43 0A 40
+02 18 1A 45 46 46 E2 43 1E 40 04 1B 5B 30 6D 00
+E2 43 2E 49 48 43 A2 B3 EC 06 FD 27 C2 48 CE 06
+30 41 B2 D0 C0 07 C0 06 18 42 02 18 08 11 38 D0
+00 04 82 48 D4 06 F2 D0 03 00 6A 02 92 C3 C0 06
+A2 D2 EA 06 92 C3 30 01 30 41 92 12 3E 18 84 12
+58 43 1E 40 07 0D 0A 1B 5B 37 6D 40 E2 43 0A 40
+02 18 1A 45 46 46 0A 40 23 00 3C 43 46 46 1E 40
+19 46 61 73 74 46 6F 72 74 68 20 A9 4A 2E 4D 2E
+54 68 6F 6F 72 65 6E 73 2C 20 E2 43 0A 40 40 FF
+32 40 0E 45 12 46 1E 40 0A 62 79 74 65 73 20 66
+72 65 65 00 B2 40 36 41 00 00 06 53 59 53 0E 93
+07 38 02 24 1E B3 04 28 30 12 7A 41 01 12 70 3F
+82 4E 08 18 92 12 3A 18 F2 B0 40 00 40 02 02 20
+B2 43 08 18 B2 40 04 A5 20 01 B2 D0 03 00 04 01
+B2 D0 10 00 00 01 B2 40 80 5A 5C 01 31 40 E0 1C
+3F 40 80 1C B2 D3 06 02 B2 40 FC FF 02 02 B2 43
+26 02 B2 D3 22 02 B2 43 42 02 B2 D3 46 02 B2 43
+62 02 B2 D3 66 02 F2 43 26 03 F2 D3 22 03 F2 40
+A5 00 61 01 82 43 62 01 82 43 66 01 B2 40 33 00
+64 01 D2 43 61 01 39 40 40 00 18 42 00 18 18 83
+FE 23 19 83 FA 23 F2 D0 10 00 2A 03 F2 40 A5 00
+A1 04 F2 C0 40 00 A2 04 B2 42 B0 01 39 40 00 10
+29 83 89 43 00 1C FC 23 1E 42 08 18 82 43 08 18
+3E F3 02 20 1E 42 9E 01 B0 12 D0 40 7A 41 00 00
+0C 41 43 43 45 50 54 00 30 40 BC 42 0A 4E 2E 4F
+0A 5E 3B 40 0A 00 3C 40 20 00 3D 15 99 3E 21 52
+A2 C2 EC 06 B2 B0 10 00 C0 06 92 22 3A 17 92 B3
+EC 06 FD 27 58 42 CC 06 48 9B 0E 24 48 9C 06 2C
+78 92 F5 23 2E 9F F3 27 1E 83 F1 3F 0E 9A EF 2F
+CE 48 00 00 1E 53 EB 3F 3E 8F 08 4C 1B 3C 00 00
+06 4B 45 59 30 40 18 43 58 43 B0 12 46 41 2F 83
+8F 4E 00 00 92 B3 EC 06 FD 27 1E 42 CC 06 B0 12
+44 41 30 4D 00 00 08 45 4D 49 54 00 30 40 40 43
+08 4E 3E 4F A2 B3 EC 06 FD 27 C2 48 CE 06 30 4D
+36 43 08 45 43 48 4F 00 B2 40 C2 48 4A 43 38 40
+05 00 B0 12 46 41 30 4D 00 00 0C 4E 4F 45 43 48
+4F 00 B2 40 30 4D 4A 43 28 42 F3 3F 0D 12 3D 40
+9C 43 1B 42 32 20 9B 42 1E 20 16 00 3A 4F 09 4E
+0E 43 1C 42 1E 20 1B 42 20 20 02 3C 9E 43 2D 83
+0C 9B 16 2C 58 4C 00 1E 1C 53 78 90 20 00 09 2C
+78 90 0A 00 F5 23 82 4C 1E 20 3D 41 3C 40 20 00
+A4 3F 09 9E BF 27 CA 48 00 00 1A 53 1E 53 BA 3F
+1A 15 B0 12 3E 57 19 17 DC 3F 00 00 08 54 59 50
+45 00 0D 12 3D 40 F2 43 29 4F 8F 4E 00 00 7E 49
+A5 3F F4 43 2D 83 2F 83 5E 83 F7 23 3D 41 2F 53
+3E 4F 30 4D 86 12 20 00 0C 4E 38 4F 3C 9F 39 4F
+3E 4F 4F 22 F9 98 00 00 4C 22 19 53 1C 83 FA 23
+2D 53 30 4D 2F 53 3E 4F 1E 83 43 22 9B 24 10 43
+0D 5B 45 4C 53 45 5D 00 0D 12 84 12 0A 40 00 00
+12 45 04 44 56 46 10 49 B0 40 80 44 14 40 06 5B
+54 48 45 4E 5D 00 08 44 5E 44 24 44 42 44 14 40
+06 5B 45 4C 53 45 5D 00 08 44 70 44 24 44 40 44
+1E 40 04 5B 49 46 5D 00 08 44 42 44 B2 40 40 44
+1E 40 05 0D 6B 6F 20 0A E2 43 9A 40 84 40 B2 40
+42 44 30 44 0D 5B 54 48 45 4E 5D 00 30 4D 94 44
+09 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D A0 44
+13 5B 44 45 46 49 4E 45 44 5D 0D 12 84 12 04 44
+56 46 BE 46 62 48 D2 45 B0 44 17 5B 55 4E 44 45
+46 49 4E 45 44 5D 0D 12 84 12 04 44 56 46 BE 46
+E2 44 3D 41 2F 53 1E 83 0E 7E 30 4D 3F 12 2F 83
+8F 4E 00 00 3E 41 30 4D 8F 4E FE FF 2F 83 30 4D
+8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11 F7 3F 3E 8F
+3E E3 1E 53 30 4D 00 00 02 40 2E 4E 30 4D B0 42
+02 21 BE 4F 00 00 3E 4F 30 4D 0E 5E 0E 7E 3E E3
+30 4D 3E 8F 01 28 0E F3 30 4D DA 41 05 53 22 00
+82 43 C0 1D 0D 12 84 12 0A 40 1E 40 C0 48 0A 40
+22 00 56 46 56 45 B2 40 20 00 C0 1D 1A 53 1A B3
+82 6A C8 1D 3E 4F 3D 41 30 4D 6A 43 05 2E 22 00
+0D 12 84 12 40 45 0A 40 E2 43 C0 48 D2 45 00 00
+04 3C 23 00 B2 40 B2 1D B2 1D 30 4D 3C 45 02 23
+1B 42 BE 1D 2C 4F 2F 83 B0 12 46 40 BF 4F 00 00
+7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00 92 83
+B2 1D 18 42 B2 1D C8 4A 00 00 30 4D 8E 45 04 23
+53 00 0D 12 84 12 90 45 CA 45 2D 83 09 DE 09 93
+E1 23 3D 41 30 4D BE 45 04 23 3E 00 9F 42 B2 1D
+00 00 3E 40 B2 1D 2E 8F 30 4D 00 00 08 48 4F 4C
+44 00 4A 4E 3E 4F DB 3F D8 45 08 53 49 47 4E 00
+0E 93 3E 4F 7A 40 2D 00 D2 33 30 4D 52 43 04 55
+2E 00 0C 43 2F 83 8F 4E 00 00 0E 4C 1D 15 3E F3
+06 34 BF E3 00 00 3E E3 9F 53 00 00 0E 63 84 12
+84 45 04 44 F2 45 C2 45 EE 44 00 46 DC 45 E2 43
+D2 45 6C 45 02 2E 0E 93 E4 37 3C 43 E3 3F 00 00
+08 57 4F 52 44 00 3C 40 C2 1D 39 4C 38 4C 09 58
+38 5C 2A 4C 09 98 1D 24 7E 98 FC 27 18 83 1B 42
+C0 1D F8 90 27 00 00 00 04 20 E8 98 02 00 01 20
+0B 43 CA 4C 00 00 09 98 0C 24 7C 48 4E 9C 09 24
+1A 53 7C 90 61 00 F5 2B 7C 90 7B 00 F2 2F 4C 8B
+F0 3F 18 82 C4 1D 82 48 C6 1D 1E 42 C8 1D 0A 8E
+CE 4A 00 00 30 4D 00 00 08 46 49 4E 44 00 2F 83
+0C 4E 3B 40 CE 1D 3E 4B 0E 93 1E 24 58 4C 01 00
+78 F0 0F 00 08 58 0E 58 2E 53 1E 4E FE FF 0E 93
+F2 27 09 4E 78 49 48 11 68 9C F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6E 4E 1E F3 01 20 1E 83 8F 4C 00 00 30 4D 44 46
+0E 3E 4E 55 4D 42 45 52 1B 42 BE 1D 3C 4F 38 4F
+29 4F 2F 82 82 4B C0 04 6A 4C 7A 80 3A 00 03 28
+7A 80 07 00 12 28 7A 50 0A 00 0A 9B 22 C3 0D 2C
+82 49 E0 04 82 48 E2 04 19 42 E4 04 18 42 E6 04
+09 5A 08 63 1C 53 1E 83 E7 23 8F 4C 00 00 8F 48
+02 00 8F 49 04 00 30 4D 32 C0 00 02 3F 82 8F 4E
+06 00 08 43 09 43 1B 42 BE 1D 0C 4E 0E 43 1E 15
+3D 40 C8 47 7E 4C 6A 4C 7A 80 2D 00 16 24 CA 2F
+2B 43 7A 52 14 24 3B 52 6A 53 11 24 3B 40 10 00
+5A 93 0D 24 6A 92 41 20 3E 90 03 00 3E 20 FC 9C
+01 00 6C 4C 8F 4C 04 00 38 3C B1 43 02 00 1E 83
+FC 9C 00 00 E0 23 AE 27 CA 47 2F 24 2D 83 6A 4C
+7A 90 5F 00 BF 27 32 B0 00 02 27 20 32 D0 00 02
+7A 80 2E 00 B7 27 6A 53 20 20 0A 4E 09 43 8F 49
+02 00 5A 83 09 4A 09 5C 69 49 79 80 3A 00 03 28
+79 80 07 00 0C 28 79 50 0A 00 09 9B 08 2C 8F 49
+00 00 0E 4B 2C 15 B0 12 3E 40 2A 17 E8 3F 9F 4F
+04 00 02 00 AF 4F 04 00 4A 93 1D 17 06 24 32 C0
+00 02 3F 50 06 00 0E F3 30 4D 2F 53 9F 4F 02 00
+04 00 BF 4F 00 00 3E E3 09 20 3E E3 BF E3 02 00
+BF E3 00 00 9F 53 02 00 8F 63 00 00 32 B0 00 02
+01 20 2F 53 30 4D 80 45 03 5C 92 42 C2 1D C6 1D
+30 4D 0D 12 84 12 84 40 04 44 56 46 B0 40 9A 49
+BE 46 84 48 0A 4E 3E 4F 3D 40 9E 48 6D 27 3D 40
+78 48 1A E2 BC 1D 14 24 0E 12 3E 4F 30 41 A0 48
+3E 4F 3D 40 78 48 19 20 DE 53 00 00 68 4E 08 5E
+F8 40 3F 00 00 00 3D 40 76 4A 2A 3C 68 48 02 2C
+A2 53 C8 1D 1A 42 C8 1D 8A 4E FE FF 3E 4F 30 4D
+BE 48 0F 4C 49 54 45 52 41 4C 82 93 BC 1D 0D 24
+09 4E 1A 42 C8 1D A2 52 C8 1D BA 40 0A 40 00 00
+8A 49 02 00 3E 4F 32 B0 00 02 32 C0 00 02 03 24
+8A 4E 02 00 EE 3F 30 4D FA 45 0A 43 4F 55 4E 54
+2F 83 7A 4E 8F 4E 00 00 0E 4A 3E F3 30 4D 20 45
+0A 41 4C 4C 4F 54 82 5E C8 1D 3E 4F 30 4D 3F 40
+80 1C 0E 43 84 12 1E 40 02 0D 0A 00 E2 43 94 40
+72 48 00 45 2A 45 1E 40 0B 73 74 61 63 6B 20 65
+6D 70 74 79 08 41 32 40 0A 40 40 FF 32 45 1E 40
+09 46 52 41 4D 20 66 75 6C 6C 08 41 B2 40 36 49
+20 49 0D 41 42 4F 52 54 22 00 0D 12 84 12 40 45
+0A 40 08 41 C0 48 D2 45 50 46 02 27 0D 12 84 12
+04 44 56 46 BE 46 B0 40 9C 49 64 45 A8 48 CA 44
+07 5B 27 5D 0D 12 84 12 8C 49 0A 40 0A 40 C0 48
+C0 48 D2 45 A0 49 03 5B 82 43 BC 1D 30 4D 00 00
+02 5D B2 43 BC 1D 30 4D 18 45 11 50 4F 53 54 50
+4F 4E 45 00 0D 12 84 12 04 44 56 46 BE 46 B0 40
+9C 49 2A 45 AC 40 F4 49 0A 40 0A 40 C0 48 C0 48
+0A 40 C0 48 C0 48 D2 45 00 00 02 3A 30 12 4A 4A
+92 B3 C8 1D A2 63 C8 1D 0D 12 84 12 04 44 56 46
+12 4A 3D 41 5A D3 5A 53 0A 5E 19 42 CC 1D 08 4E
+5E 4E 01 00 3E F0 0F 00 0E 5E 09 5E 3E 4F E8 58
+00 00 82 48 B4 1D 82 49 B6 1D 82 4A B8 1D 82 4F
+BA 1D 2A 52 82 4A C8 1D 30 41 BA 40 0D 12 FC FF
+BA 40 84 12 FE FF B2 43 BC 1D 30 4D 82 9F BA 1D
+66 25 84 12 1E 40 0F 73 74 61 63 6B 20 6D 69 73
+6D 61 74 63 68 21 12 41 B6 49 03 3B 82 93 BC 1D
+F4 26 0D 12 84 12 0A 40 D2 45 C0 48 5C 4A B8 49
+D2 45 00 00 12 49 4D 4D 45 44 49 41 54 45 18 42
+B4 1D D8 D3 00 00 30 4D 0A 49 0C 43 52 45 41 54
+45 00 B0 12 00 4A BA 40 86 12 FC FF 8A 4A FE FF
+3A 3D DC 43 0A 44 4F 45 53 3E 1A 42 B8 1D BA 40
+85 12 00 00 8A 4D 02 00 3D 41 30 4D FA 49 0E 3A
+4E 4F 4E 41 4D 45 30 12 4A 4A 2F 83 8F 4E 00 00
+1A 42 C8 1D 1A B3 0A 63 0E 4A 39 40 12 02 08 49
+98 3F 94 4A 05 49 53 00 0D 12 82 93 BC 1D 08 20
+84 12 8C 49 16 4B 3D 41 BE 4F 02 00 3E 4F 30 4D
+84 12 A4 49 0A 40 18 4B C0 48 D2 45 AA 4A 08 43
+4F 44 45 00 B0 12 00 4A A2 82 C8 1D 61 3C EC 45
+0E 48 44 4E 43 4F 44 45 B2 40 04 4C CC 1D F2 3F
+00 00 0E 45 4E 44 43 4F 44 45 0D 12 84 12 5C 4A
+62 4B 3D 41 92 42 D0 1D CC 1D 5D 3C 2E 4B 0E 43
+4F 44 45 4E 4E 4D 30 12 38 4B B7 3F 00 00 0A 43
+4F 4C 4F 4E 1A 42 C8 1D BA 40 0D 12 00 00 BA 40
+84 12 02 00 A2 52 C8 1D B2 43 BC 1D E3 3F 00 00
+0A 4C 4F 32 48 49 A2 83 C8 1D 1A 42 C8 1D EF 3F
+40 4B 0B 48 49 32 4C 4F A2 53 C8 1D 1A 42 C8 1D
+8A 4A FE FF 82 43 BC 1D B9 3F CC 4B B2 40 DE 4B
+D0 1D 82 4E CE 1D 30 40 64 45 85 12 CA 4B CA 49
+90 58 8C 5A 9E 58 AE 5D 0E 46 B8 46 98 5C B2 4B
+04 4B DE 4A 7A 4A AC 58 E6 4C 70 5A 00 00 00 00
+85 12 CA 4B 60 53 E4 51 06 54 0C 51 68 51 B6 51
+92 52 48 54 2E 50 52 51 00 00 00 00 A0 4B 1E 4F
+00 00 BA 52 FE 4B B2 40 DE 4B CE 1D 82 43 D0 1D
+30 4D 3B 40 0A 00 BA 49 00 00 2A 53 2B 83 FB 23
+30 41 00 00 0E 52 53 54 5F 53 45 54 39 40 C8 1D
+3A 40 42 18 B0 12 32 4C 30 4D 44 4C 0E 52 53 54
+5F 52 45 54 39 40 42 18 2C 49 3A 40 C8 1D B0 12
+32 4C 1A 42 CA 1D 3B 40 10 00 09 4A 08 49 29 83
+18 48 FE FF 0C 98 FC 2B 89 48 00 00 1B 83 F6 23
+2A 4A 0A 93 F0 23 30 4D 0E 93 E4 37 39 40 10 00
+29 83 B9 43 80 FF FC 23 B9 40 0A 42 FE FF 29 83
+B9 40 F4 41 FE FF 39 90 AE FF F9 23 39 40 10 18
+B2 49 BC FF 3B 40 10 00 3A 40 3A 18 B0 12 36 4C
+82 43 4A 18 C7 3F D8 4C B2 4E 42 18 BE 12 3E 4F
+3D 41 C0 3F C0 49 0C 4D 41 52 4B 45 52 00 12 12
+C6 1D 0D 12 84 12 04 44 56 46 BE 46 AC 40 04 4D
+F8 44 98 48 06 4D 3E 4F 3D 41 B2 41 C6 1D B0 12
+00 4A BA 40 85 12 FC FF BA 40 D6 4C FE FF 28 83
+8A 48 00 00 BA 40 82 40 02 00 A2 52 C8 1D 18 42
+B4 1D 19 42 B6 1D A8 49 FE FF 89 48 00 00 30 4D
+12 12 C6 1D 84 12 56 46 BE 46 AC 40 70 4D 50 4D
+3C 4E 3C 80 87 12 0A 24 1C 53 02 20 2E 4E 06 3C
+BE 90 D6 4C 00 00 01 20 3E 52 2E 83 21 53 30 41
+68 47 AC 40 78 4D 6C 4D 7A 4D B2 41 C6 1D 30 41
+92 83 C6 1D 3E 40 28 00 0A 4E 3D 15 B0 12 40 4D
+15 20 3E 40 2B 00 B0 12 40 4D 06 20 3E 40 2D 00
+B0 12 40 4D 92 83 C6 1D 0E 12 1E 41 02 00 84 12
+56 46 68 47 AC 40 9C 49 BA 4D 3E 51 3A 17 30 41
+B0 12 80 4D 19 42 C8 1D 89 4E 00 00 A2 53 C8 1D
+3E 40 29 00 92 53 C6 1D 1A 42 C6 1D 3D 15 84 12
+56 46 68 47 AC 40 F2 4D EA 4D 3E 90 10 00 E6 2B
+7C 2D F4 4D A2 41 C6 1D E1 3F 03 20 B0 12 D8 4D
+43 3C 7A 90 23 00 24 20 B0 12 88 4D 3C 40 00 03
+0E 93 1C 24 3C 40 10 03 1E 93 18 24 3C 40 20 03
+2E 93 14 24 3C 40 20 02 2E 92 10 24 3C 40 30 02
+3E 92 0C 24 3C 40 30 03 3E 93 08 24 3C 40 30 00
+19 42 C8 1D A2 53 C8 1D 89 4E 00 00 3E 4F 30 4D
+7A 90 26 00 05 20 3C 40 10 02 B0 12 88 4D F0 3F
+7A 90 40 00 14 20 3C 40 20 00 B0 12 D4 4D 0C 20
+3C D0 10 00 3E 40 2B 00 B0 12 D8 4D 92 92 C2 1D
+C6 1D 02 24 92 53 C6 1D 8E 10 0C 5E DF 3F 3C D0
+10 00 B0 12 C0 4D F2 3F 03 20 B0 12 D8 4D F5 3F
+7A 90 26 00 03 20 3C D0 82 00 D7 3F 3C D0 80 00
+B0 12 C0 4D EA 3F 0C 43 1B 42 C8 1D A2 53 C8 1D
+3A 40 20 00 19 42 C6 1D 19 52 C4 1D 7A 99 FE 27
+5A 49 FF FF 19 82 C4 1D 82 49 C6 1D 7A 90 52 00
+30 4D 00 00 08 52 45 54 49 00 0D 12 84 12 0A 40
+00 13 C0 48 D2 45 0A 40 2C 00 B6 4E FA 4D 04 44
+C0 4E 98 4E 06 4F 3D 41 2C DE 8B 4C 00 00 9E 3F
+00 00 06 4D 4F 56 85 12 F6 4E 00 40 12 4F 0A 4D
+4F 56 2E 42 85 12 F6 4E 40 40 00 00 06 41 44 44
+85 12 F6 4E 00 50 2C 4F 0A 41 44 44 2E 42 85 12
+F6 4E 40 50 38 4F 08 41 44 44 43 00 85 12 F6 4E
+00 60 46 4F 0C 41 44 44 43 2E 42 00 85 12 F6 4E
+40 60 7E 4B 08 53 55 42 43 00 85 12 F6 4E 00 70
+64 4F 0C 53 55 42 43 2E 42 00 85 12 F6 4E 40 70
+72 4F 06 53 55 42 85 12 F6 4E 00 80 82 4F 0A 53
+55 42 2E 42 85 12 F6 4E 40 80 8E 4F 06 43 4D 50
+85 12 F6 4E 00 90 9C 4F 0A 43 4D 50 2E 42 85 12
+F6 4E 40 90 00 00 08 44 41 44 44 00 85 12 F6 4E
+00 A0 B6 4F 0C 44 41 44 44 2E 42 00 85 12 F6 4E
+40 A0 E4 4E 06 42 49 54 85 12 F6 4E 00 B0 D4 4F
+0A 42 49 54 2E 42 85 12 F6 4E 40 B0 E0 4F 06 42
+49 43 85 12 F6 4E 00 C0 EE 4F 0A 42 49 43 2E 42
+85 12 F6 4E 40 C0 FA 4F 06 42 49 53 85 12 F6 4E
+00 D0 08 50 0A 42 49 53 2E 42 85 12 F6 4E 40 D0
+00 00 06 58 4F 52 85 12 F6 4E 00 E0 22 50 0A 58
+4F 52 2E 42 85 12 F6 4E 40 E0 54 4F 06 41 4E 44
+85 12 F6 4E 00 F0 3C 50 0A 41 4E 44 2E 42 85 12
+F6 4E 40 F0 04 44 B6 4E FA 4D 5C 50 0A 4C 3C F0
+70 00 8A 10 3A F0 0F 00 0C DA 4D 3F 14 50 06 52
+52 43 85 12 54 50 00 10 6E 50 0A 52 52 43 2E 42
+85 12 54 50 40 10 A8 4F 08 53 57 50 42 00 85 12
+54 50 80 10 7A 50 06 52 52 41 85 12 54 50 00 11
+96 50 0A 52 52 41 2E 42 85 12 54 50 40 11 88 50
+06 53 58 54 85 12 54 50 80 11 00 00 08 50 55 53
+48 00 85 12 54 50 00 12 BC 50 0C 50 55 53 48 2E
+42 00 85 12 54 50 40 12 B0 50 08 43 41 4C 4C 00
+85 12 54 50 80 12 1A 53 0E 4A 84 12 46 46 1E 40
+0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 12 41
+DA 50 06 53 3E 3D 86 12 00 38 02 51 04 53 3C 00
+86 12 00 34 CA 50 06 30 3E 3D 86 12 00 30 16 51
+04 30 3C 00 86 12 00 30 52 4B 04 55 3C 00 86 12
+00 2C 2A 51 06 55 3E 3D 86 12 00 28 20 51 06 30
+3C 3E 86 12 00 24 3E 51 04 30 3D 00 86 12 00 20
+00 00 04 49 46 00 1A 42 C8 1D 8A 4E 00 00 A2 53
+C8 1D 0E 4A 30 4D C4 4F 08 54 48 45 4E 00 1A 42
+C8 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90
+00 02 B2 2F 88 DA 00 00 30 4D 34 51 08 45 4C 53
+45 00 1A 42 C8 1D BA 40 00 3C 00 00 A2 53 C8 1D
+2F 83 8F 4A 00 00 E3 3F A2 50 0A 42 45 47 49 4E
+30 40 32 40 8C 51 0A 55 4E 54 49 4C 3A 4F 08 4E
+3E 4F 19 42 C8 1D 2A 83 0A 89 0A 11 3A 90 00 FE
+8B 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C8 1D
+30 4D 48 50 0A 41 47 41 49 4E 0A 4E 38 40 00 3C
+E7 3F 00 00 0A 57 48 49 4C 45 0D 12 84 12 56 51
+EC 44 D2 45 AA 51 0C 52 45 50 45 41 54 00 0D 12
+84 12 EA 51 6E 51 D2 45 1A 52 3D 41 08 4E 3E 4F
+2A 48 B2 92 C6 1D CB 2F 98 42 C8 1D 00 00 30 4D
+06 52 06 42 57 31 85 12 18 52 00 00 32 52 06 42
+57 32 85 12 18 52 00 00 3E 52 06 42 57 33 85 12
+18 52 00 00 56 52 3D 41 1A 42 C8 1D 28 4E 8E 43
+00 00 B2 92 C6 1D 86 2B BA 4F 00 00 A2 53 C8 1D
+8E 4A 00 00 3E 4F 30 4D 00 00 06 46 57 31 85 12
+54 52 00 00 7A 52 06 46 57 32 85 12 54 52 00 00
+86 52 06 46 57 33 85 12 54 52 00 00 F4 51 08 47
+4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C 0D 12
+84 12 8C 49 98 48 D2 45 00 00 0A 3F 47 4F 54 4F
+3E 90 00 30 F4 27 3E E0 00 04 3E B0 00 10 EF 27
+3E E0 00 08 EC 3F C0 4E 0A 40 2C 00 56 46 68 47
+AC 40 9C 49 04 44 B6 4E 98 4E EC 52 0A 4E 3E 4F
+1A 83 F9 32 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
+0C 8A 08 8A 38 90 10 00 EE 2E 5A 0E AD 3E 2A 92
+EA 2E 8A 10 5A 06 A8 3E 4A 52 08 52 52 43 4D 00
+85 12 D6 52 50 00 1A 53 08 52 52 41 4D 00 85 12
+D6 52 50 01 28 53 08 52 4C 41 4D 00 85 12 D6 52
+50 02 36 53 08 52 52 55 4D 00 85 12 D6 52 50 03
+48 51 0A 50 55 53 48 4D 85 12 D6 52 00 15 52 53
+08 50 4F 50 4D 00 85 12 D6 52 00 17 D2 C3 23 02
+E2 B2 60 02 02 24 30 40 F4 41 1A 52 04 20 19 62
+06 20 92 43 14 20 C2 4A 15 20 8A 10 C2 4A 16 20
+C2 49 17 20 89 10 C2 49 18 20 B0 12 E0 53 5A 53
+FC 23 39 40 05 00 D2 49 14 20 4E 06 82 93 46 06
+05 24 92 B3 6C 06 FD 27 C2 93 4C 06 59 83 F3 2F
+19 83 0B 30 F2 43 4E 06 82 93 46 06 03 24 92 B3
+6C 06 FD 27 5A 92 4C 06 F3 23 30 41 1A 43 E1 3F
+19 43 3A 43 8A 10 C2 4A 4E 06 82 93 46 06 05 24
+92 B3 6C 06 FD 27 C2 93 4C 06 19 83 F3 23 5A 42
+4C 06 30 41 44 53 12 52 5F 53 45 43 54 5F 57 58
+1C D3 F2 40 51 00 19 20 B0 12 6C 53 36 20 B0 12
+E0 53 6A 53 04 24 FB 23 D9 42 4C 06 FF 1D F2 43
+4E 06 03 43 19 53 39 90 03 02 F6 23 3C C0 03 00
+D2 D3 23 02 30 41 9E 52 12 57 5F 53 45 43 54 5F
+57 58 2C D3 F0 40 58 00 C1 CB B0 12 6C 53 15 20
+3A 40 FE FF 29 43 B0 12 E4 53 D2 49 00 1E 4E 06
+03 43 19 53 39 90 00 02 F8 23 39 40 03 00 B0 12
+E2 53 7A C0 E1 00 6A 82 D9 27 8C 10 1C 52 4C 06
+D2 D3 23 02 84 12 58 43 1E 40 0B 3C 20 53 44 20
+45 72 72 6F 72 21 A8 54 2F 83 8F 4E 00 00 B2 40
+10 00 BE 1D 0E 4C 84 12 12 46 12 41 82 43 32 20
+30 40 50 41 B0 12 52 41 E2 B2 60 02 8A 20 B2 40
+81 A9 40 06 B2 40 03 00 46 06 D2 D3 25 02 B2 D0
+C0 04 0C 02 92 C3 40 06 39 40 6E 01 29 83 89 43
+02 20 FC 23 39 42 B0 12 E2 53 D2 C3 23 02 2C 42
+B2 40 95 00 14 20 B2 40 00 40 18 20 B0 12 DC 53
+02 24 30 40 8A 54 B0 12 E0 53 7A 93 FC 23 B2 40
+87 AA 14 20 92 43 16 20 B2 40 00 48 18 20 B0 12
+DC 53 29 42 B0 12 E2 53 92 43 14 20 82 43 16 20
+78 43 3C 42 B2 40 00 77 18 20 B0 12 DC 53 B2 40
+40 69 18 20 B0 12 9A 53 03 24 58 83 F3 23 D9 3F
+0C 5C A2 43 16 20 B2 40 00 50 18 20 B0 12 9A 53
+D0 23 92 D3 40 06 82 43 46 06 92 C3 40 06 0A 43
+09 43 B0 12 10 54 38 40 00 1E 92 48 C6 01 04 20
+92 48 C8 01 06 20 5C 48 C2 01 7C 80 0C 00 08 24
+5C 53 06 24 6C 52 04 24 3C 50 07 20 30 40 90 54
+09 43 B0 12 10 54 A2 43 2C 20 19 48 0E 00 82 49
+08 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49 0C 20
+09 5A 58 48 0D 00 82 48 12 20 09 88 09 88 82 49
+10 20 30 41 1A 52 08 20 09 43 12 3F 9B 52 1E 20
+12 00 8B 63 14 00 1A 42 1A 20 19 42 1C 20 29 3F
+92 4B 0E 00 22 20 92 4B 10 00 24 20 5A 42 23 20
+58 42 22 20 59 42 24 20 89 10 0A D9 88 10 08 58
+0A 6A 88 10 08 58 30 41 92 42 22 20 D0 04 92 42
+24 20 D2 04 92 42 12 20 C8 04 92 42 E4 04 1A 20
+92 42 E6 04 1C 20 92 52 10 20 1A 20 82 63 1C 20
+30 41 92 4B 0E 00 22 20 92 4B 10 00 24 20 B0 12
+28 56 5A 4B 03 00 82 5A 1A 20 82 63 1C 20 30 41
+3C 42 3B 40 38 20 09 43 CB 93 02 00 10 24 9B 92
+24 20 0C 00 04 20 9B 92 22 20 0A 00 C4 25 09 4B
+3B 50 1C 00 3B 90 18 21 EF 23 0C 5C BC 3D 0C 43
+82 4B 32 20 8B 49 00 00 09 93 0A 24 99 52 C6 1D
+16 00 4A 93 05 34 C9 93 02 00 02 34 5A 59 02 00
+CB 4A 02 00 CB 43 03 00 9B 42 1A 20 04 00 9B 42
+1C 20 06 00 18 42 30 20 8B 48 08 00 9B 48 1A 1E
+0A 00 9B 48 14 1E 0C 00 9B 48 1A 1E 0E 00 9B 48
+14 1E 10 00 9B 48 1C 1E 12 00 9B 48 1E 1E 14 00
+82 43 1E 20 6A 93 1A 24 A4 37 8B 43 16 00 7A 93
+02 24 07 38 35 3C B2 40 1C 21 A0 40 B2 40 7C 43
+BA 42 9B 42 C2 1D 18 00 9B 82 C6 1D 18 00 9B 42
+C4 1D 1A 00 9B 52 C6 1D 1A 00 22 3C 30 41 1B 42
+32 20 82 43 1E 20 B2 90 00 02 20 20 3F 20 BB 80
+00 02 12 00 8B 73 14 00 DB 53 03 00 DB 92 12 20
+03 00 0E 28 CB 43 03 00 B0 12 00 56 B0 12 E4 55
+8B 43 10 00 9B 48 00 1E 0E 00 9B 48 02 1E 10 00
+B2 40 00 02 20 20 8B 93 14 00 0B 20 92 9B 12 00
+1E 20 1C 2C BB 90 00 02 12 00 03 2C 92 4B 12 00
+20 20 B0 12 52 56 1A 42 1A 20 19 42 1C 20 30 3E
+CB 43 02 00 2B 4B 82 4B 32 20 0B 93 06 24 92 4B
+16 00 1E 20 B0 12 80 57 22 C3 30 41 1B 42 32 20
+0B 93 FB 27 EB 92 02 00 1E 38 B0 12 EC 55 1A 4B
+04 00 19 4B 06 00 B0 12 10 54 18 4B 08 00 B0 12
+7C 5B 88 49 12 1E 88 4A 16 1E 88 49 18 1E 98 4B
+12 00 1C 1E 98 4B 14 00 1E 1E 1A 4B 04 00 19 4B
+06 00 B0 12 52 54 CB 93 02 00 CA 37 1E 4B 18 00
+9F 4B 1A 00 00 00 31 50 06 00 3D 41 B0 12 B0 57
+02 24 30 40 72 43 B2 40 3C 1D A0 40 B2 40 BC 42
+BA 42 30 40 58 43 09 93 07 24 F8 90 20 00 00 1E
+03 20 18 53 19 83 F9 23 30 41 92 4B 0A 00 22 20
+92 4B 0C 00 24 20 D2 3E 5C 4C 0B 52 45 41 44 22
+5A 43 20 3C C4 4A 09 44 45 4C 22 00 6A 43 1A 3C
+8A 49 0D 57 52 49 54 45 22 00 6A 42 13 3C 72 49
+0F 41 50 50 45 4E 44 22 7A 42 0C 3C 6E 4B 0A 43
+4C 4F 53 45 B0 12 CC 57 30 4D D2 48 0B 4C 4F 41
+44 22 7A 43 2F 83 8F 4E 00 00 0E 4A 82 93 BC 1D
+0B 24 0D 12 84 12 0A 40 0A 40 C0 48 C0 48 40 45
+0A 40 E8 58 C0 48 D2 45 0D 12 84 12 0A 40 22 00
+56 46 10 49 E6 58 3D 41 36 4F 0E 56 82 4E 36 20
+A2 43 22 20 82 43 24 20 1C 43 0E 96 8C 24 F6 90
+3A 00 01 00 01 20 26 53 F6 90 5C 00 00 00 03 20
+16 53 0E 96 66 24 82 46 34 20 B0 12 28 56 15 42
+12 20 B0 12 A6 57 2C 43 0A 43 08 4A 58 0E 08 58
+82 48 30 20 C8 93 00 1E 60 24 39 42 F8 96 00 1E
+04 20 18 53 19 83 FA 23 16 53 F6 90 2E 00 FF FF
+19 24 39 50 03 00 B0 12 46 58 06 20 F6 90 5C 00
+FF FF 29 24 0E 96 27 28 16 42 34 20 1A 53 3A 90
+10 00 DB 23 92 53 1A 20 82 63 1C 20 15 83 D1 23
+2C 42 49 3C F6 90 2E 00 FE FF EE 27 B0 12 46 58
+EB 23 39 40 03 00 F8 96 00 1E 04 20 18 53 19 83
+FA 23 09 3C 0E 96 E0 2F F6 90 5C 00 FF FF DC 23
+B0 12 46 58 D9 23 18 42 30 20 92 48 1A 1E 22 20
+92 48 14 1E 24 20 F8 B0 10 00 0B 1E 13 24 82 93
+24 20 05 20 82 93 22 20 02 20 A2 43 22 20 0E 96
+9A 23 92 42 22 20 2C 20 92 42 24 20 2E 20 8F 43
+00 00 03 3C 2A 4F B0 12 70 56 35 40 B6 40 36 40
+C4 40 3A 4F 3E 4F 0A 93 04 24 7A 93 39 20 0C 93
+02 20 30 40 72 43 0D 12 84 12 58 43 1E 40 0B 3C
+20 4F 70 65 6E 45 72 72 6F 72 B2 40 A6 54 92 12
+3E 18 E2 B2 60 02 02 24 30 40 7E 41 3F 40 7E 1C
+8F 43 00 00 0D 12 84 12 1E 40 0F 4C 4F 41 44 22
+20 42 4F 4F 54 2E 34 54 48 22 B2 40 40 49 6A 58
+08 42 4F 4F 54 00 B2 40 2E 5A AC 42 30 4D 10 47
+0C 4E 4F 42 4F 4F 54 00 B2 40 7A 41 AC 42 30 4D
+1A 93 6E 20 0C 93 C7 23 30 4D 60 5A 08 52 45 41
+44 00 2F 83 8F 4E 00 00 1E 42 32 20 B0 12 3E 57
+1E 82 32 20 30 4D B0 12 5A 58 0A 12 B0 12 E4 55
1A 48 00 1E 88 43 00 1E 19 48 02 1E 88 43 02 1E
39 F0 FF 0F 39 90 FF 0F 02 20 3A 93 10 24 82 4A
-22 20 82 49 24 20 B0 12 FA 55 2A 91 E9 27 09 4A
-2A 41 81 49 00 00 B0 12 5A 5A 2A 41 DF 3F 3A 41
-30 40 5A 5A 9B 52 1E 20 12 00 8B 63 14 00 1A 42
-1A 20 19 42 1C 20 30 40 5C 54 2A 93 BC 20 0C 93
-09 20 F8 40 E5 00 00 1E B0 12 3E 5B B0 12 D2 5A
-B0 12 C2 57 30 4D F2 B0 40 00 A2 04 29 20 F2 B0
-10 00 A2 04 FC 27 5A 42 B0 04 4A 11 59 42 B4 04
-F2 40 20 00 C0 04 D2 42 B1 04 C8 04 1A 52 E4 04
-D2 42 B5 04 C8 04 19 52 E4 04 D2 42 B2 04 C0 04
-B2 40 00 08 C8 04 1A 52 E4 04 92 42 B6 04 C0 04
-B2 80 BC 07 C0 04 B2 40 00 02 C8 04 19 52 E4 04
-30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E 3F 5B 5C 5D
-7C 2E 29 92 06 28 39 80 03 00 B0 12 12 5C 39 40
-03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28 0D 12
-3D 40 0F 00 3C 40 C2 5B 7A 9C F3 27 1D 83 FC 23
-3D 41 6A 9C E6 27 3A 80 21 00 EB 3B 18 53 19 83
-E8 23 09 93 06 24 F8 40 20 00 00 1E 18 53 19 83
-FA 23 30 41 1A 4B 04 00 19 4B 06 00 B0 12 16 54
-18 4B 08 00 B0 12 66 5B 88 49 12 1E 88 4A 16 1E
-88 49 18 1E 98 4B 12 00 1C 1E 98 4B 14 00 1E 1E
-1A 4B 04 00 19 4B 06 00 30 40 5C 54 B2 40 00 02
-1E 20 1B 42 32 20 B0 12 34 5B 82 43 1E 20 DB 53
-03 00 DB 92 12 20 03 00 1D 28 B0 12 EE 55 08 12
-0A 12 B0 12 70 5A 2A 91 03 24 2A 41 B0 12 16 56
-3A 41 38 41 98 42 22 20 00 1E 98 42 24 20 02 1E
-B0 12 5A 5A AB 42 02 00 9B 42 22 20 0E 00 9B 42
-24 20 10 00 30 40 54 56 36 58 0A 57 52 49 54 45
-B0 12 5C 5C 30 4D 2A 92 54 20 2C 93 0E 24 0C 93
-3D 24 0D 12 84 12 1E 40 0C 3C 20 57 72 69 74 65
-45 72 72 6F 72 00 B2 40 B0 54 0A 43 08 43 B0 12
-70 5A B0 12 9C 57 18 42 30 20 F8 40 20 00 0B 1E
-B0 12 66 5B 88 43 0C 1E 88 4A 0E 1E 88 49 10 1E
-98 42 24 20 14 1E 98 42 22 20 1A 1E 88 43 1C 1E
-88 43 1E 1E 2C 42 1B 42 34 20 82 9B 36 20 D1 27
-FB 90 2E 00 00 00 CD 27 39 40 0B 00 B0 12 E2 5B
-B0 12 3E 5B 2A 42 B0 12 66 56 30 4D B0 12 D2 5A
-8B 43 12 00 8B 43 14 00 90 4B 0A 00 C6 C2 90 4B
-0C 00 C2 C2 B0 12 FA 55 B0 12 70 5A B0 12 A4 5C
-30 4D 2C 93 BA 27 0C 93 AC 23 EB 42 02 00 58 4B
-13 00 59 4B 14 00 89 10 09 58 58 4B 15 00 5B 42
-12 20 0A 43 3C 42 08 11 09 10 4A 10 1C 83 0B 11
-FA 2B 0A 11 1C 83 FD 37 1B 42 32 20 19 5B 0A 00
-18 6B 0C 00 8B 49 0E 00 8B 48 10 00 CB 4A 03 00
-B0 12 98 57 1A 4B 12 00 BB C0 FF 01 12 00 3A F0
-FF 01 82 4A 1E 20 30 4D 2A 58 10 54 45 52 4D 32
-53 44 22 00 0D 12 84 12 3E 58 EC 5D 0A 43 7D 40
-0A 00 B0 12 44 41 3A 90 00 02 03 28 B0 12 5C 5C
-0A 43 92 B3 EC 06 FD 27 59 42 CC 06 69 92 11 24
-CA 49 00 1E 1A 53 49 9D EE 23 A2 B3 EC 06 FD 27
-F2 40 0D 00 CE 06 A2 B3 EC 06 FD 27 C2 4D CE 06
-E0 3F C2 9D CC 06 FD 23 82 4A 1E 20 B0 12 C2 57
-3D 41 30 4D
+22 20 82 49 24 20 B0 12 0C 56 2A 91 E9 27 09 4A
+2A 41 81 49 00 00 B0 12 F0 5A 2A 41 DF 3F 3A 41
+08 4A 1A 52 08 20 B0 12 00 5B 0A 48 1A 52 0C 20
+09 43 30 40 52 54 3C 42 0A 12 2A 41 82 9A 0A 20
+CF 24 B0 12 E4 55 88 93 02 1E 03 20 88 93 00 1E
+08 24 28 52 38 90 00 02 F6 2B 91 53 00 00 08 43
+EC 3F 0C 43 B8 43 00 1E 6A 41 B8 40 FF 0F 02 1E
+08 11 8A 10 08 5A 5A 41 01 00 0A 11 08 10 82 4A
+24 20 82 48 22 20 2A 41 B0 12 F0 5A 3A 41 30 41
+2A 93 A0 20 0C 93 09 20 F8 40 E5 00 00 1E B0 12
+F6 55 B0 12 A6 5A B0 12 CC 57 30 4D F2 B0 40 00
+A2 04 29 20 F2 B0 10 00 A2 04 FC 27 5A 42 B0 04
+4A 11 59 42 B4 04 F2 40 20 00 C0 04 D2 42 B1 04
+C8 04 1A 52 E4 04 D2 42 B5 04 C8 04 19 52 E4 04
+D2 42 B2 04 C0 04 B2 40 00 08 C8 04 1A 52 E4 04
+92 42 B6 04 C0 04 B2 80 BC 07 C0 04 B2 40 00 02
+C8 04 19 52 E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C
+3D 3E 3F 5B 5C 5D 7C 2E 29 92 06 28 39 80 03 00
+B0 12 28 5C 39 40 03 00 7A 4B C8 4A 00 1E 82 9B
+36 20 12 28 0D 12 3D 40 0F 00 3C 40 D8 5B 7A 9C
+F3 27 1D 83 FC 23 3D 41 6A 9C E6 27 3A 80 21 00
+EB 3B 18 53 19 83 E8 23 09 93 06 24 F8 40 20 00
+00 1E 18 53 19 83 FA 23 30 41 B2 40 00 02 1E 20
+1B 42 32 20 B0 12 EC 55 82 43 1E 20 DB 53 03 00
+DB 92 12 20 03 00 1D 28 B0 12 00 56 08 12 0A 12
+B0 12 06 5B 2A 91 03 24 2A 41 B0 12 E4 55 3A 41
+38 41 98 42 22 20 00 1E 98 42 24 20 02 1E B0 12
+F0 5A AB 42 02 00 9B 42 22 20 0E 00 9B 42 24 20
+10 00 30 40 5E 56 82 58 0A 57 52 49 54 45 B0 12
+3A 5C 30 4D 2A 92 4E 20 2C 93 0E 24 0C 93 3D 24
+0D 12 84 12 1E 40 0C 3C 20 57 72 69 74 65 45 72
+72 6F 72 00 B2 40 A6 54 0A 43 38 42 B0 12 06 5B
+B0 12 A6 57 18 42 30 20 F8 40 20 00 0B 1E B0 12
+7C 5B 88 43 0C 1E 88 4A 0E 1E 88 49 10 1E 98 42
+24 20 14 1E 98 42 22 20 1A 1E 88 43 1C 1E 88 43
+1E 1E 2C 42 1B 42 34 20 82 9B 36 20 D1 27 FB 90
+2E 00 00 00 CD 27 39 40 0B 00 B0 12 F8 5B B0 12
+F6 55 2A 42 B0 12 70 56 30 4D B0 12 A6 5A 8B 43
+12 00 8B 43 14 00 B0 12 5A 58 B0 12 06 5B B0 12
+82 5C 30 4D 2C 93 C0 27 0C 93 B2 23 B0 12 5A 58
+82 4A 2A 20 B0 12 E4 55 1A 48 00 1E 19 48 02 1E
+39 90 FF 0F 02 20 3A 93 0A 24 82 4A 22 20 82 49
+24 20 B0 12 0C 56 82 9A 2A 20 EE 27 97 3E 1A 4B
+12 00 08 4A 39 40 FF 01 8B C9 12 00 08 F9 82 48
+1E 20 59 42 12 20 19 83 8A 10 4A 11 0A F9 CB 4A
+03 00 B0 12 86 5C B0 12 A6 57 30 4D 76 58 10 54
+45 52 4D 32 53 44 22 00 0D 12 84 12 72 43 8A 58
+C2 5D 0A 43 7D 40 0A 00 B0 12 44 41 3A 90 00 02
+03 28 B0 12 3A 5C 0A 43 92 B3 EC 06 FD 27 59 42
+CC 06 69 92 11 24 CA 49 00 1E 1A 53 49 9D EE 23
+A2 B3 EC 06 FD 27 F2 40 0D 00 CE 06 A2 B3 EC 06
+FD 27 C2 4D CE 06 E0 3F C2 9D CC 06 FD 23 82 4A
+1E 20 B0 12 CC 57 3D 41 30 40 58 43
@FF80
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
-77 00 10 00 12 00 14 00 16 00 00 00 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 D4 42 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 10 42
+77 00 10 00 12 00 14 00 16 00 00 00 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 CE 42 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 0A 42
q
@1800
40 1F 04 00 51 55 18 00 FD FF 35 01 10 00 A1 59
-D6 42 7E 41 06 56 E6 54 46 43 5E 5E 4A 4C 04 4C
+D6 42 7E 41 E2 54 EA 54 46 43 34 5E 4A 4C 04 4C
04 4C BC 42 7A 43 42 43 3C 1D E0 1C F8 45 B6 40
-C4 40 14 45 20 00 0A 00 00 1C 7E 41 06 56 E6 54
-46 43 5E 5E 4A 4C 04 4C 04 4C 00 00 00 00 00 00
+C4 40 14 45 20 00 0A 00 00 1C 7E 41 E2 54 EA 54
+46 43 34 5E 4A 4C 04 4C 04 4C 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
@4000
92 12 40 18 12 D2 06 18 FB 3F 2F 83 8F 4E 00 00
16 00 3A 4F 09 4E 0E 43 1C 42 1E 20 1B 42 20 20
02 3C C4 43 2D 83 0C 9B 16 2C 58 4C 00 1E 1C 53
78 90 20 00 09 2C 78 90 0A 00 F5 23 82 4C 1E 20
-3D 41 3C 40 20 00 A6 3F 0E 99 91 27 CA 48 00 00
-1A 53 1E 53 8C 3F 1A 15 B0 12 54 57 19 17 DC 3F
+3D 41 3C 40 20 00 A6 3F 09 9E 91 27 CA 48 00 00
+1A 53 1E 53 8C 3F 1A 15 B0 12 64 57 19 17 DC 3F
00 00 08 54 59 50 45 00 0D 12 3D 40 18 44 29 4F
8F 4E 00 00 7E 49 AF 3F 1A 44 2D 83 2F 83 5E 83
F7 23 3D 41 2F 53 3E 4F 30 4D 86 12 20 00 0C 4E
1A 42 C8 1D EF 3F 66 4B 0B 48 49 32 4C 4F A2 53
C8 1D 1A 42 C8 1D 8A 4A FE FF 82 43 BC 1D B9 3F
F2 4B B2 40 04 4C D0 1D 82 4E CE 1D 30 40 8A 45
-85 12 F0 4B F0 49 64 58 60 5A 72 58 FA 5D 34 46
-DE 46 DA 5C D8 4B 2A 4B 04 4B A0 4A 80 58 0C 4D
-44 5A 00 00 00 00 85 12 F0 4B 86 53 0A 52 2C 54
-32 51 8E 51 DC 51 B8 52 72 54 54 50 78 51 00 00
+85 12 F0 4B F0 49 B6 58 B2 5A C4 58 D4 5D 34 46
+DE 46 BE 5C D8 4B 2A 4B 04 4B A0 4A D2 58 0C 4D
+96 5A 00 00 00 00 85 12 F0 4B 86 53 0A 52 2C 54
+32 51 8E 51 DC 51 B8 52 6E 54 54 50 78 51 00 00
00 00 C6 4B 44 4F 00 00 E0 52 24 4C B2 40 04 4C
CE 1D 82 43 D0 1D 30 4D 3B 40 0A 00 BA 49 00 00
2A 53 2B 83 FB 23 30 41 00 00 0E 52 53 54 5F 53
82 93 46 06 05 24 92 B3 6C 06 FD 27 C2 93 4C 06
19 83 F3 23 5A 42 4C 06 30 41 6A 53 12 52 5F 53
45 43 54 5F 57 58 1C D3 F2 40 51 00 19 20 B0 12
-92 53 38 20 B0 12 06 54 6A 53 04 24 FB 23 D9 42
-4C 06 FF 1D F2 43 4E 06 03 43 19 53 39 90 01 02
-F6 23 F2 43 4E 06 3C C0 03 00 D2 D3 23 02 30 41
-C4 52 12 57 5F 53 45 43 54 5F 57 58 2C D3 F0 40
-58 00 97 CB B0 12 92 53 15 20 3A 40 FE FF 29 43
-B0 12 0A 54 D2 49 00 1E 4E 06 03 43 19 53 39 90
-00 02 F8 23 39 40 03 00 B0 12 08 54 7A C0 E1 00
-6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3 23 02 84 12
-88 43 1E 40 0B 3C 20 53 44 20 45 72 72 6F 72 21
-D2 54 2F 83 8F 4E 00 00 B2 40 10 00 BE 1D 0E 4C
-84 12 38 46 12 41 B0 12 54 41 E2 B2 60 02 8A 20
-B2 40 81 A9 40 06 B2 40 18 00 46 06 D2 D3 25 02
-B2 D0 C0 04 0C 02 92 C3 40 06 39 40 6E 01 29 83
-89 43 02 20 FC 23 39 42 B0 12 08 54 D2 C3 23 02
-2C 42 B2 40 95 00 14 20 B2 40 00 40 18 20 B0 12
-02 54 02 24 30 40 B4 54 B0 12 06 54 7A 93 FC 23
-B2 40 87 AA 14 20 92 43 16 20 B2 40 00 48 18 20
-B0 12 02 54 29 42 B0 12 08 54 92 43 14 20 82 43
-16 20 78 43 3C 42 B2 40 00 77 18 20 B0 12 02 54
-B2 40 40 69 18 20 B0 12 C0 53 03 24 58 83 F3 23
-D9 3F 0C 5C A2 43 16 20 B2 40 00 50 18 20 B0 12
-C0 53 D0 23 92 D3 40 06 82 43 46 06 92 C3 40 06
-0A 43 09 43 B0 12 36 54 38 40 00 1E 92 48 C6 01
-04 20 92 48 C8 01 06 20 5C 48 C2 01 7C 80 0C 00
-08 24 5C 53 06 24 6C 52 04 24 3C 50 07 20 30 40
-BA 54 09 43 B0 12 36 54 A2 43 2C 20 19 48 0E 00
-82 49 08 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49
-0C 20 09 5A 58 48 0D 00 82 48 12 20 09 88 09 88
-82 49 10 20 30 41 82 43 32 20 30 40 84 41 92 4B
-0E 00 22 20 92 4B 10 00 24 20 5A 42 23 20 58 42
-22 20 59 42 24 20 89 10 0A D9 88 10 08 58 0A 6A
-88 10 08 58 30 41 1A 52 08 20 09 43 FC 3E 92 42
+92 53 36 20 B0 12 06 54 6A 53 04 24 FB 23 D9 42
+4C 06 FF 1D F2 43 4E 06 03 43 19 53 39 90 03 02
+F6 23 3C C0 03 00 D2 D3 23 02 30 41 C4 52 12 57
+5F 53 45 43 54 5F 57 58 2C D3 F0 40 58 00 9B CB
+B0 12 92 53 15 20 3A 40 FE FF 29 43 B0 12 0A 54
+D2 49 00 1E 4E 06 03 43 19 53 39 90 00 02 F8 23
+39 40 03 00 B0 12 08 54 7A C0 E1 00 6A 82 D9 27
+8C 10 1C 52 4C 06 D2 D3 23 02 84 12 88 43 1E 40
+0B 3C 20 53 44 20 45 72 72 6F 72 21 CE 54 2F 83
+8F 4E 00 00 B2 40 10 00 BE 1D 0E 4C 84 12 38 46
+12 41 82 43 32 20 30 40 84 41 B0 12 54 41 E2 B2
+60 02 8A 20 B2 40 81 A9 40 06 B2 40 18 00 46 06
+D2 D3 25 02 B2 D0 C0 04 0C 02 92 C3 40 06 39 40
+6E 01 29 83 89 43 02 20 FC 23 39 42 B0 12 08 54
+D2 C3 23 02 2C 42 B2 40 95 00 14 20 B2 40 00 40
+18 20 B0 12 02 54 02 24 30 40 B0 54 B0 12 06 54
+7A 93 FC 23 B2 40 87 AA 14 20 92 43 16 20 B2 40
+00 48 18 20 B0 12 02 54 29 42 B0 12 08 54 92 43
+14 20 82 43 16 20 78 43 3C 42 B2 40 00 77 18 20
+B0 12 02 54 B2 40 40 69 18 20 B0 12 C0 53 03 24
+58 83 F3 23 D9 3F 0C 5C A2 43 16 20 B2 40 00 50
+18 20 B0 12 C0 53 D0 23 92 D3 40 06 82 43 46 06
+92 C3 40 06 0A 43 09 43 B0 12 36 54 38 40 00 1E
+92 48 C6 01 04 20 92 48 C8 01 06 20 5C 48 C2 01
+7C 80 0C 00 08 24 5C 53 06 24 6C 52 04 24 3C 50
+07 20 30 40 B6 54 09 43 B0 12 36 54 A2 43 2C 20
+19 48 0E 00 82 49 08 20 1A 48 24 00 82 4A 0A 20
+09 5A 82 49 0C 20 09 5A 58 48 0D 00 82 48 12 20
+09 88 09 88 82 49 10 20 30 41 1A 52 08 20 09 43
+12 3F 9B 52 1E 20 12 00 8B 63 14 00 1A 42 1A 20
+19 42 1C 20 29 3F 92 4B 0E 00 22 20 92 4B 10 00
+24 20 5A 42 23 20 58 42 22 20 59 42 24 20 89 10
+0A D9 88 10 08 58 0A 6A 88 10 08 58 30 41 92 42
22 20 D0 04 92 42 24 20 D2 04 92 42 12 20 C8 04
92 42 E4 04 1A 20 92 42 E6 04 1C 20 92 52 10 20
1A 20 82 63 1C 20 30 41 92 4B 0E 00 22 20 92 4B
-10 00 24 20 B0 12 3E 56 5A 4B 03 00 82 5A 1A 20
+10 00 24 20 B0 12 4E 56 5A 4B 03 00 82 5A 1A 20
82 63 1C 20 30 41 3C 42 3B 40 38 20 09 43 CB 93
02 00 10 24 9B 92 24 20 0C 00 04 20 9B 92 22 20
-0A 00 A3 25 09 4B 3B 50 1C 00 3B 90 18 21 EF 23
-0C 5C 9B 3D 0C 43 82 4B 32 20 8B 49 00 00 09 93
+0A 00 C4 25 09 4B 3B 50 1C 00 3B 90 18 21 EF 23
+0C 5C BC 3D 0C 43 82 4B 32 20 8B 49 00 00 09 93
0A 24 99 52 C6 1D 16 00 4A 93 05 34 C9 93 02 00
02 34 5A 59 02 00 CB 4A 02 00 CB 43 03 00 9B 42
1A 20 04 00 9B 42 1C 20 06 00 18 42 30 20 8B 48
22 3C 30 41 1B 42 32 20 82 43 1E 20 B2 90 00 02
20 20 3F 20 BB 80 00 02 12 00 8B 73 14 00 DB 53
03 00 DB 92 12 20 03 00 0E 28 CB 43 03 00 B0 12
-0E 56 B0 12 36 56 8B 43 10 00 9B 48 00 1E 0E 00
+26 56 B0 12 0A 56 8B 43 10 00 9B 48 00 1E 0E 00
9B 48 02 1E 10 00 B2 40 00 02 20 20 8B 93 14 00
0B 20 92 9B 12 00 1E 20 1C 2C BB 90 00 02 12 00
-03 2C 92 4B 12 00 20 20 B0 12 68 56 1A 42 1A 20
-19 42 1C 20 38 3E CB 43 02 00 2B 4B 82 4B 32 20
-0B 93 06 24 92 4B 16 00 1E 20 B0 12 96 57 22 C3
-30 41 1B 42 32 20 0B 93 FB 27 EB 92 02 00 04 20
-B0 12 54 5B B0 12 44 5C CB 93 02 00 E4 37 1E 4B
-18 00 9F 4B 1A 00 00 00 31 50 06 00 3D 41 B0 12
-C6 57 02 24 30 40 9A 43 B2 40 3C 1D A0 40 B2 40
-BC 42 BA 42 30 40 88 43 09 93 07 24 F8 90 20 00
-00 1E 03 20 18 53 19 83 F9 23 30 41 82 4C 0B 52
-45 41 44 22 5A 43 20 3C EA 4A 09 44 45 4C 22 00
-6A 43 1A 3C B0 49 0D 57 52 49 54 45 22 00 6A 42
-13 3C 98 49 0F 41 50 50 45 4E 44 22 7A 42 0C 3C
-94 4B 0A 43 4C 4F 53 45 B0 12 E2 57 30 4D F8 48
-0B 4C 4F 41 44 22 7A 43 2F 83 8F 4E 00 00 0E 4A
-82 93 BC 1D 0B 24 0D 12 84 12 0A 40 0A 40 E6 48
-E6 48 66 45 0A 40 BC 58 E6 48 F8 45 0D 12 84 12
-0A 40 22 00 7C 46 36 49 BA 58 3D 41 36 4F 0E 56
-82 4E 36 20 A2 43 22 20 82 43 24 20 1C 43 0E 96
-8C 24 F6 90 3A 00 01 00 01 20 26 53 F6 90 5C 00
-00 00 03 20 16 53 0E 96 66 24 82 46 34 20 B0 12
-3E 56 15 42 12 20 B0 12 BC 57 2C 43 0A 43 08 4A
-58 0E 08 58 82 48 30 20 C8 93 00 1E 60 24 39 42
-F8 96 00 1E 04 20 18 53 19 83 FA 23 16 53 F6 90
-2E 00 FF FF 19 24 39 50 03 00 B0 12 28 58 06 20
-F6 90 5C 00 FF FF 29 24 0E 96 27 28 16 42 34 20
-1A 53 3A 90 10 00 DB 23 92 53 1A 20 82 63 1C 20
-15 83 D1 23 2C 42 49 3C F6 90 2E 00 FE FF EE 27
-B0 12 28 58 EB 23 39 40 03 00 F8 96 00 1E 04 20
-18 53 19 83 FA 23 09 3C 0E 96 E0 2F F6 90 5C 00
-FF FF DC 23 B0 12 28 58 D9 23 18 42 30 20 92 48
-1A 1E 22 20 92 48 14 1E 24 20 F8 B0 10 00 0B 1E
-13 24 82 93 24 20 05 20 82 93 22 20 02 20 A2 43
-22 20 0E 96 9A 23 92 42 22 20 2C 20 92 42 24 20
-2E 20 8F 43 00 00 03 3C 2A 4F B0 12 86 56 35 40
-B6 40 36 40 C4 40 3A 4F 3E 4F 0A 93 04 24 7A 93
-39 20 0C 93 02 20 30 40 9A 43 0D 12 84 12 88 43
-1E 40 0B 3C 20 4F 70 65 6E 45 72 72 6F 72 B2 40
-D0 54 E2 B2 60 02 02 24 30 40 86 41 92 12 3E 18
-3F 40 7E 1C 8F 43 00 00 0D 12 84 12 1E 40 0F 4C
-4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22 B2 40
-66 49 3E 58 08 42 4F 4F 54 00 B2 40 02 5A AC 42
-30 4D 36 47 0C 4E 4F 42 4F 4F 54 00 B2 40 86 41
-AC 42 30 4D 1A 93 89 20 0C 93 C7 23 30 4D 34 5A
-08 52 45 41 44 00 2F 83 8F 4E 00 00 1E 42 32 20
-B0 12 54 57 1E 82 32 20 30 4D 08 4A 1A 52 08 20
-B0 12 8A 5A 0A 48 1A 52 0C 20 09 43 30 40 7C 54
-3C 42 0A 12 2A 41 82 9A 0A 20 2B 25 B0 12 36 56
-88 93 02 1E 03 20 88 93 00 1E 08 24 28 52 38 90
-00 02 F6 2B 91 53 00 00 08 43 EC 3F A2 41 26 20
-82 48 28 20 0C 43 B8 43 00 1E 6A 41 B8 40 FF 0F
-02 1E 08 11 8A 10 08 5A 5A 41 01 00 0A 11 08 10
-82 4A 24 20 82 48 22 20 2A 41 B0 12 7A 5A 3A 41
-30 41 90 4B 0A 00 2C C5 90 4B 0C 00 28 C5 B0 12
-1A 56 82 4A 26 20 82 48 28 20 0A 12 B0 12 36 56
-1A 48 00 1E 88 43 00 1E 19 48 02 1E 88 43 02 1E
-39 F0 FF 0F 39 90 FF 0F 02 20 3A 93 10 24 82 4A
-22 20 82 49 24 20 B0 12 1A 56 2A 91 E9 27 09 4A
-2A 41 81 49 00 00 B0 12 7A 5A 2A 41 DF 3F 3A 41
-30 40 7A 5A 9B 52 1E 20 12 00 8B 63 14 00 1A 42
-1A 20 19 42 1C 20 30 40 7C 54 2A 93 BC 20 0C 93
-09 20 F8 40 E5 00 00 1E B0 12 5E 5B B0 12 F2 5A
-B0 12 E2 57 30 4D F2 B0 40 00 A2 04 29 20 F2 B0
-10 00 A2 04 FC 27 5A 42 B0 04 4A 11 59 42 B4 04
-F2 40 20 00 C0 04 D2 42 B1 04 C8 04 1A 52 E4 04
-D2 42 B5 04 C8 04 19 52 E4 04 D2 42 B2 04 C0 04
-B2 40 00 08 C8 04 1A 52 E4 04 92 42 B6 04 C0 04
-B2 80 BC 07 C0 04 B2 40 00 02 C8 04 19 52 E4 04
-30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E 3F 5B 5C 5D
-7C 2E 29 92 06 28 39 80 03 00 B0 12 32 5C 39 40
-03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28 0D 12
-3D 40 0F 00 3C 40 E2 5B 7A 9C F3 27 1D 83 FC 23
-3D 41 6A 9C E6 27 3A 80 21 00 EB 3B 18 53 19 83
-E8 23 09 93 06 24 F8 40 20 00 00 1E 18 53 19 83
-FA 23 30 41 1A 4B 04 00 19 4B 06 00 B0 12 36 54
-18 4B 08 00 B0 12 86 5B 88 49 12 1E 88 4A 16 1E
+03 2C 92 4B 12 00 20 20 B0 12 78 56 1A 42 1A 20
+19 42 1C 20 30 3E CB 43 02 00 2B 4B 82 4B 32 20
+0B 93 06 24 92 4B 16 00 1E 20 B0 12 A6 57 22 C3
+30 41 1B 42 32 20 0B 93 FB 27 EB 92 02 00 1E 38
+B0 12 12 56 1A 4B 04 00 19 4B 06 00 B0 12 36 54
+18 4B 08 00 B0 12 A2 5B 88 49 12 1E 88 4A 16 1E
88 49 18 1E 98 4B 12 00 1C 1E 98 4B 14 00 1E 1E
-1A 4B 04 00 19 4B 06 00 30 40 7C 54 B2 40 00 02
-1E 20 1B 42 32 20 B0 12 54 5B 82 43 1E 20 DB 53
-03 00 DB 92 12 20 03 00 1D 28 B0 12 0E 56 08 12
-0A 12 B0 12 90 5A 2A 91 03 24 2A 41 B0 12 36 56
-3A 41 38 41 98 42 22 20 00 1E 98 42 24 20 02 1E
-B0 12 7A 5A AB 42 02 00 9B 42 22 20 0E 00 9B 42
-24 20 10 00 30 40 74 56 56 58 0A 57 52 49 54 45
-B0 12 7C 5C 30 4D 2A 92 54 20 2C 93 0E 24 0C 93
-3D 24 0D 12 84 12 1E 40 0C 3C 20 57 72 69 74 65
-45 72 72 6F 72 00 B2 40 D0 54 0A 43 08 43 B0 12
-90 5A B0 12 BC 57 18 42 30 20 F8 40 20 00 0B 1E
-B0 12 86 5B 88 43 0C 1E 88 4A 0E 1E 88 49 10 1E
-98 42 24 20 14 1E 98 42 22 20 1A 1E 88 43 1C 1E
-88 43 1E 1E 2C 42 1B 42 34 20 82 9B 36 20 D1 27
-FB 90 2E 00 00 00 CD 27 39 40 0B 00 B0 12 02 5C
-B0 12 5E 5B 2A 42 B0 12 86 56 30 4D B0 12 F2 5A
-8B 43 12 00 8B 43 14 00 90 4B 0A 00 A6 C2 90 4B
-0C 00 A2 C2 B0 12 1A 56 B0 12 90 5A B0 12 C4 5C
-30 4D 2C 93 BA 27 0C 93 AC 23 EB 42 02 00 58 4B
-13 00 59 4B 14 00 89 10 09 58 58 4B 15 00 5B 42
-12 20 0A 43 3C 42 08 11 09 10 4A 10 1C 83 0B 11
-FA 2B 0A 11 1C 83 FD 37 1B 42 32 20 19 5B 0A 00
-18 6B 0C 00 8B 49 0E 00 8B 48 10 00 CB 4A 03 00
-B0 12 B8 57 1A 4B 12 00 BB C0 FF 01 12 00 3A F0
-FF 01 82 4A 1E 20 30 4D 4A 58 10 54 45 52 4D 32
-53 44 22 00 0D 12 84 12 5E 58 0C 5E 0A 43 B0 12
-46 43 92 B3 DC 05 FD 27 59 42 CC 05 C2 49 CE 05
-69 92 0D 24 CA 49 00 1E 1A 53 3A 90 FF 01 04 24
-F0 2B B0 12 7C 5C EA 3F B0 12 E2 42 EA 3F F2 90
-0D 00 CC 05 FC 27 B0 12 E2 42 F2 90 0A 00 CC 05
-FC 27 82 4A 1E 20 B0 12 E2 57 3D 41 30 4D
+1A 4B 04 00 19 4B 06 00 B0 12 78 54 CB 93 02 00
+CA 37 1E 4B 18 00 9F 4B 1A 00 00 00 31 50 06 00
+3D 41 B0 12 D6 57 02 24 30 40 9A 43 B2 40 3C 1D
+A0 40 B2 40 BC 42 BA 42 30 40 88 43 09 93 07 24
+F8 90 20 00 00 1E 03 20 18 53 19 83 F9 23 30 41
+92 4B 0A 00 22 20 92 4B 0C 00 24 20 D2 3E 82 4C
+0B 52 45 41 44 22 5A 43 20 3C EA 4A 09 44 45 4C
+22 00 6A 43 1A 3C B0 49 0D 57 52 49 54 45 22 00
+6A 42 13 3C 98 49 0F 41 50 50 45 4E 44 22 7A 42
+0C 3C 94 4B 0A 43 4C 4F 53 45 B0 12 F2 57 30 4D
+F8 48 0B 4C 4F 41 44 22 7A 43 2F 83 8F 4E 00 00
+0E 4A 82 93 BC 1D 0B 24 0D 12 84 12 0A 40 0A 40
+E6 48 E6 48 66 45 0A 40 0E 59 E6 48 F8 45 0D 12
+84 12 0A 40 22 00 7C 46 36 49 0C 59 3D 41 36 4F
+0E 56 82 4E 36 20 A2 43 22 20 82 43 24 20 1C 43
+0E 96 8C 24 F6 90 3A 00 01 00 01 20 26 53 F6 90
+5C 00 00 00 03 20 16 53 0E 96 66 24 82 46 34 20
+B0 12 4E 56 15 42 12 20 B0 12 CC 57 2C 43 0A 43
+08 4A 58 0E 08 58 82 48 30 20 C8 93 00 1E 60 24
+39 42 F8 96 00 1E 04 20 18 53 19 83 FA 23 16 53
+F6 90 2E 00 FF FF 19 24 39 50 03 00 B0 12 6C 58
+06 20 F6 90 5C 00 FF FF 29 24 0E 96 27 28 16 42
+34 20 1A 53 3A 90 10 00 DB 23 92 53 1A 20 82 63
+1C 20 15 83 D1 23 2C 42 49 3C F6 90 2E 00 FE FF
+EE 27 B0 12 6C 58 EB 23 39 40 03 00 F8 96 00 1E
+04 20 18 53 19 83 FA 23 09 3C 0E 96 E0 2F F6 90
+5C 00 FF FF DC 23 B0 12 6C 58 D9 23 18 42 30 20
+92 48 1A 1E 22 20 92 48 14 1E 24 20 F8 B0 10 00
+0B 1E 13 24 82 93 24 20 05 20 82 93 22 20 02 20
+A2 43 22 20 0E 96 9A 23 92 42 22 20 2C 20 92 42
+24 20 2E 20 8F 43 00 00 03 3C 2A 4F B0 12 96 56
+35 40 B6 40 36 40 C4 40 3A 4F 3E 4F 0A 93 04 24
+7A 93 39 20 0C 93 02 20 30 40 9A 43 0D 12 84 12
+88 43 1E 40 0B 3C 20 4F 70 65 6E 45 72 72 6F 72
+B2 40 CC 54 92 12 3E 18 E2 B2 60 02 02 24 30 40
+8A 41 3F 40 7E 1C 8F 43 00 00 0D 12 84 12 1E 40
+0F 4C 4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22
+B2 40 66 49 90 58 08 42 4F 4F 54 00 B2 40 54 5A
+AC 42 30 4D 36 47 0C 4E 4F 42 4F 4F 54 00 B2 40
+86 41 AC 42 30 4D 1A 93 6E 20 0C 93 C7 23 30 4D
+86 5A 08 52 45 41 44 00 2F 83 8F 4E 00 00 1E 42
+32 20 B0 12 64 57 1E 82 32 20 30 4D B0 12 80 58
+0A 12 B0 12 0A 56 1A 48 00 1E 88 43 00 1E 19 48
+02 1E 88 43 02 1E 39 F0 FF 0F 39 90 FF 0F 02 20
+3A 93 10 24 82 4A 22 20 82 49 24 20 B0 12 32 56
+2A 91 E9 27 09 4A 2A 41 81 49 00 00 B0 12 16 5B
+2A 41 DF 3F 3A 41 08 4A 1A 52 08 20 B0 12 26 5B
+0A 48 1A 52 0C 20 09 43 30 40 78 54 3C 42 0A 12
+2A 41 82 9A 0A 20 CF 24 B0 12 0A 56 88 93 02 1E
+03 20 88 93 00 1E 08 24 28 52 38 90 00 02 F6 2B
+91 53 00 00 08 43 EC 3F 0C 43 B8 43 00 1E 6A 41
+B8 40 FF 0F 02 1E 08 11 8A 10 08 5A 5A 41 01 00
+0A 11 08 10 82 4A 24 20 82 48 22 20 2A 41 B0 12
+16 5B 3A 41 30 41 2A 93 A0 20 0C 93 09 20 F8 40
+E5 00 00 1E B0 12 1C 56 B0 12 CC 5A B0 12 F2 57
+30 4D F2 B0 40 00 A2 04 29 20 F2 B0 10 00 A2 04
+FC 27 5A 42 B0 04 4A 11 59 42 B4 04 F2 40 20 00
+C0 04 D2 42 B1 04 C8 04 1A 52 E4 04 D2 42 B5 04
+C8 04 19 52 E4 04 D2 42 B2 04 C0 04 B2 40 00 08
+C8 04 1A 52 E4 04 92 42 B6 04 C0 04 B2 80 BC 07
+C0 04 B2 40 00 02 C8 04 19 52 E4 04 30 41 22 2A
+2B 2C 2F 3A 3B 3C 3D 3E 3F 5B 5C 5D 7C 2E 29 92
+06 28 39 80 03 00 B0 12 4E 5C 39 40 03 00 7A 4B
+C8 4A 00 1E 82 9B 36 20 12 28 0D 12 3D 40 0F 00
+3C 40 FE 5B 7A 9C F3 27 1D 83 FC 23 3D 41 6A 9C
+E6 27 3A 80 21 00 EB 3B 18 53 19 83 E8 23 09 93
+06 24 F8 40 20 00 00 1E 18 53 19 83 FA 23 30 41
+B2 40 00 02 1E 20 1B 42 32 20 B0 12 12 56 82 43
+1E 20 DB 53 03 00 DB 92 12 20 03 00 1D 28 B0 12
+26 56 08 12 0A 12 B0 12 2C 5B 2A 91 03 24 2A 41
+B0 12 0A 56 3A 41 38 41 98 42 22 20 00 1E 98 42
+24 20 02 1E B0 12 16 5B AB 42 02 00 9B 42 22 20
+0E 00 9B 42 24 20 10 00 30 40 84 56 A8 58 0A 57
+52 49 54 45 B0 12 60 5C 30 4D 2A 92 4E 20 2C 93
+0E 24 0C 93 3D 24 0D 12 84 12 1E 40 0C 3C 20 57
+72 69 74 65 45 72 72 6F 72 00 B2 40 CC 54 0A 43
+38 42 B0 12 2C 5B B0 12 CC 57 18 42 30 20 F8 40
+20 00 0B 1E B0 12 A2 5B 88 43 0C 1E 88 4A 0E 1E
+88 49 10 1E 98 42 24 20 14 1E 98 42 22 20 1A 1E
+88 43 1C 1E 88 43 1E 1E 2C 42 1B 42 34 20 82 9B
+36 20 D1 27 FB 90 2E 00 00 00 CD 27 39 40 0B 00
+B0 12 1E 5C B0 12 1C 56 2A 42 B0 12 96 56 30 4D
+B0 12 CC 5A 8B 43 12 00 8B 43 14 00 B0 12 80 58
+B0 12 2C 5B B0 12 A8 5C 30 4D 2C 93 C0 27 0C 93
+B2 23 B0 12 80 58 82 4A 2A 20 B0 12 0A 56 1A 48
+00 1E 19 48 02 1E 39 90 FF 0F 02 20 3A 93 0A 24
+82 4A 22 20 82 49 24 20 B0 12 32 56 82 9A 2A 20
+EE 27 97 3E 1A 4B 12 00 08 4A 39 40 FF 01 8B C9
+12 00 08 F9 82 48 1E 20 59 42 12 20 19 83 8A 10
+4A 11 0A F9 CB 4A 03 00 B0 12 AC 5C B0 12 CC 57
+30 4D 9C 58 10 54 45 52 4D 32 53 44 22 00 0D 12
+84 12 B0 58 E6 5D 0A 43 B0 12 46 43 92 B3 DC 05
+FD 27 59 42 CC 05 69 92 0D 24 CA 49 00 1E 1A 53
+3A 90 FF 01 04 24 F2 2B B0 12 60 5C EC 3F B0 12
+E2 42 EC 3F F2 90 0D 00 CC 05 FC 27 B0 12 E2 42
+F2 90 0A 00 CC 05 FC 27 82 4A 1E 20 B0 12 F2 57
+3D 41 30 4D
@FF80
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
@1800
40 1F 12 00 00 00 F8 00 FD FF 35 01 10 00 A1 43
-D0 42 56 41 E2 55 C2 54 44 41 40 5E 26 4C E0 4B
-E0 4B BE 42 42 43 1A 43 3C 1D E0 1C D4 45 B6 40
-C4 40 F0 44 20 00 0A 00 00 1C 56 41 E2 55 C2 54
-44 41 40 5E 26 4C E0 4B E0 4B 00 00 00 00 00 00
+CA 42 50 41 B8 54 C0 54 44 41 18 5E 20 4C DA 4B
+DA 4B B8 42 3C 43 14 43 3C 1D E0 1C CE 45 B6 40
+C4 40 EA 44 20 00 0A 00 00 1C 50 41 B8 54 C0 54
+44 41 18 5E 20 4C DA 4B DA 4B 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
@4000
92 12 40 18 12 D2 06 18 FB 3F 2F 83 8F 4E 00 00
12 D3 F5 3F 35 40 B6 40 8F 4A 02 00 8F 49 00 00
0E 48 30 41 82 4E C2 1D B2 4F C4 1D 82 43 C6 1D
3E 4F 30 4D 2F 82 8F 4E 02 00 3E 40 54 00 BF 40
-3C 1D 00 00 AF 4F FE FF 2F 83 07 3D 0E 93 3E 4F
-B8 21 2D 4D 30 4D 2F 83 8F 4E 00 00 3E 41 0D 12
+3C 1D 00 00 AF 4F FE FF 2F 83 04 3D 0E 93 3E 4F
+B5 21 2D 4D 30 4D 2F 83 8F 4E 00 00 3E 41 0D 12
3D 4E 30 4D 2F 83 8F 4E 00 00 3E 41 2E 4E 30 4D
-92 12 3C 18 3D 41 39 40 22 18 B2 49 BC 42 B2 49
-40 43 B2 49 18 43 B2 49 A0 40 31 49 34 49 35 49
+92 12 3C 18 3D 41 39 40 22 18 B2 49 B6 42 B2 49
+3A 43 B2 49 12 43 B2 49 A0 40 31 49 34 49 35 49
36 49 37 49 B2 49 C0 1D B2 49 BE 1D B2 49 00 1C
-82 43 BC 1D 30 40 9A 4C 8F 93 02 00 02 20 2F 52
-BF 3F 28 43 B0 12 46 41 B0 12 D0 40 FA 44 AC 40
-42 41 5A 43 1E 40 05 1B 5B 37 6D 40 E4 43 0A 40
-02 18 1C 45 48 46 E4 43 1E 40 04 1B 5B 30 6D 00
-E4 43 30 49 48 43 A2 B3 EC 06 FD 27 C2 48 CE 06
-A2 B2 EC 06 FD 27 30 41 B2 D0 C0 07 C0 06 18 42
-02 18 08 11 38 D0 00 04 82 48 D4 06 F2 D0 03 00
-6A 02 92 C3 C0 06 A2 D2 EA 06 92 C3 30 01 30 41
-92 12 3E 18 84 12 5A 43 1E 40 07 0D 0A 1B 5B 37
-6D 40 E4 43 0A 40 02 18 1C 45 48 46 0A 40 23 00
-3E 43 48 46 1E 40 19 46 61 73 74 46 6F 72 74 68
-20 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 2C 20
-E4 43 0A 40 40 FF 32 40 10 45 14 46 1E 40 0A 62
-79 74 65 73 20 66 72 65 65 00 B2 40 36 41 00 00
-06 53 59 53 0E 93 07 38 02 24 1E B3 04 28 30 12
-80 41 01 12 6D 3F 82 4E 08 18 92 12 3A 18 F2 B0
-40 00 40 02 02 20 B2 43 08 18 B2 40 04 A5 20 01
-B2 D0 03 00 04 01 B2 D0 10 00 00 01 B2 40 80 5A
-5C 01 31 40 E0 1C 3F 40 80 1C B2 D3 06 02 B2 40
-FC FF 02 02 B2 43 26 02 B2 D3 22 02 B2 43 42 02
-B2 D3 46 02 B2 43 62 02 B2 D3 66 02 F2 43 26 03
-F2 D3 22 03 F2 40 A5 00 61 01 82 43 66 01 B2 40
-33 00 64 01 D2 43 61 01 39 40 40 00 18 42 00 18
-18 83 FE 23 19 83 FA 23 F2 D0 10 00 2A 03 F2 40
-A5 00 A1 04 F2 C0 40 00 A2 04 B2 42 B0 01 39 40
-00 10 29 83 89 43 00 1C FC 23 1E 42 08 18 82 43
-08 18 3E F3 02 20 1E 42 9E 01 B0 12 D0 40 80 41
-00 00 0C 41 43 43 45 50 54 00 30 40 BE 42 0A 4E
-2E 4F 0A 5E 3B 40 0A 00 3C 40 20 00 3D 15 98 3E
-21 52 A2 C2 EC 06 B2 B0 10 00 C0 06 91 22 3A 17
-92 B3 EC 06 FD 27 58 42 CC 06 48 9B 0E 24 48 9C
-06 2C 78 92 F5 23 2E 9F F3 27 1E 83 F1 3F 0E 9A
-EF 2F CE 48 00 00 1E 53 EB 3F 3E 8F 08 4C 1B 3C
-00 00 06 4B 45 59 30 40 1A 43 58 43 B0 12 46 41
-2F 83 8F 4E 00 00 92 B3 EC 06 FD 27 1E 42 CC 06
-B0 12 44 41 30 4D 00 00 08 45 4D 49 54 00 30 40
-42 43 08 4E 3E 4F A2 B3 EC 06 FD 27 C2 48 CE 06
-30 4D 38 43 08 45 43 48 4F 00 B2 40 C2 48 4C 43
-38 40 05 00 B0 12 46 41 30 4D 00 00 0C 4E 4F 45
-43 48 4F 00 B2 40 30 4D 4C 43 28 42 F3 3F 0D 12
-3D 40 9E 43 1B 42 32 20 9B 42 1E 20 16 00 3A 4F
-09 4E 0E 43 1C 42 1E 20 1B 42 20 20 02 3C A0 43
-2D 83 0C 9B 16 2C 58 4C 00 1E 1C 53 78 90 20 00
-09 2C 78 90 0A 00 F5 23 82 4C 1E 20 3D 41 3C 40
-20 00 A4 3F 0E 99 BF 27 CA 48 00 00 1A 53 1E 53
-BA 3F 1A 15 B0 12 30 57 19 17 DC 3F 00 00 08 54
-59 50 45 00 0D 12 3D 40 F4 43 29 4F 8F 4E 00 00
-7E 49 A5 3F F6 43 2D 83 2F 83 5E 83 F7 23 3D 41
-2F 53 3E 4F 30 4D 86 12 20 00 0C 4E 38 4F 3C 9F
-39 4F 3E 4F 4E 22 F9 98 00 00 4B 22 19 53 1C 83
-FA 23 2D 53 30 4D 2F 53 3E 4F 1E 83 42 22 9B 24
-12 43 0D 5B 45 4C 53 45 5D 00 0D 12 84 12 0A 40
-00 00 14 45 06 44 58 46 12 49 B0 40 82 44 14 40
-06 5B 54 48 45 4E 5D 00 0A 44 60 44 26 44 44 44
-14 40 06 5B 45 4C 53 45 5D 00 0A 44 72 44 26 44
-42 44 1E 40 04 5B 49 46 5D 00 0A 44 44 44 B2 40
-42 44 1E 40 05 0D 6B 6F 20 0A E4 43 9A 40 84 40
-B2 40 44 44 32 44 0D 5B 54 48 45 4E 5D 00 30 4D
-96 44 09 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D
-A2 44 13 5B 44 45 46 49 4E 45 44 5D 0D 12 84 12
-06 44 58 46 C0 46 64 48 D4 45 B2 44 17 5B 55 4E
-44 45 46 49 4E 45 44 5D 0D 12 84 12 06 44 58 46
-C0 46 E4 44 3D 41 2F 53 1E 83 0E 7E 30 4D 3F 12
-2F 83 8F 4E 00 00 3E 41 30 4D 8F 4E FE FF 2F 83
-30 4D 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11 F7 3F
-3E 8F 3E E3 1E 53 30 4D 00 00 02 40 2E 4E 30 4D
-B2 42 02 21 BE 4F 00 00 3E 4F 30 4D 0E 5E 0E 7E
-3E E3 30 4D 3E 8F 01 28 0E F3 30 4D E0 41 05 53
-22 00 82 43 C0 1D 0D 12 84 12 0A 40 1E 40 C2 48
-0A 40 22 00 58 46 58 45 B2 40 20 00 C0 1D 1A 53
-1A B3 82 6A C8 1D 3E 4F 3D 41 30 4D 6C 43 05 2E
-22 00 0D 12 84 12 42 45 0A 40 E4 43 C2 48 D4 45
-00 00 04 3C 23 00 B2 40 B2 1D B2 1D 30 4D 3E 45
-02 23 1B 42 BE 1D 2C 4F 2F 83 B0 12 46 40 BF 4F
-00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
-92 83 B2 1D 18 42 B2 1D C8 4A 00 00 30 4D 90 45
-04 23 53 00 0D 12 84 12 92 45 CC 45 2D 83 09 DE
-09 93 E1 23 3D 41 30 4D C0 45 04 23 3E 00 9F 42
-B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00 08 48
-4F 4C 44 00 4A 4E 3E 4F DB 3F DA 45 08 53 49 47
-4E 00 0E 93 3E 4F 7A 40 2D 00 D2 33 30 4D 54 43
-04 55 2E 00 0C 43 2F 83 8F 4E 00 00 0E 4C 1D 15
-3E F3 06 34 BF E3 00 00 3E E3 9F 53 00 00 0E 63
-84 12 86 45 06 44 F4 45 C4 45 F0 44 02 46 DE 45
-E4 43 D4 45 6E 45 02 2E 0E 93 E4 37 3C 43 E3 3F
-00 00 08 57 4F 52 44 00 3C 40 C2 1D 39 4C 38 4C
-09 58 38 5C 2A 4C 09 98 1D 24 7E 98 FC 27 18 83
-1B 42 C0 1D F8 90 27 00 00 00 04 20 E8 98 02 00
-01 20 0B 43 CA 4C 00 00 09 98 0C 24 7C 48 4E 9C
-09 24 1A 53 7C 90 61 00 F5 2B 7C 90 7B 00 F2 2F
-4C 8B F0 3F 18 82 C4 1D 82 48 C6 1D 1E 42 C8 1D
-0A 8E CE 4A 00 00 30 4D 00 00 08 46 49 4E 44 00
-2F 83 0C 4E 3B 40 CE 1D 3E 4B 0E 93 1E 24 58 4C
-01 00 78 F0 0F 00 08 58 0E 58 2E 53 1E 4E FE FF
-0E 93 F2 27 09 4E 78 49 48 11 68 9C F7 23 0A 4C
-FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63
-0C 49 6E 4E 1E F3 01 20 1E 83 8F 4C 00 00 30 4D
-46 46 0E 3E 4E 55 4D 42 45 52 1B 42 BE 1D 3C 4F
-38 4F 29 4F 2F 82 82 4B C0 04 6A 4C 7A 80 3A 00
-03 28 7A 80 07 00 12 28 7A 50 0A 00 0A 9B 22 C3
-0D 2C 82 49 E0 04 82 48 E2 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E7 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 3F 82
-8F 4E 06 00 08 43 09 43 1B 42 BE 1D 0C 4E 0E 43
-1E 15 3D 40 CA 47 7E 4C 6A 4C 7A 80 2D 00 16 24
-CA 2F 2B 43 7A 52 14 24 3B 52 6A 53 11 24 3B 40
-10 00 5A 93 0D 24 6A 92 41 20 3E 90 03 00 3E 20
-FC 9C 01 00 6C 4C 8F 4C 04 00 38 3C B1 43 02 00
-1E 83 FC 9C 00 00 E0 23 AE 27 CC 47 2F 24 2D 83
-6A 4C 7A 90 5F 00 BF 27 32 B0 00 02 27 20 32 D0
-00 02 7A 80 2E 00 B7 27 6A 53 20 20 0A 4E 09 43
-8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 3A 00
-03 28 79 80 07 00 0C 28 79 50 0A 00 09 9B 08 2C
-8F 49 00 00 0E 4B 2C 15 B0 12 3E 40 2A 17 E8 3F
-9F 4F 04 00 02 00 AF 4F 04 00 4A 93 1D 17 06 24
-32 C0 00 02 3F 50 06 00 0E F3 30 4D 2F 53 9F 4F
-02 00 04 00 BF 4F 00 00 3E E3 09 20 3E E3 BF E3
-02 00 BF E3 00 00 9F 53 02 00 8F 63 00 00 32 B0
-00 02 01 20 2F 53 30 4D 82 45 03 5C 92 42 C2 1D
-C6 1D 30 4D 0D 12 84 12 84 40 06 44 58 46 B0 40
-9C 49 C0 46 86 48 0A 4E 3E 4F 3D 40 A0 48 6D 27
-3D 40 7A 48 1A E2 BC 1D 14 24 0E 12 3E 4F 30 41
-A2 48 3E 4F 3D 40 7A 48 19 20 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 78 4A 2A 3C 6A 48
-02 2C A2 53 C8 1D 1A 42 C8 1D 8A 4E FE FF 3E 4F
-30 4D C0 48 0F 4C 49 54 45 52 41 4C 82 93 BC 1D
-0D 24 09 4E 1A 42 C8 1D A2 52 C8 1D BA 40 0A 40
-00 00 8A 49 02 00 3E 4F 32 B0 00 02 32 C0 00 02
-03 24 8A 4E 02 00 EE 3F 30 4D FC 45 0A 43 4F 55
-4E 54 2F 83 7A 4E 8F 4E 00 00 0E 4A 3E F3 30 4D
-22 45 0A 41 4C 4C 4F 54 82 5E C8 1D 3E 4F 30 4D
-3F 40 80 1C 0E 43 84 12 1E 40 02 0D 0A 00 E4 43
-94 40 74 48 02 45 2C 45 1E 40 0B 73 74 61 63 6B
-20 65 6D 70 74 79 08 41 32 40 0A 40 40 FF 34 45
-1E 40 09 46 52 41 4D 20 66 75 6C 6C 08 41 B2 40
-38 49 22 49 0D 41 42 4F 52 54 22 00 0D 12 84 12
-42 45 0A 40 08 41 C2 48 D4 45 52 46 02 27 0D 12
-84 12 06 44 58 46 C0 46 B0 40 9E 49 66 45 AA 48
-CC 44 07 5B 27 5D 0D 12 84 12 8E 49 0A 40 0A 40
-C2 48 C2 48 D4 45 A2 49 03 5B 82 43 BC 1D 30 4D
-00 00 02 5D B2 43 BC 1D 30 4D 1A 45 11 50 4F 53
-54 50 4F 4E 45 00 0D 12 84 12 06 44 58 46 C0 46
-B0 40 9E 49 2C 45 AC 40 F6 49 0A 40 0A 40 C2 48
-C2 48 0A 40 C2 48 C2 48 D4 45 00 00 02 3A 30 12
-4C 4A 92 B3 C8 1D A2 63 C8 1D 0D 12 84 12 06 44
-58 46 14 4A 3D 41 5A D3 5A 53 0A 5E 19 42 CC 1D
-08 4E 5E 4E 01 00 3E F0 0F 00 0E 5E 09 5E 3E 4F
-E8 58 00 00 82 48 B4 1D 82 49 B6 1D 82 4A B8 1D
-82 4F BA 1D 2A 52 82 4A C8 1D 30 41 BA 40 0D 12
-FC FF BA 40 84 12 FE FF B2 43 BC 1D 30 4D 82 9F
-BA 1D 66 25 84 12 1E 40 0F 73 74 61 63 6B 20 6D
-69 73 6D 61 74 63 68 21 12 41 B8 49 03 3B 82 93
-BC 1D F4 26 0D 12 84 12 0A 40 D4 45 C2 48 5E 4A
-BA 49 D4 45 00 00 12 49 4D 4D 45 44 49 41 54 45
-18 42 B4 1D D8 D3 00 00 30 4D 0C 49 0C 43 52 45
-41 54 45 00 B0 12 02 4A BA 40 86 12 FC FF 8A 4A
-FE FF 3A 3D DE 43 0A 44 4F 45 53 3E 1A 42 B8 1D
-BA 40 85 12 00 00 8A 4D 02 00 3D 41 30 4D FC 49
-0E 3A 4E 4F 4E 41 4D 45 30 12 4C 4A 2F 83 8F 4E
-00 00 1A 42 C8 1D 1A B3 0A 63 0E 4A 39 40 12 02
-08 49 98 3F 96 4A 05 49 53 00 0D 12 82 93 BC 1D
-08 20 84 12 8E 49 18 4B 3D 41 BE 4F 02 00 3E 4F
-30 4D 84 12 A6 49 0A 40 1A 4B C2 48 D4 45 AC 4A
-08 43 4F 44 45 00 B0 12 02 4A A2 82 C8 1D 61 3C
-EE 45 0E 48 44 4E 43 4F 44 45 B2 40 06 4C CC 1D
-F2 3F 00 00 0E 45 4E 44 43 4F 44 45 0D 12 84 12
-5E 4A 64 4B 3D 41 92 42 D0 1D CC 1D 5D 3C 30 4B
-0E 43 4F 44 45 4E 4E 4D 30 12 3A 4B B7 3F 00 00
-0A 43 4F 4C 4F 4E 1A 42 C8 1D BA 40 0D 12 00 00
-BA 40 84 12 02 00 A2 52 C8 1D B2 43 BC 1D E3 3F
-00 00 0A 4C 4F 32 48 49 A2 83 C8 1D 1A 42 C8 1D
-EF 3F 42 4B 0B 48 49 32 4C 4F A2 53 C8 1D 1A 42
-C8 1D 8A 4A FE FF 82 43 BC 1D B9 3F CE 4B B2 40
-E0 4B D0 1D 82 4E CE 1D 30 40 66 45 85 12 CC 4B
-CC 49 40 58 3C 5A 4E 58 D6 5D 10 46 BA 46 B6 5C
-B4 4B 06 4B E0 4A 7C 4A 5C 58 E8 4C 20 5A 00 00
-00 00 85 12 CC 4B 62 53 E6 51 08 54 0E 51 6A 51
-B8 51 94 52 4E 54 30 50 54 51 00 00 00 00 A2 4B
-20 4F 00 00 BC 52 00 4C B2 40 E0 4B CE 1D 82 43
-D0 1D 30 4D 3B 40 0A 00 BA 49 00 00 2A 53 2B 83
-FB 23 30 41 00 00 0E 52 53 54 5F 53 45 54 39 40
-C8 1D 3A 40 42 18 B0 12 34 4C 30 4D 46 4C 0E 52
-53 54 5F 52 45 54 39 40 42 18 2C 49 3A 40 C8 1D
-B0 12 34 4C 1A 42 CA 1D 3B 40 10 00 09 4A 08 49
-29 83 18 48 FE FF 0C 98 FC 2B 89 48 00 00 1B 83
-F6 23 2A 4A 0A 93 F0 23 30 4D 0E 93 E4 37 39 40
-10 00 29 83 B9 43 80 FF FC 23 B9 40 10 42 FE FF
-29 83 B9 40 FA 41 FE FF 39 90 AE FF F9 23 39 40
-10 18 B2 49 BC FF 3B 40 10 00 3A 40 3A 18 B0 12
-38 4C 82 43 4A 18 C7 3F DA 4C B2 4E 42 18 BE 12
-3E 4F 3D 41 C0 3F C2 49 0C 4D 41 52 4B 45 52 00
-12 12 C6 1D 0D 12 84 12 06 44 58 46 C0 46 AC 40
-06 4D FA 44 9A 48 08 4D 3E 4F 3D 41 B2 41 C6 1D
-B0 12 02 4A BA 40 85 12 FC FF BA 40 D8 4C FE FF
-28 83 8A 48 00 00 BA 40 82 40 02 00 A2 52 C8 1D
-18 42 B4 1D 19 42 B6 1D A8 49 FE FF 89 48 00 00
-30 4D 12 12 C6 1D 84 12 58 46 C0 46 AC 40 72 4D
-52 4D 3C 4E 3C 80 87 12 0A 24 1C 53 02 20 2E 4E
-06 3C BE 90 D8 4C 00 00 01 20 3E 52 2E 83 21 53
-30 41 6A 47 AC 40 7A 4D 6E 4D 7C 4D B2 41 C6 1D
-30 41 92 83 C6 1D 3E 40 28 00 0A 4E 3D 15 B0 12
-42 4D 15 20 3E 40 2B 00 B0 12 42 4D 06 20 3E 40
-2D 00 B0 12 42 4D 92 83 C6 1D 0E 12 1E 41 02 00
-84 12 58 46 6A 47 AC 40 9E 49 BC 4D 3E 51 3A 17
-30 41 B0 12 82 4D 19 42 C8 1D 89 4E 00 00 A2 53
-C8 1D 3E 40 29 00 92 53 C6 1D 1A 42 C6 1D 3D 15
-84 12 58 46 6A 47 AC 40 F4 4D EC 4D 3E 90 10 00
-E6 2B 7C 2D F6 4D A2 41 C6 1D E1 3F 03 20 B0 12
-DA 4D 43 3C 7A 90 23 00 24 20 B0 12 8A 4D 3C 40
-00 03 0E 93 1C 24 3C 40 10 03 1E 93 18 24 3C 40
-20 03 2E 93 14 24 3C 40 20 02 2E 92 10 24 3C 40
-30 02 3E 92 0C 24 3C 40 30 03 3E 93 08 24 3C 40
-30 00 19 42 C8 1D A2 53 C8 1D 89 4E 00 00 3E 4F
-30 4D 7A 90 26 00 05 20 3C 40 10 02 B0 12 8A 4D
-F0 3F 7A 90 40 00 14 20 3C 40 20 00 B0 12 D6 4D
-0C 20 3C D0 10 00 3E 40 2B 00 B0 12 DA 4D 92 92
-C2 1D C6 1D 02 24 92 53 C6 1D 8E 10 0C 5E DF 3F
-3C D0 10 00 B0 12 C2 4D F2 3F 03 20 B0 12 DA 4D
-F5 3F 7A 90 26 00 03 20 3C D0 82 00 D7 3F 3C D0
-80 00 B0 12 C2 4D EA 3F 0C 43 1B 42 C8 1D A2 53
-C8 1D 3A 40 20 00 19 42 C6 1D 19 52 C4 1D 7A 99
-FE 27 5A 49 FF FF 19 82 C4 1D 82 49 C6 1D 7A 90
-52 00 30 4D 00 00 08 52 45 54 49 00 0D 12 84 12
-0A 40 00 13 C2 48 D4 45 0A 40 2C 00 B8 4E FC 4D
-06 44 C2 4E 9A 4E 08 4F 3D 41 2C DE 8B 4C 00 00
-9E 3F 00 00 06 4D 4F 56 85 12 F8 4E 00 40 14 4F
-0A 4D 4F 56 2E 42 85 12 F8 4E 40 40 00 00 06 41
-44 44 85 12 F8 4E 00 50 2E 4F 0A 41 44 44 2E 42
-85 12 F8 4E 40 50 3A 4F 08 41 44 44 43 00 85 12
-F8 4E 00 60 48 4F 0C 41 44 44 43 2E 42 00 85 12
-F8 4E 40 60 80 4B 08 53 55 42 43 00 85 12 F8 4E
-00 70 66 4F 0C 53 55 42 43 2E 42 00 85 12 F8 4E
-40 70 74 4F 06 53 55 42 85 12 F8 4E 00 80 84 4F
-0A 53 55 42 2E 42 85 12 F8 4E 40 80 90 4F 06 43
-4D 50 85 12 F8 4E 00 90 9E 4F 0A 43 4D 50 2E 42
-85 12 F8 4E 40 90 00 00 08 44 41 44 44 00 85 12
-F8 4E 00 A0 B8 4F 0C 44 41 44 44 2E 42 00 85 12
-F8 4E 40 A0 E6 4E 06 42 49 54 85 12 F8 4E 00 B0
-D6 4F 0A 42 49 54 2E 42 85 12 F8 4E 40 B0 E2 4F
-06 42 49 43 85 12 F8 4E 00 C0 F0 4F 0A 42 49 43
-2E 42 85 12 F8 4E 40 C0 FC 4F 06 42 49 53 85 12
-F8 4E 00 D0 0A 50 0A 42 49 53 2E 42 85 12 F8 4E
-40 D0 00 00 06 58 4F 52 85 12 F8 4E 00 E0 24 50
-0A 58 4F 52 2E 42 85 12 F8 4E 40 E0 56 4F 06 41
-4E 44 85 12 F8 4E 00 F0 3E 50 0A 41 4E 44 2E 42
-85 12 F8 4E 40 F0 06 44 B8 4E FC 4D 5E 50 0A 4C
-3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4D 3F 16 50
-06 52 52 43 85 12 56 50 00 10 70 50 0A 52 52 43
-2E 42 85 12 56 50 40 10 AA 4F 08 53 57 50 42 00
-85 12 56 50 80 10 7C 50 06 52 52 41 85 12 56 50
-00 11 98 50 0A 52 52 41 2E 42 85 12 56 50 40 11
-8A 50 06 53 58 54 85 12 56 50 80 11 00 00 08 50
-55 53 48 00 85 12 56 50 00 12 BE 50 0C 50 55 53
-48 2E 42 00 85 12 56 50 40 12 B2 50 08 43 41 4C
-4C 00 85 12 56 50 80 12 1A 53 0E 4A 84 12 48 46
-1E 40 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
-12 41 DC 50 06 53 3E 3D 86 12 00 38 04 51 04 53
-3C 00 86 12 00 34 CC 50 06 30 3E 3D 86 12 00 30
-18 51 04 30 3C 00 86 12 00 30 54 4B 04 55 3C 00
-86 12 00 2C 2C 51 06 55 3E 3D 86 12 00 28 22 51
-06 30 3C 3E 86 12 00 24 40 51 04 30 3D 00 86 12
-00 20 00 00 04 49 46 00 1A 42 C8 1D 8A 4E 00 00
-A2 53 C8 1D 0E 4A 30 4D C6 4F 08 54 48 45 4E 00
-1A 42 C8 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11
-3A 90 00 02 B2 2F 88 DA 00 00 30 4D 36 51 08 45
-4C 53 45 00 1A 42 C8 1D BA 40 00 3C 00 00 A2 53
-C8 1D 2F 83 8F 4A 00 00 E3 3F A4 50 0A 42 45 47
-49 4E 30 40 32 40 8E 51 0A 55 4E 54 49 4C 3A 4F
-08 4E 3E 4F 19 42 C8 1D 2A 83 0A 89 0A 11 3A 90
-00 FE 8B 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
-C8 1D 30 4D 4A 50 0A 41 47 41 49 4E 0A 4E 38 40
-00 3C E7 3F 00 00 0A 57 48 49 4C 45 0D 12 84 12
-58 51 EE 44 D4 45 AC 51 0C 52 45 50 45 41 54 00
-0D 12 84 12 EC 51 70 51 D4 45 1C 52 3D 41 08 4E
-3E 4F 2A 48 B2 92 C6 1D CB 2F 98 42 C8 1D 00 00
-30 4D 08 52 06 42 57 31 85 12 1A 52 00 00 34 52
-06 42 57 32 85 12 1A 52 00 00 40 52 06 42 57 33
-85 12 1A 52 00 00 58 52 3D 41 1A 42 C8 1D 28 4E
-8E 43 00 00 B2 92 C6 1D 86 2B BA 4F 00 00 A2 53
-C8 1D 8E 4A 00 00 3E 4F 30 4D 00 00 06 46 57 31
-85 12 56 52 00 00 7C 52 06 46 57 32 85 12 56 52
-00 00 88 52 06 46 57 33 85 12 56 52 00 00 F6 51
-08 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C
-0D 12 84 12 8E 49 9A 48 D4 45 00 00 0A 3F 47 4F
-54 4F 3E 90 00 30 F4 27 3E E0 00 04 3E B0 00 10
-EF 27 3E E0 00 08 EC 3F C2 4E 0A 40 2C 00 58 46
-6A 47 AC 40 9E 49 06 44 B8 4E 9A 4E EE 52 0A 4E
-3E 4F 1A 83 F9 32 29 4E 59 0E 0A 28 08 4C 59 0A
-01 28 0C 8A 08 8A 38 90 10 00 EE 2E 5A 0E AD 3E
-2A 92 EA 2E 8A 10 5A 06 A8 3E 4C 52 08 52 52 43
-4D 00 85 12 D8 52 50 00 1C 53 08 52 52 41 4D 00
-85 12 D8 52 50 01 2A 53 08 52 4C 41 4D 00 85 12
-D8 52 50 02 38 53 08 52 52 55 4D 00 85 12 D8 52
-50 03 4A 51 0A 50 55 53 48 4D 85 12 D8 52 00 15
-54 53 08 50 4F 50 4D 00 85 12 D8 52 00 17 D2 C3
-23 02 E2 B2 60 02 02 24 30 40 FA 41 1A 52 04 20
-19 62 06 20 92 43 14 20 C2 4A 15 20 8A 10 C2 4A
-16 20 C2 49 17 20 89 10 C2 49 18 20 B0 12 E2 53
-5A 53 FC 23 39 40 05 00 D2 49 14 20 4E 06 82 93
-46 06 05 24 92 B3 6C 06 FD 27 C2 93 4C 06 59 83
-F3 2F 19 83 0B 30 F2 43 4E 06 82 93 46 06 03 24
-92 B3 6C 06 FD 27 5A 92 4C 06 F3 23 30 41 1A 43
-E1 3F 19 43 3A 43 8A 10 C2 4A 4E 06 82 93 46 06
-05 24 92 B3 6C 06 FD 27 C2 93 4C 06 19 83 F3 23
-5A 42 4C 06 30 41 46 53 12 52 5F 53 45 43 54 5F
-57 58 1C D3 F2 40 51 00 19 20 B0 12 6E 53 38 20
-B0 12 E2 53 6A 53 04 24 FB 23 D9 42 4C 06 FF 1D
-F2 43 4E 06 03 43 19 53 39 90 01 02 F6 23 F2 43
-4E 06 3C C0 03 00 D2 D3 23 02 30 41 A0 52 12 57
-5F 53 45 43 54 5F 57 58 2C D3 F0 40 58 00 BB CB
-B0 12 6E 53 15 20 3A 40 FE FF 29 43 B0 12 E6 53
-D2 49 00 1E 4E 06 03 43 19 53 39 90 00 02 F8 23
-39 40 03 00 B0 12 E4 53 7A C0 E1 00 6A 82 D9 27
-8C 10 1C 52 4C 06 D2 D3 23 02 84 12 5A 43 1E 40
-0B 3C 20 53 44 20 45 72 72 6F 72 21 AE 54 2F 83
-8F 4E 00 00 B2 40 10 00 BE 1D 0E 4C 84 12 14 46
-12 41 B0 12 58 41 E2 B2 60 02 8A 20 B2 40 81 A9
-40 06 B2 40 18 00 46 06 D2 D3 25 02 B2 D0 C0 04
-0C 02 92 C3 40 06 39 40 6E 01 29 83 89 43 02 20
-FC 23 39 42 B0 12 E4 53 D2 C3 23 02 2C 42 B2 40
-95 00 14 20 B2 40 00 40 18 20 B0 12 DE 53 02 24
-30 40 90 54 B0 12 E2 53 7A 93 FC 23 B2 40 87 AA
-14 20 92 43 16 20 B2 40 00 48 18 20 B0 12 DE 53
-29 42 B0 12 E4 53 92 43 14 20 82 43 16 20 78 43
-3C 42 B2 40 00 77 18 20 B0 12 DE 53 B2 40 40 69
-18 20 B0 12 9C 53 03 24 58 83 F3 23 D9 3F 0C 5C
-A2 43 16 20 B2 40 00 50 18 20 B0 12 9C 53 D0 23
-92 D3 40 06 82 43 46 06 92 C3 40 06 0A 43 09 43
-B0 12 12 54 38 40 00 1E 92 48 C6 01 04 20 92 48
-C8 01 06 20 5C 48 C2 01 7C 80 0C 00 08 24 5C 53
-06 24 6C 52 04 24 3C 50 07 20 30 40 96 54 09 43
-B0 12 12 54 A2 43 2C 20 19 48 0E 00 82 49 08 20
-1A 48 24 00 82 4A 0A 20 09 5A 82 49 0C 20 09 5A
-58 48 0D 00 82 48 12 20 09 88 09 88 82 49 10 20
-30 41 82 43 32 20 30 40 56 41 92 4B 0E 00 22 20
-92 4B 10 00 24 20 5A 42 23 20 58 42 22 20 59 42
-24 20 89 10 0A D9 88 10 08 58 0A 6A 88 10 08 58
-30 41 1A 52 08 20 09 43 FC 3E 92 42 22 20 D0 04
-92 42 24 20 D2 04 92 42 12 20 C8 04 92 42 E4 04
-1A 20 92 42 E6 04 1C 20 92 52 10 20 1A 20 82 63
-1C 20 30 41 92 4B 0E 00 22 20 92 4B 10 00 24 20
-B0 12 1A 56 5A 4B 03 00 82 5A 1A 20 82 63 1C 20
-30 41 3C 42 3B 40 38 20 09 43 CB 93 02 00 10 24
-9B 92 24 20 0C 00 04 20 9B 92 22 20 0A 00 A3 25
-09 4B 3B 50 1C 00 3B 90 18 21 EF 23 0C 5C 9B 3D
-0C 43 82 4B 32 20 8B 49 00 00 09 93 0A 24 99 52
-C6 1D 16 00 4A 93 05 34 C9 93 02 00 02 34 5A 59
-02 00 CB 4A 02 00 CB 43 03 00 9B 42 1A 20 04 00
-9B 42 1C 20 06 00 18 42 30 20 8B 48 08 00 9B 48
-1A 1E 0A 00 9B 48 14 1E 0C 00 9B 48 1A 1E 0E 00
-9B 48 14 1E 10 00 9B 48 1C 1E 12 00 9B 48 1E 1E
-14 00 82 43 1E 20 6A 93 1A 24 A4 37 8B 43 16 00
-7A 93 02 24 07 38 35 3C B2 40 1C 21 A0 40 B2 40
-7E 43 BC 42 9B 42 C2 1D 18 00 9B 82 C6 1D 18 00
-9B 42 C4 1D 1A 00 9B 52 C6 1D 1A 00 22 3C 30 41
-1B 42 32 20 82 43 1E 20 B2 90 00 02 20 20 3F 20
-BB 80 00 02 12 00 8B 73 14 00 DB 53 03 00 DB 92
-12 20 03 00 0E 28 CB 43 03 00 B0 12 EA 55 B0 12
-12 56 8B 43 10 00 9B 48 00 1E 0E 00 9B 48 02 1E
-10 00 B2 40 00 02 20 20 8B 93 14 00 0B 20 92 9B
-12 00 1E 20 1C 2C BB 90 00 02 12 00 03 2C 92 4B
-12 00 20 20 B0 12 44 56 1A 42 1A 20 19 42 1C 20
-38 3E CB 43 02 00 2B 4B 82 4B 32 20 0B 93 06 24
-92 4B 16 00 1E 20 B0 12 72 57 22 C3 30 41 1B 42
-32 20 0B 93 FB 27 EB 92 02 00 04 20 B0 12 30 5B
-B0 12 20 5C CB 93 02 00 E4 37 1E 4B 18 00 9F 4B
-1A 00 00 00 31 50 06 00 3D 41 B0 12 A2 57 02 24
-30 40 74 43 B2 40 3C 1D A0 40 B2 40 BE 42 BC 42
-30 40 5A 43 09 93 07 24 F8 90 20 00 00 1E 03 20
-18 53 19 83 F9 23 30 41 5E 4C 0B 52 45 41 44 22
-5A 43 20 3C C6 4A 09 44 45 4C 22 00 6A 43 1A 3C
-8C 49 0D 57 52 49 54 45 22 00 6A 42 13 3C 74 49
-0F 41 50 50 45 4E 44 22 7A 42 0C 3C 70 4B 0A 43
-4C 4F 53 45 B0 12 BE 57 30 4D D4 48 0B 4C 4F 41
-44 22 7A 43 2F 83 8F 4E 00 00 0E 4A 82 93 BC 1D
-0B 24 0D 12 84 12 0A 40 0A 40 C2 48 C2 48 42 45
-0A 40 98 58 C2 48 D4 45 0D 12 84 12 0A 40 22 00
-58 46 12 49 96 58 3D 41 36 4F 0E 56 82 4E 36 20
-A2 43 22 20 82 43 24 20 1C 43 0E 96 8C 24 F6 90
-3A 00 01 00 01 20 26 53 F6 90 5C 00 00 00 03 20
-16 53 0E 96 66 24 82 46 34 20 B0 12 1A 56 15 42
-12 20 B0 12 98 57 2C 43 0A 43 08 4A 58 0E 08 58
-82 48 30 20 C8 93 00 1E 60 24 39 42 F8 96 00 1E
-04 20 18 53 19 83 FA 23 16 53 F6 90 2E 00 FF FF
-19 24 39 50 03 00 B0 12 04 58 06 20 F6 90 5C 00
-FF FF 29 24 0E 96 27 28 16 42 34 20 1A 53 3A 90
-10 00 DB 23 92 53 1A 20 82 63 1C 20 15 83 D1 23
-2C 42 49 3C F6 90 2E 00 FE FF EE 27 B0 12 04 58
-EB 23 39 40 03 00 F8 96 00 1E 04 20 18 53 19 83
-FA 23 09 3C 0E 96 E0 2F F6 90 5C 00 FF FF DC 23
-B0 12 04 58 D9 23 18 42 30 20 92 48 1A 1E 22 20
-92 48 14 1E 24 20 F8 B0 10 00 0B 1E 13 24 82 93
-24 20 05 20 82 93 22 20 02 20 A2 43 22 20 0E 96
-9A 23 92 42 22 20 2C 20 92 42 24 20 2E 20 8F 43
-00 00 03 3C 2A 4F B0 12 62 56 35 40 B6 40 36 40
-C4 40 3A 4F 3E 4F 0A 93 04 24 7A 93 39 20 0C 93
-02 20 30 40 74 43 0D 12 84 12 5A 43 1E 40 0B 3C
-20 4F 70 65 6E 45 72 72 6F 72 B2 40 AC 54 E2 B2
-60 02 02 24 30 40 80 41 92 12 3E 18 3F 40 7E 1C
-8F 43 00 00 0D 12 84 12 1E 40 0F 4C 4F 41 44 22
-20 42 4F 4F 54 2E 34 54 48 22 B2 40 42 49 1A 58
-08 42 4F 4F 54 00 B2 40 DE 59 AE 42 30 4D 12 47
-0C 4E 4F 42 4F 4F 54 00 B2 40 80 41 AE 42 30 4D
-1A 93 89 20 0C 93 C7 23 30 4D 10 5A 08 52 45 41
-44 00 2F 83 8F 4E 00 00 1E 42 32 20 B0 12 30 57
-1E 82 32 20 30 4D 08 4A 1A 52 08 20 B0 12 66 5A
-0A 48 1A 52 0C 20 09 43 30 40 58 54 3C 42 0A 12
-2A 41 82 9A 0A 20 2B 25 B0 12 12 56 88 93 02 1E
-03 20 88 93 00 1E 08 24 28 52 38 90 00 02 F6 2B
-91 53 00 00 08 43 EC 3F A2 41 26 20 82 48 28 20
-0C 43 B8 43 00 1E 6A 41 B8 40 FF 0F 02 1E 08 11
-8A 10 08 5A 5A 41 01 00 0A 11 08 10 82 4A 24 20
-82 48 22 20 2A 41 B0 12 56 5A 3A 41 30 41 90 4B
-0A 00 50 C5 90 4B 0C 00 4C C5 B0 12 F6 55 82 4A
-26 20 82 48 28 20 0A 12 B0 12 12 56 1A 48 00 1E
+82 43 BC 1D 30 40 94 4C 8F 93 02 00 02 20 2F 52
+BF 3F 28 43 B0 12 46 41 B0 12 D0 40 F4 44 AC 40
+42 41 54 43 1E 40 05 1B 5B 37 6D 40 DE 43 0A 40
+02 18 16 45 42 46 DE 43 1E 40 04 1B 5B 30 6D 00
+DE 43 2A 49 48 43 A2 B3 EC 06 FD 27 C2 48 CE 06
+30 41 B2 D0 C0 07 C0 06 18 42 02 18 08 11 38 D0
+00 04 82 48 D4 06 F2 D0 03 00 6A 02 92 C3 C0 06
+A2 D2 EA 06 92 C3 30 01 30 41 92 12 3E 18 84 12
+54 43 1E 40 07 0D 0A 1B 5B 37 6D 40 DE 43 0A 40
+02 18 16 45 42 46 0A 40 23 00 38 43 42 46 1E 40
+19 46 61 73 74 46 6F 72 74 68 20 A9 4A 2E 4D 2E
+54 68 6F 6F 72 65 6E 73 2C 20 DE 43 0A 40 40 FF
+32 40 0A 45 0E 46 1E 40 0A 62 79 74 65 73 20 66
+72 65 65 00 B2 40 36 41 00 00 06 53 59 53 0E 93
+07 38 02 24 1E B3 04 28 30 12 7A 41 01 12 70 3F
+82 4E 08 18 92 12 3A 18 F2 B0 40 00 40 02 02 20
+B2 43 08 18 B2 40 04 A5 20 01 B2 D0 03 00 04 01
+B2 D0 10 00 00 01 B2 40 80 5A 5C 01 31 40 E0 1C
+3F 40 80 1C B2 D3 06 02 B2 40 FC FF 02 02 B2 43
+26 02 B2 D3 22 02 B2 43 42 02 B2 D3 46 02 B2 43
+62 02 B2 D3 66 02 F2 43 26 03 F2 D3 22 03 F2 40
+A5 00 61 01 82 43 66 01 B2 40 33 00 64 01 D2 43
+61 01 39 40 40 00 18 42 00 18 18 83 FE 23 19 83
+FA 23 F2 D0 10 00 2A 03 F2 40 A5 00 A1 04 F2 C0
+40 00 A2 04 B2 42 B0 01 39 40 00 10 29 83 89 43
+00 1C FC 23 1E 42 08 18 82 43 08 18 3E F3 02 20
+1E 42 9E 01 B0 12 D0 40 7A 41 00 00 0C 41 43 43
+45 50 54 00 30 40 B8 42 0A 4E 2E 4F 0A 5E 3B 40
+0A 00 3C 40 20 00 3D 15 9B 3E 21 52 A2 C2 EC 06
+B2 B0 10 00 C0 06 94 22 3A 17 92 B3 EC 06 FD 27
+58 42 CC 06 48 9B 0E 24 48 9C 06 2C 78 92 F5 23
+2E 9F F3 27 1E 83 F1 3F 0E 9A EF 2F CE 48 00 00
+1E 53 EB 3F 3E 8F 08 4C 1B 3C 00 00 06 4B 45 59
+30 40 14 43 58 43 B0 12 46 41 2F 83 8F 4E 00 00
+92 B3 EC 06 FD 27 1E 42 CC 06 B0 12 44 41 30 4D
+00 00 08 45 4D 49 54 00 30 40 3C 43 08 4E 3E 4F
+A2 B3 EC 06 FD 27 C2 48 CE 06 30 4D 32 43 08 45
+43 48 4F 00 B2 40 C2 48 46 43 38 40 05 00 B0 12
+46 41 30 4D 00 00 0C 4E 4F 45 43 48 4F 00 B2 40
+30 4D 46 43 28 42 F3 3F 0D 12 3D 40 98 43 1B 42
+32 20 9B 42 1E 20 16 00 3A 4F 09 4E 0E 43 1C 42
+1E 20 1B 42 20 20 02 3C 9A 43 2D 83 0C 9B 16 2C
+58 4C 00 1E 1C 53 78 90 20 00 09 2C 78 90 0A 00
+F5 23 82 4C 1E 20 3D 41 3C 40 20 00 A4 3F 09 9E
+BF 27 CA 48 00 00 1A 53 1E 53 BA 3F 1A 15 B0 12
+3A 57 19 17 DC 3F 00 00 08 54 59 50 45 00 0D 12
+3D 40 EE 43 29 4F 8F 4E 00 00 7E 49 A5 3F F0 43
+2D 83 2F 83 5E 83 F7 23 3D 41 2F 53 3E 4F 30 4D
+86 12 20 00 0C 4E 38 4F 3C 9F 39 4F 3E 4F 51 22
+F9 98 00 00 4E 22 19 53 1C 83 FA 23 2D 53 30 4D
+2F 53 3E 4F 1E 83 45 22 9B 24 0C 43 0D 5B 45 4C
+53 45 5D 00 0D 12 84 12 0A 40 00 00 0E 45 00 44
+52 46 0C 49 B0 40 7C 44 14 40 06 5B 54 48 45 4E
+5D 00 04 44 5A 44 20 44 3E 44 14 40 06 5B 45 4C
+53 45 5D 00 04 44 6C 44 20 44 3C 44 1E 40 04 5B
+49 46 5D 00 04 44 3E 44 B2 40 3C 44 1E 40 05 0D
+6B 6F 20 0A DE 43 9A 40 84 40 B2 40 3E 44 2C 44
+0D 5B 54 48 45 4E 5D 00 30 4D 90 44 09 5B 49 46
+5D 00 0E 93 3E 4F C6 27 30 4D 9C 44 13 5B 44 45
+46 49 4E 45 44 5D 0D 12 84 12 00 44 52 46 BA 46
+5E 48 CE 45 AC 44 17 5B 55 4E 44 45 46 49 4E 45
+44 5D 0D 12 84 12 00 44 52 46 BA 46 DE 44 3D 41
+2F 53 1E 83 0E 7E 30 4D 3F 12 2F 83 8F 4E 00 00
+3E 41 30 4D 8F 4E FE FF 2F 83 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 F7 3F 3E 8F 3E E3 1E 53
+30 4D 00 00 02 40 2E 4E 30 4D AC 42 02 21 BE 4F
+00 00 3E 4F 30 4D 0E 5E 0E 7E 3E E3 30 4D 3E 8F
+01 28 0E F3 30 4D DA 41 05 53 22 00 82 43 C0 1D
+0D 12 84 12 0A 40 1E 40 BC 48 0A 40 22 00 52 46
+52 45 B2 40 20 00 C0 1D 1A 53 1A B3 82 6A C8 1D
+3E 4F 3D 41 30 4D 66 43 05 2E 22 00 0D 12 84 12
+3C 45 0A 40 DE 43 BC 48 CE 45 00 00 04 3C 23 00
+B2 40 B2 1D B2 1D 30 4D 38 45 02 23 1B 42 BE 1D
+2C 4F 2F 83 B0 12 46 40 BF 4F 00 00 7A 90 0A 00
+02 28 7A 50 07 00 7A 50 30 00 92 83 B2 1D 18 42
+B2 1D C8 4A 00 00 30 4D 8A 45 04 23 53 00 0D 12
+84 12 8C 45 C6 45 2D 83 09 DE 09 93 E1 23 3D 41
+30 4D BA 45 04 23 3E 00 9F 42 B2 1D 00 00 3E 40
+B2 1D 2E 8F 30 4D 00 00 08 48 4F 4C 44 00 4A 4E
+3E 4F DB 3F D4 45 08 53 49 47 4E 00 0E 93 3E 4F
+7A 40 2D 00 D2 33 30 4D 4E 43 04 55 2E 00 0C 43
+2F 83 8F 4E 00 00 0E 4C 1D 15 3E F3 06 34 BF E3
+00 00 3E E3 9F 53 00 00 0E 63 84 12 80 45 00 44
+EE 45 BE 45 EA 44 FC 45 D8 45 DE 43 CE 45 68 45
+02 2E 0E 93 E4 37 3C 43 E3 3F 00 00 08 57 4F 52
+44 00 3C 40 C2 1D 39 4C 38 4C 09 58 38 5C 2A 4C
+09 98 1D 24 7E 98 FC 27 18 83 1B 42 C0 1D F8 90
+27 00 00 00 04 20 E8 98 02 00 01 20 0B 43 CA 4C
+00 00 09 98 0C 24 7C 48 4E 9C 09 24 1A 53 7C 90
+61 00 F5 2B 7C 90 7B 00 F2 2F 4C 8B F0 3F 18 82
+C4 1D 82 48 C6 1D 1E 42 C8 1D 0A 8E CE 4A 00 00
+30 4D 00 00 08 46 49 4E 44 00 2F 83 0C 4E 3B 40
+CE 1D 3E 4B 0E 93 1E 24 58 4C 01 00 78 F0 0F 00
+08 58 0E 58 2E 53 1E 4E FE FF 0E 93 F2 27 09 4E
+78 49 48 11 68 9C F7 23 0A 4C FA 99 01 00 F3 23
+1A 53 58 83 FA 23 19 B3 09 63 0C 49 6E 4E 1E F3
+01 20 1E 83 8F 4C 00 00 30 4D 40 46 0E 3E 4E 55
+4D 42 45 52 1B 42 BE 1D 3C 4F 38 4F 29 4F 2F 82
+82 4B C0 04 6A 4C 7A 80 3A 00 03 28 7A 80 07 00
+12 28 7A 50 0A 00 0A 9B 22 C3 0D 2C 82 49 E0 04
+82 48 E2 04 19 42 E4 04 18 42 E6 04 09 5A 08 63
+1C 53 1E 83 E7 23 8F 4C 00 00 8F 48 02 00 8F 49
+04 00 30 4D 32 C0 00 02 3F 82 8F 4E 06 00 08 43
+09 43 1B 42 BE 1D 0C 4E 0E 43 1E 15 3D 40 C4 47
+7E 4C 6A 4C 7A 80 2D 00 16 24 CA 2F 2B 43 7A 52
+14 24 3B 52 6A 53 11 24 3B 40 10 00 5A 93 0D 24
+6A 92 41 20 3E 90 03 00 3E 20 FC 9C 01 00 6C 4C
+8F 4C 04 00 38 3C B1 43 02 00 1E 83 FC 9C 00 00
+E0 23 AE 27 C6 47 2F 24 2D 83 6A 4C 7A 90 5F 00
+BF 27 32 B0 00 02 27 20 32 D0 00 02 7A 80 2E 00
+B7 27 6A 53 20 20 0A 4E 09 43 8F 49 02 00 5A 83
+09 4A 09 5C 69 49 79 80 3A 00 03 28 79 80 07 00
+0C 28 79 50 0A 00 09 9B 08 2C 8F 49 00 00 0E 4B
+2C 15 B0 12 3E 40 2A 17 E8 3F 9F 4F 04 00 02 00
+AF 4F 04 00 4A 93 1D 17 06 24 32 C0 00 02 3F 50
+06 00 0E F3 30 4D 2F 53 9F 4F 02 00 04 00 BF 4F
+00 00 3E E3 09 20 3E E3 BF E3 02 00 BF E3 00 00
+9F 53 02 00 8F 63 00 00 32 B0 00 02 01 20 2F 53
+30 4D 7C 45 03 5C 92 42 C2 1D C6 1D 30 4D 0D 12
+84 12 84 40 00 44 52 46 B0 40 96 49 BA 46 80 48
+0A 4E 3E 4F 3D 40 9A 48 6D 27 3D 40 74 48 1A E2
+BC 1D 14 24 0E 12 3E 4F 30 41 9C 48 3E 4F 3D 40
+74 48 19 20 DE 53 00 00 68 4E 08 5E F8 40 3F 00
+00 00 3D 40 72 4A 2A 3C 64 48 02 2C A2 53 C8 1D
+1A 42 C8 1D 8A 4E FE FF 3E 4F 30 4D BA 48 0F 4C
+49 54 45 52 41 4C 82 93 BC 1D 0D 24 09 4E 1A 42
+C8 1D A2 52 C8 1D BA 40 0A 40 00 00 8A 49 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 03 24 8A 4E 02 00
+EE 3F 30 4D F6 45 0A 43 4F 55 4E 54 2F 83 7A 4E
+8F 4E 00 00 0E 4A 3E F3 30 4D 1C 45 0A 41 4C 4C
+4F 54 82 5E C8 1D 3E 4F 30 4D 3F 40 80 1C 0E 43
+84 12 1E 40 02 0D 0A 00 DE 43 94 40 6E 48 FC 44
+26 45 1E 40 0B 73 74 61 63 6B 20 65 6D 70 74 79
+08 41 32 40 0A 40 40 FF 2E 45 1E 40 09 46 52 41
+4D 20 66 75 6C 6C 08 41 B2 40 32 49 1C 49 0D 41
+42 4F 52 54 22 00 0D 12 84 12 3C 45 0A 40 08 41
+BC 48 CE 45 4C 46 02 27 0D 12 84 12 00 44 52 46
+BA 46 B0 40 98 49 60 45 A4 48 C6 44 07 5B 27 5D
+0D 12 84 12 88 49 0A 40 0A 40 BC 48 BC 48 CE 45
+9C 49 03 5B 82 43 BC 1D 30 4D 00 00 02 5D B2 43
+BC 1D 30 4D 14 45 11 50 4F 53 54 50 4F 4E 45 00
+0D 12 84 12 00 44 52 46 BA 46 B0 40 98 49 26 45
+AC 40 F0 49 0A 40 0A 40 BC 48 BC 48 0A 40 BC 48
+BC 48 CE 45 00 00 02 3A 30 12 46 4A 92 B3 C8 1D
+A2 63 C8 1D 0D 12 84 12 00 44 52 46 0E 4A 3D 41
+5A D3 5A 53 0A 5E 19 42 CC 1D 08 4E 5E 4E 01 00
+3E F0 0F 00 0E 5E 09 5E 3E 4F E8 58 00 00 82 48
+B4 1D 82 49 B6 1D 82 4A B8 1D 82 4F BA 1D 2A 52
+82 4A C8 1D 30 41 BA 40 0D 12 FC FF BA 40 84 12
+FE FF B2 43 BC 1D 30 4D 82 9F BA 1D 66 25 84 12
+1E 40 0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63
+68 21 12 41 B2 49 03 3B 82 93 BC 1D F4 26 0D 12
+84 12 0A 40 CE 45 BC 48 58 4A B4 49 CE 45 00 00
+12 49 4D 4D 45 44 49 41 54 45 18 42 B4 1D D8 D3
+00 00 30 4D 06 49 0C 43 52 45 41 54 45 00 B0 12
+FC 49 BA 40 86 12 FC FF 8A 4A FE FF 3A 3D D8 43
+0A 44 4F 45 53 3E 1A 42 B8 1D BA 40 85 12 00 00
+8A 4D 02 00 3D 41 30 4D F6 49 0E 3A 4E 4F 4E 41
+4D 45 30 12 46 4A 2F 83 8F 4E 00 00 1A 42 C8 1D
+1A B3 0A 63 0E 4A 39 40 12 02 08 49 98 3F 90 4A
+05 49 53 00 0D 12 82 93 BC 1D 08 20 84 12 88 49
+12 4B 3D 41 BE 4F 02 00 3E 4F 30 4D 84 12 A0 49
+0A 40 14 4B BC 48 CE 45 A6 4A 08 43 4F 44 45 00
+B0 12 FC 49 A2 82 C8 1D 61 3C E8 45 0E 48 44 4E
+43 4F 44 45 B2 40 00 4C CC 1D F2 3F 00 00 0E 45
+4E 44 43 4F 44 45 0D 12 84 12 58 4A 5E 4B 3D 41
+92 42 D0 1D CC 1D 5D 3C 2A 4B 0E 43 4F 44 45 4E
+4E 4D 30 12 34 4B B7 3F 00 00 0A 43 4F 4C 4F 4E
+1A 42 C8 1D BA 40 0D 12 00 00 BA 40 84 12 02 00
+A2 52 C8 1D B2 43 BC 1D E3 3F 00 00 0A 4C 4F 32
+48 49 A2 83 C8 1D 1A 42 C8 1D EF 3F 3C 4B 0B 48
+49 32 4C 4F A2 53 C8 1D 1A 42 C8 1D 8A 4A FE FF
+82 43 BC 1D B9 3F C8 4B B2 40 DA 4B D0 1D 82 4E
+CE 1D 30 40 60 45 85 12 C6 4B C6 49 8C 58 88 5A
+9A 58 AA 5D 0A 46 B4 46 94 5C AE 4B 00 4B DA 4A
+76 4A A8 58 E2 4C 6C 5A 00 00 00 00 85 12 C6 4B
+5C 53 E0 51 02 54 08 51 64 51 B2 51 8E 52 44 54
+2A 50 4E 51 00 00 00 00 9C 4B 1A 4F 00 00 B6 52
+FA 4B B2 40 DA 4B CE 1D 82 43 D0 1D 30 4D 3B 40
+0A 00 BA 49 00 00 2A 53 2B 83 FB 23 30 41 00 00
+0E 52 53 54 5F 53 45 54 39 40 C8 1D 3A 40 42 18
+B0 12 2E 4C 30 4D 40 4C 0E 52 53 54 5F 52 45 54
+39 40 42 18 2C 49 3A 40 C8 1D B0 12 2E 4C 1A 42
+CA 1D 3B 40 10 00 09 4A 08 49 29 83 18 48 FE FF
+0C 98 FC 2B 89 48 00 00 1B 83 F6 23 2A 4A 0A 93
+F0 23 30 4D 0E 93 E4 37 39 40 10 00 29 83 B9 43
+80 FF FC 23 B9 40 0A 42 FE FF 29 83 B9 40 F4 41
+FE FF 39 90 AE FF F9 23 39 40 10 18 B2 49 BC FF
+3B 40 10 00 3A 40 3A 18 B0 12 32 4C 82 43 4A 18
+C7 3F D4 4C B2 4E 42 18 BE 12 3E 4F 3D 41 C0 3F
+BC 49 0C 4D 41 52 4B 45 52 00 12 12 C6 1D 0D 12
+84 12 00 44 52 46 BA 46 AC 40 00 4D F4 44 94 48
+02 4D 3E 4F 3D 41 B2 41 C6 1D B0 12 FC 49 BA 40
+85 12 FC FF BA 40 D2 4C FE FF 28 83 8A 48 00 00
+BA 40 82 40 02 00 A2 52 C8 1D 18 42 B4 1D 19 42
+B6 1D A8 49 FE FF 89 48 00 00 30 4D 12 12 C6 1D
+84 12 52 46 BA 46 AC 40 6C 4D 4C 4D 3C 4E 3C 80
+87 12 0A 24 1C 53 02 20 2E 4E 06 3C BE 90 D2 4C
+00 00 01 20 3E 52 2E 83 21 53 30 41 64 47 AC 40
+74 4D 68 4D 76 4D B2 41 C6 1D 30 41 92 83 C6 1D
+3E 40 28 00 0A 4E 3D 15 B0 12 3C 4D 15 20 3E 40
+2B 00 B0 12 3C 4D 06 20 3E 40 2D 00 B0 12 3C 4D
+92 83 C6 1D 0E 12 1E 41 02 00 84 12 52 46 64 47
+AC 40 98 49 B6 4D 3E 51 3A 17 30 41 B0 12 7C 4D
+19 42 C8 1D 89 4E 00 00 A2 53 C8 1D 3E 40 29 00
+92 53 C6 1D 1A 42 C6 1D 3D 15 84 12 52 46 64 47
+AC 40 EE 4D E6 4D 3E 90 10 00 E6 2B 7C 2D F0 4D
+A2 41 C6 1D E1 3F 03 20 B0 12 D4 4D 43 3C 7A 90
+23 00 24 20 B0 12 84 4D 3C 40 00 03 0E 93 1C 24
+3C 40 10 03 1E 93 18 24 3C 40 20 03 2E 93 14 24
+3C 40 20 02 2E 92 10 24 3C 40 30 02 3E 92 0C 24
+3C 40 30 03 3E 93 08 24 3C 40 30 00 19 42 C8 1D
+A2 53 C8 1D 89 4E 00 00 3E 4F 30 4D 7A 90 26 00
+05 20 3C 40 10 02 B0 12 84 4D F0 3F 7A 90 40 00
+14 20 3C 40 20 00 B0 12 D0 4D 0C 20 3C D0 10 00
+3E 40 2B 00 B0 12 D4 4D 92 92 C2 1D C6 1D 02 24
+92 53 C6 1D 8E 10 0C 5E DF 3F 3C D0 10 00 B0 12
+BC 4D F2 3F 03 20 B0 12 D4 4D F5 3F 7A 90 26 00
+03 20 3C D0 82 00 D7 3F 3C D0 80 00 B0 12 BC 4D
+EA 3F 0C 43 1B 42 C8 1D A2 53 C8 1D 3A 40 20 00
+19 42 C6 1D 19 52 C4 1D 7A 99 FE 27 5A 49 FF FF
+19 82 C4 1D 82 49 C6 1D 7A 90 52 00 30 4D 00 00
+08 52 45 54 49 00 0D 12 84 12 0A 40 00 13 BC 48
+CE 45 0A 40 2C 00 B2 4E F6 4D 00 44 BC 4E 94 4E
+02 4F 3D 41 2C DE 8B 4C 00 00 9E 3F 00 00 06 4D
+4F 56 85 12 F2 4E 00 40 0E 4F 0A 4D 4F 56 2E 42
+85 12 F2 4E 40 40 00 00 06 41 44 44 85 12 F2 4E
+00 50 28 4F 0A 41 44 44 2E 42 85 12 F2 4E 40 50
+34 4F 08 41 44 44 43 00 85 12 F2 4E 00 60 42 4F
+0C 41 44 44 43 2E 42 00 85 12 F2 4E 40 60 7A 4B
+08 53 55 42 43 00 85 12 F2 4E 00 70 60 4F 0C 53
+55 42 43 2E 42 00 85 12 F2 4E 40 70 6E 4F 06 53
+55 42 85 12 F2 4E 00 80 7E 4F 0A 53 55 42 2E 42
+85 12 F2 4E 40 80 8A 4F 06 43 4D 50 85 12 F2 4E
+00 90 98 4F 0A 43 4D 50 2E 42 85 12 F2 4E 40 90
+00 00 08 44 41 44 44 00 85 12 F2 4E 00 A0 B2 4F
+0C 44 41 44 44 2E 42 00 85 12 F2 4E 40 A0 E0 4E
+06 42 49 54 85 12 F2 4E 00 B0 D0 4F 0A 42 49 54
+2E 42 85 12 F2 4E 40 B0 DC 4F 06 42 49 43 85 12
+F2 4E 00 C0 EA 4F 0A 42 49 43 2E 42 85 12 F2 4E
+40 C0 F6 4F 06 42 49 53 85 12 F2 4E 00 D0 04 50
+0A 42 49 53 2E 42 85 12 F2 4E 40 D0 00 00 06 58
+4F 52 85 12 F2 4E 00 E0 1E 50 0A 58 4F 52 2E 42
+85 12 F2 4E 40 E0 50 4F 06 41 4E 44 85 12 F2 4E
+00 F0 38 50 0A 41 4E 44 2E 42 85 12 F2 4E 40 F0
+00 44 B2 4E F6 4D 58 50 0A 4C 3C F0 70 00 8A 10
+3A F0 0F 00 0C DA 4D 3F 10 50 06 52 52 43 85 12
+50 50 00 10 6A 50 0A 52 52 43 2E 42 85 12 50 50
+40 10 A4 4F 08 53 57 50 42 00 85 12 50 50 80 10
+76 50 06 52 52 41 85 12 50 50 00 11 92 50 0A 52
+52 41 2E 42 85 12 50 50 40 11 84 50 06 53 58 54
+85 12 50 50 80 11 00 00 08 50 55 53 48 00 85 12
+50 50 00 12 B8 50 0C 50 55 53 48 2E 42 00 85 12
+50 50 40 12 AC 50 08 43 41 4C 4C 00 85 12 50 50
+80 12 1A 53 0E 4A 84 12 42 46 1E 40 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 12 41 D6 50 06 53
+3E 3D 86 12 00 38 FE 50 04 53 3C 00 86 12 00 34
+C6 50 06 30 3E 3D 86 12 00 30 12 51 04 30 3C 00
+86 12 00 30 4E 4B 04 55 3C 00 86 12 00 2C 26 51
+06 55 3E 3D 86 12 00 28 1C 51 06 30 3C 3E 86 12
+00 24 3A 51 04 30 3D 00 86 12 00 20 00 00 04 49
+46 00 1A 42 C8 1D 8A 4E 00 00 A2 53 C8 1D 0E 4A
+30 4D C0 4F 08 54 48 45 4E 00 1A 42 C8 1D 08 4E
+3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 B2 2F
+88 DA 00 00 30 4D 30 51 08 45 4C 53 45 00 1A 42
+C8 1D BA 40 00 3C 00 00 A2 53 C8 1D 2F 83 8F 4A
+00 00 E3 3F 9E 50 0A 42 45 47 49 4E 30 40 32 40
+88 51 0A 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C8 1D 2A 83 0A 89 0A 11 3A 90 00 FE 8B 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C8 1D 30 4D 44 50
+0A 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+0A 57 48 49 4C 45 0D 12 84 12 52 51 E8 44 CE 45
+A6 51 0C 52 45 50 45 41 54 00 0D 12 84 12 E6 51
+6A 51 CE 45 16 52 3D 41 08 4E 3E 4F 2A 48 B2 92
+C6 1D CB 2F 98 42 C8 1D 00 00 30 4D 02 52 06 42
+57 31 85 12 14 52 00 00 2E 52 06 42 57 32 85 12
+14 52 00 00 3A 52 06 42 57 33 85 12 14 52 00 00
+52 52 3D 41 1A 42 C8 1D 28 4E 8E 43 00 00 B2 92
+C6 1D 86 2B BA 4F 00 00 A2 53 C8 1D 8E 4A 00 00
+3E 4F 30 4D 00 00 06 46 57 31 85 12 50 52 00 00
+76 52 06 46 57 32 85 12 50 52 00 00 82 52 06 46
+57 33 85 12 50 52 00 00 F0 51 08 47 4F 54 4F 00
+2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 84 12 88 49
+94 48 CE 45 00 00 0A 3F 47 4F 54 4F 3E 90 00 30
+F4 27 3E E0 00 04 3E B0 00 10 EF 27 3E E0 00 08
+EC 3F BC 4E 0A 40 2C 00 52 46 64 47 AC 40 98 49
+00 44 B2 4E 94 4E E8 52 0A 4E 3E 4F 1A 83 F9 32
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 EE 2E 5A 0E AD 3E 2A 92 EA 2E 8A 10
+5A 06 A8 3E 46 52 08 52 52 43 4D 00 85 12 D2 52
+50 00 16 53 08 52 52 41 4D 00 85 12 D2 52 50 01
+24 53 08 52 4C 41 4D 00 85 12 D2 52 50 02 32 53
+08 52 52 55 4D 00 85 12 D2 52 50 03 44 51 0A 50
+55 53 48 4D 85 12 D2 52 00 15 4E 53 08 50 4F 50
+4D 00 85 12 D2 52 00 17 D2 C3 23 02 E2 B2 60 02
+02 24 30 40 F4 41 1A 52 04 20 19 62 06 20 92 43
+14 20 C2 4A 15 20 8A 10 C2 4A 16 20 C2 49 17 20
+89 10 C2 49 18 20 B0 12 DC 53 5A 53 FC 23 39 40
+05 00 D2 49 14 20 4E 06 82 93 46 06 05 24 92 B3
+6C 06 FD 27 C2 93 4C 06 59 83 F3 2F 19 83 0B 30
+F2 43 4E 06 82 93 46 06 03 24 92 B3 6C 06 FD 27
+5A 92 4C 06 F3 23 30 41 1A 43 E1 3F 19 43 3A 43
+8A 10 C2 4A 4E 06 82 93 46 06 05 24 92 B3 6C 06
+FD 27 C2 93 4C 06 19 83 F3 23 5A 42 4C 06 30 41
+40 53 12 52 5F 53 45 43 54 5F 57 58 1C D3 F2 40
+51 00 19 20 B0 12 68 53 36 20 B0 12 DC 53 6A 53
+04 24 FB 23 D9 42 4C 06 FF 1D F2 43 4E 06 03 43
+19 53 39 90 03 02 F6 23 3C C0 03 00 D2 D3 23 02
+30 41 9A 52 12 57 5F 53 45 43 54 5F 57 58 2C D3
+F0 40 58 00 C5 CB B0 12 68 53 15 20 3A 40 FE FF
+29 43 B0 12 E0 53 D2 49 00 1E 4E 06 03 43 19 53
+39 90 00 02 F8 23 39 40 03 00 B0 12 DE 53 7A C0
+E1 00 6A 82 D9 27 8C 10 1C 52 4C 06 D2 D3 23 02
+84 12 54 43 1E 40 0B 3C 20 53 44 20 45 72 72 6F
+72 21 A4 54 2F 83 8F 4E 00 00 B2 40 10 00 BE 1D
+0E 4C 84 12 0E 46 12 41 82 43 32 20 30 40 50 41
+B0 12 52 41 E2 B2 60 02 8A 20 B2 40 81 A9 40 06
+B2 40 18 00 46 06 D2 D3 25 02 B2 D0 C0 04 0C 02
+92 C3 40 06 39 40 6E 01 29 83 89 43 02 20 FC 23
+39 42 B0 12 DE 53 D2 C3 23 02 2C 42 B2 40 95 00
+14 20 B2 40 00 40 18 20 B0 12 D8 53 02 24 30 40
+86 54 B0 12 DC 53 7A 93 FC 23 B2 40 87 AA 14 20
+92 43 16 20 B2 40 00 48 18 20 B0 12 D8 53 29 42
+B0 12 DE 53 92 43 14 20 82 43 16 20 78 43 3C 42
+B2 40 00 77 18 20 B0 12 D8 53 B2 40 40 69 18 20
+B0 12 96 53 03 24 58 83 F3 23 D9 3F 0C 5C A2 43
+16 20 B2 40 00 50 18 20 B0 12 96 53 D0 23 92 D3
+40 06 82 43 46 06 92 C3 40 06 0A 43 09 43 B0 12
+0C 54 38 40 00 1E 92 48 C6 01 04 20 92 48 C8 01
+06 20 5C 48 C2 01 7C 80 0C 00 08 24 5C 53 06 24
+6C 52 04 24 3C 50 07 20 30 40 8C 54 09 43 B0 12
+0C 54 A2 43 2C 20 19 48 0E 00 82 49 08 20 1A 48
+24 00 82 4A 0A 20 09 5A 82 49 0C 20 09 5A 58 48
+0D 00 82 48 12 20 09 88 09 88 82 49 10 20 30 41
+1A 52 08 20 09 43 12 3F 9B 52 1E 20 12 00 8B 63
+14 00 1A 42 1A 20 19 42 1C 20 29 3F 92 4B 0E 00
+22 20 92 4B 10 00 24 20 5A 42 23 20 58 42 22 20
+59 42 24 20 89 10 0A D9 88 10 08 58 0A 6A 88 10
+08 58 30 41 92 42 22 20 D0 04 92 42 24 20 D2 04
+92 42 12 20 C8 04 92 42 E4 04 1A 20 92 42 E6 04
+1C 20 92 52 10 20 1A 20 82 63 1C 20 30 41 92 4B
+0E 00 22 20 92 4B 10 00 24 20 B0 12 24 56 5A 4B
+03 00 82 5A 1A 20 82 63 1C 20 30 41 3C 42 3B 40
+38 20 09 43 CB 93 02 00 10 24 9B 92 24 20 0C 00
+04 20 9B 92 22 20 0A 00 C4 25 09 4B 3B 50 1C 00
+3B 90 18 21 EF 23 0C 5C BC 3D 0C 43 82 4B 32 20
+8B 49 00 00 09 93 0A 24 99 52 C6 1D 16 00 4A 93
+05 34 C9 93 02 00 02 34 5A 59 02 00 CB 4A 02 00
+CB 43 03 00 9B 42 1A 20 04 00 9B 42 1C 20 06 00
+18 42 30 20 8B 48 08 00 9B 48 1A 1E 0A 00 9B 48
+14 1E 0C 00 9B 48 1A 1E 0E 00 9B 48 14 1E 10 00
+9B 48 1C 1E 12 00 9B 48 1E 1E 14 00 82 43 1E 20
+6A 93 1A 24 A4 37 8B 43 16 00 7A 93 02 24 07 38
+35 3C B2 40 1C 21 A0 40 B2 40 78 43 B6 42 9B 42
+C2 1D 18 00 9B 82 C6 1D 18 00 9B 42 C4 1D 1A 00
+9B 52 C6 1D 1A 00 22 3C 30 41 1B 42 32 20 82 43
+1E 20 B2 90 00 02 20 20 3F 20 BB 80 00 02 12 00
+8B 73 14 00 DB 53 03 00 DB 92 12 20 03 00 0E 28
+CB 43 03 00 B0 12 FC 55 B0 12 E0 55 8B 43 10 00
+9B 48 00 1E 0E 00 9B 48 02 1E 10 00 B2 40 00 02
+20 20 8B 93 14 00 0B 20 92 9B 12 00 1E 20 1C 2C
+BB 90 00 02 12 00 03 2C 92 4B 12 00 20 20 B0 12
+4E 56 1A 42 1A 20 19 42 1C 20 30 3E CB 43 02 00
+2B 4B 82 4B 32 20 0B 93 06 24 92 4B 16 00 1E 20
+B0 12 7C 57 22 C3 30 41 1B 42 32 20 0B 93 FB 27
+EB 92 02 00 1E 38 B0 12 E8 55 1A 4B 04 00 19 4B
+06 00 B0 12 0C 54 18 4B 08 00 B0 12 78 5B 88 49
+12 1E 88 4A 16 1E 88 49 18 1E 98 4B 12 00 1C 1E
+98 4B 14 00 1E 1E 1A 4B 04 00 19 4B 06 00 B0 12
+4E 54 CB 93 02 00 CA 37 1E 4B 18 00 9F 4B 1A 00
+00 00 31 50 06 00 3D 41 B0 12 AC 57 02 24 30 40
+6E 43 B2 40 3C 1D A0 40 B2 40 B8 42 B6 42 30 40
+54 43 09 93 07 24 F8 90 20 00 00 1E 03 20 18 53
+19 83 F9 23 30 41 92 4B 0A 00 22 20 92 4B 0C 00
+24 20 D2 3E 58 4C 0B 52 45 41 44 22 5A 43 20 3C
+C0 4A 09 44 45 4C 22 00 6A 43 1A 3C 86 49 0D 57
+52 49 54 45 22 00 6A 42 13 3C 6E 49 0F 41 50 50
+45 4E 44 22 7A 42 0C 3C 6A 4B 0A 43 4C 4F 53 45
+B0 12 C8 57 30 4D CE 48 0B 4C 4F 41 44 22 7A 43
+2F 83 8F 4E 00 00 0E 4A 82 93 BC 1D 0B 24 0D 12
+84 12 0A 40 0A 40 BC 48 BC 48 3C 45 0A 40 E4 58
+BC 48 CE 45 0D 12 84 12 0A 40 22 00 52 46 0C 49
+E2 58 3D 41 36 4F 0E 56 82 4E 36 20 A2 43 22 20
+82 43 24 20 1C 43 0E 96 8C 24 F6 90 3A 00 01 00
+01 20 26 53 F6 90 5C 00 00 00 03 20 16 53 0E 96
+66 24 82 46 34 20 B0 12 24 56 15 42 12 20 B0 12
+A2 57 2C 43 0A 43 08 4A 58 0E 08 58 82 48 30 20
+C8 93 00 1E 60 24 39 42 F8 96 00 1E 04 20 18 53
+19 83 FA 23 16 53 F6 90 2E 00 FF FF 19 24 39 50
+03 00 B0 12 42 58 06 20 F6 90 5C 00 FF FF 29 24
+0E 96 27 28 16 42 34 20 1A 53 3A 90 10 00 DB 23
+92 53 1A 20 82 63 1C 20 15 83 D1 23 2C 42 49 3C
+F6 90 2E 00 FE FF EE 27 B0 12 42 58 EB 23 39 40
+03 00 F8 96 00 1E 04 20 18 53 19 83 FA 23 09 3C
+0E 96 E0 2F F6 90 5C 00 FF FF DC 23 B0 12 42 58
+D9 23 18 42 30 20 92 48 1A 1E 22 20 92 48 14 1E
+24 20 F8 B0 10 00 0B 1E 13 24 82 93 24 20 05 20
+82 93 22 20 02 20 A2 43 22 20 0E 96 9A 23 92 42
+22 20 2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C
+2A 4F B0 12 6C 56 35 40 B6 40 36 40 C4 40 3A 4F
+3E 4F 0A 93 04 24 7A 93 39 20 0C 93 02 20 30 40
+6E 43 0D 12 84 12 54 43 1E 40 0B 3C 20 4F 70 65
+6E 45 72 72 6F 72 B2 40 A2 54 92 12 3E 18 E2 B2
+60 02 02 24 30 40 7E 41 3F 40 7E 1C 8F 43 00 00
+0D 12 84 12 1E 40 0F 4C 4F 41 44 22 20 42 4F 4F
+54 2E 34 54 48 22 B2 40 3C 49 66 58 08 42 4F 4F
+54 00 B2 40 2A 5A A8 42 30 4D 0C 47 0C 4E 4F 42
+4F 4F 54 00 B2 40 7A 41 A8 42 30 4D 1A 93 6E 20
+0C 93 C7 23 30 4D 5C 5A 08 52 45 41 44 00 2F 83
+8F 4E 00 00 1E 42 32 20 B0 12 3A 57 1E 82 32 20
+30 4D B0 12 56 58 0A 12 B0 12 E0 55 1A 48 00 1E
88 43 00 1E 19 48 02 1E 88 43 02 1E 39 F0 FF 0F
39 90 FF 0F 02 20 3A 93 10 24 82 4A 22 20 82 49
-24 20 B0 12 F6 55 2A 91 E9 27 09 4A 2A 41 81 49
-00 00 B0 12 56 5A 2A 41 DF 3F 3A 41 30 40 56 5A
-9B 52 1E 20 12 00 8B 63 14 00 1A 42 1A 20 19 42
-1C 20 30 40 58 54 2A 93 BC 20 0C 93 09 20 F8 40
-E5 00 00 1E B0 12 3A 5B B0 12 CE 5A B0 12 BE 57
-30 4D F2 B0 40 00 A2 04 29 20 F2 B0 10 00 A2 04
-FC 27 5A 42 B0 04 4A 11 59 42 B4 04 F2 40 20 00
-C0 04 D2 42 B1 04 C8 04 1A 52 E4 04 D2 42 B5 04
-C8 04 19 52 E4 04 D2 42 B2 04 C0 04 B2 40 00 08
-C8 04 1A 52 E4 04 92 42 B6 04 C0 04 B2 80 BC 07
-C0 04 B2 40 00 02 C8 04 19 52 E4 04 30 41 22 2A
-2B 2C 2F 3A 3B 3C 3D 3E 3F 5B 5C 5D 7C 2E 29 92
-06 28 39 80 03 00 B0 12 0E 5C 39 40 03 00 7A 4B
-C8 4A 00 1E 82 9B 36 20 12 28 0D 12 3D 40 0F 00
-3C 40 BE 5B 7A 9C F3 27 1D 83 FC 23 3D 41 6A 9C
-E6 27 3A 80 21 00 EB 3B 18 53 19 83 E8 23 09 93
-06 24 F8 40 20 00 00 1E 18 53 19 83 FA 23 30 41
-1A 4B 04 00 19 4B 06 00 B0 12 12 54 18 4B 08 00
-B0 12 62 5B 88 49 12 1E 88 4A 16 1E 88 49 18 1E
-98 4B 12 00 1C 1E 98 4B 14 00 1E 1E 1A 4B 04 00
-19 4B 06 00 30 40 58 54 B2 40 00 02 1E 20 1B 42
-32 20 B0 12 30 5B 82 43 1E 20 DB 53 03 00 DB 92
-12 20 03 00 1D 28 B0 12 EA 55 08 12 0A 12 B0 12
-6C 5A 2A 91 03 24 2A 41 B0 12 12 56 3A 41 38 41
-98 42 22 20 00 1E 98 42 24 20 02 1E B0 12 56 5A
-AB 42 02 00 9B 42 22 20 0E 00 9B 42 24 20 10 00
-30 40 50 56 32 58 0A 57 52 49 54 45 B0 12 58 5C
-30 4D 2A 92 54 20 2C 93 0E 24 0C 93 3D 24 0D 12
-84 12 1E 40 0C 3C 20 57 72 69 74 65 45 72 72 6F
-72 00 B2 40 AC 54 0A 43 08 43 B0 12 6C 5A B0 12
-98 57 18 42 30 20 F8 40 20 00 0B 1E B0 12 62 5B
-88 43 0C 1E 88 4A 0E 1E 88 49 10 1E 98 42 24 20
-14 1E 98 42 22 20 1A 1E 88 43 1C 1E 88 43 1E 1E
-2C 42 1B 42 34 20 82 9B 36 20 D1 27 FB 90 2E 00
-00 00 CD 27 39 40 0B 00 B0 12 DE 5B B0 12 3A 5B
-2A 42 B0 12 62 56 30 4D B0 12 CE 5A 8B 43 12 00
-8B 43 14 00 90 4B 0A 00 CA C2 90 4B 0C 00 C6 C2
-B0 12 F6 55 B0 12 6C 5A B0 12 A0 5C 30 4D 2C 93
-BA 27 0C 93 AC 23 EB 42 02 00 58 4B 13 00 59 4B
-14 00 89 10 09 58 58 4B 15 00 5B 42 12 20 0A 43
-3C 42 08 11 09 10 4A 10 1C 83 0B 11 FA 2B 0A 11
-1C 83 FD 37 1B 42 32 20 19 5B 0A 00 18 6B 0C 00
-8B 49 0E 00 8B 48 10 00 CB 4A 03 00 B0 12 94 57
-1A 4B 12 00 BB C0 FF 01 12 00 3A F0 FF 01 82 4A
-1E 20 30 4D 26 58 10 54 45 52 4D 32 53 44 22 00
-0D 12 84 12 3A 58 E8 5D 0A 43 7D 40 0A 00 B0 12
-44 41 3A 90 00 02 03 28 B0 12 58 5C 0A 43 92 B3
-EC 06 FD 27 59 42 CC 06 69 92 11 24 CA 49 00 1E
-1A 53 49 9D EE 23 A2 B3 EC 06 FD 27 F2 40 0D 00
-CE 06 A2 B3 EC 06 FD 27 C2 4D CE 06 E0 3F C2 9D
-CC 06 FD 23 82 4A 1E 20 B0 12 BE 57 3D 41 30 4D
+24 20 B0 12 08 56 2A 91 E9 27 09 4A 2A 41 81 49
+00 00 B0 12 EC 5A 2A 41 DF 3F 3A 41 08 4A 1A 52
+08 20 B0 12 FC 5A 0A 48 1A 52 0C 20 09 43 30 40
+4E 54 3C 42 0A 12 2A 41 82 9A 0A 20 CF 24 B0 12
+E0 55 88 93 02 1E 03 20 88 93 00 1E 08 24 28 52
+38 90 00 02 F6 2B 91 53 00 00 08 43 EC 3F 0C 43
+B8 43 00 1E 6A 41 B8 40 FF 0F 02 1E 08 11 8A 10
+08 5A 5A 41 01 00 0A 11 08 10 82 4A 24 20 82 48
+22 20 2A 41 B0 12 EC 5A 3A 41 30 41 2A 93 A0 20
+0C 93 09 20 F8 40 E5 00 00 1E B0 12 F2 55 B0 12
+A2 5A B0 12 C8 57 30 4D F2 B0 40 00 A2 04 29 20
+F2 B0 10 00 A2 04 FC 27 5A 42 B0 04 4A 11 59 42
+B4 04 F2 40 20 00 C0 04 D2 42 B1 04 C8 04 1A 52
+E4 04 D2 42 B5 04 C8 04 19 52 E4 04 D2 42 B2 04
+C0 04 B2 40 00 08 C8 04 1A 52 E4 04 92 42 B6 04
+C0 04 B2 80 BC 07 C0 04 B2 40 00 02 C8 04 19 52
+E4 04 30 41 22 2A 2B 2C 2F 3A 3B 3C 3D 3E 3F 5B
+5C 5D 7C 2E 29 92 06 28 39 80 03 00 B0 12 24 5C
+39 40 03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28
+0D 12 3D 40 0F 00 3C 40 D4 5B 7A 9C F3 27 1D 83
+FC 23 3D 41 6A 9C E6 27 3A 80 21 00 EB 3B 18 53
+19 83 E8 23 09 93 06 24 F8 40 20 00 00 1E 18 53
+19 83 FA 23 30 41 B2 40 00 02 1E 20 1B 42 32 20
+B0 12 E8 55 82 43 1E 20 DB 53 03 00 DB 92 12 20
+03 00 1D 28 B0 12 FC 55 08 12 0A 12 B0 12 02 5B
+2A 91 03 24 2A 41 B0 12 E0 55 3A 41 38 41 98 42
+22 20 00 1E 98 42 24 20 02 1E B0 12 EC 5A AB 42
+02 00 9B 42 22 20 0E 00 9B 42 24 20 10 00 30 40
+5A 56 7E 58 0A 57 52 49 54 45 B0 12 36 5C 30 4D
+2A 92 4E 20 2C 93 0E 24 0C 93 3D 24 0D 12 84 12
+1E 40 0C 3C 20 57 72 69 74 65 45 72 72 6F 72 00
+B2 40 A2 54 0A 43 38 42 B0 12 02 5B B0 12 A2 57
+18 42 30 20 F8 40 20 00 0B 1E B0 12 78 5B 88 43
+0C 1E 88 4A 0E 1E 88 49 10 1E 98 42 24 20 14 1E
+98 42 22 20 1A 1E 88 43 1C 1E 88 43 1E 1E 2C 42
+1B 42 34 20 82 9B 36 20 D1 27 FB 90 2E 00 00 00
+CD 27 39 40 0B 00 B0 12 F4 5B B0 12 F2 55 2A 42
+B0 12 6C 56 30 4D B0 12 A2 5A 8B 43 12 00 8B 43
+14 00 B0 12 56 58 B0 12 02 5B B0 12 7E 5C 30 4D
+2C 93 C0 27 0C 93 B2 23 B0 12 56 58 82 4A 2A 20
+B0 12 E0 55 1A 48 00 1E 19 48 02 1E 39 90 FF 0F
+02 20 3A 93 0A 24 82 4A 22 20 82 49 24 20 B0 12
+08 56 82 9A 2A 20 EE 27 97 3E 1A 4B 12 00 08 4A
+39 40 FF 01 8B C9 12 00 08 F9 82 48 1E 20 59 42
+12 20 19 83 8A 10 4A 11 0A F9 CB 4A 03 00 B0 12
+82 5C B0 12 A2 57 30 4D 72 58 10 54 45 52 4D 32
+53 44 22 00 0D 12 84 12 6E 43 86 58 BE 5D 0A 43
+7D 40 0A 00 B0 12 44 41 3A 90 00 02 03 28 B0 12
+36 5C 0A 43 92 B3 EC 06 FD 27 59 42 CC 06 69 92
+11 24 CA 49 00 1E 1A 53 49 9D EE 23 A2 B3 EC 06
+FD 27 F2 40 0D 00 CE 06 A2 B3 EC 06 FD 27 C2 4D
+CE 06 E0 3F C2 9D CC 06 FD 23 82 4A 1E 20 B0 12
+C8 57 3D 41 30 40 54 43
@FF80
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
-77 00 10 00 12 00 14 00 16 00 00 00 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 D0 42 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41
-FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 FA 41 10 42
+77 00 10 00 12 00 14 00 16 00 00 00 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 CA 42 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41
+F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 F4 41 0A 42
q
--- /dev/null
+@FFE0
+FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
+FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00
+q
\ No newline at end of file
; +0, +28, +48, +56, +90, +154 bytes, usefull to speed up compilation;
; the FORTH interpreter is speed up by about a square root factor of THREADS.
-FREQUENCY .equ 1 ; fully tested at 1,2,4,8,16 MHz, plus 24 MHz for MSP430FR57xx,MSP430FR2355
+FREQUENCY .equ 16 ; fully tested at 1,2,4,8,16 MHz, plus 24 MHz for MSP430FR57xx,MSP430FR2355
; ============================================================================
-;TERMINAL_I2C ; - 12 bytes; uncomment to select I2C_Master TERMINAL instead of UART TERMINAL
+TERMINAL_I2C ; - 12 bytes; uncomment to select I2C_Master TERMINAL instead of UART TERMINAL
; ============================================================================
.IFDEF TERMINAL_I2C
MYSLAVEADR .equ 18
; ============================================================================
.ELSE ; UART TERMINAL
; ============================================================================
-TERMINALBAUDRATE .equ 115200 ; choose value considering the frequency, see explanations below.
+TERMINALBAUDRATE .equ 4000000 ; choose value considering the frequency, see explanations below.
; ----------------------------------------------------------------------------
TERMINAL3WIRES ; ; + 18 bytes enable 3 wires XON/XOFF software flow control
TERMINAL4WIRES ; ; + 12 bytes enable 4 wires RTS hardware flow control
;===============================================================================
DOUBLE_INPUT ;; + 60 bytes : adds the interpretation engine for double numbers (numbers with dot)
FIXPOINT_INPUT ;; + 68 bytes : adds the interpretation engine for Q15.16 numbers (numbers with comma)
-SD_CARD_LOADER ; + 1766 bytes : to load source files from SD_card
-BOOTLOADER ; + 132 bytes : includes in WARM process the bootloader SD_CARD\BOOT.4TH.
-SD_CARD_READ_WRITE ; + 1148 bytes : to read, create, write and del files + copy text files from PC to target SD_Card
+SD_CARD_LOADER ;; + 1582 bytes : to load source files from SD_card
+BOOTLOADER ;; + 82 bytes : includes in WARM process the bootloader SD_CARD\BOOT.4TH.
+SD_CARD_READ_WRITE ;; + 1168 bytes : to read, create, write and del files + copy text files from PC to target SD_Card
;EXTENDED_MEM ; + 506 bytes : allows assembler to execute code up to 1MB (LARGE_CODE).
;EXTENDED_ASM ; + 1212 bytes : extended assembler to 20 bits datas (LARGE_DATA + LARGE_CODE).
;VOCABULARY_SET ; + 162 bytes : adds words: WORDSET FORTH hidden PREVIOUS ONLY DEFINITIONS
LITERALLOOP MOV &DP,W ;3
ADD #4,&DP ;3
MOV #lit,0(W) ;4
- MOV X,2(W) ;3 pass 1: compile n|dhi, if pass 2: compile dhi
+ MOV X,2(W) ;3 pass 1: compile n, if pass 2: compile dhi
MOV @PSP+,TOS ;2
BIT #UF9,SR ;2 double number ?
LITERALNEXT BIC #UF9,SR ;2 in all case, clear UF9
- JZ LITERALEND ;2 goto end if n|interpret_state
- MOV TOS,2(W) ;3 compile dlo over dhi
+ JZ LITERALEND ;2 no goto end if n|interpret_state
+ MOV TOS,2(W) ;3 yes compile dlo over dhi
JMP LITERALLOOP ;2
LITERALEND MOV @IP+,PC ;4
.ELSE
; which includes emptying the return stack, without displaying a message.
; ABORT is the common next of WARM and ABORT"
ABORT MOV #PSTACK,PSP ; ABORT = ALLOT + 8
- MOV #0,TOS ; and set TOS for SYS use.
+ MOV #0,TOS ; and clear TOS for SYS use.
; https://forth-standard.org/standard/core/QUIT
; QUIT -- interpret line by line the input stream
QUIT mASM2FORTH ; QUIT = ALLOT + 14
; IMMEDIATE -- make last definition immediate
IMMEDIATE MOV &LAST_NFA,Y ; Y = NFA|unused_PA_reg (as lure for :NONAME)
BIS.B #1,0(Y) ;4 FIND process more easier with bit0 than bit7
-NEXTADR MOV @IP+,PC
+ MOV @IP+,PC
FORTHWORD "CREATE"
; https://forth-standard.org/standard/core/CREATE
; FORTHWORD "DEFER"
; CALL #HEADER
; MOV #4030h,-4(W) ;4 first CELL = MOV @PC+,PC = BR #addr
-; MOV #NEXTADR,-2(W) ;3 second CELL = ...mNEXT : do nothing by default
+; MOV #NEXT_ADR,-2(W) ;3 second CELL = ...mNEXT : do nothing by default
; JMP REVEAL ; to link created word in vocabulary
; IS <name> xt --
; used like this (high level defn.):
; DEFER DISPLAY create a "do nothing" definition (2 CELLS)
-; or (low level defn.):
+; or (more elegant low level defn.):
; CODE DISPLAY create a "do nothing" definition (2 CELLS)
; MOV #NEXT_ADR,PC NEXT_ADR is the address of NEXT code: MOV @IP+,PC
; ENDCODE
.ENDIF ; VOCABULARY_SET
VOCDOES mNEXTADR ; adds WORD-SET first in context stack
.IFDEF VOCABULARY_SET
-ALSO MOV #7,Y ;2 -- move up 7 words, first word in last
- MOV #CONTEXT+12,X ;2 X=src
-ALSOLOOP MOV @X,2(X) ; X=src < Y=dst copy W bytes beginning with the end
- SUB #2,X
- SUB #1,Y
+ALSO MOV #14,X ;2 -- move up 7 words, first word in last
+ALSOLOOP SUB #2,X
+ MOV CONTEXT(X),CONTEXT+2(X) ; X=src < Y=dst copy W bytes beginning with the end
JNZ ALSOLOOP
.ELSE ; VOCABULARY_SET off ; VOCDOES is used only by the assembler to switch from HIlevel to LOlevel environments
MOV #BODYFORTH,&CONTEXT+2;4 copy BODYFORTH --> 2th cell of CONTEXT
; used variables : BufferPtr, BufferLen
; EMIT uses only IP TOS and Y registers
; ==================================;
-; FORTHWORD "SD_ACCEPT" ; SDIB_org SDIB_org CPL -- SDIB len 94 bytes
+; FORTHWORD "SD_ACCEPT" ; SDIB_org SDIB_org SDIB_len -- SDIB len 94 bytes
; ==================================;
SD_ACCEPT ; sequentially move from SD_BUF to SDIB (PAD if RAM=1k) a line of chars delimited by CRLF
; ----------------------------------; up to CPL = 80 chars
PUSH IP ;
MOV #SDA_YEMIT_RET,IP ; set YEMIT return
; ----------------------------------;
-StartNewLine ; -- SDIB_org SDIB_org CPL
-; ----------------------------------;
MOV &CurrentHdl,T ; prepare a link for a next LOADed file, if any...
MOV &BufferPtr,HDLW_BUFofst(T) ; ...see usage : GetFreeHandle(CheckCaseOfLoadFileToken)
; ----------------------------------;
-SDA_InitDstAddr ;
+; SDA_InitDstAddr ;
; ----------------------------------;
- MOV @PSP+,W ; -- SDIB_org CPL W=SDIB_ptr
- MOV TOS,X ; X=SDIB_len
+ MOV @PSP+,W ; -- SDIB_org SDIB_len W=SDIB_ptr
+ MOV TOS,X ; X=SDIB_len
MOV #0,TOS ; -- SDIB_org len of moved bytes from SD_buf to SDIB
; ----------------------------------;
SDA_InitSrcAddr ; <== SDA_GetFileNextSect
; ----------------------------------;
SDA_MoveChar ;
; ----------------------------------;
- CMP X,TOS ; 1 len = CPL ?
+ CMP TOS,X ; 1 len = SDIB_len ?
JZ YEMIT ; 2 yes, don't move char to dst
MOV.B Y,0(W) ; 3 move char to dst
ADD #1,W ; 1 increment SDIB_ptr
; ----------------------------------; 29/26~ char loop, add 14~ for readsectorW one char ==> 43/40~ ==> 186/200 kbytes/s @ 8MHz
SDA_GetFileNextSect ; -- SDIB_org len
; ----------------------------------;
- PUSHM #2,W ; save SD_buf_ptr, SD_buf_len
- CALL #Read_File ; that resets BufferPtr
- POPM #2,W ; restore SD_buf_ptr, SD_buf_len
+ PUSHM #2,W ; save SDIB_ptr, SDIB_len
+ CALL #Read_File ; which clears SD_buf_ptr and set SD_buf_len
+ POPM #2,W ; restore SDIB_ptr, SDIB_len
JMP SDA_InitSrcAddr ; loopback to end the line
; ----------------------------------;
\ No newline at end of file
; ===========================================================
; WARNING! SD_INIT DRAW BIG CURRENT; IF THE SUPPLY IS TOO WEAK
-; THE SD_CARD LOW VOLTAGE THRESHOLD MAY BE REACHED ==> SD_ERROR 8FF !
+; THE SD_CARD LOW VOLTAGE THRESHOLD MAY BE REACHED ==> SD_ERROR 4FF !
; ===========================================================
; ===========================================================
-; Init hardware SD_Card, called by WARM
+; Init SD_Card software, called by INIT_FORTH(INIT_SOFT_APP)
+; ===========================================================
+;-----------------------------------;
+INIT_SOFT_SD ; called by INI_FORTH common part of ?ABORT|RST
+;-----------------------------------;
+; CMP #0,TOS ; USERSYS = 0 ?
+; JZ INIT_HSD_END ; no hardware init if USERSYS = 0 SYS
+; MOV #HandlesLen,X ; clear all handles
+;ClearHandle SUB #2,X ; 1
+; MOV #0,FirstHandle(X) ; 3
+; JNZ ClearHandle ; 2
+ MOV #0,&CurrentHdl ;
+ MOV #INIT_SOFT_TERM,PC ; link to previous INI_SOFT_APP then RET
+;-----------------------------------;
+
+; ===========================================================
+; Init hardware SD_Card, called by WARM(INIT_HARD_APP)
; ===========================================================
; web search: "SDA simplified specifications"
ADD W,X ;
MOV X,&OrgFAT2 ; X = OrgFAT1 + FATsize = OrgFAT2 (8959)
; ----------------------------------;
- ADD W,X ; X = OrgFAT2 + FATsize = FAT32 OrgDatas = OrgRootDIR sector = 16384
-; MOV X,&OrgRootDIR ;
+ ADD W,X ; X = OrgFAT2 + FATsize = FAT32 OrgDatas (16384)
FATxx_SetFileSystemNext ;
MOV.B 13(Y),Y ; Logical sectors per cluster (8)
MOV Y,&SecPerClus ;
MOV @RSP+,PC ; RET
;-----------------------------------;
-; ===========================================================
-; Init SD_Card software, called by INIT_FORTH
-; ===========================================================
-;-----------------------------------;
-INIT_SOFT_SD ; called by INI_FORTH common part of ?ABORT|RST
-;-----------------------------------;
-; CMP #0,TOS ; USERSYS = 0 ?
-; JZ INIT_HSD_END ; no hardware init if USERSYS = 0 SYS
-; MOV #HandlesLen,X ; clear all handles
-;ClearHandle SUB #2,X ; 1
-; MOV #0,FirstHandle(X) ; 3
-; JNZ ClearHandle ; 2
- MOV #0,&CurrentHdl ;
- MOV #INIT_SOFT_TERM,PC ; link to previous INI_SOFT_APP then RET
-;-----------------------------------;
; SD card OPEN, LOAD subroutines
;-----------------------------------------------------------------------
+; ==================================;
+ReadFAT1SectorW ;SWX (< 65536)
+; ==================================;
+ ADD &OrgFAT1,W ;
+ MOV #0,X ; FAT1_SectorHI = 0
+ JMP ReadSectorWX ;SWX read FAT1SectorW
+; ----------------------------------;
+
+ .IFDEF SD_CARD_READ_WRITE
+
+; this subroutine is called by Write_File (bufferPtr=512) and CloseHandle (0 =< BufferPtr =< 512)
+; ==================================;
+WriteSD_Buf ;SWX input: T = CurrentHDL
+; ==================================;
+ ADD &BufferPtr,HDLL_CurSize(T) ; update handle CurrentSizeL
+ ADDC #0,HDLH_CurSize(T) ;
+; ==================================;
+WriteSectorHL ;SWX
+; ==================================;
+ MOV &SectorL,W ; Low
+ MOV &SectorH,X ; High
+ JMP WriteSectorWX ; ...then RET
+; ----------------------------------;
+
+ .ENDIF
+
; rules for registers use
; S = error
; T = CurrentHdl, pathname
MOV HDLH_CurClust(T),&ClusterH ;
; ==================================;
ClusterHLtoFAT1sectWofstY ;WXY Input : ClusterHL Output: ClusterHL, FATsector, W = FATsector, Y = FAToffset
-; ==================================;
+; ==================================;limited to $10000 sectors ==> $800000 clusters ==> 32GB for 4k clusters
MOV.B &ClusterL+1,W ;3 W = ClusterLoHI
MOV.B &ClusterL,Y ;3 Y = ClusterLOlo
-; input : Cluster n, max = 7FFFFF (SDcard up to 256 GB)
+; input : Cluster n, max = 7FFFFF, (SD_card up to 256 GB with 64k clusters)
; ClusterLoLo*4 = displacement in 512 bytes sector ==> FAToffset
; ClusterHiLo&ClusterLoHi +C << 1 = relative FATsector + orgFAT1 ==> FATsector
; ----------------------------------;
- MOV.B &ClusterH,X ; X = 0:ClusterHIlo
- SWPB X ; X = ClusterHIlo:0
- BIS X,W ; W = ClusterHIlo:ClusterLOhi
+ MOV.B &ClusterH,X ;3 X = 0:ClusterHIlo
+ SWPB X ;1 X = ClusterHIlo:0
+ BIS X,W ;1 W = ClusterHIlo:ClusterLOhi
; ----------------------------------;
- SWPB Y ; Y = ClusterLOlo:0
- ADD Y,Y ;1 Y = ClusterLOlo:0 << 1 (+ carry for FATsector)
- ADDC W,W ; FATsector = W = ClusterHIlo:ClusterLOhi<<1 + Carry
- SWPB Y ; Y = 0:ClusterLOlo
- ADD Y,Y ; FAToffset = Y = 0:ClusterLOlo << 1 for FAT16 and 0:ClusterLOlo<<2 for FAT32
+ SWPB Y ;1 Y = ClusterLOlo:0
+ ADD Y,Y ;1 Y = ClusterLOlo:0 << 1 (carry report for FATsector)
+ ADDC W,W ;1 FATsector = W = ClusterHIlo:ClusterLOhi<<1 + Carry
+ SWPB Y ;1 Y = 0:ClusterLOlo
+ ADD Y,Y ;1 FAToffset = Y = 0:ClusterLOlo<<2 for FAT32
MOV @RSP+,PC ;4
; ----------------------------------;
-; ==================================;
-ReadFAT1SectorW ;SWX (< 65536)
-; ==================================;
- ADD &OrgFAT1,W ;
- MOV #0,X ; FAT1_SectorHI = 0
- JMP ReadSectorWX ;SWX read FAT1SectorW
-; ----------------------------------;
-
; use no registers
; ==================================;
ClusterHLtoFrstSectorHL ; Input : ClusterHL, output: first SectorHL of ClusterHL
; ----------------------------------;
-
; ==================================;
HDLCurClusPlsOfst2sectorHL ;SWX input: HDL (CurClust, ClustOfst) output: SectorHL
; ==================================;
MOV @RSP+,PC ; Z = 1 if no more handle
; ----------------------------------;
-
; ==================================;
CloseHandle ; <== CLOSE, Read_File, TERM2SD", OPEN_DEL
; ==================================;
; ----------------------------------;
.IFDEF SD_CARD_READ_WRITE
CMP.B #4,HDLB_Token(T) ; WRITE file ?
- JNZ TestClosedToken ; no, case of DEL READ LOAD file
+ JL TestClosedToken ; no, case of DEL READ LOAD file
;; ----------------------------------; optionnal
; MOV &BufferPtr,W ;
-;FullFillZero ;the remainder of sector
+;RemFillZero ;the remainder of sector
; CMP #BytsPerSec,W ;2 buffer full ?
-; JZ CloseWriteHandle ;2 remainding of buffer is full filled with 0
+; JZ UpdateWriteSector ;2 remainding of buffer is full filled with 0
; MOV.B #0,SD_BUF(W) ;3
; ADD #1,W ;1
-; JMP FullFillZero ;2
+; JMP RemFillZero ;2
;; ----------------------------------;
-WriteBeforeClose
+UpdateWriteSector
CALL #WriteSD_Buf ;SWX
-CloseWriteHandle
- CALL #LoadUpdateSaveDirEntry ;SWXY
+; ----------------------------------;
+;Load Update Save DirEntry ;SWXY
+; ----------------------------------;
+ MOV HDLL_DIRsect(T),W ;
+ MOV HDLH_DIRsect(T),X ;
+ CALL #readSectorWX ;SWX SD_buffer = DIRsector
+ MOV HDLW_DIRofst(T),Y ; Y = DirEntryOffset
+ CALL #GetYMDHMSforDIR ; X=DATE, W=TIME
+ MOV X,SD_BUF+18(Y) ; access date
+ MOV W,SD_BUF+22(Y) ; modified time
+ MOV X,SD_BUF+24(Y) ; modified date
+ MOV HDLL_CurSize(T),SD_BUF+28(Y); save new filesize
+ MOV HDLH_CurSize(T),SD_BUF+30(Y);
+ MOV HDLL_DIRsect(T),W ;
+ MOV HDLH_DIRsect(T),X ;
+ CALL #WriteSectorWX ;SWX
+; ----------------------------------;
.ENDIF ;
; ----------------------------------;
TestClosedToken ;
MOV @RSP+,PC ;
; ----------------------------------;
-
.IFDEF SD_CARD_READ_WRITE
+; ==================================;
+HDLFrstClus2FATsecWofstY ;WXY Input: T=Handle, HDL_CurClustHL Output: ClusterHL, FATsector, W = FATsector, Y = FAToffset
+; ==================================;
+ MOV HDLL_FirstClus(T),&ClusterL ;
+ MOV HDLH_FirstClus(T),&ClusterH ;
+ JMP ClusterHLtoFAT1sectWofstY ;
+; ----------------------------------;
+
;-----------------------------------------------------------------------
; SD_READ_WRITE FORTH words
;-----------------------------------------------------------------------
; XBOOT [SYSRSTIV|USERSTIV] --
; here we are after INIT_FORTH
; performs bootstrap from SD_CARD\BOOT.4th file, ready to test SYSRSTIV|USERSYS value
-XBOOT ; BIT #1,TOS ; USERSYS request ?
- ; JNZ AbortBoot ;
- ; CMP #0,TOS ; WARM request ?
- ; JZ AbortBoot ; if yes
+XBOOT CALL &HARD_APP ; WARM first calls HARD_APP (which includes INIT_HARD_SD)
BIT.B #CD_SD,&SD_CDIN ; SD_memory in SD_Card socket ?
JZ BOOT_YES ; if yes
-AbortBoot MOV #WARM,PC ; goto WARM without return
+AbortBoot MOV #WARM+4,PC ; if no, resume with WARM+4, without return
; ----------------------------------;
-BOOT_YES CALL &HARD_APP ; CALL HARD_APP (which includes INIT_HARD_SD)
- MOV #PSTACK-2,PSP ; preserve SYSRSTIV|USERSYS in TOS for BOOT.4TH tests
+BOOT_YES MOV #PSTACK-2,PSP ; preserve SYSRSTIV|USERSYS in TOS for BOOT.4TH tests
MOV #0,0(PSP) ; set 0 for next SYS use
mDOCOL ;
.word XSQUOTE ; -- SYSRSTIV|USERSYS addr u
;Compute CMD ;
; ----------------------------------;
MOV #1,&SD_CMD_FRM ;3 $(01 00 xx xx xx CMD) set stop bit in CMD frame
-; CMP #2,&FATtype ;3 FAT32 ?
-; JZ FAT32_CMD ;2 yes
-;FAT16_CMD ; FAT16 : CMD17/24 byte address = Sector * BPB_BytsPerSec
-; ADD W,W ;1 shift left one Sector
-; ADDC.B X,X ;1
-; MOV W,&SD_CMD_FRM+2 ;3 $(01 00 ll LL xx CMD)
-; MOV.B X,&SD_CMD_FRM+4 ;3 $(01 00 ll LL hh CMD)
-; JMP WaitIdleBeforeSendCMD ;
FAT32_CMD ; FAT32 : CMD17/24 sector address
MOV.B W,&SD_CMD_FRM+1 ;3 $(01 ll xx xx xx CMD)
SWPB W ;1
; NOP ;0 NOPx adjusted to avoid SD error
SUB.B #1,X ;1
JC Send_CMD_PUT ;2 U>= : don't skip SD_CMD_FRM(0) !
-
; host must provide height clock cycles to complete operation
; here X=255, so wait for CMD return expected value with PUT FFh 256 times
-
; MOV #4,X ; to pass made in PRC SD_Card init
; MOV #16,X ; to pass Transcend SD_Card init
; MOV #32,X ; to pass Panasonic SD_Card init
; ----------------------------------;
CALL #SPI_GET ;
ADD.B #2,W ;1 W = 0 ?
- JZ ReadSectorFirstByte ;2 yes
+ JZ ReadSectorFirstByte ;2 yes, X = 0
JNZ WaitFEhResponse ;2
; ----------------------------------;
-ReadSectorLoop ; get 512+1 bytes, write 512 bytes in SD_BUF
+ReadSectorLoop ; get 512 bytes + CRC16 in SD_BUF
; ----------------------------------;
MOV.B &SD_RXBUF,SD_BUF-1(X) ; 5
ReadSectorFirstByte ; W=0
MOV.B #-1,&SD_TXBUF ; 3 put FF
NOP ; 1 NOPx adjusted to avoid read SD_error
ADD #1,X ; 1
- CMP #BytsPerSec+1,X ; 2
+ CMP #BytsPerSec+3,X ; 2
JNZ ReadSectorLoop ; 2 14 cycles loop read byte
; ----------------------------------;
- MOV.B #-1,&SD_TXBUF ; 3 put only one FF because first CRC byte is already received...
-; ----------------------------------;
ReadWriteHappyEnd ; <==== WriteSector
; ----------------------------------;
- BIC #3,S ; reset read and write errors
+ BIC #3,S ; Clear read and write errors
BIS.B #CS_SD,&SD_CSOUT ; Chip Select high
MOV @RSP+,PC ; W = 0
; ----------------------------------;
; ----------------------------------;
WriteSkipCRC16 ; CRC16 not used in SPI mode
; ----------------------------------;
- MOV #3,X ; PUT 2 bytes to skip CRC16
- CALL #SPI_X_GET ; + 1 byte to get data token in W
+ MOV #3,X ; PUT 3 times to skip CRC16
+ CALL #SPI_X_GET ; and to get data token in W
; ----------------------------------;
CheckWriteState ;
; ----------------------------------;
; 4 = CMD0 time out (GO_IDLE_STATE)
; 8 = ACMD41 time out (APP_SEND_OP_COND)
; $10 = CMD16 time out (SET_BLOCKLEN)
-; $20 = not FAT16/FAT32 media, low byte = partition ID
+; $20 = not FAT32 media, low byte = partition ID
; low byte, if CMD R1 response : %0xxx_xxxx
; 1th bit = In Idle state
ADD &SD_RXBUF,S ; add SPI(GET) return value as low byte error
SD_CARD_ID_ERROR ; <=== SD_INIT error $20 from forthMSP430FR_SD_INIT.asm
BIS.B #CS_SD,&SD_CSOUT ; Chip Select high
-; mDOCOL ;
mASM2FORTH ;
.word ECHO
.word XSQUOTE ; don't use S register
MOV TOS,0(PSP) ;
MOV #10h,&BASEADR ; select hex
MOV S,TOS ;
-; MOV #TIB_ORG,&CIB_ADR ; restore TIB as Current Input Buffer
-; MOV #BODYACCEPT,&PFAACCEPT ; restore default ACCEPT
mASM2FORTH ;
.word UDOT,ABORT_TERM ; no return...
; ----------------------------------;
; You should have received a copy of the GNU General Public License
; along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-
; ======================================================================
; READ" primitive as part of OpenPathName
; input from open: S = OpenError, W = open_type, SectorHL = DIRsectorHL,
; ==================================;
+FreeAllClusters ;SWXY input: HDLL_FirstClus(T), output:
+; ==================================;FATs are updated
+ CALL #HDLFrstClus2FATsecWofstY ;WXY output: W = FATsector, Y=FAToffset
+ PUSH W ; R-- FATsector ptr
+; ----------------------------------;
+LoadFAT1sectorWloop ;
+; ----------------------------------;
+ CALL #ReadFAT1SectorW ;SWX
+; ----------------------------------;
+GetAndFreeCluster ;
+; ----------------------------------;
+ MOV SD_BUF(Y),W ; get [clusterLO]
+ MOV #0,SD_BUF(Y) ; free CLusterLO
+GetAndFreeClusterHi ;
+ MOV SD_BUF+2(Y),X ; get [clusterHI]
+ MOV #0,SD_BUF+2(Y) ; free CLusterHI
+ClusterHiTest
+ AND #00FFFh,X ; select 12 bits significant
+ CMP #00FFFh,X ; [ClusterHI] was = 0FFFh?
+ JNE SearchNextCluster2free ; no
+ClusterLoTest ;
+ CMP #-1,W ; [ClusterLO] was = FFFFh? last cluster used for this file
+ JZ EndOfFileCluster ; yes
+; ----------------------------------;
+SearchNextCluster2free ;
+; ----------------------------------;
+ MOV W,&ClusterL ;
+ MOV X,&ClusterH ;
+ CALL #ClusterHLtoFAT1sectWofstY ;WXY W = new FATsector, new FAToffset
+ CMP @RSP,W ; new FATsector = FATsector ptr ?
+ JZ GetAndFreeCluster ; yes loop back
+ MOV W,X ; no: swap previous new FATsectors:
+ MOV @RSP,W ; W = previous FATsector
+ MOV X,0(RSP) ; R-- new FATsector
+ CALL #SaveSectorWtoFATs ;SWXY update FATs from SD_BUF to W = previous FATsector
+ MOV @RSP,W ; W = new FATsector
+ JMP LoadFAT1sectorWloop ; loop back with W = new FATsector, new FAToffset
+; ----------------------------------;
+EndOfFileCluster ;
+; ----------------------------------;
+ MOV @RSP+,W ; W = new FATsector
+; ==================================;
SaveSectorWtoFATs ;SWXY W = FATsector loaded in SD_buf
; ==================================;
MOV W,Y ; Y = W
MOV #WriteSectorWX,PC ;SWX then RET
; ----------------------------------;
+
; parse all FAT sectors until free cluster is found
; this New Cluster is marked as the end's one (-1)
; ----------------------------------;
FreeClusterFound ; X = cluster number low word in SD_BUF = FAToffset
; ----------------------------------;
- MOV @RSP,&LastFATsector ;
- MOV Y,&LastFAToffset ;
-; ----------------------------------;
MOV #0,S ; clear error
MOV #-1,SD_BUF(Y) ; mark New Cluster low word as end cluster (0xFFFF) in SD_BUF
MOV.B @RSP,W ; W = 0:FATsectorLo
; ----------------------------------;
-; ==================================;
-FreeAllClusters ;SWXY input: HDLL_FirstClus(T), output:
-; ==================================;FATs are updated
- MOV HDLL_FirstClus(T),ClusterL ;
- MOV HDLH_FirstClus(T),ClusterH ;
- CALL #ClusterHLtoFAT1sectWofstY ;WXY output: W = FATsector, Y=FAToffset
- MOV W,&LastFATsector ;
- MOV Y,&LastFAToffset ;
- PUSH W ; R-- FATsector ptr
-; ----------------------------------;
-LoadFAT1sectorWloop ;
-; ----------------------------------;
- CALL #ReadFAT1SectorW ;SWX
-; ----------------------------------;
-GetAndFreeCluster ;
-; ----------------------------------;
- MOV SD_BUF(Y),W ; get [clusterLO]
- MOV #0,SD_BUF(Y) ; free CLusterLO
-GetAndFreeClusterHi ;
- MOV SD_BUF+2(Y),X ; get [clusterHI]
- MOV #0,SD_BUF+2(Y) ; free CLusterHI
-ClusterHiTest
- AND #00FFFh,X ; select 12 bits significant
- CMP #00FFFh,X ; [ClusterHI] was = 0FFFh?
- JNE SearchNextCluster2free ; no
-ClusterLoTest ;
- CMP #-1,W ; [ClusterLO] was = FFFFh? last cluster used for this file
- JZ EndOfFileCluster ; yes
-; ----------------------------------;
-SearchNextCluster2free ;
-; ----------------------------------;
- MOV W,&ClusterL ;
- MOV X,&ClusterH ;
- CALL #ClusterHLtoFAT1sectWofstY ;WXY W = new FATsector, new FAToffset
- CMP @RSP,W ; new FATsector = FATsector ptr ?
- JZ GetAndFreeCluster ; yes loop back
- MOV W,X ; no: swap previous new FATsectors:
- MOV @RSP,W ; W = previous FATsector
- MOV X,0(RSP) ; R-- new FATsector
- CALL #SaveSectorWtoFATs ;SWXY update FATs from SD_BUF to W = previous FATsector
- MOV @RSP,W ; W = new FATsector
- JMP LoadFAT1sectorWloop ; loop back with W = new FATsector, new FAToffset
-; ----------------------------------;
-EndOfFileCluster ;
-; ----------------------------------;
- MOV @RSP+,W ;
- MOV #SaveSectorWtoFATs,PC ; update FATs
-; ----------------------------------;
-
-; this subroutine is called by Write_File (bufferPtr=512) and CloseHandle (0 =< BufferPtr =< 512)
-; ==================================;
-WriteSD_Buf ;SWX input: T = CurrentHDL
-; ==================================;
- ADD &BufferPtr,HDLL_CurSize(T) ; update handle CurrentSizeL
- ADDC #0,HDLH_CurSize(T) ;
-; ==================================;
-WriteSectorHL ;SWX
-; ==================================;
- MOV &SectorL,W ; Low
- MOV &SectorH,X ; High
- MOV #WriteSectorWX,PC ; ...then RET
; ----------------------------------;
; ==================================;
MOV.B @T+,W ; W = char of pathname
MOV.B W,SD_BUF(Y) ; to DIRentry
-; CMP #0,W ; end of stringZ ?
-; JZ OPWC_CompleteWithSpaces ;
CMP T,&PathName_END ; EOS < PTR ?
JNC OPWC_CompleteWithSpaces ; yes
; ----------------------------------;
MOV @RSP+,PC ;
; ----------------------------------;
-
-; ==================================;
-LoadUpdateSaveDirEntry ;SWXY
-; ==================================;
- MOV HDLL_DIRsect(T),W ;
- MOV HDLH_DIRsect(T),X ;
- CALL #readSectorWX ;SWX SD_buffer = DIRsector
- MOV HDLW_DIRofst(T),Y ; Y = DirEntryOffset
- CALL #GetYMDHMSforDIR ; X=DATE, W=TIME
- MOV X,SD_BUF+18(Y) ; access date
- MOV W,SD_BUF+22(Y) ; modified time
- MOV X,SD_BUF+24(Y) ; modified date
- MOV HDLL_CurSize(T),SD_BUF+28(Y); save new filesize
- MOV HDLH_CurSize(T),SD_BUF+30(Y);
- MOV HDLL_DIRsect(T),W ;
- MOV HDLH_DIRsect(T),X ;
- MOV #WriteSectorWX,PC ;SWX then RET
-; ----------------------------------;
-
;-----------------------------------------------------------------------
; WRITE" subroutines
;-----------------------------------------------------------------------
; ----------------------------------;
UpdateNewClusterFATs ;
; ----------------------------------;
-; CALL #SaveSectorWtoFATs ;SWXY no: already done by SearchMarkNewClusterHL
MOV @RSP,W ; W = previous FATsector
CALL #ReadFAT1SectorW ;SWX reload previous FATsector in buffer to link clusters
; ----------------------------------;
MOV &ClusterL,HDLL_CurClust(T) ; update handle with new cluster
MOV &ClusterH,HDLH_CurClust(T) ;
Write_File_End
- MOV #ClusterHL2sectorHL,PC ;W set current SectorHL to be written then RET
+ MOV #ClusterHL2sectorHL,PC ;W set current SectorHL to be written
; ----------------------------------;
;Z WRITE --
CMP #2,S ; "no such file" error ?
JZ OPEN_WRITE_CREATE ; yes, Handle is to be created !
CMP #0,S ; well opened file ?
- JZ OPEN_OVERWRITE ; yes
+ JZ OPEN_OVERWRITE ; yes, handle is created
; ----------------------------------;
OPWC_Write_Errors ;
; ----------------------------------;
; ======================================================================
; WRITE" primitive as part of OpenPathName
-; All "DEL"eted clusters are freed
; input from open: W = open_type, SectorHL = DIRsectorHL,
; Buffer = [DIRsector], ClusterHL = FirstCluster
; from open(GetFreeHandle): Y = DIRentry, T = CurrentHdl,
; 2 get free cluster ;
; ----------------------------------;
MOV #0,W ; init FATsector = 0, search new cluster
- MOV #0,Y ; init FAToffset
- CALL #SearchMarkNewClusterHL ;WXY output: updated (ClusterHL, FATsector, W = FATsector), SD_BUF = [new FATsector]
+ MOV #8,Y ; init FAToffset to point Cluster 2
+ CALL #SearchMarkNewClusterHL ;WXY output: updated (ClusterHL, FATsector, W = FATsector)
; ----------------------------------;
; 3 init DIRentryAttributes ;
; ----------------------------------;
; ==================================;
; free all file clusters ;
; ----------------------------------;
- CALL #FreeAllClusters ;SWXY input: HDLL_FirstClus(T), output: FATS are updated
+ CALL #FreeAllClusters ;SWXY input: HDLL_FirstClus(T)
MOV #0,HDLL_CurSize(T) ; clear currentSize
MOV #0,HDLH_CurSize(T) ;
- MOV HDLL_FirstClus(T),ClusterL ; Set ClusterHL
- MOV HDLH_FirstClus(T),ClusterH ;
- CALL #ClusterHLtoFAT1sectWofstY ;WXY output: W = FATsector, Y=FAToffset
+ CALL #HDLFrstClus2FATsecWofstY ;WXY output: W = FATsector, Y=FAToffset
CALL #SearchMarkNewClusterHL ;SWXY input: W = FATsector, Y = FAToffset output: ClusterHL, W = updated new FATsector loaded in SD_BUF
CALL #HDLSetCurClustSetFrstSect ;
MOV @IP+,PC ; --
; ======================================================================
OPEN_8W ;
CMP #2,S ; "no such file" error ?
- JZ OPEN_WRITE_CREATE ; yes
+ JZ OPEN_WRITE_CREATE ; if yes, handle is to be created
CMP #0,S ; well opened file ?
JNZ OPWC_Write_Errors ; no
; ==================================;
-OPEN_WRITE_APPEND ; yes
+OPEN_WRITE_APPEND ; yes, handle is already created
; ==================================;
-; 1- open file ; done
+SearchLastClust ;SWXY input: HDLL_FirstClus(T)
+; ----------------------------------;
+ CALL #HDLFrstClus2FATsecWofstY ;WXY output: W = FATsector, Y=FAToffset
; ----------------------------------;
- MOV.B #4,HDLB_Token(T) ; update HDLB_Token(T)
+SrchFAT1sectorWloop ;
; ----------------------------------;
-; 2.1- Compute Sectors count ; Sectors = HDLL_CurSize/512
+ MOV W,&FATsector ; FATsector memory
+ CALL #ReadFAT1SectorW ;SWX
+; ----------------------------------;
+SearchClusterLoop ; in: ClusterHL
; ----------------------------------;
- MOV.B HDLL_CurSize+1(T),Y ;Y = 0:CurSizeLOHi (bytes)
- MOV.B HDLH_CurSize(T),X ;X = 0:CurSizeHILo
- SWPB X ;X = CurSizeHIlo:0
- ADD Y,X ;X = CurSizeHIlo:CurSizeLOhi
- MOV.B HDLH_CurSize+1(T),Y ;Y:X = CurSize / 256 (bytes)
+ MOV SD_BUF(Y),W ; get [clusterLO]
+ MOV SD_BUF+2(Y),X ; get [clusterHI]
+ CMP #0FFFh,X ; [ClusterHI] = 0FFFh?
+ JNE SearchNextCluster ; no
+ CMP #-1,W ; [ClusterLO] = FFFFh?
+ JZ LastClusterFound ; LastClusterFound = ClusterHL
; ----------------------------------;
-; 2.2 Compute Clusters Count ;
+SearchNextCluster ;
; ----------------------------------;
- MOV.B &SecPerClus,T ;3 T = DIVISOR = SecPerClus = 0:SPClo
-DIVSECPERSPC ;
- MOV #0,W ;1 W = 0:REMlo = 0
- MOV #8,S ;1 S = CNT
-DIVSECPERSPC1 ;
- RRA Y ;1 0>0:SEC_HI>C
- RRC X ;1 C>SEC_LO>C
- RRC.B W ;1 C>REMlo>C
- SUB #1,S ;1 CNT-1
- RRA T ;1 0>SPChi:SPClo>C
- JNC DIVSECPERSPC1 ;2 7~ loopback if carry clear
-DIVSECPERSPC2 ;
- RRA W ;1 0>0:REMlo>C
- SUB #1,S ;1 CNT-1
- JGE DIVSECPERSPC2 ;2 4~ loopback Wlo = OFFSET, X = CLU_LO, Y = CLU_HI
+ MOV W,&ClusterL ;
+ MOV X,&ClusterH ;
+ CALL #ClusterHLtoFAT1sectWofstY ;WXY W = new FATsector, new FAToffset
+ CMP W,&FATsector ; new FATsector = prev FATsector ?
+ JZ SearchClusterLoop ; yes loop back
+ JMP LoadFAT1sectorWloop ; loop back with W = new FATsector
; ----------------------------------;
-; 2.3- Compute Current Cluster ; X = ClusterCountLO, Y = ClusterCountHI
+LastClusterFound ; in ClusterHL
; ----------------------------------;
- MOV &CurrentHDL,T ;3 reload Handle ptr
- ADD HDLL_FirstClus(T),X ;
- ADDC HDLH_FirstClus(T),Y ;
- MOV X,HDLL_CurClust(T) ; update handle
- MOV Y,HDLH_CurClust(T) ;
+ MOV HDLL_CurSize(T),W ;
+ MOV W,Y ;
; ----------------------------------;
-; 2.4- load current sectorHL ;
+; Compute Y = SD_Buf ptr ; example : Y = $A313 bytes
; ----------------------------------;
- MOV.B W,HDLB_ClustOfst(T) ;3 update handle with W = REM8 = sectors offset in last cluster
- CALL #LoadCurSectorHL ;SWX in SD_buf
+ MOV #1FFh,X ; mask for sector
+ BIC X,HDLL_CurSize(T) ; HDLL_CurSize = $A200 bytes
+ AND X,Y ; remainder Y = $0113 bytes
+ MOV Y,&BufferPtr ; init Buffer Pointer with $0113
; ----------------------------------;
-; 2.5- Compute SD_Buf ptr ;
+; Compute W = Cluster offset ;
; ----------------------------------;
- MOV HDLL_CurSize(T),W ; example : W = $A313 bytes
- BIC #01FFh,HDLL_CurSize(T) ; HDLL_CurSize = $A200 bytes
- AND #01FFh,W ; remainder W = $0113 bytes
- MOV W,&BufferPtr ; init Buffer Pointer with $0113
+ MOV.B &SecPerClus,X ;
+ SUB #1,X ; mask for Cluster offset, max = 0b0011_1111, for 4k clusters: 0b0000_0111
+ SWPB W ; W.B = 0bxxxx_xxx?
+ RRA.B W ; W.B = 0b?xxx_xxxx
+ AND X,W ; W.B = 0b00xx_xxxx max, for 4k clusters: 0b0000_0xxx
+ MOV.B W,HDLB_ClustOfst(T) ; W.B = Cluster offset
+ CALL #HDLSetCurClustSetCurSect ;
+ CALL #ReadSectorHL ; load SectorHL to be updated in SD_buf
; ----------------------------------;
- MOV @IP+,PC ; BufferPtr = first free byte offset
+ MOV @IP+,PC ;
; ----------------------------------;
BIT #RX_TERM,&TERM_IFG ;3 new char in TERMRXBUF ?
JZ T2S_Get_a_Char_Loop ;2
MOV.B &TERM_RXBUF,X ;3
- MOV.B X,&TERM_TXBUF
CMP.B #4,X ;1 EOT sent by TERATERM ?
JZ T2S_End_Of_File ;2 yes
+; ----------------------------------;
+; MOV.B X,&TERM_TXBUF ; uncomment this line to echo chars
+; ----------------------------------;
MOV.B X,SD_BUF(W) ;3
ADD #1,W ;1
CMP #BytsPerSec-1,W ;2
CALL #CloseHandle ;4
; ----------------------------------;
MOV @RSP+,IP ;
- MOV @IP+,PC ;4
+ MOV @IP+,PC ;
; ----------------------------------;
.ELSE ; if I2C_TERMINAL
FORTHWORD "TERM2SD\34" ; here, I2C_Master is reSTARTed in RX mode
; ==================================;
mDOCOL ;
+; ----------------------------------;
+ .word NOECHO ; comment this line to echo chars
+; ----------------------------------;
.word WRITEDQ ; if already exist FreeAllClusters else create it as WRITE file
mNEXTADR ;
; ----------------------------------;
CALL #CloseHandle ; tranfert SD_BUF to last sector of opened file in SD_CARD then close it
; ----------------------------------;
MOV @RSP+,IP ;
- MOV @IP+,PC ;
+ MOV #ECHO,PC ;
; ----------------------------------;
.ENDIF
I2C_CTRL_CH BIT #TX_TERM,&TERM_IFG ; send it to I2C_Master_RX to restart it in TX mode
JZ I2C_CTRL_CH ; wait TX buffer empty
MOV.B Y,&TERM_TXBUF ; send Ctrl_Char
-WAITCHAREND BIT #4,&TERM_IFG ; I2C_Master (re)STARTed ?
- JZ WAITCHAREND ; loop back if no
; ----------------------------------;
I2C_COLD_TERM
; ----------------------------------;
! ---------------------------------------
ClusterL=\$2422! 16 bits wide (FAT16)
ClusterH=\$2424! 16 bits wide (FAT16)
-NewClusterL=\$2426! 16 bits wide (FAT16)
-NewClusterH=\$2428! 16 bits wide (FAT16)
-CurFATsector=\$242A!
+LastFATsector=\$2426! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2428! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$242A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$8154! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$817E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$8184! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
+UART_INIT_TERM=\$8154! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$817E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$8184! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL &SOFT_APP)
UART_WARM=\$8186! WARM address
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$8144! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$8144! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$8146! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$8156! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$8156! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$8158! asm CODE, content of WARM+2 by default
-I2C_WARM=\$8180! WARM address
+I2C_COLD_TERM=\$8150! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$8150! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$8152! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$817A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
! ---------------------------------------
ClusterL=\$2422! 16 bits wide (FAT16)
ClusterH=\$2424! 16 bits wide (FAT16)
-NewClusterL=\$2426! 16 bits wide (FAT16)
-NewClusterH=\$2428! 16 bits wide (FAT16)
-CurFATsector=\$242A!
+LastFATsector=\$2426! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2428! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$242A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$C554! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$C57E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$C584! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$C586! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$C554! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$C57E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$C584! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$C586! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$C544! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$C544! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$C546! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$C556! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$C556! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$C558! asm CODE, content of WARM+2 by default
-I2C_WARM=\$C580! WARM address
+I2C_COLD_TERM=\$C550! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$C550! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$C552! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$C57A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
! ---------------------------------------
ClusterL=\$2422! 16 bits wide (FAT16)
ClusterH=\$2424! 16 bits wide (FAT16)
-NewClusterL=\$2426! 16 bits wide (FAT16)
-NewClusterH=\$2428! 16 bits wide (FAT16)
-CurFATsector=\$242A!
+LastFATsector=\$2426! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2428! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$242A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$8154! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$817E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$8184! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$8186! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$8154! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$817E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$8184! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL &SOFT_APP)
+UART_WARM=\$8186! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$8144! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$8144! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$8146! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$8156! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$8156! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$8158! asm CODE, content of WARM+2 by default
-I2C_WARM=\$8180! WARM address
+I2C_COLD_TERM=\$8150! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$8150! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$8152! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$817A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
TERMBRW_RST=\$1802! TERMBRW_RST
TERMMCTLW_RST=\$1804! TERMMCTLW_RST
I2CSLAVEADR=\$1802! I2C_SLAVE address
-I2CSLAVEADR1=\$1804!
+I2CSLAVEADR1=\$1804!
LPM_MODE=\$1806! LPM_MODE value, LPM0+GIE is the default value
USERSTIV=\$1808! user SYS variable, defines software RESET, DEEP_RST, INIT_HARWARE, etc.
VERSION=\$180A!
DEEP_SOFT=\$1814! to DEEP_INIT SOFT_APP
DEEP_HARD=\$1816! to DEEP_INIT HARD_APP
DEEP_SLEEP=\$1818! to DEEP_INIT SLEEP_APP
-DEEP_DP=\$181A! to DEEP_INIT RST_DP
+DEEP_DP=\$181A! to DEEP_INIT RST_DP
DEEP_LASTVOC=\$181C! to DEEP_INIT RST_LASTVOC
-DEEP_CURRENT=\$181E! to DEEP_INIT RST_CURRENT
-DEEP_CONTEXT=\$1820! to DEEP_INIT RST_CONTEXT
+DEEP_CURRENT=\$181E! to DEEP_INIT RST_CURRENT
+DEEP_CONTEXT=\$1820! to DEEP_INIT RST_CONTEXT
!
PUC_ABORT_ORG=\$1822! MOV #PUC_ABORT_ORG,X
INIT_ACCEPT=\$1822! to INIT PFA_ACCEPT
LSATCK=\$2000! leave stack, grow up
PSTACK=\$2080! parameter stack, grow down
RSTACK=\$20E0! Return stack, grow down
-!
+!
PAD_I2CADR=\$20E0! RX I2C address
PAD_I2CCNT=\$20E2! count max
PAD_ORG=\$20E4! user scratch pad buffer, 84 bytes, grow up
-!
+!
TIB_I2CADR=\$2138! TX I2C address
TIB_I2CCNT=\$213A! count of bytes
TIB_ORG=\$213C! Terminal input buffer, 84 bytes, grow up
-!
+!
HOLDS_ORG=\$2190! base address for HOLDS
HOLD_BASE=\$21B2! BASE HOLD area, grow down
!
CONTEXT=\$21CE! CONTEXT dictionnary space (8 CELLS)
!
! ---------------------------------------
-!21E0! 28 RAM bytes free
+!21E0! 28 RAM bytes free
! ---------------------------------------
! ---------------------------------------
BUFEND=\$2400!
! ---------------------------------------
-! FAT16 FileSystemInfos
+! FAT16 FileSystemInfos
! ---------------------------------------
FATtype=\$2402!
BS_FirstSectorL=\$2404!
! ---------------------------------------
! BUFFER management
! ---------------------------------------
-BufferPtr=\$241E!
+BufferPtr=\$241E!
BufferLen=\$2420!
! ---------------------------------------
! ---------------------------------------
ClusterL=\$2422! 16 bits wide (FAT16)
ClusterH=\$2424! 16 bits wide (FAT16)
-NewClusterL=\$2426! 16 bits wide (FAT16)
-NewClusterH=\$2428! 16 bits wide (FAT16)
-CurFATsector=\$242A!
+LastFATsector=\$2426! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2428! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$242A! used by APPEND"
! ---------------------------------------
! DIR entry
! ---------------------------------------
DIRclusterL=\$242C! contains the Cluster of current directory ; 1 if FAT16 root directory
DIRclusterH=\$242E! contains the Cluster of current directory ; 1 if FAT16 root directory
-EntryOfst=\$2430!
+EntryOfst=\$2430!
! ---------------------------------------
! Handle Pointer
! ---------------------------------------
! Handle structure
! ---------------------------------------
-! three handle tokens :
+! three handle tokens :
! token = 0 : free handle
! token = 1 : file to read
! token = 2 : file updated (write)
HDLW_PrevORG=26! previous ORG
-!OpenedFirstFile ; "openedFile" structure
+!OpenedFirstFile ; "openedFile" structure
HandleMax=8!
HandleLenght=28!
FirstHandle=\$2438!
! to restore rDOCOL: MOV &INIT_DOCOL,rDOCOL
INIT_FORTH=\$C4D0! asm CODE common part of RST and QABORT, starts FORTH engine
QABORT=\$C508! CODE_WITHOUT_RETURN run-time part of ABORT"
-ABORT_TERM=\$C512! CODE_WITHOUT_RETURN, called by QREVEAL and INTERPRET
+ABORT_TERM=\$C512! CODE_WITHOUT_RETURN, called by QREVEAL and INTERPRET
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$C554! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$C57E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$C584! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$C586! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$C554! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$C57E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$C584! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$C586! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$C544! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$C544! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$C546! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$C556! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$C556! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$C558! asm CODE, content of WARM+2 by default
-I2C_WARM=\$C580! WARM address
+I2C_COLD_TERM=\$C550! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$C550! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$C552! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$C57A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
SIGNATURES=\$FF80! JTAG/BSL signatures
JTAG_SIG1=\$FF80! if 0 (electronic fuse=0) enable JTAG/SBW; must be reset by wipe.
JTAG_SIG2=\$FF82! if JTAG_SIG1=\$AAAA, length of password string @ JTAG_PASSWORD
-BSL_SIG1=\$FF84!
-BSL_SIG2=\$FF86!
+BSL_SIG1=\$FF84!
+BSL_SIG2=\$FF86!
I2CSLA0=\$FFA2! UCBxI2COA0 default value address
I2CSLA1=\$FFA4! UCBxI2COA1 default value address
I2CSLA2=\$FFA6! UCBxI2COA2 default value address
PMMCTL0=\$120! \ PMM Control 0
PMMCTL1=\$122! \ PMM Control 0
PMMCTL2=\$124! \ PMM Control 0
-PMMIFG=\$12A! \ PMM interrupt flags
+PMMIFG=\$12A! \ PMM interrupt flags
PM5CTL0=\$130! \ PM5 Control 0
-SYSCTL=\$140! \ System control
-SYSBSLC=\$142! \ Bootstrap loader configuration area
-SYSJMBC=\$146! \ JTAG mailbox control
-SYSJMBI0=\$148! \ JTAG mailbox input 0
-SYSJMBI1=\$14A! \ JTAG mailbox input 1
-SYSJMBO0=\$14C! \ JTAG mailbox output 0
-SYSJMBO1=\$14E! \ JTAG mailbox output 1
-SYSUNIV=\$15A! \ User NMI vector generator
-SYSSNIV=\$15C! \ System NMI vector generator
-SYSRSTIV=\$15E! \ Reset vector generator
-SYSCFG0=\$160! \ System configuration 0
-SYSCFG1=\$162! \ System configuration 1
-SYSCFG2=\$164! \ System configuration 2
-
-CSCTL0=\$180! \ CS control 0
-CSCTL1=\$182! \ CS control 1
-CSCTL2=\$184! \ CS control 2
-CSCTL3=\$186! \ CS control 3
-CSCTL4=\$188! \ CS control 4
-CSCTL5=\$18A! \ CS control 5
-CSCTL6=\$18C! \ CS control 6
-CSCTL7=\$18E! \ CS control 7
-CSCTL8=\$190! \ CS control 8
-
-
-FRCTLCTL0=\$1A0! \ FRAM control 0
-GCCTL0=\$1A4! \ General control 0
-GCCTL1=\$1A6! \ General control 1
-
-CRC16DI=\$1C0! \ CRC data input
-CRCDIRB=\$1C2! \ CRC data input reverse byte
-CRCINIRES=\$1C4! \ CRC initialization and result
-CRCRESR=\$1C6! \ CRC result reverse byte
+SYSCTL=\$140! \ System control
+SYSBSLC=\$142! \ Bootstrap loader configuration area
+SYSJMBC=\$146! \ JTAG mailbox control
+SYSJMBI0=\$148! \ JTAG mailbox input 0
+SYSJMBI1=\$14A! \ JTAG mailbox input 1
+SYSJMBO0=\$14C! \ JTAG mailbox output 0
+SYSJMBO1=\$14E! \ JTAG mailbox output 1
+SYSUNIV=\$15A! \ User NMI vector generator
+SYSSNIV=\$15C! \ System NMI vector generator
+SYSRSTIV=\$15E! \ Reset vector generator
+SYSCFG0=\$160! \ System configuration 0
+SYSCFG1=\$162! \ System configuration 1
+SYSCFG2=\$164! \ System configuration 2
+
+CSCTL0=\$180! \ CS control 0
+CSCTL1=\$182! \ CS control 1
+CSCTL2=\$184! \ CS control 2
+CSCTL3=\$186! \ CS control 3
+CSCTL4=\$188! \ CS control 4
+CSCTL5=\$18A! \ CS control 5
+CSCTL6=\$18C! \ CS control 6
+CSCTL7=\$18E! \ CS control 7
+CSCTL8=\$190! \ CS control 8
+
+
+FRCTLCTL0=\$1A0! \ FRAM control 0
+GCCTL0=\$1A4! \ General control 0
+GCCTL1=\$1A6! \ General control 1
+
+CRC16DI=\$1C0! \ CRC data input
+CRCDIRB=\$1C2! \ CRC data input reverse byte
+CRCINIRES=\$1C4! \ CRC initialization and result
+CRCRESR=\$1C6! \ CRC result reverse byte
WDTCTL=\$1CC! \ WDT control register
P3SEL1=\$22C!
-RTCCTL=\$300! \ RTC control
-RTCIV=\$304! \ RTC interrupt vector word
-RTCMOD=\$308! \ RTC modulo
-RTCCNT=\$30C! \ RTC counter register
+RTCCTL=\$300! \ RTC control
+RTCIV=\$304! \ RTC interrupt vector word
+RTCMOD=\$308! \ RTC modulo
+RTCCNT=\$30C! \ RTC counter register
TACLR=4!
TAIFG=1!
CCIFG=1!
-TA0CTL=\$380! \ TA0 control
-TA0CCTL0=\$382! \ Capture/compare control 0
-TA0CCTL1=\$384! \ Capture/compare control 1
-TA0CCTL2=\$386! \ Capture/compare control 2
-TA0R=\$390! \ TA0 counter register
-TA0CCR0=\$392! \ Capture/compare register 0
-TA0CCR1=\$394! \ Capture/compare register 1
-TA0CCR2=\$396! \ Capture/compare register 2
-TA0EX0=\$3A0! \ TA0 expansion register 0
-TA0IV=\$3AE! \ TA0 interrupt vector
-
-TA1CTL=\$3C0! \ TA1 control
-TA1CCTL0=\$3C2! \ Capture/compare control 0
-TA1CCTL1=\$3C4! \ Capture/compare control 1
-TA1CCTL2=\$3C6! \ Capture/compare control 2
-TA1R=\$3D0! \ TA1 counter register
-TA1CCR0=\$3D2! \ Capture/compare register 0
-TA1CCR1=\$3D4! \ Capture/compare register 1
-TA1CCR2=\$3D6! \ Capture/compare register 2
-TA1EX0=\$3E0! \ TA1 expansion register 0
-TA1IV=\$3EE! \ TA1 interrupt vector
-
-TA2CTL=\$400! \ TA2 control
-TA2CCTL0=\$402! \ Capture/compare control 0
-TA2CCTL1=\$404! \ Capture/compare control 1
-TA2R=\$410! \ TA2 counter register
-TA2CCR0=\$412! \ Capture/compare register 0
-TA2CCR1=\$414! \ Capture/compare register 1
-TA2EX0=\$420! \ TA2 expansion register 0
-TA2IV=\$42E! \ TA2 interrupt vector
-
-TA3CTL=\$440! \ TA3 control
-TA3CCTL0=\$442! \ Capture/compare control 0
-TA3CCTL1=\$444! \ Capture/compare control 1
-TA3R=\$450! \ TA3 counter register
-TA3CCR0=\$452! \ Capture/compare register 0
-TA3CCR1=\$454! \ Capture/compare register 1
-TA3EX0=\$460! \ TA3 expansion register 0
-TA3IV=\$46E! \ TA3 interrupt vector
+TA0CTL=\$380! \ TA0 control
+TA0CCTL0=\$382! \ Capture/compare control 0
+TA0CCTL1=\$384! \ Capture/compare control 1
+TA0CCTL2=\$386! \ Capture/compare control 2
+TA0R=\$390! \ TA0 counter register
+TA0CCR0=\$392! \ Capture/compare register 0
+TA0CCR1=\$394! \ Capture/compare register 1
+TA0CCR2=\$396! \ Capture/compare register 2
+TA0EX0=\$3A0! \ TA0 expansion register 0
+TA0IV=\$3AE! \ TA0 interrupt vector
+
+TA1CTL=\$3C0! \ TA1 control
+TA1CCTL0=\$3C2! \ Capture/compare control 0
+TA1CCTL1=\$3C4! \ Capture/compare control 1
+TA1CCTL2=\$3C6! \ Capture/compare control 2
+TA1R=\$3D0! \ TA1 counter register
+TA1CCR0=\$3D2! \ Capture/compare register 0
+TA1CCR1=\$3D4! \ Capture/compare register 1
+TA1CCR2=\$3D6! \ Capture/compare register 2
+TA1EX0=\$3E0! \ TA1 expansion register 0
+TA1IV=\$3EE! \ TA1 interrupt vector
+
+TA2CTL=\$400! \ TA2 control
+TA2CCTL0=\$402! \ Capture/compare control 0
+TA2CCTL1=\$404! \ Capture/compare control 1
+TA2R=\$410! \ TA2 counter register
+TA2CCR0=\$412! \ Capture/compare register 0
+TA2CCR1=\$414! \ Capture/compare register 1
+TA2EX0=\$420! \ TA2 expansion register 0
+TA2IV=\$42E! \ TA2 interrupt vector
+
+TA3CTL=\$440! \ TA3 control
+TA3CCTL0=\$442! \ Capture/compare control 0
+TA3CCTL1=\$444! \ Capture/compare control 1
+TA3R=\$450! \ TA3 counter register
+TA3CCR0=\$452! \ Capture/compare register 0
+TA3CCR1=\$454! \ Capture/compare register 1
+TA3EX0=\$460! \ TA3 expansion register 0
+TA3IV=\$46E! \ TA3 interrupt vector
MPY=\$4C0! \ 16-bit operand 1 - multiply
-UCA0CTLW0=\$500! \ eUSCI_A control word 0
-UCA0CTLW1=\$502! \ eUSCI_A control word 1
-UCA0BRW=\$506!
-UCA0BR0=\$506! \ eUSCI_A baud rate 0
-UCA0BR1=\$507! \ eUSCI_A baud rate 1
-UCA0MCTLW=\$508! \ eUSCI_A modulation control
-UCA0STAT=\$50A! \ eUSCI_A status
-UCA0RXBUF=\$50C! \ eUSCI_A receive buffer
-UCA0TXBUF=\$50E! \ eUSCI_A transmit buffer
-UCA0ABCTL=\$510! \ eUSCI_A LIN control
-UCA0IRTCTL=\$512! \ eUSCI_A IrDA transmit control
-UCA0IRRCTL=\$513! \ eUSCI_A IrDA receive control
-UCA0IE=\$51A! \ eUSCI_A interrupt enable
-UCA0IFG=\$51C! \ eUSCI_A interrupt flags
-UCA0IV=\$51E! \ eUSCI_A interrupt vector word
-
-UCA1CTLW0=\$520! \ eUSCI_A control word 0
-UCA1CTLW1=\$522! \ eUSCI_A control word 1
-UCA1BRW=\$526!
-UCA1BR0=\$526! \ eUSCI_A baud rate 0
-UCA1BR1=\$527! \ eUSCI_A baud rate 1
-UCA1MCTLW=\$528! \ eUSCI_A modulation control
-UCA1STAT=\$52A! \ eUSCI_A status
-UCA1RXBUF=\$52C! \ eUSCI_A receive buffer
-UCA1TXBUF=\$52E! \ eUSCI_A transmit buffer
-UCA1ABCTL=\$530! \ eUSCI_A LIN control
-UCA1IRTCTL=\$532! \ eUSCI_A IrDA transmit control
-UCA1IRRCTL=\$533! \ eUSCI_A IrDA receive control
-UCA1IE=\$53A! \ eUSCI_A interrupt enable
-UCA1IFG=\$53C! \ eUSCI_A interrupt flags
-UCA1IV=\$53E! \ eUSCI_A interrupt vector word
-
-
-UCB0CTLW0=\$540! \ eUSCI_B control word 0
-UCB0CTLW1=\$542! \ eUSCI_B control word 1
-UCB0BRW=\$546!
-UCB0BR0=\$546! \ eUSCI_B bit rate 0
-UCB0BR1=\$547! \ eUSCI_B bit rate 1
-UCB0STATW=\$548! \ eUSCI_B status word
-UCBCNT0=\$549! \ eUSCI_B hardware count
-UCB0TBCNT=\$54A! \ eUSCI_B byte counter threshold
-UCB0RXBUF=\$54C! \ eUSCI_B receive buffer
-UCB0TXBUF=\$54E! \ eUSCI_B transmit buffer
-UCB0I2COA0=\$554! \ eUSCI_B I2C own address 0
-UCB0I2COA1=\$556! \ eUSCI_B I2C own address 1
-UCB0I2COA2=\$558! \ eUSCI_B I2C own address 2
-UCB0I2COA3=\$55A! \ eUSCI_B I2C own address 3
-UCB0ADDRX=\$55C! \ eUSCI_B received address
-UCB0ADDMASK=\$55E! \ eUSCI_B address mask
-UCB0I2CSA=\$560! \ eUSCI I2C slave address
-UCB0IE=\$56A! \ eUSCI interrupt enable
-UCB0IFG=\$56C! \ eUSCI interrupt flags
-UCB0IV=\$56E! \ eUSCI interrupt vector word
+UCA0CTLW0=\$500! \ eUSCI_A control word 0
+UCA0CTLW1=\$502! \ eUSCI_A control word 1
+UCA0BRW=\$506!
+UCA0BR0=\$506! \ eUSCI_A baud rate 0
+UCA0BR1=\$507! \ eUSCI_A baud rate 1
+UCA0MCTLW=\$508! \ eUSCI_A modulation control
+UCA0STAT=\$50A! \ eUSCI_A status
+UCA0RXBUF=\$50C! \ eUSCI_A receive buffer
+UCA0TXBUF=\$50E! \ eUSCI_A transmit buffer
+UCA0ABCTL=\$510! \ eUSCI_A LIN control
+UCA0IRTCTL=\$512! \ eUSCI_A IrDA transmit control
+UCA0IRRCTL=\$513! \ eUSCI_A IrDA receive control
+UCA0IE=\$51A! \ eUSCI_A interrupt enable
+UCA0IFG=\$51C! \ eUSCI_A interrupt flags
+UCA0IV=\$51E! \ eUSCI_A interrupt vector word
+
+UCA1CTLW0=\$520! \ eUSCI_A control word 0
+UCA1CTLW1=\$522! \ eUSCI_A control word 1
+UCA1BRW=\$526!
+UCA1BR0=\$526! \ eUSCI_A baud rate 0
+UCA1BR1=\$527! \ eUSCI_A baud rate 1
+UCA1MCTLW=\$528! \ eUSCI_A modulation control
+UCA1STAT=\$52A! \ eUSCI_A status
+UCA1RXBUF=\$52C! \ eUSCI_A receive buffer
+UCA1TXBUF=\$52E! \ eUSCI_A transmit buffer
+UCA1ABCTL=\$530! \ eUSCI_A LIN control
+UCA1IRTCTL=\$532! \ eUSCI_A IrDA transmit control
+UCA1IRRCTL=\$533! \ eUSCI_A IrDA receive control
+UCA1IE=\$53A! \ eUSCI_A interrupt enable
+UCA1IFG=\$53C! \ eUSCI_A interrupt flags
+UCA1IV=\$53E! \ eUSCI_A interrupt vector word
+
+
+UCB0CTLW0=\$540! \ eUSCI_B control word 0
+UCB0CTLW1=\$542! \ eUSCI_B control word 1
+UCB0BRW=\$546!
+UCB0BR0=\$546! \ eUSCI_B bit rate 0
+UCB0BR1=\$547! \ eUSCI_B bit rate 1
+UCB0STATW=\$548! \ eUSCI_B status word
+UCBCNT0=\$549! \ eUSCI_B hardware count
+UCB0TBCNT=\$54A! \ eUSCI_B byte counter threshold
+UCB0RXBUF=\$54C! \ eUSCI_B receive buffer
+UCB0TXBUF=\$54E! \ eUSCI_B transmit buffer
+UCB0I2COA0=\$554! \ eUSCI_B I2C own address 0
+UCB0I2COA1=\$556! \ eUSCI_B I2C own address 1
+UCB0I2COA2=\$558! \ eUSCI_B I2C own address 2
+UCB0I2COA3=\$55A! \ eUSCI_B I2C own address 3
+UCB0ADDRX=\$55C! \ eUSCI_B received address
+UCB0ADDMASK=\$55E! \ eUSCI_B address mask
+UCB0I2CSA=\$560! \ eUSCI I2C slave address
+UCB0IE=\$56A! \ eUSCI interrupt enable
+UCB0IFG=\$56C! \ eUSCI interrupt flags
+UCB0IV=\$56E! \ eUSCI interrupt vector word
UCTXACK=\$20!
UCTR=\$10!
-BAKMEM0=\$660! \ Backup Memory 0
-BAKMEM1=\$662! \ Backup Memory 1
-BAKMEM2=\$664! \ Backup Memory 2
-BAKMEM3=\$666! \ Backup Memory 3
-BAKMEM4=\$668! \ Backup Memory 4
-BAKMEM5=\$66A! \ Backup Memory 5
-BAKMEM6=\$66C! \ Backup Memory 6
-BAKMEM7=\$66E! \ Backup Memory 7
-BAKMEM8=\$670! \ Backup Memory 8
-BAKMEM9=\$672! \ Backup Memory 9
-BAKMEM10=\$674! \ Backup Memory 10
-BAKMEM11=\$676! \ Backup Memory 11
-BAKMEM12=\$678! \ Backup Memory 12
-BAKMEM13=\$67A! \ Backup Memory 13
-BAKMEM14=\$67C! \ Backup Memory 14
-BAKMEM15=\$67E! \ Backup Memory 15
-
-
-ADC10CTL0=\$700! \ ADC10_B Control register 0
-ADC10CTL1=\$702! \ ADC10_B Control register 1
-ADC10CTL2=\$704! \ ADC10_B Control register 2
-ADC10LO=\$706! \ ADC10_B Window Comparator Low Threshold
-ADC10HI=\$708! \ ADC10_B Window Comparator High Threshold
-ADC10MCTL0=\$70A! \ ADC10_B Memory Control Register 0
-ADC10MEM0=\$712! \ ADC10_B Conversion Memory Register
-ADC10IE=\$71A! \ ADC10_B Interrupt Enable
-ADC10IFG=\$71C! \ ADC10_B Interrupt Flags
-ADC10IV=\$71E! \ ADC10_B Interrupt Vector Word
+BAKMEM0=\$660! \ Backup Memory 0
+BAKMEM1=\$662! \ Backup Memory 1
+BAKMEM2=\$664! \ Backup Memory 2
+BAKMEM3=\$666! \ Backup Memory 3
+BAKMEM4=\$668! \ Backup Memory 4
+BAKMEM5=\$66A! \ Backup Memory 5
+BAKMEM6=\$66C! \ Backup Memory 6
+BAKMEM7=\$66E! \ Backup Memory 7
+BAKMEM8=\$670! \ Backup Memory 8
+BAKMEM9=\$672! \ Backup Memory 9
+BAKMEM10=\$674! \ Backup Memory 10
+BAKMEM11=\$676! \ Backup Memory 11
+BAKMEM12=\$678! \ Backup Memory 12
+BAKMEM13=\$67A! \ Backup Memory 13
+BAKMEM14=\$67C! \ Backup Memory 14
+BAKMEM15=\$67E! \ Backup Memory 15
+
+
+ADC10CTL0=\$700! \ ADC10_B Control register 0
+ADC10CTL1=\$702! \ ADC10_B Control register 1
+ADC10CTL2=\$704! \ ADC10_B Control register 2
+ADC10LO=\$706! \ ADC10_B Window Comparator Low Threshold
+ADC10HI=\$708! \ ADC10_B Window Comparator High Threshold
+ADC10MCTL0=\$70A! \ ADC10_B Memory Control Register 0
+ADC10MEM0=\$712! \ ADC10_B Conversion Memory Register
+ADC10IE=\$71A! \ ADC10_B Interrupt Enable
+ADC10IFG=\$71C! \ ADC10_B Interrupt Flags
+ADC10IV=\$71E! \ ADC10_B Interrupt Vector Word
ADCON=\$10!
ADCSTART=\$03!
! ---------------------------------------
ClusterL=\$2422! 16 bits wide (FAT16)
ClusterH=\$2424! 16 bits wide (FAT16)
-NewClusterL=\$2426! 16 bits wide (FAT16)
-NewClusterH=\$2428! 16 bits wide (FAT16)
-CurFATsector=\$242A!
+LastFATsector=\$2426! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2428! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$242A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$C554! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$C57E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$C584! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$C586! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$C554! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$C57E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$C584! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$C586! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$C544! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$C544! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$C546! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$C556! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$C556! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$C558! asm CODE, content of WARM+2 by default
-I2C_WARM=\$C580! WARM address
+I2C_COLD_TERM=\$C550! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$C550! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$C552! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$C57A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
! ---------------------------------------
ClusterL=\$187A! 16 bits wide (FAT16)
ClusterH=\$187C! 16 bits wide (FAT16)
-NewClusterL=\$187E! 16 bits wide (FAT16)
-NewClusterH=\$1880! 16 bits wide (FAT16)
-CurFATsector=\$1882!
+LastFATsector=\$187E! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$1880! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$1882! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$C354! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$C37E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$C384! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$C386! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$C354! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$C37E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$C384! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$C386! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$C344! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$C344! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$C346! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$C356! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$C356! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$C358! asm CODE, content of WARM+2 by default
-I2C_WARM=\$C380! WARM address
+I2C_COLD_TERM=\$C350! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$C350! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$C352! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$C37A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
! ---------------------------------------
ClusterL=\$187A! 16 bits wide (FAT16)
ClusterH=\$187C! 16 bits wide (FAT16)
-NewClusterL=\$187E! 16 bits wide (FAT16)
-NewClusterH=\$1880! 16 bits wide (FAT16)
-CurFATsector=\$1882!
+LastFATsector=\$187E! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$1880! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$1882! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$C354! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$C37E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$C384! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$C386! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$C354! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$C37E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$C384! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$C386! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$C344! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$C344! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$C346! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$C356! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$C356! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$C358! asm CODE, content of WARM+2 by default
-I2C_WARM=\$C380! WARM address
+I2C_COLD_TERM=\$C350! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$C350! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$C352! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$C37A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
! ---------------------------------------
ClusterL=\$2022! 16 bits wide (FAT16)
ClusterH=\$2024! 16 bits wide (FAT16)
-NewClusterL=\$2026! 16 bits wide (FAT16)
-NewClusterH=\$2028! 16 bits wide (FAT16)
-CurFATsector=\$202A!
+LastFATsector=\$2026! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2028! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$202A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$4584! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$4586! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$4584! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$4586! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$4544! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$4544! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$4546! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$4556! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$4556! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$4558! asm CODE, content of WARM+2 by default
-I2C_WARM=\$4580! WARM address
+I2C_COLD_TERM=\$4550! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$4550! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$4552! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$457A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
! ---------------------------------------
ClusterL=\$2022! 16 bits wide (FAT16)
ClusterH=\$2024! 16 bits wide (FAT16)
-NewClusterL=\$2026! 16 bits wide (FAT16)
-NewClusterH=\$2028! 16 bits wide (FAT16)
-CurFATsector=\$202A!
+LastFATsector=\$2026! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2028! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$202A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$4584! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$4586! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$4584! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$4586! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$4544! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$4544! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$4546! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$4556! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$4556! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$4558! asm CODE, content of WARM+2 by default
-I2C_WARM=\$4580! WARM address
+I2C_COLD_TERM=\$4550! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$4550! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$4552! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$457A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
TERMBRW_RST=\$1802! TERMBRW_RST
TERMMCTLW_RST=\$1804! TERMMCTLW_RST
I2CSLAVEADR=\$1802! I2C_SLAVE address
-I2CSLAVEADR1=\$1804!
+I2CSLAVEADR1=\$1804!
LPM_MODE=\$1806! LPM_MODE value, LPM0+GIE is the default value
USERSTIV=\$1808! user SYS variable, defines software RESET, DEEP_RST, INIT_HARWARE, etc.
VERSION=\$180A!
DEEP_SOFT=\$1814! to DEEP_INIT SOFT_APP
DEEP_HARD=\$1816! to DEEP_INIT HARD_APP
DEEP_SLEEP=\$1818! to DEEP_INIT SLEEP_APP
-DEEP_DP=\$181A! to DEEP_INIT RST_DP
+DEEP_DP=\$181A! to DEEP_INIT RST_DP
DEEP_LASTVOC=\$181C! to DEEP_INIT RST_LASTVOC
-DEEP_CURRENT=\$181E! to DEEP_INIT RST_CURRENT
-DEEP_CONTEXT=\$1820! to DEEP_INIT RST_CONTEXT
+DEEP_CURRENT=\$181E! to DEEP_INIT RST_CURRENT
+DEEP_CONTEXT=\$1820! to DEEP_INIT RST_CONTEXT
!
PUC_ABORT_ORG=\$1822! MOV #PUC_ABORT_ORG,X
INIT_ACCEPT=\$1822! to INIT PFA_ACCEPT
PAD_I2CCNT=\$1CE2! count max
PAD_ORG=\$1CE4! user scratch pad buffer, 84 bytes, grow up
!
-TIB_I2CADR=\$1D38! TX I2C address
+TIB_I2CADR=\$1D38! TX I2C address
TIB_I2CCNT=\$1D3A! count of bytes
TIB_ORG=\$1D3C! Terminal input buffer, 84 bytes, grow up
!
CONTEXT=\$1DCE! CONTEXT dictionnary space (8 CELLS)
!
! ---------------------------------------
-!1DE0! 28 RAM bytes free
+!1DE0! 28 RAM bytes free
! ---------------------------------------
! ---------------------------------------
! ---------------------------------------
ClusterL=\$2022! 16 bits wide (FAT16)
ClusterH=\$2024! 16 bits wide (FAT16)
-NewClusterL=\$2026! 16 bits wide (FAT16)
-NewClusterH=\$2028! 16 bits wide (FAT16)
-CurFATsector=\$202A!
+LastFATsector=\$2026! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2028! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$202A! used by APPEND"
! ---------------------------------------
! DIR entry
HDLW_PrevORG=26! previous ORG
-!OpenedFirstFile ; "openedFile" structure
+!OpenedFirstFile ; "openedFile" structure
HandleMax=8!
HandleLenght=28!
FirstHandle=\$2038!
! to restore rDOCOL: MOV &INIT_DOCOL,rDOCOL
INIT_FORTH=\$44D0! asm CODE common part of RST and QABORT, starts FORTH engine
QABORT=\$4508! CODE_WITHOUT_RETURN run-time part of ABORT"
-ABORT_TERM=\$4512! CODE_WITHOUT_RETURN, called by QREVEAL and INTERPRET
+ABORT_TERM=\$4512! CODE_WITHOUT_RETURN, called by QREVEAL and INTERPRET
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$4584! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$4586! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$4584! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$4586! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$4544! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$4544! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$4546! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$4556! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$4556! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$4558! asm CODE, content of WARM+2 by default
-I2C_WARM=\$4580! WARM address
+I2C_COLD_TERM=\$4550! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$4550! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$4552! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$457A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
DMA2SZ=\$53A! \ DMA channel 2 transfer size
-MPUCTL0=\$5A0! \ MPU control 0
-MPUCTL1=\$5A2! \ MPU control 1
-MPUSEGB2=\$5A4! \ MPU Segmentation Border2
-MPUSEGB1=\$5A6! \ MPU Segmentation Border1
-MPUSAM=\$5A8! \ MPU access management
-MPUIPC0=\$5AA! \ MPU IP control 0
-MPUIPSEGB2=\$5AC! \ MPU IP Encapsulation Segment Border 2
-MPUIPSEGB1=\$5AE! \ MPU IP Encapsulation Segment Border 1
+MPUCTL0=\$5A0! \ MPU control 0
+MPUCTL1=\$5A2! \ MPU control 1
+MPUSEGB2=\$5A4! \ MPU Segmentation Border2
+MPUSEGB1=\$5A6! \ MPU Segmentation Border1
+MPUSAM=\$5A8! \ MPU access management
+MPUIPC0=\$5AA! \ MPU IP control 0
+MPUIPSEGB2=\$5AC! \ MPU IP Encapsulation Segment Border 2
+MPUIPSEGB1=\$5AE! \ MPU IP Encapsulation Segment Border 1
UCA0CTLW0=\$5C0! \ eUSCI_A control word 0
UCA0CTLW1=\$5C2! \ eUSCI_A control word 1
! ---------------------------------------
ClusterL=\$2022! 16 bits wide (FAT16)
ClusterH=\$2024! 16 bits wide (FAT16)
-NewClusterL=\$2026! 16 bits wide (FAT16)
-NewClusterH=\$2028! 16 bits wide (FAT16)
-LastFATsector=\$2026! 16 bits wide (FAT16)
-LastFAToffset=\$2028! 16 bits wide (FAT16)
-CurFATsector=\$202A!
+LastFATsector=\$2026! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2028! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$202A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$4154! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
-UART_COLD_TERM=\$417E! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
-UART_INIT_SOFT=\$4184! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
-UART_RXON=\$4186! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$4154! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$417E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$4184! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL &SOFT_APP)
+UART_WARM=\$4186! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
I2C_ACCEPT=\$4144! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$4146! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$4156! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
-I2C_INIT_SOFT=\$4156! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
-I2C_INIT_TERM=\$4158! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
-I2C_WARM=\$4180! WARM address
+I2C_COLD_TERM=\$4150! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$4150! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$4152! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$417A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +
! ---------------------------------------
ClusterL=\$2022! 16 bits wide (FAT16)
ClusterH=\$2024! 16 bits wide (FAT16)
-NewClusterL=\$2026! 16 bits wide (FAT16)
-NewClusterH=\$2028! 16 bits wide (FAT16)
-CurFATsector=\$202A!
+LastFATsector=\$2026! Set by FreeAllClusters, used by OPEN_OVERWRITE
+LastFAToffset=\$2028! Set by FreeAllClusters, used by OPEN_OVERWRITE
+FATsector=\$202A! used by APPEND"
! ---------------------------------------
! DIR entry
!-------------------------------------------------------------------------------
! UART FASTFORTH
!-------------------------------------------------------------------------------
-UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL #UART_INIT_TERM)
-UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL #UART_COLD_TERM)
-UART_INIT_SOFT=\$4584! asm CODE, content of INIT_FORTH+2 (by default, INIT_FORTH starts with: CALL #RET_ADR)
-UART_RXON=\$4586! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
-UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL #UART_RXON)
+UART_INIT_TERM=\$4554! asm CODE, content of WARM+2 by default (WARM starts with: CALL &HARD_APP)
+UART_COLD_TERM=\$457E! asm CODE, content of COLD+2 by default (COLD starts with: CALL &STOP_APP)
+UART_INIT_SOFT=\$4584! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SOFT_APP)
+UART_WARM=\$4586! WARM address
+UART_RXON=KEY\+\$8! asm CODE, content of SLEEP+2 (by default, SLEEP starts with: CALL &SLEEP_APP)
UART_RXOFF=ACCEPT\+\$2A! asm CODE, called by ACCEPT after 'CR' and before 'LF'.
!-------------------------------------------------------------------------------
! I2C FASTFORTH
!-------------------------------------------------------------------------------
-I2C_ACCEPT=\$4544! asm CODE, content of SLEEP+2 by default
+I2C_ACCEPT=\$4544! asm CODE, default content of SLEEP_APP (SLEEP starts with: CALL &SLEEP_APP)
I2C_CTRL_CH=\$4546! asm CODE, used as is: MOV.B #CTRL_CHAR,Y
! CALL #I2C_CTRL_CH
-I2C_COLD_TERM=\$4556! asm CODE, content of COLD+2, RET address by default
-I2C_INIT_SOFT=\$4556! asm CODE, content of INIT_FORTH+2, RET address by default
-I2C_INIT_TERM=\$4558! asm CODE, content of WARM+2 by default
-I2C_WARM=\$4580! WARM address
+I2C_COLD_TERM=\$4550! asm CODE, default content of STOP_APP (COLD starts with: CALL &STOP_APP)
+I2C_INIT_SOFT=\$4550! asm CODE, default content of SOFT_APP (INIT_FORTH starts with: CALL &SOFT_APP)
+I2C_INIT_TERM=\$4552! asm CODE, default content of HARD_APP (WARM starts with: CALL &HARD_APP)
+I2C_WARM=\$457A! WARM address
!-------------------------------------------------------------------------------
NOPUC=SYS\+\$0A! NOPUC with FORTH: ' SYS 10 +
COLD=SYS\+\$16! COLD address ' SYS 22 +